1.3 KiB
1.3 KiB
Rules
- Go runs only through
docker compose run --rm <test|vet|fmt|build>; the merge gate isdocker build .. - Tests first, in their own commit; the implementation follows in the next. A re-pin of seeded output is its own commit.
- One-line commit messages: no ticket prefix, no repo name, no authorship trailers.
- Hard tabs. No comment by default; delete a restatement, a rationale, history, or a file preamble.
- One spelling per result: reject the other at
New, and let the error name the spelling to use. - A standing choice a reader would relitigate goes under Decisions in the README, not in a comment.
- A README example is a
jsonblock that loads and renders as a category;readme_test.goruns every one. - Cyclomatic complexity is gated at 14: the table-shaped dispatches (
eachToken,calc.factor,walkPath) sit at 13–14 and stay whole; anything else that reaches 14 is decomposed.
Deferred
- Shipped-data de-duplication (2026-09-02).
email.json'slocalis a drifted copy ofusername.json, and no shipped file yet uses a held path, an operand or a reference. Fixed in the data fill before the first tag, when the shipped set is rewritten anyway; premise: nothing depends on the shipped data's shape until then. Not raised in review before that.