Rendered from docs/process/obligations/0227-seven-run-tooling-gaps-from-run-20260929-2201-filed-together.md in the Headwater
corpus. Every document on this half of the site is typed by the taxonomy
the descriptor names: corpus.json.
Seven run-tooling gaps from run 20260929-2201, filed together
Context
hw-run-policy sends a finding about the build order, its tooling or this repository's CI to this shelf, and spec 13 lists none of them. Run 20260929-2201 wrote seven such intake lines. The product owner ruled each one RECORD, on passes 2, 3 and 4 of that run, and no pass had the time to write them. None names a reader outside this repository. Each item below gives the stage that found it and the issue in hand at the time. Where this record measured an item again on origin/main at 8d9feed4, the item says so.
Obligation
The run scripts and hooks.
claimintools/run/run-dir.shstores each artifact as one file named by its slug, and it matches nothing else. So a glob claim and a literal path that the glob admits never meet. #1337 claimedengine/crates/adapter/tests/fixture.*, and the claim ofengine/crates/adapter/tests/fixture.jsonby #1417 printedCLAIMED, notHELD. HW-OBL-0202 records the same store from the other side, where two unrelated claims collide. (parent, #1417)hw_governed_by_documentin.claude/hooks/lib.shpasses--paths-at-mosttoheadwater explain, and it returns at once when the call fails. An engine built before #1346 (1e791176) refuses the option, so the edit advisory is silent until the clone rebuilds its engine. The hook could retry without the option on that refusal, or name the rebuild. (parent, #1346)
The agents of the build order.
- The builder of #1438 ran
pkill -fon arustfmtcommand line. It stopped the format check of the #1347 verifier (HW_CARGO_SLOT=verify-1347, pid 1608635), so that check had to run again. A kill by a command-line pattern cannot tell the job of one stage from the job of another. Before a stage kills a process,hw-run-policytells it to check that the process is not the live build of another stage. It says nothing against a kill by pattern. (build, #1438) - The body of PR #1419 quoted the negated keyword "Neither closes #1384", and GitHub closed #1384 when the owner merged it by hand from
run-lessons-20260929. That pull request added the warning to.claude/agents/hw-build.md. The warning reaches a builder alone, and the read ofclosingIssuesReferencesin.claude/agents/hw-integrate.mdreaches only a merge that the integrator makes. Nothing reads the body of a pull request that a person opens or merges. (parent, #1384) Since #1485 the integrator runssh tools/run/gh-issue.sh clause-check <PR>before it enqueues, and that refuses a pull request that closes an issue without a met line for each of its Done-when clauses. That covers the integrator's path only: a merge by hand still bypasses it, so this item stays open.
The fixtures.
- The case "every cited path is on this tree" in
.claude/skills/fixtures.shreads only the skill files of the tree it runs on. No case gives it a path that is missing. The #1418 verifier inverted its firstgit check-ignoretest, and the suite stayed green. So a cited path that is missing and not ignored would pass. (verify, #1418)
CI and its workflows.
.github/workflows/is outside every corpus root and outsideanchors.code_path.scopein.headwater/overlay.yml. On8d9feed4,headwater explainrefuses both.github/workflows/readme-apt.ymland.github/workflows/release.ymlas outside every corpus root. So nothing reports that no document governsreadme-apt.yml, which #1408 added. Seven records governrelease.ymlby an edge all the same. The scope could name.github/workflows/**, or name the workflows one by one. (build, #1408)- An edge that governs a workflow, an agent definition or a skill goes suspect when that file changes. No build of this run refreshes the stamp, because its footprint does not name the record. On
8d9feed4,headwater checkreports 32relation.target.suspectfindings on 24 documents. Sixteen are edges ontorelease.ymlandci.yml, and twelve are edges onto files under.claude/. The intake line gave 652 instances, and this record could not reproduce that figure.headwater change --verified(#1392) is the route that stamps an edge again, and a person has to read each document first. HW-OBL-0224 records the documents that governci.yml, and this item widens that item to every file outside the engine. (build, #1408)
Discharge
Each item discharges alone, when the file it names says or does what the item asks, or when a change records why it stays. The record discharges when every item has. An item that grows a reader outside this repository leaves this record for an issue, and the record says where it went.