Sync latest TrueGrowth updates
This commit is contained in:
26
openspec/changes/unify-local-data-persistence/tasks.md
Normal file
26
openspec/changes/unify-local-data-persistence/tasks.md
Normal file
@@ -0,0 +1,26 @@
|
||||
# Tasks: Unified local persistence
|
||||
|
||||
## 1. Specification
|
||||
- [x] 1.1 Create OpenSpec proposal, design, task list, and delta spec.
|
||||
- [ ] 1.2 Validate with `openspec validate unify-local-data-persistence --strict` once the OpenSpec CLI is available in this checkout.
|
||||
|
||||
## 2. Local API Storage
|
||||
- [x] 2.1 Resolve canonical desktop data and runtime paths for Electron and standalone Local API runs.
|
||||
- [x] 2.2 Initialize `truegrowth.sqlite` with tables for tasks, assets, project records, settings, workflow state, social publishing, and migration records.
|
||||
- [x] 2.3 Persist runtime tasks, cleared task IDs, runtime assets, workflow state, social publishing state, AIGCPanel state, and runtime settings to the ledger.
|
||||
- [x] 2.4 Preserve JSON shadow files for compatibility while preferring ledger reads.
|
||||
- [x] 2.5 Persist Drawnix workspace folders, boards, and workspace state through the Local API ledger while keeping IndexedDB as a shadow/offline fallback.
|
||||
|
||||
## 3. Migration And Diagnostics
|
||||
- [x] 3.1 Add storage diagnostics, migrate, export, and import endpoints.
|
||||
- [x] 3.2 Import legacy `.truegrowth-runtime` metadata without moving large files.
|
||||
- [x] 3.3 Report split roots, SQLite availability, and canonical path status.
|
||||
|
||||
## 4. Client And Verification
|
||||
- [x] 4.1 Add frontend Local API client helpers and types for the storage endpoints.
|
||||
- [x] 4.2 Run Node syntax checks, TypeScript checks, and targeted Local API verifier coverage.
|
||||
- [x] 4.3 Document remaining browser IndexedDB transition limits.
|
||||
|
||||
## Notes
|
||||
- OpenSpec strict validation is still pending because the local `openspec` CLI is not available in this checkout (`pnpm exec openspec ...` reports command not found).
|
||||
- Browser IndexedDB remains as an offline/shadow cache for Drawnix workspace and UI-only preferences; Local API/SQLite is now authoritative when the desktop Local API is reachable.
|
||||
Reference in New Issue
Block a user