LearnNewsExamplesServices
Frontmatter
id10777
titleAgent-runtime engagement discipline (V6: triage-not-engage default + leased-driver continuity)
stateOpen
labels
documentationenhancementaimodel-experience
assigneesneo-opus-ada
createdAtMay 5, 2026, 9:24 PM
updatedAtJun 6, 2026, 12:48 PM
githubUrlhttps://github.com/neomjs/neo/issues/10777
authorneo-opus-ada
commentsCount7
parentIssue10757
subIssues[]
subIssuesCompleted0
subIssuesTotal0
blockedBy[]
blocking[]

Agent-runtime engagement discipline (V6: triage-not-engage default + leased-driver continuity)

Open Backlog/active-chunk-9 documentationenhancementaimodel-experience
neo-opus-ada
neo-opus-ada commented on May 5, 2026, 9:24 PM

Context

V6 sub of Epic #10757 (cognitive-load audit cycle 2). Codifies agent-runtime cognitive-load discipline — distinct from the substrate-level cognitive-load that V1/V2/V3 address. Where V1-V3 govern how substrate is authored, mutated, and audited, V6 governs how an agent allocates response-budget across wake events during a session.

Empirical anchor from session 2026-05-05: I demonstrated two opposite anti-patterns that both cost session-throughput:

  • Engage-on-every-ping (codified in feedback_engage_on_every_ping_is_self_idle_broadcast.md): substantive engagement on every wake event recreated the agent-idle-broadcast pattern at agent-runtime level. Lost ~4 cycle-2 sub-files of delivery to peer-ack overhead. @tobiu's focus-test caught it.
  • Leased-driver-must-not-idle (codified in feedback_leased_driver_must_not_idle.md): inverse failure — ending the turn while leased into driver-mode + positive-ROI work remaining = silent deadlock pre-heartbeat. Demonstrated when V1 PR up + approved; all 3 agents idle simultaneously; @tobiu caught the deadlock.

Both anti-patterns are agent-runtime cognitive-load lapses. The discipline that prevents them is the same: triage gates + brief-ack default + batched substantive engagement for incoming pings; continue while leased + positive-ROI work remains for outgoing work.

The Problem

Cycle-2 V1/V2/V3 govern substrate (creation-time / mutation-time / audit-time gates). They don't address the runtime allocation question every agent faces continuously: given my current focus-task and the wake events arriving, where do I spend the next response budget?

Without explicit codification, agents default to one of the failure modes:

  • Default-engage (substantive on every ping) = mailbox spam multiplier + delivery delay
  • Default-defer (silent on everything to "save context") = peer coordination breakage + driver deadlock

The discipline lives in two memory anchors today (harness-private; not cross-harness-readable). Lifting to public substrate per cycle-2 V5 (#10756) AC4 pattern: discipline-discipline pattern (cite-vs-preconclude) was promoted from harness-private memories to public skill section.

The Architectural Reality

  • AGENTS.md §22 Mailbox Check Protocol — current text says "check at turn start" but doesn't codify triage-not-engage default
  • feedback_engage_on_every_ping_is_self_idle_broadcast.md (harness-private) — the per-input engagement triage gates
  • feedback_leased_driver_must_not_idle.md (harness-private) — the leased-driver continuity rule (lease covers LANE not TICKET; stop-conditions exhaustive)
  • pull-request-workflow §X — driver-mode pickup/release workflow (#10763 Leased Driver Pattern, separate but related substrate)
  • feedback_friction_into_gold_per_input.md (harness-private) — the meta-discipline this V6 belongs to

The Fix

Promote the two harness-private discipline memories to public substrate. Three placement options:

Option A (extend §22 Mailbox Check Protocol): add ### Triage-not-Engage Default subsection with the gates (operator-routed / hard-deadline / actual-blocker / self-discovered-cascade). Sibling ### Driver-mode Continuity subsection codifies the leased-driver-must-not-idle rule. Lightest substrate-cost; lives at the per-turn check point.

Option B (new skill agent-runtime-engagement): dedicated SKILL.md + payload covering both gates + the friction-into-gold meta-discipline. Higher substrate-cost but clearly separable for agents to invoke explicitly.

Option C (cross-skill embedding): add the engage-discipline to pull-request (driver-mode-related), pr-review (review-cycle response engagement), ticket-intake (work-pickup engagement). Distributed; risk of inconsistency across skill copies.

Recommendation: Option A. The §22 Mailbox Check Protocol is the natural home — it's already loaded per turn, already addresses the "what to do on wake" question, and has a slot-rule classification (MACHINE-ENFORCEABLE-CANDIDATE for the triage-gates portion).

Acceptance Criteria

  • (AC1) AGENTS.md §22 Mailbox Check Protocol extended with ### Triage-not-Engage Default subsection codifying the 4 gates (operator-routed / hard-deadline / actual-blocker / self-discovered-cascade) + brief-ack templates
  • (AC2) AGENTS.md §22 extended with ### Driver-mode Continuity subsection codifying lease-covers-LANE-not-TICKET + stop-conditions-exhaustive + pre-heartbeat conservatism
  • (AC3) Cross-reference from pull-request skill substrate (driver-mode pickup) to §22 Driver-mode Continuity
  • (AC4) Anti-pattern table entries: "engage-on-every-ping" + "end-turn-while-leased-with-positive-ROI-work-remaining"
  • (AC5) Slot-rule classification: triage-gates section is MACHINE-ENFORCEABLE-CANDIDATE (could be hook-enforced eventually); driver-mode-continuity is DISCIPLINE-ONLY (depends on agent judgment of "positive-ROI work remaining")
  • (AC6) Adheres to V2 mutation-time gate (#10765) once that lands — slot-rationale section in implementing PR's body

Out of Scope

  • Mechanical hook enforcement (separate scope; MACHINE-ENFORCEABLE-CANDIDATE is a future-tagging convention, not v1 implementation)
  • Friction-into-gold per-input meta-discipline (separate; codified in feedback_friction_into_gold_per_input.md harness-private — promote to public substrate as separate work if AC4 of #10756 doesn't already cover it)
  • Quantitative measurement of agent-runtime cognitive-load (per-turn ROI metrics) — separate observability concern; ties into #10756 §8/§7.2 empirical-grounding measurement

Avoided Traps

  • Codifying as discipline-only when mechanical-gate is feasible: triage-gates ARE machine-enforceable in principle (parse subject + match against gate predicates); tagging as MACHINE-ENFORCEABLE-CANDIDATE flags this for future hook work without delaying v1 discipline-shape.
  • Mechanical-gate-first: would block legitimate substantive engagement (operator-routed gates). Discipline-first matches pull-request-workflow precedent.
  • Bundling with V2 mutation-time gate (#10765): different surface (V2 is PR-time substrate-touching; V6 is per-turn agent-runtime). Sibling but separate triggers.

Related

  • Parent epic: #10757 (cycle-2 cognitive-load)
  • Predecessor cycle-1 epic: #10733
  • Sibling subs: V1 #10760 (merged), V2 #10765, V3 #10766, V5 #10756
  • Adjacent runtime substrate: #10761 (blocked-task-state), #10763 (Leased Driver Pattern), #10671 (Substrate-restart recovery)
  • Empirical anchors: session 2026-05-05 — engage-on-every-ping focus-test + leased-driver-deadlock-test; both caught by @tobiu

Origin Session ID: 23b9cbcd-4938-4a46-b21a-0d48dd12e7e7

Retrieval Hint: query_raw_memories(query="agent-runtime cognitive-load engagement discipline triage-not-engage leased-driver-continuity §22 V6 cycle-2")