feat(lenses): the commit-truth lens, repo-facts, as Gate 4
Every claim in every commit message, and in the documentation the range adds or changes, proven or gone. The lens's block kinds are text, doc and slot: a message unit is keyed on its text, the base and the code up to its commit (MessageDeps); a documentation unit on its file, its normalised text, the base and the code of the whole range (DocKeyParts); a diffstat on its text alone; whole:order and whole:absent are asked in slot passes of its own, never stored. A documentation file's diff header and a part the commit writes nothing in are a mechanical n/a. Budgets 60/40 for a text or doc block, 50/35 for a slot; one read. Gate 4, after the proofs, so the messages and documents are read once the code they describe has settled; the owner's gate is 5. The goldens that follow from the lens table are derived by tests/Goldens/derive.py, which asserts that the recorded table still reproduces the recorded entries before it writes. Proven, with the opt-in commit after this one: the suite (26 passed); a dry run of a scratch range (2 commits, a README with sections) by the previous binary and this one with the three static lenses on and the rest off, 25 prompts and 4 system files byte for byte; with repo-facts on as well, those files unchanged and 10 passes and 1 system file added. The lens's firing proof in this pipeline is owed (the owner's go).
This commit is contained in:
parent
61ee4602f4
commit
febbfc3fcc
19 changed files with 2564 additions and 646 deletions
|
|
@ -1,6 +1,6 @@
|
|||
---
|
||||
name: prepush
|
||||
description: Pre-push gates for a repository set up for crafter-review (`crafter-review init`). Runs the pipeline's procedure end to end — Gate 0 build/tests + freeze (identity, trailers by the config's rule, clean tree, no merges, fast-forward), the application and the database under test brought up from the frozen tree, the driver run of the lenses the config enables (repo-better-solution → repo-functional with the Playwright MCP → repo-bug-prover and repo-security side by side) via crafter-review, the fix/rerun loop, the owner's approval of the hash, verify, push. Nothing is pushed unreviewed or unapproved.
|
||||
description: Pre-push gates for a repository set up for crafter-review (`crafter-review init`). Runs the pipeline's procedure end to end — Gate 0 build/tests + freeze (identity, trailers by the config's rule, clean tree, no merges, fast-forward), the application and the database under test brought up from the frozen tree, the driver run of the lenses the config enables (repo-better-solution → repo-functional with the Playwright MCP → repo-bug-prover and repo-security side by side → repo-facts, the commit truth) via crafter-review, the fix/rerun loop, the owner's approval of the hash, verify, push. Nothing is pushed unreviewed or unapproved.
|
||||
---
|
||||
|
||||
Follow the pipeline's procedure, `prepush.md`, EXACTLY — read it now, in
|
||||
|
|
@ -46,7 +46,7 @@ of running it:
|
|||
`supabase.dbUrl` does not answer or its applied migrations are not
|
||||
HEAD's: reset the stack from the frozen tree, after every
|
||||
`freeze --replace` too. Do not edit that tree while the run is on.
|
||||
4. **Gates 1–3**: run the printed command from the repository root in a
|
||||
4. **Gates 1–4**: run the printed command from the repository root in a
|
||||
detached background shell (`setsid nohup … > <log> 2>&1 < /dev/null &`);
|
||||
poll `~/.cache/review-gates/<hash8>-run-<n>/progress.json` and `log.txt`.
|
||||
Add `--context-paths` for the evidence dirs the messages' claims rest on.
|
||||
|
|
@ -68,11 +68,11 @@ of running it:
|
|||
`grounds`, `carry`). A `contests` entry is a lens claim: re-check its cited
|
||||
evidence first; a surviving contest on an owner entry goes to the owner.
|
||||
Notes never block — bank each per its kind; an `unverified` note names a
|
||||
manual check the owner sees at Gate 4. INCOMPLETE is never a pass: rerun.
|
||||
manual check the owner sees at Gate 5. INCOMPLETE is never a pass: rerun.
|
||||
6. **Rounds** go in `.review-gates/push/<slug>/manifest.md`
|
||||
(`flatpak run net.catcrafts.CrafterReview doc manifest` prints the
|
||||
template; test runs with `--only`/`--units` never).
|
||||
7. **Gate 4 — the owner**: present the frozen patches themselves, the rounds
|
||||
7. **Gate 5 — the owner**: present the frozen patches themselves, the rounds
|
||||
table, the discharged findings with grounds, every contest, all notes —
|
||||
then STOP. Nothing is pushed until they explicitly approve that exact hash.
|
||||
8. **Push**: `flatpak run net.catcrafts.CrafterReview freeze --slug <slug>
|
||||
|
|
|
|||
Loading…
Reference in a new issue