-
Notifications
You must be signed in to change notification settings - Fork 1
Description
Is your feature request related to a problem?
Summary
Follow up to #107 and #120. Introduce a new case-centric browsing experience at /cases to support experiment-level discovery while preserving execution-centric simulation pages.
Motivation
Case is the aggregate root and represents an experiment. Users need a high-level way to:
- Discover experiments
- See canonical baseline per case
- View number of executions
- Navigate to case detail
A dedicated page is cleaner and more scalable than introducing a group-by toggle in simulation browsing.
Describe the solution you'd like
Proposed Solution
1. Add Route
/cases
2. Browse Cases Page (Table)
Columns:
- Case Name (primary)
- Case Group (if implemented)
- Canonical Simulation (execution_id)
- Total Simulations
- Last Updated
- Details
Case Name is dominant on this page.
3. Case Detail Page
Route:
/cases/{id}
Display:
- Case metadata
- Case Group (if available)
- Canonical Simulation (execution_id)
- Nested simulation summary table
Nested table columns:
- Execution ID (primary within table)
- Status
- Canonical flag
- Change count
- Simulation Dates
- View Details
Execution ID is primary within the nested table.
4. Data Usage
Use existing Case aggregate-root endpoints.
Do not load heavy simulation detail data for case listing pages.
5. Case-Level Filtering
Add filters to /cases:
- Case Name (search)
- Case Group (if implemented)
- Canonical Present (Yes / No)
- Simulation Count range (optional, stretch)
Filters apply at the Case level only.
Do not modify existing simulation browsing filters in this issue.
Describe alternatives you've considered
Adding a “Group by Case” toggle to the simulation browser.
Rejected due to pagination and filtering complexity.
Additional context
This PR introduces new pages only.
No changes to existing simulation page behavior.