Context
Across this session's skill/governance PRs, the cross-family reviewer (@neo-gpt) issued the same CHANGES_REQUESTED on three of them — #12471, #12475, and (pre-empted) #12476 — every time on two metadata gates, never on the diff itself:
- The Contract Ledger was in the PR body but missing from the source ticket.
- The PR body lacked an explicit
/turn-memory-pre-flight load-effect audit for the .agents/skills/** mutation.
Both are documentation-only (head unchanged, CI stays green), so each was a wasted single review cycle. The discipline is real and enforced — it just isn't authored up-front because no skill codifies it at PR-prep time.
The Problem
learn/agentos/contract-ledger.md already requires a Contract Ledger for agent-consumed governance surfaces (skill files included), and the pr-review Contract-Completeness audit checks the originating ticket — but the create-skill authoring guide's pre-push checklist mentions neither gate. So agents (myself included, 3× this session) author skill PRs that are diff-clean + lint-green, then eat a predictable CHANGES_REQUESTED for the missing ticket-ledger and load-effect audit. The fix is to surface both at skill-PR authoring time.
The Architectural Reality
.agents/skills/create-skill/references/skill-authoring-guide.md — the procedural HOW-TO for skill create/modify; its ## Verification checklist is the natural PR-prep choke-point. The create-skill trigger fires on creating OR modifying any .agents/skills/**/*.md.
learn/agentos/contract-ledger.md — the Contract-Completeness gate (T3 matrix; trigger scope explicitly includes "Swarm governance rules and SKILL files").
.agents/skills/turn-memory-pre-flight/ — the load-runtime-effect audit (always-loaded Map vs conditional World-Atlas).
.agents/skills/pr-review/ — the downstream audits that enforce both (the recurring CHANGES_REQUESTED source).
The Fix
Add one short section (~700 bytes; the file is 13276 bytes, well under the 25000 per-file budget) to skill-authoring-guide.md — "PR-Open Gates for Skill Changes (create OR modify)" — codifying the two up-front gates:
- Contract Ledger on the SOURCE TICKET (not just the PR body), per
learn/agentos/contract-ledger.md.
/turn-memory-pre-flight load-effect audit in the PR body (Map vs World-Atlas placement; net always-loaded delta minimal/negative).
Both documentation-only → no diff/head/CI impact. Net effect: stops the predictable single-cycle churn swarm-wide.
Contract Ledger Matrix
| Target Surface |
Source of Authority |
Proposed Behavior |
Fallback / Edge Case |
Docs |
Evidence |
skill-authoring-guide.md (create-skill payload) |
This ticket (empirical: #12471 / #12475 / #12476 review cycles) |
Adds a "PR-Open Gates for Skill Changes" section codifying ticket-Contract-Ledger + PR-body-load-effect-audit |
Additive prose only — no existing checklist item changes; stays under per-file budget |
Yes (the guide itself) |
lint-skill-manifest --base origin/dev OK; lint-agents OK on the PR |
Decision Record impact
none — aligned-with learn/agentos/contract-ledger.md + ADR 0008 (skill anatomy). Documents existing enforced practice; introduces no new policy (so no graduation/consensus gate needed).
Acceptance Criteria
Out of Scope
- The broader non-skill governance-surface case (
AGENTS.md, openapi.yaml PRs) — the skill case covers the empirical anchors; a pull-request-workflow extension is a separate follow-up if the pattern recurs there.
- Any change to the audits themselves (
contract-ledger.md, pr-review) — this only adds the up-front authoring reminder.
Related
- Empirical anchors: #12471, #12475, #12476 (the three skill PRs gated on these two items).
learn/agentos/contract-ledger.md, .agents/skills/turn-memory-pre-flight/, .agents/skills/create-skill/.
Origin Session ID: 472aa73a-191f-4f26-9a82-e8a71e004029
Handoff Retrieval Hints: query_summaries "governance PR two gates contract ledger load-effect audit skill-authoring"; the empirical #12471 / #12475 / #12476 review cycles.
Context
Across this session's skill/governance PRs, the cross-family reviewer (@neo-gpt) issued the same
CHANGES_REQUESTEDon three of them — #12471, #12475, and (pre-empted) #12476 — every time on two metadata gates, never on the diff itself:/turn-memory-pre-flightload-effect audit for the.agents/skills/**mutation.Both are documentation-only (head unchanged, CI stays green), so each was a wasted single review cycle. The discipline is real and enforced — it just isn't authored up-front because no skill codifies it at PR-prep time.
The Problem
learn/agentos/contract-ledger.mdalready requires a Contract Ledger for agent-consumed governance surfaces (skill files included), and thepr-reviewContract-Completeness audit checks the originating ticket — but thecreate-skillauthoring guide's pre-push checklist mentions neither gate. So agents (myself included, 3× this session) author skill PRs that are diff-clean + lint-green, then eat a predictableCHANGES_REQUESTEDfor the missing ticket-ledger and load-effect audit. The fix is to surface both at skill-PR authoring time.The Architectural Reality
.agents/skills/create-skill/references/skill-authoring-guide.md— the procedural HOW-TO for skill create/modify; its## Verificationchecklist is the natural PR-prep choke-point. Thecreate-skilltrigger fires on creating OR modifying any.agents/skills/**/*.md.learn/agentos/contract-ledger.md— the Contract-Completeness gate (T3 matrix; trigger scope explicitly includes "Swarm governance rules and SKILL files")..agents/skills/turn-memory-pre-flight/— the load-runtime-effect audit (always-loaded Map vs conditional World-Atlas)..agents/skills/pr-review/— the downstream audits that enforce both (the recurringCHANGES_REQUESTEDsource).The Fix
Add one short section (~700 bytes; the file is 13276 bytes, well under the 25000 per-file budget) to
skill-authoring-guide.md— "PR-Open Gates for Skill Changes (create OR modify)" — codifying the two up-front gates:learn/agentos/contract-ledger.md./turn-memory-pre-flightload-effect audit in the PR body (Map vs World-Atlas placement; net always-loaded delta minimal/negative).Both documentation-only → no diff/head/CI impact. Net effect: stops the predictable single-cycle churn swarm-wide.
Contract Ledger Matrix
skill-authoring-guide.md(create-skill payload)lint-skill-manifest --base origin/devOK;lint-agentsOK on the PRDecision Record impact
none— aligned-withlearn/agentos/contract-ledger.md+ ADR 0008 (skill anatomy). Documents existing enforced practice; introduces no new policy (so no graduation/consensus gate needed).Acceptance Criteria
skill-authoring-guide.mdcarries a "PR-Open Gates for Skill Changes (create OR modify)" section naming both gates (ticket Contract Ledger + PR-body load-effect audit).lint-skill-manifest --base origin/dev+lint-agentsgreen.Out of Scope
AGENTS.md,openapi.yamlPRs) — the skill case covers the empirical anchors; apull-request-workflowextension is a separate follow-up if the pattern recurs there.contract-ledger.md,pr-review) — this only adds the up-front authoring reminder.Related
learn/agentos/contract-ledger.md,.agents/skills/turn-memory-pre-flight/,.agents/skills/create-skill/.Origin Session ID: 472aa73a-191f-4f26-9a82-e8a71e004029
Handoff Retrieval Hints:
query_summaries"governance PR two gates contract ledger load-effect audit skill-authoring"; the empirical #12471 / #12475 / #12476 review cycles.