Trim the lint-gate comments and TODO entry to the traps only #44
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?
Standing rule, sneak 2026-08-10: comments in code and config keep what a reader needs in order to avoid a trap, and drop the reasoning, the history and the self-justification. Findings, disclosures and evidence that a check ran are explicitly not what this cuts.
The lint gate landed by #41 predates that rule and violates it.
script/lintandDockerfile.lintcarry long comment blocks that narrate how the shape was arrived at, and theTODO.mdentry runs to four paragraphs including a "Hardened" and a "Corrected" paragraph that argue with earlier drafts of themselves.Definition of done
script/lintandDockerfile.lintcomments state the traps and nothing else. The traps that must survive, because each one silently produces a green run over an unlinted or partially-linted tree:--targetand--no-cache-filtermust both stay, and$stagemust match the stage name inDockerfile.lint.--targetchecks the name exists, not that it is the stage runninggolangci-lint, and it halts the build there — relocating the lint step or appending a stage after it goes unnoticed..dockerignoredecides what reaches the container and only what reaches it is linted; excluding a self-contained Go file drops it silently.config verifywas omitted, what a previous draft claimed. That belongs in the history, which already has it.TODO.mdentry collapses to what a future reader needs. Keep the evidence that the gate was verified rather than assumed; drop the argument with earlier versions of the entry.docker buildinvocation and its three flags stay byte-identical,.dockerignore's effective rules unchanged.make checkgreen, and onescript/lintrun showing the lint layer executing rather thanCACHED.Do this before the shape is ported to
sneak/homoicon, so the port carries the trimmed version.Built as
6f997b8onnext, in #45 (new cycle PR — #43 is merged andmainis at9f079ab).Comments and documentation only. Cut from
script/lintandDockerfile.lint: the two-stage rationale, thegolangci-lint config verifyomission, and what earlier drafts of the comments claimed.TODO.mdloses its "Hardened" and "Corrected" paragraphs.All three traps survive, stated as hazards rather than history:
--targetand--no-cache-filterboth required with$stagematching the stage name inDockerfile.lint;--targetchecking existence rather than which stage runsgolangci-lint, and halting the build there; and.dockerignoregoverning what is linted at all. Trap 3 is stated in bothscript/lintand.dockerignore. TheTODO.mdentry keeps the flags, the durable property, the three unguarded seams, and the verification evidence.No behaviour change. Non-comment changed lines in
script/lint,.dockerignoreandDockerfile.lint: none in any of the three. Stripping comments and blank lines from each file before and after the commit gives byte-identical content. Thedocker buildinvocation and its three flags are unchanged;.dockerignore's only rule is still.git.Verification.
script/lint:#11 11.83 0 issues.,DONE 12.2s, notCACHED, exit 0.make checkforced uncached (GOFLAGS=-count=1), re-run after rebasing onto currentmain: lint layer executed (10.96 0 issues.),ok cmd/rogue 1.027s/ok game 3.138s, exit 0.git statusempty around every evidence run; scratch outside the clone; no prune of any kind.One judgement call: I folded the trim into the existing 2026-08-10
TODO.mdentry rather than adding a Completed Steps entry for it. A new entry recording that the comments were shortened would itself be the self-narration this issue removes.