Commit Graph

15 Commits

Author SHA1 Message Date
Bu5hm4nn
98e3208b5e fix(review): address PR review findings for CORE-003
Critical fixes:
- Add math.isfinite() check to reject NaN/Infinity in _safe_quote_price
- Raise TypeError instead of silent 0.0 fallback in price_feed.py
- Use dict instead of Mapping for external data validation

Type improvements:
- Add PortfolioSnapshot TypedDict for type safety
- Add DisplayMode and EntryBasisMode Literal types
- Add explicit dict[str, Any] annotation in to_dict()
- Remove cast() in favor of type comment validation
2026-03-30 00:39:02 +02:00
Bu5hm4nn
887565be74 fix(types): resolve all mypy type errors (CORE-003)
- Fix return type annotation for get_default_premium_for_product
- Add type narrowing for Weight|Money union using _as_money helper
- Add isinstance checks before float() calls for object types
- Add type guard for Decimal.exponent comparison
- Use _unit_typed and _currency_typed properties for type narrowing
- Cast option_type to OptionType Literal after validation
- Fix provider type hierarchy in backtesting services
- Add types-requests to dev dependencies
- Remove '|| true' from CI type-check job

All 36 mypy errors resolved across 15 files.
2026-03-30 00:05:09 +02:00
Bu5hm4nn
dac0463d55 feat(DISPLAY-002): GLD mode shows real share prices 2026-03-28 21:45:00 +01:00
Bu5hm4nn
1a39956757 feat(PORTFOLIO-001): add position-level portfolio entries 2026-03-28 21:29:30 +01:00
Bu5hm4nn
3b98ebae69 feat(DATA-004): add underlying instrument selector 2026-03-28 16:40:18 +01:00
Bu5hm4nn
aae67dfd9b fix(workspaces): seed new defaults from live quote 2026-03-25 19:48:58 +01:00
Bu5hm4nn
782e8f692e fix(portfolio): default new workspaces to 100 oz 2026-03-25 19:42:54 +01:00
Bu5hm4nn
132aaed512 feat(CORE-001D1): harden unit-aware workspace persistence 2026-03-25 13:19:33 +01:00
Bu5hm4nn
75f8e0a282 feat(PORT-004A): add workspace bootstrap and scoped settings 2026-03-24 20:18:12 +01:00
Bu5hm4nn
d0b1304b71 feat(PORT-002): add alert status and history 2026-03-24 11:04:32 +01:00
Bu5hm4nn
56e84680e8 feat(PORT-001A): add collateral entry basis settings 2026-03-24 00:38:13 +01:00
Bu5hm4nn
140a21c0b6 chore: enforce linting as part of build 2026-03-24 00:26:36 +01:00
Bu5hm4nn
70ec625146 feat(DATA-002): add live GLD options chain data via yfinance 2026-03-23 22:53:08 +01:00
Bu5hm4nn
80a8ffae0c feat(PORT-001): Add persistent portfolio configuration with validation
- Create PortfolioConfig dataclass with validation
- Add PortfolioRepository for file-based persistence
- Update settings page with live LTV calculations
- Add real-time calculated displays (LTV, margin buffer, margin call price)
2026-03-23 22:27:09 +01:00
Bu5hm4nn
00a68bc767 Initial commit: Vault Dashboard for options hedging
- FastAPI + NiceGUI web application
- QuantLib-based Black-Scholes pricing with Greeks
- Protective put, laddered, and LEAPS strategies
- Real-time WebSocket updates
- TradingView-style charts via Lightweight-Charts
- Docker containerization
- GitLab CI/CD pipeline for VPS deployment
- VPN-only access configuration
2026-03-21 19:21:40 +01:00