Block a user
make test is effectively a no-op: Go tests are compile stubs, frontend has no test framework
Add .prettierrc/.prettierignore, stop reformatting REPO_POLICIES.md, and make fmt-check cover markdown
Dockerfile does not implement the mandated fail-fast lint stage, and does not pass VERSION as a build ARG
make test: adopt the mandated timeout/race/cover + conditional verbose rerun pattern
Implementation plan
Branching from main (d6cd418) into a temporary worktree on branch
make-test-policy-pattern.
1. Makefile test: target — replace the bare invocation with the…
age identity .String() creates unprotected copies of private keys at six call sites
Pin every developer tool install by hash; make local lint match CI
Remediate lint findings surfaced by the standard .golangci.yml
Correction to my previous comment — I got the diagnosis partly wrong and want the record straight.
I said chunk 2 was "unpushed work at risk on golangci-v2.12.2". That was
wrong. The branch…
README accuracy sweep: architecture omissions, undocumented state field, overclaimed MAINTENANCE_MODE and /metrics
POST /api/v1/reports is unauthenticated, wildcard-CORS, and unrated-limited
GetSecretVersion copies decrypted secrets out of locked memory into plain []byte
Rewrite script/test to the canonical pattern (30s timeout, -race -cover, conditional verbose rerun)
Remediate remaining lint findings under the canonical golangci-lint config (closes #61, closes #59)
Remediate remaining lint findings under the canonical golangci-lint config (closes #61, closes #59)
Closing this PR as empty — correcting my own earlier analysis.
origin/golangci-v2.12.2 and origin/main have identical tree
hashes:
git rev-parse origin/main^{tree} origin/golangci-v2…
KeychainData holds the age key passphrase as a plain string through JSON marshalling
DECISION NEEDED: DNSWATCHER_SENTRY_DSN is documented and accepted but does nothing
Add real end-to-end tests for the freshen and fetch commands
memguard lifecycle is not wired up: Ctrl-C and error exits leave key material in locked memory unwiped
DECISION: golangci-lint version is unpinned and this repo has no org-blessed place to pin it
In-flight notification goroutines are not awaited at shutdown, so alerts are lost
Backend hardening: missing IdleTimeout/ReadHeaderTimeout, no security headers, no trusted-proxy client IP