docs(roadmap): sync snapshot with legacy access and contract cleanup
Made-with: Cursor
This commit is contained in:
parent
7884639876
commit
eb70ef6c03
@ -25,7 +25,7 @@ It assumes:
|
||||
- `[x]` done
|
||||
- `[!]` blocked / decision needed
|
||||
|
||||
### Implementation snapshot as of `2026-04-04`
|
||||
### Implementation snapshot as of `2026-04-05`
|
||||
|
||||
- [x] Monorepo foundation scaffolded with root workspace config, shared runtime, shared product identity, local package linking, and verification scripts
|
||||
- [x] Backend migrated into `backend/` and passing typecheck, build, test, and backend verification gates
|
||||
@ -48,8 +48,13 @@ It assumes:
|
||||
- [x] Runtime order, trade-history, manual-entry, order-activity, and reconciliation-audit repositories now use Cosmos-backed trading-record storage instead of the legacy service layer
|
||||
- [x] Runtime sub-tag repair now operates through the Cosmos-backed order repository
|
||||
- [x] Root verification and lint flows now run successfully without sandbox-hostile script harness behavior
|
||||
- [-] DRY cleanup completed for runtime/config/bootstrap concerns, shared websocket auth helpers, platform-session handling, and request tracing, but not yet for all persistence and feature-flag concerns
|
||||
- [-] Cosmos-only execution persistence is now in place for the main backend runtime paths; remaining cleanup is removing dormant legacy code paths and reference scripts
|
||||
- [x] Web runtime no longer instantiates a live Supabase browser client; legacy import paths fail fast with an explicit unsupported message
|
||||
- [x] Backend startup validation treats Cosmos as a first-class per-user credential store (alongside optional legacy Supabase) when `.env` broker keys are placeholders
|
||||
- [x] Cosmos-first repositories no longer take an injected legacy service handle for users, profiles, presets, snapshots, capital ledger, or strategy presets; legacy Postgres reads/writes go through `legacySupabaseClient.ts`
|
||||
- [x] `apiServer` no longer imports `SupabaseService`; admin-scoped HTTP behavior uses `isTradingAdmin` (platform JWT role first, then legacy user-store admin flag)
|
||||
- [x] Shared order/reconciliation row types live in `tradingPersistenceTypes.ts`; trading user row shape lives in `tradingUserTypes.ts` (with `SupabaseService` re-exporting for compatibility)
|
||||
- [-] DRY cleanup is largely complete for runtime/config/bootstrap, websocket auth helpers, platform-session handling, request tracing, persistence type layering, legacy access surface, and the backtest feature-flag contract; **optional follow-ups:** shrink `SupabaseService.ts`, tighten root-level script imports, admin audit schema
|
||||
- [-] Cosmos-only execution persistence is in place for main `backend/src` runtime paths; **remaining:** many one-off `backend/*.ts` maintenance scripts still import `supabaseService` directly; classify or migrate over time
|
||||
|
||||
## 3. Guiding Rules
|
||||
|
||||
@ -614,3 +619,5 @@ Reason:
|
||||
- [x] Finish remaining web direct legacy data-table reads and writes behind backend APIs
|
||||
- [x] Replace remaining transitional web auth compatibility surfaces with fully common-platform-native session handling
|
||||
- [x] Add release smoke coverage for web auth/kill-switch and mobile auth/kill-switch flows
|
||||
- [ ] Audit root-level `backend/*.ts` scripts: migrate `getClient`-only usage to `legacySupabaseClient` where practical, or document intentional direct `supabaseService` use
|
||||
- [ ] Phase 2 backlog still open: module layout under `backend/src`, legacy module classification, generic lib split, typed API contract sweep, websocket models, admin audit schema, deprecated-endpoint / legacy compatibility documentation
|
||||
|
||||
Loading…
Reference in New Issue
Block a user