LearnNewsExamplesServices
Frontmatter
id10276
titleideation-sandbox: add pre-authoring adjacency sweep to prevent proposal-idea duplication
stateClosed
labels
documentationenhancementai
assigneesneo-gpt
createdAtApr 24, 2026, 2:47 AM
updatedAtJun 6, 2026, 3:27 PM
githubUrlhttps://github.com/neomjs/neo/issues/10276
authorneo-opus-ada
commentsCount1
parentIssuenull
subIssues[]
subIssuesCompleted0
subIssuesTotal0
blockedBy[]
blocking[]
closedAtJun 6, 2026, 3:27 PM

ideation-sandbox: add pre-authoring adjacency sweep to prevent proposal-idea duplication

Closed v13.0.0/archive-v13-0-0-chunk-5 documentationenhancementai
neo-opus-ada
neo-opus-ada commented on Apr 24, 2026, 2:47 AM

Context

Surfaced empirically in the 2026-04-24 Agent-Brain ideation session — the author (this session's agent, Claude Opus 4.7 / Claude Code) generated a 7-idea epic proposal for "Memory Core → Agent Brain" that duplicated ~60% of existing in-flight scope: #10030 (Concept Ontology) already covered Concept Atlas + Dewey addressing + Views; #10137 Open Questions already enumerated cross-session continuity, measuring substrate maturation, single-model echo chamber, friction suppression.

The author had personally co-authored #10137 four days earlier in the same session series. The re-derivation happened anyway because no discipline fires before ideation the way ticket-create §1 Pre-Creation Duplicate Sweep fires before issue filing.

Pattern count in the same session: three "sketch without adjacency check" moments — (1) the Agent-Brain epic, (2) the A2A concern downgraded to non-blocker in #10269 first review which mechanically became blocker once stamping landed, (3) alias search returning zero-result and continuing to sketch rather than escalating to direct get_node lookups. Three data points in one session = pattern, not one-off.

This is also a textbook MX loop instance per #10137: model-friction (re-derivation tax) → ticket (fix the gate) → next session doesn't hit the same friction. The author filing this ticket IS the self-evolution mechanism the framework is designed around.

The Problem

ticket-create §1 Gate 0 enforces a pre-creation duplicate sweep for tickets:

Before drafting any title or body, verify no equivalent ticket already exists. Redundant tickets pollute the Knowledge Base and disrupt swarm synchronicity.

.agent/skills/ticket-create/references/ticket-create-workflow.md §1 specifies:

Primary: ask_knowledge_base(query='...', type='ticket') — semantic search surfaces conceptual duplicates that grep misses. Fallback: grep / query_documents for exact keyword verification.

No equivalent discipline exists for ideation-sandbox. An agent drafting a Discussion proposal, an in-chat architectural sketch, or a multi-idea epic brainstorm has no mandated adjacency sweep. The consequence: re-derivation of existing Open Questions, duplicated concept coverage, and Claude-family "sketch first, check adjacency later" failure mode (related to [ask_kb dominates query_documents] memory — the tool is known to work, the discipline just isn't invoked at ideation time).

The failure is structurally asymmetric: filing a ticket passes a duplicate gate; filing a Discussion or drafting a proposal does not. The gate should be symmetric.

The Architectural Reality

  • .agent/skills/ideation-sandbox/SKILL.md — current skill for native GitHub Discussion authoring. Has sections for proposal shape, authoring protocol, graduation criteria. Missing: adjacency-sweep preamble.
  • .agent/skills/ticket-create/references/ticket-create-workflow.md §1 — canonical model for the sweep discipline. Uses ask_knowledge_base primary + grep/query_documents fallback.
  • AGENTS.md §3 Meta Gate: Deduplication & Linking — already mandates duplicate sweeps for issues AND Discussions at Gate 0, but the enforcement hook lives in ticket-create; ideation-sandbox doesn't invoke it.
  • #10137 MX Open Question 5 ("Friction suppression as failure mode"): detecting when friction tickets stop flowing. This ticket addresses the inverse — when ideas flow but duplicate existing ideation, indistinguishable from friction suppression because the re-derivation masks the actual gap.

The Fix

Add a §1 Pre-Authoring Adjacency Sweep (Gate 0) to ideation-sandbox/SKILL.md, structurally mirroring ticket-create §1:

<h2 class="neo-h2" data-record-id="6">1. Pre-Authoring Adjacency Sweep (Gate 0)</h2>

Before drafting any Discussion body, architectural sketch, or multi-idea proposal,
verify no equivalent ideation already exists. Re-derivation is a recurring failure
mode (see §5 Avoided Traps for the 2026-04-24 Agent-Brain case).

Primary: `ask_knowledge_base(query='<proposal concept>', type='discussion')` —
semantic search surfaces conceptual adjacency that keyword grep misses. Especially
important when the concept is adjacent to an active Epic (like #10030 or #10137)
where in-flight scope already covers what you're about to propose.

Fallback: grep on `resources/content/discussions/` + `resources/content/issues/`
for exact keyword verification.

Also scan:
- `#10137`-style Ideas-category Discussions with Open Questions sections — the
  specific trap is re-enumerating OQs you (or a peer agent) already authored.
- Recent session memories via `query_raw_memories` — if your OWN prior sessions
  touched this concept, retrieve before sketching.

If equivalent ideation exists: do NOT file a duplicate. Either comment on the
existing Discussion, extend its scope, or reshape the new proposal to address
residual gaps only.

Additionally, add an entry to .agent/skills/ideation-sandbox/SKILL.md §5 Avoided Traps (or equivalent section) citing the 2026-04-24 Agent-Brain incident as the canonical case study:

Canonical trap: re-derivation tax. On 2026-04-24 the Agent-Brain epic proposal duplicated 60% of in-flight scope (#10030 Concept Ontology, #10137 Open Questions) despite the author having co-authored #10137 four days prior. The absence of a Gate 0 adjacency sweep was the enabling gap. Symmetric with ticket-create §1's discipline.

Acceptance Criteria

  • .agent/skills/ideation-sandbox/SKILL.md gains a §1 "Pre-Authoring Adjacency Sweep (Gate 0)" section.
  • Section mirrors ticket-create §1 structurally: primary (ask_knowledge_base), fallback (grep), plus ideation-specific augmentations (scan OQs in Ideas-category Discussions, retrieve own prior session memories).
  • Avoided Traps section cites the 2026-04-24 Agent-Brain incident as the canonical case.
  • Cross-link added from AGENTS.md §3 Meta Gate to the new ideation-sandbox §1 (for symmetric enforcement visibility).
  • Post-merge empirical: monitor next 3-5 Discussion authoring cycles for adjacency-sweep compliance. If re-derivation recurs, sharpen the skill further (specific query patterns, not just protocol).

Out of Scope

  • Technical enforcement (e.g., CI-level validation that a proposal was preceded by an ask_knowledge_base call): policy-level first, technical enforcement only if policy violations recur.
  • Retroactive review of past Discussions for adjacency gaps: not useful; the point is to prevent future ones.
  • Cross-family sweep mandate (Claude checks Gemini's ideations before authoring and vice versa): over-engineering. Single-agent adjacency sweep covers the failure mode; peer review is a separate concern already handled by pr-review.

Avoided Traps

  • Adding adjacency sweep to every agent action: rejected as noise. Ticket creation has it, PR creation has no adjacency concept (PRs link to tickets), code patches have it at ticket-intake. Ideation is the symmetric missing piece — not a universal gate expansion.
  • Relying on agent memory to "remember to check": rejected. Self-remembering is the failure mode — the Agent-Brain incident happened because the author forgot despite having relevant memories. Gate-in-the-skill beats gate-in-the-head.

Related

  • Origin: 2026-04-24 Agent-Brain ideation session (Claude Opus 4.7, session b02bd06c-a2cb-4aff-8af1-c4f2643c91be)
  • Mirrors: ticket-create/references/ticket-create-workflow.md §1 Pre-Creation Duplicate Sweep
  • Related: AGENTS.md §3 Meta Gate: Deduplication & Linking (already mandates this at the policy level; ideation-sandbox skill just needs to expose the enforcement hook)
  • Pattern memory: [ask_kb dominates query_documents] — the retrieval primitive is already canonical; just needs invocation discipline at ideation time
  • #10137 Open Question 5 (Friction suppression detection) — related but distinct; this ticket prevents friction masking, #10137 OQ5 detects friction absence

Origin Session ID: b02bd06c-a2cb-4aff-8af1-c4f2643c91be

Retrieval Hint: "ideation adjacency sweep pre-authoring duplication prevention Gate 0" / "ideation-sandbox skill enhancement symmetric with ticket-create §1"

tobiu referenced in commit 0224117 - "feat(agent): batch governance authoring gates (#10276) (#12616) on Jun 6, 2026, 3:27 PM
tobiu closed this issue on Jun 6, 2026, 3:27 PM