docs: correct the golangci-lint entry in TODO.md
All checks were successful
check / check (push) Successful in 2m49s

The entry claimed "all 747 findings", which was a first-pass count
rather than a total: golangci-lint's uniq-by-line reports at most one
issue per line, so clearing findings reveals more on the same lines.
Replace it with the re-measurements that are actually documented, and
record what the entry omitted: absorbing #55 after it merged, the
three behavior changes versus main, and the #102 deferral.
This commit is contained in:
clawbot
2026-08-09 14:10:43 +00:00
parent 586ce004b6
commit 63456c1365

21
TODO.md
View File

@@ -27,11 +27,22 @@ P1: implement blocked networks configuration to extend SSRF protection
`.golangci.yml` (v2 schema, `default: all` minus six disabled
linters, `lll` 88, tests included): bumped the pinned
`golangci/golangci-lint:v2.12.2-alpine` image in `Dockerfile` and the
release-archive sha256 pins in `script/bootstrap`; fixed all 747
findings the stricter config surfaced (notably `paralleltest`,
`wsl_v5`, `goconst`, `lll`, `noinlineerr`, `err113`, `errcheck`,
`testpackage` white-box test files renamed to
`*_internal_test.go`); three `//nolint:tagliatelle` directives keep
release-archive sha256 pins in `script/bootstrap`; fixed the findings
the stricter config surfaced (notably `paralleltest`, `wsl_v5`,
`goconst`, `lll`, `noinlineerr`, `err113`, `errcheck`, `testpackage`
white-box test files renamed to `*_internal_test.go`), including #55's
code absorbed after it merged, iterating the pinned linter to
`0 issues.`; no single finding total is substantiable, since
golangci-lint's `uniq-by-line` reveals new findings on a line as
others there are fixed — the documented re-measurements were 81 after
the #53 merge and 149 after the #55 merge; three behavior changes, so
not a pure no-op: `Cache.StoreVariant` now takes a `context.Context`
(`noctx`), so a cancelled request skips its best-effort accounting
row; `MetadataStorage.Store`'s cleanup defer was dead on `main` and
leaked `.tmp-*.json` on failure, now fixed with explicit removals; and
the `signing_key` validation error text gained `value too short: `;
the eviction loop's uncancellable context is deferred to #102 under a
`//nolint:contextcheck`; three `//nolint:tagliatelle` directives keep
the snake_case JSON wire/disk formats unchanged; `make check` green
- 2026-08-07 implement cache size management and eviction (closes
#51): new `cache_max_bytes` config key validated by the startup