- Fix#2: _executeStatements fallback now batches transactions (150/batch)
and reorders upsert-before-delete to prevent data loss on payload overflow
- Fix#3: Read/write migratedToAuthority marker in chat_metadata to prevent
re-overwriting from legacy sources after Authority migration
- Fix#1: Add OPFS → Authority migration channel (exportOpfsSnapshotForChat,
maybeImportLegacyOpfsSnapshotToLocalStore) inserted before IndexedDB in
migration chain
- Fix#4: Mark runtimeVectorIndexState dirty with triviumRebuildRequired
and trigger submitAuthorityVectorRebuildJob after all three migration paths
- Fix#5: Dual-save safety snapshots to Authority blob; rollback can now
recover from blob when local IndexedDB snapshot is unavailable
- Fix#6: Add isEmptyCheck detail and console.warn for near-empty stores
to help diagnose residual vs real data in store-not-empty skips
- Fix#7: Add overflow warning logs and sessionStorage persistence for
Authority offline queue max-items/max-bytes exceeded events
- Restructure all 7 task templates: add assistant identity-ack and info-ack blocks, restore reference materials to system role, keep only format+rules as user tail
- Fix writeJsonFile treating empty serializedText as valid (opfs-persistence flake)
- Fix shared-ranking test: strip diagnostic lastSearchTimings from side-effect comparison
- Update all related test assertions (prompt-builder-defaults, task-profile-migration, task-profile-storage, prompt-builder-mixed-transcript, p0-regressions, extractor-phase3-layered-context)