Decide: do the public repos keep the game screenshots in docs/re/captures/?
#49
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
docs/re/captures/is 82 MB of screenshots and logs captured from the running game. #23 flagged the size and the policy question when it landed the F5/F6 corpus, deliberately without blocking on it. Both repos are public — this API serves issues to an unauthenticated client — so this is a decision, not a cleanup.The evidence is load-bearing:
docs/re/f5-*/f6-*pages cite individual captures by name, and a finding whose evidence is gone is a claim. Options, roughly in increasing cost:A history rewrite to remove them is possible and not recommended: it invalidates every commit id the corpus cites, and the frames stay in anyone's existing clone anyway.
Human's call. Filed because the decision has been carried in session notes rather than here.
Decided: no. The repos carry code, tooling and docs only — no game assets.
Already satisfied: the ISO lives outside the repo, and
sylpheed.dbandexport/are gitignored, so none of those were ever committed.What is actually committed, measured on
main@d6fb3169:docs/re/captures/**)*.bin)The screenshots are frames of the retail game and go. The derived measurement tables are our own numbers, not game content, and stay — they are what the pages cite as evidence.
⚠️ Removing them from
HEADdoes not remove them from the repository. The blobs stay in history, and a freshgit clonestill downloads all 76 MB. Actually purging them needs a history rewrite and a force-push to a public repo, which invalidates every existing clone — that is a separate decision, not implied by this one.Two further consequences to weigh, since the corpus's whole method is measure, don't infer:
tools/re/check-capture-citationsexists to guarantee a cited capture is present. Its contract inverts: it would need to enforce that no game asset is committed instead.Implementation is being scoped now.
Implemented and verified. This can be closed.
The decision above was carried out in full, including the history rewrite that the original post recommended against — that was taken as a separate human decision on 2026-09-19, not implied by this one.
What landed
.gitignore, andcheck-capture-citations' contract inverted)git filter-repo+ force-push, run by hand from a guarded runbook with verified backupsMeasured on
main@bfe590c6HEAD.gitA fresh clone no longer downloads a single frame of the retail game.
The two consequences the decision flagged
"203 PNG citations across 75 pages go dead." They did not. The captures live on disk at
docs/re/captures/, gitignored, bind-mounted read-write into both agent containers, so the host and both agents see the same file. Presence is now read from the working tree, not from git — asking the index would report every screenshot as missing."
check-capture-citations' contract inverts." Done. It asserts both halves now: a citation with no file fails, and a tracked game asset fails. The second half is the one that has to stay loud — a screenshot that sneaks back in is invisible in review (Bin 0 -> 1234567 bytes) and permanent once merged.Cross-machine evidence goes on the issue or PR as an attachment, per the evidence table in
docs/agents/PROTOCOL.md. Derived measurements (csv/tsv/txt/log/json) stayed tracked, as decided — they are our numbers, not game content.One thread this does not close
The other desktop (
fabi-MS-7C37) still has to re-clone and takecaptures-2026-09-19.tar.gzfrom the backup. Until it does, its citations resolve to nothing — the check reports that case explicitly rather than failing, so it will say so plainly instead of looking broken.