---
id: 10336
title: 'ideation-sandbox: codify external-precedent web_search step before Discussion authoring'
state: CLOSED
labels:
  - documentation
  - enhancement
  - ai
assignees:
  - neo-gemini-pro
createdAt: '2026-04-25T20:00:22Z'
updatedAt: '2026-04-25T20:14:28Z'
githubUrl: 'https://github.com/neomjs/neo/issues/10336'
author: neo-opus-ada
commentsCount: 0
parentIssue: null
subIssues: []
subIssuesCompleted: 0
subIssuesTotal: 0
blockedBy: []
blocking: []
closedAt: '2026-04-25T20:14:28Z'
---
# ideation-sandbox: codify external-precedent web_search step before Discussion authoring

> **Author's Note:** Filed by Claude Opus 4.7 (Claude Code) during session `b5a17132-7324-46e1-b73e-038825bb4d55` after @tobiu's challenge this turn surfaced a missing discipline. Empirical anchor: this very session-arc almost shipped a Neo-native ad-hoc payload schema for #10334 that diverged from the Google Agent2Agent (A2A) Protocol — an established Linux-Foundation v1.0 standard adopted by 150 production orgs (LangGraph/CrewAI/Google ADK/etc.). The catch came only when @tobiu suggested *"a quick web_search exploration"* before implementation. Without that prompt, the schema would have re-invented existing infrastructure at exactly the wrong moment. Codifying the discipline so future ideation flows fire it structurally.

## Context

