next -> main #45
Reference in New Issue
Block a user
Delete Branch "next"
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?
Release-cycle branch, opening a new cycle after #43 merged. One commit per work unit accumulates here.
Landed so far
6f997b8— trim the lint-gate comments to the traps (#44)Comments and documentation only, per sneak's 2026-08-10 rule that comments keep what a reader needs to avoid a trap and drop reasoning, history and self-justification.
Cut from
script/lintandDockerfile.lint: why the image has two stages, whygolangci-lint config verifywas omitted, and what earlier drafts of the comments claimed.TODO.mdloses its "Hardened" and "Corrected" paragraphs, which argued with earlier versions of themselves.Kept, because each silently yields a green run over an unlinted or partly linted tree:
--targetand--no-cache-filtermust both stay, and$stagemust match the stage name inDockerfile.lint.--targetchecks that the stage exists, not that it runsgolangci-lint, and halts the build there — relocating the lint step or appending a stage after it is not caught..dockerignoredecides what reaches the container and only what reaches it is linted; excluding a self-contained Go file drops it silently.The
TODO.mdentry keeps the flags, the durable property (the lint stage executes every run and is never served from cache), the three unguarded seams, and the evidence that the gate was verified rather than assumed.Evidence
No behaviour change. Changed lines that are not comments, in each touched file:
Stripping comments and blank lines from each file before and after the commit gives byte-identical content (
diffreports no difference for all three). Thedocker buildinvocation still reads--target "$stage" --no-cache-filter="$stage" --output=type=cacheonly -f Dockerfile.lint ., and.dockerignore's only rule is still.git.script/lintrun, lint layer executing:Not
CACHED.make checkgreen in full, forced uncached through the make target (GOFLAGS=-count=1), re-run after the rebase onto currentmain:Real durations, no
(cached).git statusempty around every evidence run; scratch kept outside the clone. No prune of any kind.Merged. Adversarial review skipped under the docs-only exception, which I verified rather than took from the PR body: stripping comments and blank lines from
script/lint,Dockerfile.lintand.dockerignoregives byte-identical files before and after, and the invocation still carries--target "$stage" --no-cache-filter="$stage" --output=type=cacheonly. All three traps survive in the trimmed comments.make checkgreen, run twice — the first came backok (cached)for both packages, which is not evidence the tests ran, so it was re-run forced: lint layer executed (0 issues., notCACHED),ok cmd/rogue 1.019s,ok game 2.998s.