fix(test): state the mirrored-verb set instead of reading this repo's ward.yaml #1682
No reviewers
Labels
No labels
burndown-2026-06
pressure-test
sunday-sprint
autonomy
async-consult
autonomy
epic
autonomy
headless
autonomy
live-collab
coherence-core
priority
P0
priority
P1
priority
P2
priority
P3
priority
P4
qa-fixture
role/advocate
role/director
role/exec
role/frontend
role/gamedev
role/human
role/platform
role/qa
role/science
role/sysadmin
state
ambient
No milestone
No project
No assignees
1 participant
Due date
No due date set.
Dependencies
No dependencies set
Reference
coilyco-flight-deck/ward!1682
Loading…
Reference in a new issue
No description provided.
Delete branch "fix/pr-repair-verb-lookup"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Closes #1681. Unblocks #1680, which is a two-line docs change that has been sitting on this failure.
What was actually wrong
TestClassifyForgejoPRRepairBucketsnever had a verb fixture.classifyForgejoPRRepairasksrepoHasWardExecVerbwhether the failing workflow has a local mirror, that reads this repo's own.ward/ward.yamlthroughloadDefault(), and the test passed only because the repo happened to declare atestverb.6c167db(dev verbs move to the justfile) stripped the nineteencommands:entries. Soteststopped looking mirrored, andmain-red,merge-queue-churnandpr-regressionall fell intoci-parity-gap— the first branch that no longer had a way out. That is why exactly three of four subtests failed and the fourth, which wantsci-parity-gap, kept passing.The commit message for
6c167dbsays it reverted the mechanical sweep in two places it knew about. This was a third coupling it could not see, because nothing in the diff mentions the test.The fix
The product behavior is correct and unchanged: an adopter still declares verbs in
.ward/ward.yaml, which is what the classifier asks about. What was wrong is a unit test silently reading whatever configuration sat on disk beside it. So the lookup is indirected and the test states the verb set it means.The
ci-parity-gapcase keeps its unmirrored workflow name, so all four branches stay exercised rather than the fix flattening the test into agreement.Three hooks cleared alongside
code-commentswalks the whole tree, so these blocked any commit here, not just mine:docs/ward-agent-dispatch.md, referenced twice fromagent.go. I checked history with--diff-filter=ADR: it was never written, not moved. A pointer to a doc nobody wrote reads as "documentation exists", so the comments now name the code that is the contractdocs/documentation-bands.md, an agentic-os doc the local resolver cannot reach. Reworded to name it without a repo-local pathOne correction to #1681
The issue says no doc in
docs/mentions autonomy at all.docs/agent-lifecycle.md:39does, but only as "mode ceiling" in a list of error cases, so the conclusion holds: the autonomy-ceiling contract is undocumented. I did not write that doc. It is a security gate and I would have been reverse-engineering it, which is the same call the issue author made. Worth its own issue if you want it closed.Verification
ci_parity_gapincludedgo build ./...,go vet ./cmd/wardcleango test ./cmd/wardpasses (122s locally, no docker)pre-commit run --all-filesfully green./scriptshangs locally inrelease_contract_test.goon a syscall, pre-existing and environment-only. CI runs it in 3.8s. My diff iscmd/wardonly