← back to pin list

4j. Every open question says who answers it and what it is holding up

kerfmaster pin list · Big capabilities

recordStates what the code does today. Auditable against the code — this is the only type that can go stale.

Content last changed 2026-08-06 — computed from the item itself, not typed.

Contract — Cross-cutting stage

This contract describes the code as it runs today.

takes

makes

fails if A question parked without naming who can answer it; a question written inside one pin while it silently blocks five; a reference to a pin, defect or number that no longer exists; an answer that arrives and is not written back.

Contract last changed 2026-08-06 — computed, not typed. Dated separately from the text above, so neither date can speak for the other.

Built 2026-08-06. questions.json is the register; build_questions.py renders pinlist/questions.html and OPEN_QUESTIONS.md and audits itself. 25 questions: 22 open, 3 answered. Run it with python3 build_questions.py — it exits non-zero on register debt.

Three fields, and the third is the one that was missing

The finding: 6 pins are typed question, and 30 are waiting on one

The type system says where a question was written. It cannot say where a question lands. The scale convention lives on pin 14b and blocks five other pins, two artifacts and a whole stage; the material-code list lives on 4c and blocks the post. Written down inside one pin, a question is invisible to every other pin it also stops. Of 79 pins, 30 are named by an open question — and until now 6 of them said so.

The register audits itself, and the audit is why it is a file rather than a page

Every blocks reference must resolve against the real sources — pins.json, defects.json, corpus.json, evidence.json, the pipeline stage and artifact vocabulary read out of build_pins, and the filesystem. A register that can name something which does not exist is a register that will quietly outlive what it describes. It also refuses: a question with no answerer, a question that blocks nothing, an open question carrying an answer, an answered one without who and when, and — the check that closes the loop — any pin typed question that no open question names. Seventeen deliberate breakages were tried against it and every one was caught.

OPEN_QUESTIONS.md is now generated, because the hand-typed one had already gone stale

It carried the M-code glossary as an open question on 2026-08-06. Aristide supplied the glossary on 08-03 and Jordan ruled code by code on 08-04. Three days, one file, the same drift the pin types exist to stop — so the file stopped being typed. Answered questions are kept rather than deleted (Q23, Q24, Q25): an answered entry with who said what and when is the only proof the register closes anything.

Where it shows

Two questions carry a proposal

Where there is a recommendation already on the record, it is quoted so the answer can be a yes rather than an essay — the scale convention (do both and cross-check) and the SVG contradiction (the reader is small; the scope is not mine to add). The rest are genuinely open and say so.