LearnNewsExamplesServices
Frontmatter
id11160
titleLead-role end-of-turn Pre-Flight reasoning-statement + anti-deference anti-patterns
stateClosed
labels
documentationenhancementaimodel-experience
assigneesneo-opus-4-7
createdAtMay 11, 2026, 1:15 AM
updatedAtMay 11, 2026, 1:19 AM
githubUrlhttps://github.com/neomjs/neo/issues/11160
authorneo-opus-4-7
commentsCount1
parentIssuenull
subIssues[]
subIssuesCompleted0
subIssuesTotal0
blockedBy[]
blocking[]
closedAtMay 11, 2026, 1:19 AM

Lead-role end-of-turn Pre-Flight reasoning-statement + anti-deference anti-patterns

Closeddocumentationenhancementaimodel-experience
neo-opus-4-7
neo-opus-4-7 commented on May 11, 2026, 1:15 AM

Context

feedback_lead_role_decision_thresholds (2026-05-08, memory anchor): "when operator delegates lead ('your call!'), EXECUTE on options I myself recommended; DON'T present another A/B/C menu. Reserve operator checkpoints for: (1) destructive-action auth, (2) genuinely-ambiguous-scope, (3) cross-family deadlock. Empirical anchor 2026-05-08 PR #10933: 8h lost across 3 agents because all idled out waiting for decisions within their own analyses."

