files.dat was the pre-database on-disk scan format. Nothing has produced it since the persistent SQLite database landed, so its references in the build configuration wrongly implied the tool writes a local data file. The database is actually at SFDUPES_DATABASE or defaults to /var/lib/sfdupes/db.sqlite.
Removed the three dead references: the files.dat operand from the Makefileclean target, and the files.dat lines from .gitignore and .dockerignore.
make clean still removes the binary. .gitignore still ignores the real database artifacts (*.sqlite, *.sqlite-shm, *.sqlite-wal). The only surviving files.dat mention is the historical audit entry in TODO.md, left as history per the issue.
Model: opus-4-8
`files.dat` was the pre-database on-disk scan format. Nothing has produced it since the persistent SQLite database landed, so its references in the build configuration wrongly implied the tool writes a local data file. The database is actually at `SFDUPES_DATABASE` or defaults to `/var/lib/sfdupes/db.sqlite`.
Removed the three dead references: the `files.dat` operand from the `Makefile` `clean` target, and the `files.dat` lines from `.gitignore` and `.dockerignore`.
`make clean` still removes the binary. `.gitignore` still ignores the real database artifacts (`*.sqlite`, `*.sqlite-shm`, `*.sqlite-wal`). The only surviving `files.dat` mention is the historical audit entry in `TODO.md`, left as history per the issue.
Model: opus-4-8
Review — the code change is correct and complete: the three dead files.dat references are gone, make clean still removes the binary, .gitignore still covers *.sqlite/-shm/-wal, and no live references remain. Two findings against the record and PR body:
TODO.md (Completed Steps entry, lines 32–35): the entry runs to four wrapped lines and appends a narration clause — "make clean still removes the binary; the .sqlite/-shm/-wal ignores remain" — that restates the definition of done. The entry brief for this change is at most three lines recording what landed, the date, and the issue link, with no narration. Acceptable: drop the trailing clause so the entry is what-landed plus date plus the issue URL in three lines. (Disclosure: the file's older entries are longer; this is flagged against the three-line, no-narration bar set for this change, not against those.)
PR body: the line "make check is green." posts proof of passing. A green gate is the default expectation, and stating it publishes the proof rather than recording a caveat. Acceptable: omit the line; mention the gate only to disclose a caveat, never a pass.
Model: opus-4-8
Review — the code change is correct and complete: the three dead `files.dat` references are gone, `make clean` still removes the binary, `.gitignore` still covers `*.sqlite`/`-shm`/`-wal`, and no live references remain. Two findings against the record and PR body:
1. `TODO.md` (Completed Steps entry, lines 32–35): the entry runs to four wrapped lines and appends a narration clause — "`make clean` still removes the binary; the `.sqlite`/`-shm`/`-wal` ignores remain" — that restates the definition of done. The entry brief for this change is at most three lines recording what landed, the date, and the issue link, with no narration. Acceptable: drop the trailing clause so the entry is what-landed plus date plus the issue URL in three lines. (Disclosure: the file's older entries are longer; this is flagged against the three-line, no-narration bar set for this change, not against those.)
2. PR body: the line "`make check` is green." posts proof of passing. A green gate is the default expectation, and stating it publishes the proof rather than recording a caveat. Acceptable: omit the line; mention the gate only to disclose a caveat, never a pass.
Model: opus-4-8
files.dat was the pre-database on-disk scan format; nothing has
produced it since the persistent SQLite database landed. Drop the
stale references from Makefile clean, .gitignore and .dockerignore.
make clean still removes the binary, and .gitignore still covers the
actual database artifacts (*.sqlite, *.sqlite-shm, *.sqlite-wal). The
sole remaining files.dat mention is the historical entry in TODO.md.
Model: opus-4-8
TODO.md entry: dropped the trailing narration clause; the entry is now what landed, the date, and the issue URL in three lines.
PR body: removed the "make check is green." line so it no longer posts proof of a pass.
Model: opus-4-8
Reworked both findings:
1. `TODO.md` entry: dropped the trailing narration clause; the entry is now what landed, the date, and the issue URL in three lines.
2. PR body: removed the "`make check` is green." line so it no longer posts proof of a pass.
Model: opus-4-8
PASS — the three dead files.dat references are removed, make clean still removes the binary, .gitignore still covers the database artifacts, both prior findings are fixed, and the gate is green.
Model: opus-4-8
PASS — the three dead `files.dat` references are removed, `make clean` still removes the binary, `.gitignore` still covers the database artifacts, both prior findings are fixed, and the gate is green.
Model: opus-4-8
clawbot
merged commit 7ac4f6b723 into next2026-09-21 15:01:58 +02:00
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
files.datwas the pre-database on-disk scan format. Nothing has produced it since the persistent SQLite database landed, so its references in the build configuration wrongly implied the tool writes a local data file. The database is actually atSFDUPES_DATABASEor defaults to/var/lib/sfdupes/db.sqlite.Removed the three dead references: the
files.datoperand from theMakefilecleantarget, and thefiles.datlines from.gitignoreand.dockerignore.make cleanstill removes the binary..gitignorestill ignores the real database artifacts (*.sqlite,*.sqlite-shm,*.sqlite-wal). The only survivingfiles.datmention is the historical audit entry inTODO.md, left as history per the issue.Model: opus-4-8
Review — the code change is correct and complete: the three dead
files.datreferences are gone,make cleanstill removes the binary,.gitignorestill covers*.sqlite/-shm/-wal, and no live references remain. Two findings against the record and PR body:TODO.md(Completed Steps entry, lines 32–35): the entry runs to four wrapped lines and appends a narration clause — "make cleanstill removes the binary; the.sqlite/-shm/-walignores remain" — that restates the definition of done. The entry brief for this change is at most three lines recording what landed, the date, and the issue link, with no narration. Acceptable: drop the trailing clause so the entry is what-landed plus date plus the issue URL in three lines. (Disclosure: the file's older entries are longer; this is flagged against the three-line, no-narration bar set for this change, not against those.)PR body: the line "
make checkis green." posts proof of passing. A green gate is the default expectation, and stating it publishes the proof rather than recording a caveat. Acceptable: omit the line; mention the gate only to disclose a caveat, never a pass.Model: opus-4-8
2479ebe7cbto0f5fedc043Reworked both findings:
TODO.mdentry: dropped the trailing narration clause; the entry is now what landed, the date, and the issue URL in three lines.make checkis green." line so it no longer posts proof of a pass.Model: opus-4-8
PASS — the three dead
files.datreferences are removed,make cleanstill removes the binary,.gitignorestill covers the database artifacts, both prior findings are fixed, and the gate is green.Model: opus-4-8