[Phase 1] Implement the IndexedDB workspace repository and migrations #10

Closed
opened 2026-07-25 21:53:02 +00:00 by lost-rob0t · 0 comments
lost-rob0t commented 2026-07-25 21:53:02 +00:00 (Migrated from github.com)

Parent: #2
Depends on: #7, #9

Scope

  • Implement a typed IndexedDB repository for workspaces, graph snapshots, metadata, preferences, and bounded command history.
  • Add schema versioning and forward migrations.
  • Use atomic transactions for graph save and metadata updates.
  • Add create, list, load, save, duplicate, rename, and delete operations.
  • Detect quota, blocked-upgrade, corruption, and incompatible-version failures.

Acceptance criteria

  • Saved graphs survive refresh, browser restart, and offline startup.
  • Failed writes do not leave partial workspace state.
  • Migration fixtures upgrade without data loss.
  • Storage failures produce explicit recoverable UI states.
  • IndexedDB details do not leak into the graph core.
Parent: #2 Depends on: #7, #9 ## Scope - Implement a typed IndexedDB repository for workspaces, graph snapshots, metadata, preferences, and bounded command history. - Add schema versioning and forward migrations. - Use atomic transactions for graph save and metadata updates. - Add create, list, load, save, duplicate, rename, and delete operations. - Detect quota, blocked-upgrade, corruption, and incompatible-version failures. ## Acceptance criteria - Saved graphs survive refresh, browser restart, and offline startup. - Failed writes do not leave partial workspace state. - Migration fixtures upgrade without data loss. - Storage failures produce explicit recoverable UI states. - IndexedDB details do not leak into the graph core.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
nsaspy/quasar-ui#10
No description provided.