You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
pkgs/id: stale runtime .identity.db databases tracked in git (4 + 22 local identity rows); successor .identity.redb not gitignored #372
Two stale runtime identity databases are tracked in git:
pkgs/id/.identity.db — SQLite 3 database, identities table with 4 rows
pkgs/id/e2e/.identity.db — SQLite 3 database, identities table with 22 rows
Evidence (verified on main a00dd292)
git ls-files -s pkgs/id/.identity.db pkgs/id/e2e/.identity.db — both tracked as regular files.
Schema is runtime state, not a fixture: identities(client_id TEXT, name TEXT, created_at INTEGER, updated_at INTEGER) — locally registered identities accumulated by running the server.
No current code reads either file. git grep -F ".identity.db" finds only a design ledger (thoughts/ledgers/CONTINUITY_ses_2b82.md) describing the old libsql design: "Store in encrypted Turso/libsql DB (.identity.db next to .iroh-key)".
The current code uses a different filename: pkgs/id/src/commands/serve.rs:1098 constructs .identity.redb (Path::new(KEY_FILE).with_file_name(".identity.redb")).
The e2e suite does not use it as a seed/fixture: no reference in pkgs/id/e2e/ (Playwright config starts ephemeral servers: ../target/debug/id serve --web --ephemeral).
Nothing ignores the pattern: pkgs/id/.gitignore contains only .iroh* and test.*; git check-ignore pkgs/id/.identity.db returns nothing. The neighbouring runtime key material is ignored via .iroh*, but the identity DB escapes that pattern — and the current .identity.redb runtime file is not ignored either, so it is one accidental git add -A away from the same problem.
History: the files arrived in bulk April commits (c0a30175 "idk stuff from april").
This is the same class as #367 (.opencode/ runtime state) and #370 (.claude/settings.local.json), but a distinct location those issues do not cover. Single-repo: no .identity.db is tracked in developing-today/opencode, developing-today/openchamber, or dezren39/nix (checked git ls-files in all three).
Why it matters
Local identity registrations (names/client IDs and timestamps from whoever ran the server) leak into the shared repo and go stale immediately.
A stale DB checked out fresh can be mistaken for a seed/fixture, and if the old libsql path is ever revived it would silently load April's identities.
The un-ignored .identity.redb successor is the live version of the same hazard.
Acceptance criteria
git ls-files pkgs/id/.identity.db pkgs/id/e2e/.identity.db is empty (both untracked).
git check-ignore matches .identity.db and .identity.redb under pkgs/id/ (including the e2e/ subdirectory) so neither runtime DB can be re-committed.
No code, test, or e2e configuration references either tracked file (already verified — please re-check before removing).
Activity
Merge pull request #373 from developing-today/creator/372-identity-db…