feat(BT-003B): add event comparison drilldown
This commit is contained in:
@@ -13,7 +13,7 @@ notes:
|
||||
- Pre-alpha policy: we may cut or replace old features without backward compatibility until alpha is declared.
|
||||
- Alpha migration policy: once alpha is declared, compatibility only needs to move forward; backward migrations are not required.
|
||||
priority_queue:
|
||||
- BT-003B
|
||||
- DEV-DOCKER-001
|
||||
- PORT-003
|
||||
- BT-002
|
||||
- BT-001C
|
||||
@@ -41,14 +41,15 @@ states:
|
||||
- DATA-002A
|
||||
- DATA-001A
|
||||
- OPS-001
|
||||
- DEV-DOCKER-001
|
||||
- PORT-003
|
||||
- EXEC-001
|
||||
- EXEC-002
|
||||
- BT-002
|
||||
- BT-003
|
||||
- BT-003B
|
||||
- BT-001C
|
||||
in_progress: []
|
||||
in_progress:
|
||||
- BT-003B
|
||||
done:
|
||||
- DATA-001
|
||||
- DATA-002
|
||||
|
||||
@@ -1,14 +0,0 @@
|
||||
id: BT-003B
|
||||
title: Event Comparison Drilldown
|
||||
status: backlog
|
||||
priority: P1
|
||||
effort: M
|
||||
depends_on:
|
||||
- BT-003A
|
||||
tags: [backtesting, ui]
|
||||
summary: Explain why one ranked strategy beat another on the event comparison page.
|
||||
acceptance_criteria:
|
||||
- Selecting a ranked strategy shows daily path details.
|
||||
- UI exposes margin-call days, payoff realized, hedge cost, and final equity.
|
||||
- Worst LTV point and breach dates are highlighted.
|
||||
- Browser test verifies drilldown content updates when selecting a ranked result.
|
||||
@@ -0,0 +1,17 @@
|
||||
id: DEV-DOCKER-001
|
||||
title: Local Docker Bind Mount Integrity
|
||||
status: backlog
|
||||
priority: P0
|
||||
effort: S
|
||||
depends_on: []
|
||||
tags:
|
||||
- devops
|
||||
- docker
|
||||
- local-dev
|
||||
summary: Restore trustworthy local Docker validation by fixing the current empty bind-mount/import failure for `./app -> /app/app` under the local OrbStack workflow.
|
||||
acceptance_criteria:
|
||||
- `docker compose up -d --build` starts the local stack cleanly.
|
||||
- `docker compose ps` shows the app container healthy instead of restart-looping.
|
||||
- `docker compose run --rm --entrypoint python app -c 'import app.main'` succeeds.
|
||||
- Inside the app container, `/app/app` contains the repository's actual application files.
|
||||
- `/health` and at least one changed route can be validated against the Docker-served app, not only a direct local uvicorn process.
|
||||
@@ -0,0 +1,20 @@
|
||||
id: BT-003B
|
||||
title: Event Comparison Drilldown
|
||||
status: in_progress
|
||||
priority: P1
|
||||
effort: M
|
||||
depends_on:
|
||||
- BT-003A
|
||||
tags:
|
||||
- backtesting
|
||||
- ui
|
||||
summary: Explain why one ranked strategy beat another on the event comparison page.
|
||||
acceptance_criteria:
|
||||
- Selecting a ranked strategy shows daily path details.
|
||||
- UI exposes margin-call days, payoff realized, hedge cost, and final equity.
|
||||
- Worst LTV point and breach dates are highlighted.
|
||||
- Browser test verifies drilldown content updates when selecting a ranked result.
|
||||
progress_notes:
|
||||
- The drilldown UI and service models are implemented in `app/pages/event_comparison.py` and `app/services/event_comparison_ui.py`.
|
||||
- Focused unit coverage is green and direct local-browser validation against a fresh local uvicorn process succeeded.
|
||||
- Closure is waiting on the local Docker validation path because `docker compose up -d --build` currently surfaces an environment-specific empty bind-mount/import failure for `./app -> /app/app`.
|
||||
Reference in New Issue
Block a user