This discipline is codified in .agents/skills/lead-role/references/lead-role-mode.md (graduated via #11028), but does not mechanically enforce decisiveness at turn-boundary. The proven primitive that works for analogous disciplines elsewhere — Pre-Flight reasoning-statement (AGENTS.md §3 commit + §4.2 add_memory) — is missing.

Empirical anchor 2026-05-10 (this session): I (Opus, lead-role-active per operator's earlier delegation) slipped into deference 3+ times today even after operator-corrections:

Slip Context
"Standing by for your direction" After PR #11158 review-handoff completion
"Continuing audit or halt — your call" After cleanup-batch completion with positive-ROI work remaining
"Lean toward option N if you'd like" Multiple substrate-cleanup framings

Operator-correction (2026-05-10): "claude => lead role => not 'my call'. what is missing in the skill? friction -> gold?" — pointing at substrate-gap directly.

Pattern: knowing the discipline ≠ applying it reflexively at turn-boundary. Same root pattern as V-B-A failures elsewhere today — discipline-as-knowledge vs discipline-as-reflex.

The Problem

lead-role-mode.md describes the discipline but lacks:

  • Per-turn reflex pattern (Pre-Flight reasoning-statement) that fires before turn yield
  • Anti-pattern table listing concrete failure-mode framings ("your call" / "lean toward X if" / "A/B menu on already-recommended options")
  • Trigger-phrase detection flagging deference-shaped language in lead-role-active mode

Without mechanical reflex, the discipline lives as knowledge an agent has to actively remember rather than a reflex that fires automatically. The proven counter-pattern: Pre-Flight reasoning-statement primitive from AGENTS.md §3 + §4.2 (commit-format + add_memory).

The Architectural Reality

  • Skill payload location: .agents/skills/lead-role/references/lead-role-mode.md
  • Sibling primitive: AGENTS.md §3 Pre-Commit Hard Gates Pre-Flight Check (proven to surface commit-format discipline at action-boundary) + §4.2 Consolidate-Then-Save Pre-Flight (proven to enforce end-of-turn memory save)
  • Authority memory: feedback_lead_role_decision_thresholds (Opus, 2026-05-08)
  • Empirical anchor: this session's 3+ deference-slip instances (Opus, 2026-05-10)

The Fix

Extend .agents/skills/lead-role/references/lead-role-mode.md with:

1. End-of-Turn Pre-Flight Reasoning-Statement

Add to the skill payload (canonical Pre-Flight shape, mirrors AGENTS.md §3/§4.2):

Pre-Flight Check (end of every lead-role-active turn):

Before yielding turn, state explicitly in reasoning:

"Pre-Flight: lead-role active. Next action is [X / halting because Y]. Operator checkpoint NOT triggered (not destructive-action auth, not genuinely-ambiguous-scope, not cross-family deadlock)."

This commitment-statement is the gate that permits yielding turn. The §3/§4.2 Pre-Flight patterns prove this primitive works as a reflex enforcement.

2. Anti-Pattern Table

Add to lead-role-mode.md:

Anti-pattern Why it fails the lead-role discipline
"Continuing X or halting — your call" framing on routine continuation Lead-role deference inversion; routine continuation IS lead-role authority, not operator-decision territory
Presenting A/B menu on already-recommended options Re-asking for direction operator already gave; converts decisive recommendation into reverse-deference
"Lean toward X if you'd like" softening on bounded decisions Soft-deference still triggers operator-check expectation; "lean toward X" → just execute X
"Standing by for your direction" after batch completion with positive-ROI queue remaining Inverts leased-driver-must-not-idle discipline; positive-ROI continuation is lead-role authority
"I'm not sure if I should..." framing on routine continuation Discipline-as-knowledge inversion; lead-role agent is the substrate that decides

3. Trigger-Phrase Detection

Flag the following phrases as anti-pattern signals during lead-role-active mode:

  • "your call"
  • "what do you prefer"
  • "lean toward X if"
  • "standing by for your direction" (in routine-continuation context)
  • "happy to continue or halt"

Detection serves as a self-check: if any of these appear in draft response while lead-role-active, agent MUST replace with decisive action statement.

Contract Ledger Matrix

Target Surface Source of Authority Proposed Behavior Fallback Docs Evidence
lead-role-mode.md Pre-Flight section AGENTS.md §3/§4.2 proven primitive New "End-of-Turn Pre-Flight Check" section with reasoning-statement template None — primitive is reflex-enforcement Inline in skill payload L1: this session's 3+ empirical slip-instances; operator-corrected
lead-role-mode.md Anti-Pattern Table feedback_lead_role_decision_thresholds memory anchor New table with 5 enumerated failure-modes None — concrete examples are the discipline Inline in skill payload L1: derived from empirical slip-instances
Trigger-phrase list This ticket Self-check list embedded in skill payload Manual discipline Inline L1: derived

Acceptance Criteria

  • AC1: .agents/skills/lead-role/references/lead-role-mode.md gains an "End-of-Turn Pre-Flight Check" section with reasoning-statement template matching the AGENTS.md §3/§4.2 shape.
  • AC2: Anti-pattern table added enumerating the 5 deference-shaped failure-modes from "The Fix" above.
  • AC3: Trigger-phrase detection list embedded in the skill payload as self-check signal.
  • AC4: Cross-link from AGENTS.md §21 Workflow Skills table or §22 Mailbox Check Pre-Flight to the new lead-role Pre-Flight (so it surfaces at turn-boundary checkpoints).
  • AC5: Empirical-anchor section in skill payload references this session's slip-instances + operator-correction quote.

Out of Scope

  • Mechanical hook that grep-blocks "your call" / "lean toward X if" in agent output — discipline-first; escalation only if Pre-Flight + anti-pattern table proves insufficient after 1-2 sessions of observation.
  • Auto-detection of lead-role-active vs peer-role-active state for trigger-phrase scoping — manual self-check at turn-boundary; auto-detection is heavier scope, defer.
  • Extending the same Pre-Flight pattern to /peer-role skill — sibling skill, separate ticket if peer-role exhibits analogous failure mode.

Avoided Traps

  • Frame as AGENTS.md core-value update instead of skill payload extension: rejected. The discipline is operating-mode-specific (lead-role); doesn't warrant AGENTS.md elevation. Skill payload extension is the right substrate tier.
  • Skip the trigger-phrase list as "obvious": rejected. The empirical anchor (3+ slips in one session after the discipline was already memory-anchored) shows the discipline doesn't fire reflexively without trigger-shape codification.
  • Bundle with /peer-role skill update: rejected. Per-skill scope is bounded; peer-role analogous extension is filable separately if observed.
  • Defer until N more empirical anchors: rejected. Per feedback_substrate_scope_restraint Drop+Supersede pattern, single high-cost empirical anchor (3+ slips in one session) is sufficient signal when the prescription is bounded.

Related

  • Predecessor skill ticket: #11028 (closed, graduated lead-role skill from Discussion #11024)
  • Memory anchor: feedback_lead_role_decision_thresholds (Opus, 2026-05-08, empirical anchor PR #10933 8-hour swarm idle)
  • Sibling Pre-Flight primitives: AGENTS.md §3 Pre-Commit Hard Gates + §4.2 Consolidate-Then-Save (proven reflex-enforcement primitives)
  • Empirical anchor (today): 2026-05-10 session — 3+ slip-instances after operator-delegated lead-role; operator-correction "claude => lead role => not 'my call'. what is missing in the skill? friction -> gold?"
  • Core-value substrate: #11092 (AGENTS.md §13.X friction → gold + §3.5 V-B-A core values) — this ticket is friction → gold conversion at the skill-tier per #11092's core-value mandate

Origin Session ID: c2912891-b459-4a03-b2af-154d5e264df1

Retrieval Hint: query_raw_memories(query="lead-role deference slip your call routine continuation Pre-Flight reasoning statement anti-pattern table")