---
id: 11671
title: Add AGENTS.md rule 7 pointer for broadcast fallback
state: CLOSED
labels:
  - documentation
  - enhancement
  - ai
  - architecture
  - model-experience
assignees:
  - neo-gpt
createdAt: '2026-05-20T06:42:12Z'
updatedAt: '2026-05-20T10:52:52Z'
githubUrl: 'https://github.com/neomjs/neo/issues/11671'
author: neo-gpt
commentsCount: 0
parentIssue: null
subIssues: []
subIssuesCompleted: 0
subIssuesTotal: 0
blockedBy:
  - '[x] 11669 Clarify broadcast-suppressed lane pickup fallback'
blocking: []
closedAt: '2026-05-20T10:52:52Z'
---
# Add AGENTS.md rule 7 pointer for broadcast fallback

## Context

PR #11670 resolved the immediate skill-atlas gap from #11669 by documenting that operator-suppressed `AGENT:*` broadcasts are a coordination-shape constraint, not a halt-state. Claude's Cycle 1 approval on #11670 flagged a non-blocking follow-up: the always-loaded `AGENTS.md` critical gate still says `Self-assign + broadcast [lane-claim] to AGENT:*` with no compact trigger pointer to the fallback now documented in the skill atlas.

This matters because the night-shift gridlock originated from the always-loaded map-level literal, not from the skill payloads. Agents under coordination pressure may obey rule 7 before loading `/peer-role` or `/post-review-pickup`, especially around write-lane pickup.

Duplicate sweep before filing:

- `ask_knowledge_base(type:'ticket', query:'open ticket duplicate AGENTS.md critical gate rule 7 broadcast lane-claim direct DM fallback broadcast suppression halt-state')` returned no relevant documents.
- GitHub issue search for `critical_gates AGENT:* direct DM fallback` and `rule 7 lane-claim broadcast fallback AGENTS.md` found #11669/#11670 plus closed lineage tickets, but no open ticket specifically targeting the rule-7 map pointer.
- Local `rg` over `resources/content/issues`, `resources/content/discussions`, and `.agents/skills` found #11345 as the closed ticket that added the current rule-7 broadcast wording, #11669 as the skill-atlas fallback ticket, and the new fallback text in `peer-role` / `post-review-pickup`. None covers this specific map-pointer decision.

## The Problem

`AGENTS.md:53` currently preserves the canonical collision-prevention rule:

> Self-assign + broadcast `[lane-claim]` to `AGENT:*` before any git-tracked edit.

That wording is correct for normal operation, but incomplete under the operator-suppressed-broadcast incident shape. The skill-atlas fallback now says direct DM to the reachable peer is valid when the operator explicitly suppresses broadcast to protect an unstable peer harness. The always-loaded rule has no pointer to that fallback.

The risk is not that `AGENT:*` should stop being canonical. The risk is that the canonical rule is read as exclusive even when the operator has temporarily forbidden that channel. That recreates the false halt-state: "broadcast is forbidden, therefore work is blocked."

## The Architectural Reality

Relevant current surfaces:

- `AGENTS.md:53` — critical gate 7, always-loaded, `keep` disposition, machine-enforceable candidate.
- `.agents/skills/peer-role/references/peer-role-mode.md:68` — lane-claim recipient contract now names the operator-authorized reachable peer DM fallback.
- `.agents/skills/post-review-pickup/references/post-review-pickup-workflow.md:153-165` — halt-state atlas now defines the broadcast-suppressed coordination fallback.
- `learn/agentos/decisions/0007-agents-md-compaction-taxonomy.md` — requires any `AGENTS.md` change to use the 3-axis slot rule; likely disposition is `compress-to-trigger`, not a full rule copy.
- `.agents/skills/turn-memory-pre-flight/references/turn-memory-pre-flight-workflow.md` — implementation must verify placement before mutating turn-loaded substrate.

This ticket is deliberately about the map pointer only. The full fallback rule already belongs in the skill atlas and should not be duplicated into `AGENTS.md`.

## The Fix

Evaluate and, if the 3-axis slot rule passes, add a compact trigger pointer to `AGENTS.md` critical gate 7. The pointer should preserve `AGENT:*` as canonical while making the exception discoverable.

Candidate shape, to be refined during implementation:

> Self-assign + broadcast `[lane-claim]` to `AGENT:*` before any git-tracked edit; if operator-suppressed, use the documented direct-DM fallback.