The Ideation Sandbox skill (#10278 + `ideation-sandbox-workflow.md`) governs how exploratory architectural concepts move from sketch → Discussion → Epic graduation. Current §1 has a **content-level adjacency sweep** (per #10276) that checks `resources/content/issues/` and `resources/content/discussions/` for in-flight similar work. That covers *internal* duplicate-detection.

It does NOT cover **external-precedent verification** — checking whether the structural pattern being proposed (protocol / schema / interface / state-machine / message envelope / cross-system convention) already exists as an industry/community standard.

## The Problem

Ideation that proposes *structural patterns with potential industry equivalents* is at risk of re-inventing existing standards. Examples:
- Agent-to-agent communication protocols (A2A — actually exists per this turn's discovery)
- Memory/embedding schemas (LangChain/LlamaIndex conventions)
- State-machine task lifecycles (Temporal, GitHub Actions, BPMN)
- Tool-use protocols (MCP — already aligned, but the precedent-check would have surfaced it earlier in design)

When Discussion bodies reference *"open X Protocol"* or *"industry standard for Y"* without sourcing, two failure modes:
1. **Vague-reference accepted:** the protocol is real but unsourced → schema diverges from the standard at implementation time
2. **Vague-reference fabricated:** no such protocol exists → wasted "alignment" effort

Both prevented by a structural web_search step at ideation-authoring time.

## Why industry-friction-radar Doesn't Fit *(per @tobiu's invited challenge)*

Reading `industry-friction-radar/references/industry-friction-radar-workflow.md`:

> *"When executing this radar, you are **strictly forbidden** from searching for or adopting 'SOTA' or 'Industry Standards.' You must target the **Frontier** — the bleeding edge where those mainstream standards are breaking down and failing. We do not ingest the standards; we ingest the friction points caused by those standards failing at scale."*

Radar = **frontier-friction-extraction** (search for what's NOT working in standards; abstract the friction; build Neo-native solutions). The A2A finding is the OPPOSITE — an established mainstream standard radar is forbidden from surfacing. Distinct disciplines, opposite directions:

| Discipline | Targets | When fires | Output |
|---|---|---|---|
| `industry-friction-radar` | Frontier / bleeding-edge / failing-at-scale | When Neo could native-innovate from observed industry friction | Native-Neo concept abstracted from external friction |
| **External-precedent check** *(this proposal)* | Established standards / specs / conventions | When ideation proposes structural patterns with potential industry equivalents | Cite-or-diverge decision; alignment vs. divergence rationale |

Both legitimate, complementary, non-overlapping. Radar would have refused to surface A2A; precedent-check would have mandated it.

## The Architectural Reality

Neo is an **Application Engine** (per `feedback_neo_is_engine_not_framework`) — engines like Unreal/Godot adopt standards (USD, glTF, OpenXR) without losing identity. Speaking established protocols *strengthens* engine identity (interoperability) rather than dilutes it. The right discipline is verify-then-align-or-diverge-with-rationale, not avoid-all-standards.

## The Fix

Add a new sub-step to `ideation-sandbox-workflow.md §1` (or §2 Initial Proposal phase) — `External-Precedent Sweep`:

```markdown
### §1.X External-Precedent Sweep (per #ThisTicket)

When ideating about structural patterns with potential industry equivalents — protocols, 
schemas, interfaces, state machines, message envelopes, cross-system conventions, agent-
coordination patterns — you MUST execute a web_search to surface established standards 
BEFORE filing the Discussion.

**Trigger conditions** (fire if any apply):
- Ideation references "open X Protocol" / "industry standard for Y" / "established convention"
- Ideation proposes a SCHEMA / INTERFACE / PROTOCOL / STATE_MACHINE definition
- Ideation describes agent-to-agent / system-to-system / cross-vendor patterns
- Body uses words like "protocol", "spec", "standard", "convention" suggesting external precedent

**Skip conditions** (no web_search needed):
- Pure Neo-internal substrate (boot orientation, MX framing, hemisphere split, daemon scheduling)
- Codebase-specific debt or refactor
- Already-cited external precedent with verifiable URL

**Execution:**
1. Run web_search with current year + protocol-domain keywords (e.g., "agent-to-agent protocol standard 2026")
2. If a standard surfaces: cite the canonical URL inline in the Discussion body Rationale; explicitly choose Align / Diverge-with-rationale / Hybrid
3. If no standard surfaces: document the search ("I searched for [keywords] and found no canonical industry standard; proposing Neo-native design")
4. The search documentation becomes part of the Author's Note or a §Background section

**Distinction from `industry-friction-radar`:**
- Radar targets frontier-friction (forbidden from surfacing established standards)
- Precedent-sweep targets established standards (mandates surfacing them)
- Both legitimate, complementary, opposite directions
```

## Acceptance Criteria

- [ ] `.agent/skills/ideation-sandbox/references/ideation-sandbox-workflow.md` updated with new sub-step (suggested location: §1 alongside the #10276 adjacency-sweep, OR §2 Initial Proposal pre-filing gate)
- [ ] Trigger conditions explicit (when fires) + skip conditions (when doesn't)
- [ ] Distinction from `industry-friction-radar` codified inline (so future agents don't conflate)
- [ ] Empirical anchor cited: this turn's A2A discovery as the load-bearing example of why the discipline matters
- [ ] Cross-reference added in `industry-friction-radar` workflow noting the complementary discipline (so radar invocations don't accidentally try to do precedent-check work)
- [ ] Optional: `Discussion #10313 (A2A Task Schema)` updated retroactively with the cited A2A standard URL (cleanup post-merge if author concurs)

## Out of Scope

- **Replacing `industry-friction-radar`** — this is complementary, not replacement. Radar's frontier-friction discipline is distinct and remains valuable.
- **Mandatory web_search for every ideation** — not all Discussions touch external-precedent territory. Trigger conditions explicit so Neo-internal ideation skips correctly.
- **Source-credibility scoring** — first-pass surface-the-existence-of-standards is sufficient. Citation evaluation can layer on later.
- **Live spec-import / SDK adoption** — this is a precedent-AWARENESS step at ideation time. Implementation-time alignment decisions stay scope of the implementing PR/ticket.
- **Anthropic-specific search domain restrictions** — this is a generic web_search; per-domain filtering is configurable but not mandated.
- **Backporting precedent-check to existing Discussions** — except for #10313 cleanup (optional AC), no retroactive sweep.

## Avoided Traps

- **Conflating with `industry-friction-radar`** — rejected; opposite scopes (frontier-friction vs established-standards). The challenge from @tobiu surfaced this trap explicitly.
- **Making it a separate skill** — rejected for v1; it's a single-step discipline, not a multi-phase workflow. If scope grows, can graduate to its own skill later.
- **Hard-mandating web_search for every ideation** — rejected; over-fires on Neo-internal ideation (e.g., #10309 boot orientation has no industry precedent). Trigger conditions narrow the surface.
- **Auto-fail Discussion if precedent-sweep skipped** — rejected; discipline is reviewer-flag-able, not mechanical-block. Authors can document "I searched, found nothing" or "skip-condition applies."
- **Building a curated registry of external standards** — rejected as v1 scope; web_search at ideation time gives current snapshot. Static registry would go stale. Could be added later if precedent-search becomes high-frequency.

## Related

- **`ai/skills/ideation-sandbox/`** — the skill being extended.
- **`ai/skills/industry-friction-radar/`** — complementary skill; explicit cross-reference to be added.
- **#10276** — pre-authoring adjacency sweep (precedent for "mandatory pre-filing step in ideation"); structural model for this addition.
- **#10283** — pre-authoring meta-skill sweep for `create-skill` (parallel pattern for adjacent skill enhancements).
- **Discussion #10313** — A2A Task Object Schema; the empirical anchor where this discipline would have caught the unsourced "open A2A Protocol" reference at ideation time instead of cycle-2 substrate review.
- **#10334** — A2A-aligned schema work currently in flight; would have benefited from precedent-check at ideation time.
- **`feedback_verify_written_claims_against_precedent` memory** — durable anchor for the verify-precedent-before-implementing reflex.

Origin Session ID: `b5a17132-7324-46e1-b73e-038825bb4d55`
Retrieval Hint: `"ideation-sandbox external-precedent web_search alignment standards-verification radar-distinction A2A discovery healing-amnesia organism"`

## Timeline

- 2026-04-25T20:00:24Z @neo-opus-ada added the `documentation` label
- 2026-04-25T20:00:24Z @neo-opus-ada added the `enhancement` label
- 2026-04-25T20:00:24Z @neo-opus-ada added the `ai` label
- 2026-04-25T20:03:34Z @neo-gemini-pro assigned to @neo-gemini-pro
- 2026-04-25T20:04:41Z @neo-gemini-pro cross-referenced by PR #10337
- 2026-04-25T20:04:51Z @neo-opus-ada cross-referenced by #10338
- 2026-04-25T20:08:57Z @neo-gemini-pro referenced in commit `a03ac0a` - "feat(ai): codify external-precedent sweep in ideation-sandbox (#10336)"
- 2026-04-25T20:14:28Z @tobiu referenced in commit `8a1b8f6` - "feat(ai): codify external-precedent sweep in ideation-sandbox (#10336) (#10337)

Co-authored-by: tobiu <tobiasuhlig78@gmail.com>"
- 2026-04-25T20:14:28Z @tobiu closed this issue
- 2026-04-25T21:14:53Z @neo-opus-ada cross-referenced by #10341
- 2026-04-25T22:47:15Z @neo-opus-ada cross-referenced by #10347

