This was generated by AI during a loop-lane launch-prompt design session.
Context
Two shipped contracts disagree about where the work class used for merge admission may come from.
autonomy/reference/guardrails/admission-policy.md states: "No repo-local (agent-writable)
surface may supply any admission input — rules, caps, or the work class used for admission."
autonomy/reference/trigger-dispatch.md reinforces it: the adapter "stamps, never defines," and
"no repo-local (agent-writable) surface may supply the class used for admission."
source-control/skills/babysit-loop/SKILL.md's rung partition does exactly that: it reads the
class from "the triage stamp in the item body or labels" — both repo-local and agent-writable —
and uses it as the merge-admission input.
Under the autonomy contract, a GitHub label or issue-body trailer is precisely the surface that
must not supply the class. Under babysit-loop, it is the only surface that does. Any autonomous
lane that classifies an item and then has a sibling lane merge on that classification is a
producer certifying its own work, which is the shape the autonomy rule exists to prevent.
ADR 0009 ratifying the label vocabulary does not resolve this: ratifying what a label means is
not the same as ratifying who may pin it to a specific item without review.
Proposed work
Resolve the contradiction in one direction and record it:
- Either narrow babysit-loop's admission read to a surface the autonomy contract permits (the
security-governance classification rules), or
- Amend the autonomy contract to permit an operator-ratified repo-local stamp, with the
ratification requirement stated explicitly, or
- Define a provenance requirement on the stamp — who applied it, and whether an agent-applied
stamp is admissible — so the distinction is machine-checkable rather than conventional.
Acceptance criteria
References
plugins/autonomy/reference/guardrails/admission-policy.md
plugins/autonomy/reference/trigger-dispatch.md
plugins/source-control/skills/babysit-loop/SKILL.md (rung partition)
- melodic-software/github-iac ADR 0009
Metadata
Surfaced by two independent reviews of a loop-lane launch prompt that had the worker lane stamp
its own work class. The prompt was corrected to forbid it; the underlying contract conflict
remains.
This was generated by AI during a loop-lane launch-prompt design session.
Context
Two shipped contracts disagree about where the work class used for merge admission may come from.
autonomy/reference/guardrails/admission-policy.mdstates: "No repo-local (agent-writable)surface may supply any admission input — rules, caps, or the work class used for admission."
autonomy/reference/trigger-dispatch.mdreinforces it: the adapter "stamps, never defines," and"no repo-local (agent-writable) surface may supply the class used for admission."
source-control/skills/babysit-loop/SKILL.md's rung partition does exactly that: it reads theclass from "the triage stamp in the item body or labels" — both repo-local and agent-writable —
and uses it as the merge-admission input.
Under the autonomy contract, a GitHub label or issue-body trailer is precisely the surface that
must not supply the class. Under babysit-loop, it is the only surface that does. Any autonomous
lane that classifies an item and then has a sibling lane merge on that classification is a
producer certifying its own work, which is the shape the autonomy rule exists to prevent.
ADR 0009 ratifying the label vocabulary does not resolve this: ratifying what a label means is
not the same as ratifying who may pin it to a specific item without review.
Proposed work
Resolve the contradiction in one direction and record it:
security-governance classification rules), or
ratification requirement stated explicitly, or
stamp is admissible — so the distinction is machine-checkable rather than conventional.
Acceptance criteria
References
plugins/autonomy/reference/guardrails/admission-policy.mdplugins/autonomy/reference/trigger-dispatch.mdplugins/source-control/skills/babysit-loop/SKILL.md(rung partition)Metadata
Surfaced by two independent reviews of a loop-lane launch prompt that had the worker lane stamp
its own work class. The prompt was corrected to forbid it; the underlying contract conflict
remains.