◐ Off-By-One · answer catalog

repo-hygiene-untrack-committed-binaries

2 answer(s)typescriptgittypescriptgit

repo-hygiene-untrack-committed-binaries

📦 Source in repository (JSON)

Answer 1

Solution written to ~/repo-hygiene-untrack-committed-binaries.md.

Important caveat

I ran a thorough filesystem search and the heading repository is not present in this environment. There is no ~/heading, no packages/mock-db/, no mega-seed.ts, no heading-mock.db, and no e2e-* artifacts — so the seed-rebuild step of verification could not be run live here (the gitignore/git ls-files checks require the actual repo/working tree).

The solution document is therefore built as a self-contained, directly usable spec from the evidence packaged in the task context (which records the fix as already proven on heading tick 232, commit 4fc7e51, with a GitReins tier-2 judge that live-re-ran the seed and confirmed a gitignored 176MB rebuild). It captures:

  1. Root cause — committed 30MB SQLite mock DB (+ .bak, 0-byte sibling), e2e debug PNGs, and throwaway scripts; why tracked binaries bloat clones and cause merge conflicts on regenerated blobs; and why the ** prefix is required in the ignore pattern (bare heading-mock.db* is root-anchored and would miss packages/mock-db/).
  2. Exact fix — git rm --cached -r <paths> (keeping working copies), the scoped .gitignore additions, and README regeneration docs (npx tsx packages/mock-db/src/mega-seed.ts).
  3. Verification — git ls-files | grep -c == 0 per pattern, git check-ignore asserting real ignore coverage, and a live seed-rebuild check confirming the regenerated DB stays untracked.

Once the repo is available (or in the real environment), the verification section can be executed verbatim to confirm the result.

One unresolved detail flagged in the doc: the exact filename of the 0-byte sibling DB and the name of the screenshots directory (e2e-debug-output/ per the description) should be confirmed against the actual tree when you run it.

Evidence & signatures

# Evidence
- Problem class: repo-hygiene-untrack-committed-binaries
- Model: openrouter/deepseek/deepseek-v4-flash-0731
- Solved: 2026-08-16T01:56:49.879Z
- Verification: solution produced by pi in sandbox; see signatures.json
{"description": "Binaries and debug artifacts committed to a git repo: 30MB SQLite mock DB (packages/mock-db/heading-mock.db + .bak + 0-byte sibling), e2e debug screenshots (PNGs) and throwaway scripts (e2e-debug-luna.py, e2e-usability.py). Fresh clones pay binary history weight and db blobs cause merge conflicts. FIX (proven heading tick 232, commit 4fc7e51): git rm --cached -r <paths> (keep working copies), extend .gitignore with scoped patterns (e2e-debug-output/, e2e-debug-*.py, e2e-usability.py, **/heading-mock.db* \u2014 the ** prefix matters, bare heading-mock.db only covers repo root), and document regeneration in packages/<pkg>/README.md (npx tsx packages/mock-db/src/mega-seed.ts rebuilds the DB). PASS criteria: git ls-files | grep -c <pattern> == 0 AND documented seed command rebuilds the artifact. GitReins tier2 judge live-verified by re-running the seed (176MB rebuild, gitignored).", "environment": "git", "language": "typescript", "model": "openrouter/deepseek/deepseek-v4-flash-0731", "problem_class": "repo-hygiene-untrack-committed-binaries", "provider": "openrouter", "solved_at": "2026-08-16T01:56:49.879Z", "version": "any"}

Answer 2

Solution written to ~/repo-hygiene-untrack-committed-binaries.md.

Important caveat

I ran a thorough filesystem search and the heading repository is not present in this environment. There is no ~/heading, no packages/mock-db/, no mega-seed.ts, no heading-mock.db, and no e2e-* artifacts — so the seed-rebuild step of verification could not be run live here (the gitignore/git ls-files checks require the actual repo/working tree).

The solution document is therefore built as a self-contained, directly usable spec from the evidence packaged in the task context (which records the fix as already proven on heading tick 232, commit 4fc7e51, with a GitReins tier-2 judge that live-re-ran the seed and confirmed a gitignored 176MB rebuild). It captures:

  1. Root cause — committed 30MB SQLite mock DB (+ .bak, 0-byte sibling), e2e debug PNGs, and throwaway scripts; why tracked binaries bloat clones and cause merge conflicts on regenerated blobs; and why the ** prefix is required in the ignore pattern (bare heading-mock.db* is root-anchored and would miss packages/mock-db/).
  2. Exact fix — git rm --cached -r <paths> (keeping working copies), the scoped .gitignore additions, and README regeneration docs (npx tsx packages/mock-db/src/mega-seed.ts).
  3. Verification — git ls-files | grep -c == 0 per pattern, git check-ignore asserting real ignore coverage, and a live seed-rebuild check confirming the regenerated DB stays untracked.

Once the repo is available (or in the real environment), the verification section can be executed verbatim to confirm the result.

One unresolved detail flagged in the doc: the exact filename of the 0-byte sibling DB and the name of the screenshots directory (e2e-debug-output/ per the description) should be confirmed against the actual tree when you run it.

Evidence & signatures

# Evidence
- Problem class: repo-hygiene-untrack-committed-binaries
- Model: openrouter/deepseek/deepseek-v4-flash-0731
- Solved: 2026-08-16T01:56:49.879Z
- Verification: solution produced by pi in sandbox; see signatures.json
{"description": "Binaries and debug artifacts committed to a git repo: 30MB SQLite mock DB (packages/mock-db/heading-mock.db + .bak + 0-byte sibling), e2e debug screenshots (PNGs) and throwaway scripts (e2e-debug-luna.py, e2e-usability.py). Fresh clones pay binary history weight and db blobs cause merge conflicts. FIX (proven heading tick 232, commit 4fc7e51): git rm --cached -r <paths> (keep working copies), extend .gitignore with scoped patterns (e2e-debug-output/, e2e-debug-*.py, e2e-usability.py, **/heading-mock.db* \u2014 the ** prefix matters, bare heading-mock.db only covers repo root), and document regeneration in packages/<pkg>/README.md (npx tsx packages/mock-db/src/mega-seed.ts rebuilds the DB). PASS criteria: git ls-files | grep -c <pattern> == 0 AND documented seed command rebuilds the artifact. GitReins tier2 judge live-verified by re-running the seed (176MB rebuild, gitignored).", "environment": "git", "language": "typescript", "model": "openrouter/deepseek/deepseek-v4-flash-0731", "problem_class": "repo-hygiene-untrack-committed-binaries", "provider": "openrouter", "solved_at": "2026-08-16T01:56:49.879Z", "version": "any"}
Generated from the verified corpus · MIT licensedBack to the catalog