feat: prioritize lazy options loading and live overview wiring

- queue OPS-001 Caddy route for vd1.uncloud.vpn
- lazy-load options expirations/chains per expiry
- wire overview to live quote data and persisted portfolio config
- extend browser test to verify live quote metadata
This commit is contained in:
Bu5hm4nn
2026-03-23 23:23:59 +01:00
parent d51fa05d5a
commit 133908dd36
6 changed files with 320 additions and 121 deletions

View File

@@ -237,11 +237,46 @@ DATA-001 (Price Feed)
---
## Fast Follow-up Backlog
### DATA-002A: Lazy Options Loading [P0, S] **[depends: DATA-002]**
**As a** trader, **I want** the options page to render immediately **so that** it feels responsive and usable.
**Acceptance Criteria:**
- Initial page load fetches only expirations plus one default expiry chain
- Changing expiry fetches that expiry on demand
- Browser test verifies `/options` becomes visible quickly
- No visible 500/runtime error during page load
**Dependencies:** DATA-002
### DATA-001A: Live Overview Price Wiring [P0, S] **[depends: DATA-001, PORT-001]**
**As a** portfolio manager, **I want** the overview cards to use live quote data **so that** the displayed spot/LTV values are trustworthy.
**Acceptance Criteria:**
- Overview page uses live quote from service instead of hardcoded `215.0`
- Display source and last updated timestamp
- Margin call / LTV calculations use configured portfolio values
- Browser test verifies overview renders with live data metadata
**Dependencies:** DATA-001, PORT-001
### OPS-001: Caddy Route for Production Dashboard [P1, S] **[depends: deploy-stable]**
**As a** VPN user, **I want** to reach the deployed dashboard at `vd1.uncloud.vpn` **so that** I can access it without SSH port forwarding.
**Acceptance Criteria:**
- Caddy route proxies `vd1.uncloud.vpn` to local deployment container
- Route works over the VPN only
- Health check succeeds through Caddy
- Deployment docs include the route and where it lives
**Dependencies:** stable deployed app on VPS
## Implementation Priority Queue
1. **DATA-001** - Unblock all other features
2. **PORT-001** - Enable user-specific calculations
3. **DATA-002** - Core options data
1. **DATA-002A** - Fix options UX/performance regression
2. **DATA-001A** - Remove misleading mock overview price
3. **OPS-001** - Add Caddy route once app behavior is stable
4. **DATA-003** - Risk metrics
5. **PORT-002** - Risk management safety
6. **EXEC-001** - Core user workflow