Implementation must keep this a one-line compressed pointer and link the detailed rule to the skill atlas / existing enforcement chain, rather than copying the full fallback matrix into turn-loaded substrate.

## Contract Ledger Matrix

| Target Surface | Source of Authority | Proposed Behavior | Fallback | Docs | Evidence |
|---|---|---|---|---|---|
| `AGENTS.md` critical gate 7 | #11345 current rule; #11669 fallback; PR #11670 review follow-up; ADR 0007 | Preserve canonical `AGENT:*` lane-claim, add compact pointer for operator-suppressed broadcast fallback | If byte budget or taxonomy rejects the pointer, document why and leave the atlas-only shape intact | `AGENTS.md`, existing skill atlas references | `rg` before/after, byte/line delta, `git diff --check` |
| Skill atlas fallback | #11669 / PR #11670 | Remain the detailed rule source; no duplication into `AGENTS.md` | If wording needs cross-reference polish, keep it in the skill payload | `peer-role`, `post-review-pickup` | Skill manifest lint / agents lint |

## Acceptance Criteria

- [ ] Run `/turn-memory-pre-flight` before editing `AGENTS.md` and cite the placement decision in the PR body.
- [ ] Load ADR 0007 and classify the rule-7 pointer as `keep`, `compress-to-trigger`, or rejected; document the 3-axis rationale.
- [ ] If accepted, update only the compact critical-gate wording needed to make the operator-suppressed fallback discoverable.
- [ ] Preserve `AGENT:*` as the canonical lane-claim visibility path outside explicit operator suppression.
- [ ] Do not duplicate the full broadcast-suppressed fallback matrix into `AGENTS.md`.
- [ ] Verify the detailed fallback remains in `peer-role` and `post-review-pickup`; update cross-references only if needed.
- [ ] Run `git diff --check`; run skill/agent lint if any `.agents/skills/**` references change.

## Out of Scope

- Reopening the canonical `AGENT:*` lane-claim decision from #11345.
- Replacing broadcast with direct DM generally.
- Messaging Gemini while the operator's no-broadcast/no-Gemini constraint remains active.
- Runtime wake-subscription changes.
- Any code or service change.

## Avoided Traps / Gold Standards Rejected

- **Full-rule copy into `AGENTS.md`:** rejected. The atlas already owns the detailed fallback; the map should only carry a compressed trigger if justified.
- **Treating direct DM as the new default:** rejected. The fallback is scoped to explicit operator suppression of broadcast.
- **Ignoring byte budget because the follow-up is real:** rejected. ADR 0007 still applies; the implementation can reject the pointer if the slot rationale fails.
- **Leaving the follow-up only in PR review text:** rejected. PR reviews are useful evidence, but a filed ticket is the durable work queue surface.

## Related

- #11669 — skill-atlas fallback ticket
- PR #11670 — implementation and review that surfaced this follow-up
- #11345 — closed ticket that introduced the current rule-7 broadcast wording
- #10970, #11165, #11221 — post-review pickup / halt-state lineage
- ADR 0007 — compaction taxonomy for `AGENTS.md` mutations

## Handoff Retrieval Hints

- `query_raw_memories(query="AGENTS.md rule 7 broadcast fallback direct DM operator-suppressed AGENT:* lane-claim")`
- `query_summaries(query="nightshift watchdog broadcast suppression direct DM fallback rule 7")`
- File anchors: `AGENTS.md:53`, `.agents/skills/peer-role/references/peer-role-mode.md:68`, `.agents/skills/post-review-pickup/references/post-review-pickup-workflow.md:153`


## Timeline

- 2026-05-20T06:42:13Z @neo-gpt added the `documentation` label
- 2026-05-20T06:42:13Z @neo-gpt assigned to @neo-gpt
- 2026-05-20T06:42:13Z @neo-gpt added the `enhancement` label
- 2026-05-20T06:42:13Z @neo-gpt added the `ai` label
- 2026-05-20T06:42:13Z @neo-gpt added the `architecture` label
- 2026-05-20T06:42:13Z @neo-gpt added the `model-experience` label
- 2026-05-20T06:42:37Z @neo-gpt marked this issue as being blocked by #11669
- 2026-05-20T09:46:05Z @neo-gpt cross-referenced by PR #11675
- 2026-05-20T10:52:52Z @tobiu referenced in commit `61fbf56` - "fix(agentos): clarify rule 7 broadcast fallback (#11671) (#11675)

Co-authored-by: tobiu <tobiasuhlig78@gmail.com>"
- 2026-05-20T10:52:52Z @tobiu closed this issue

