Problem
A profile authority (~/.tracedecay/global.db: project registry, profile configuration, usage accounting) whose persisted shape this binary refuses forces tracedecay wipe --all --yes, which deletes every project's code index, graph and session stores too.
Reproduction on origin/master (896d03f) with an isolated profile: init a git project, stop the daemon, give global.db the v1.0.0-beta.63 graph_scopes shape (with db_relpath, the shape #2747 retired), restart the daemon:
$ tracedecay tool tracedecay_search --args '{"query":"probe","format":"json"}'
Error: tracedecay_search refused the request (application.surface.reset_required): The application store requires an explicit reset
("detail": null — no authority, no remedy)
$ tracedecay doctor
! ... The project registry requires an explicit reset with `tracedecay wipe --all --yes`: database error: table 'graph_scopes' has an incompatible number of columns ...
$ tracedecay wipe --stale --yes
Error: config error: profile authority requires reset (project registry persisted shape requires reset: database error: table 'graph_scopes' has an incompatible number of columns (operation: validate global database authority schema)) and is not reset on its own; run `tracedecay wipe --all --yes`. Nothing was wiped.
The daemon log records store_reset_required store=profile authority authority=project registry remedy=tracedecay wipe --all --yes.
Expected
Like the session stores (#2613, #2648), the profile authority is a scoped-reset store:
reset_required_stores lists it with remedy tracedecay wipe --stale --yes;
wipe --stale --yes deletes exactly global.db (+ -wal/-shm), leaves every other profile file byte-identical, and the daemon recreates it empty;
- each project store records its own root and identity, so the projects are registered again from their store manifests (exact
tracedecay init <root> commands printed), with no migration and no re-index;
- refusals name the authority and the scoped command instead of a detail-less
application.surface.reset_required.
The remedy text says what the reset loses (registry, profile configuration, usage accounting) and what it keeps.
Problem
A profile authority (
~/.tracedecay/global.db: project registry, profile configuration, usage accounting) whose persisted shape this binary refuses forcestracedecay wipe --all --yes, which deletes every project's code index, graph and session stores too.Reproduction on
origin/master(896d03f) with an isolated profile: init a git project, stop the daemon, giveglobal.dbthe v1.0.0-beta.63graph_scopesshape (withdb_relpath, the shape #2747 retired), restart the daemon:The daemon log records
store_reset_required store=profile authority authority=project registry remedy=tracedecay wipe --all --yes.Expected
Like the session stores (#2613, #2648), the profile authority is a scoped-reset store:
reset_required_storeslists it with remedytracedecay wipe --stale --yes;wipe --stale --yesdeletes exactlyglobal.db(+-wal/-shm), leaves every other profile file byte-identical, and the daemon recreates it empty;tracedecay init <root>commands printed), with no migration and no re-index;application.surface.reset_required.The remedy text says what the reset loses (registry, profile configuration, usage accounting) and what it keeps.