Files
rune/prompts/research-stages/innovation.md
T
Nick f5ee557ee3 fix(CORRECTION-1/2): D2 producer contract + sentinel-tolerant reader; D3 telemetry wired into production path
ADAPT-1 baseline corrections (per handoff: fix D2+D3, record D1 as
FIXED_DEPTH_ROUTE_INAPPLICABLE — no OUTWARD semantics change).

CORRECTION-1 (D2): producer contract enforced
- Worker prompts updated: artifact file must contain exactly one JSON
  document; StageCompleted markers go to stdout ONLY
- _load_worker_artifact_file(): canonical reader requires pure JSON;
  LEGACY_COMPATIBILITY_ONLY permits exactly the known 'StageCompleted:
  <STAGE>' trailing sentinel (regex-anchored, no arbitrary salvage);
  corrupt JSON is never masked
- Acceptance: pure JSON OK; exact sentinel OK; arbitrary trailing text
  rejected; corrupt JSON rejected; all 6 stage prompts carry the contract

CORRECTION-2 (D3): StageAttempt telemetry wired into real production path
- research_event_relay: marks tool windows on tool running/completed/error/
  failed events (observational, never changes classification)
- StageExecutor._run_relay_with_telemetry: marks model windows around
  relay.run(); attempt threaded through _execute_stage into all 8 stage
  methods (telemetry_attempt kwarg, default None)
- PROVEN on a real production-path execution: ADVERSARIAL record shows
  wall=0.3006, model_time=0.3001 (1 window), tool_time=0.3001 (1 window) —
  overlapping by design, non-additive model respected
- telemetry failures never raise into the stage path (observational)

D1 NOT a code correction: recorded as
FIXED_DEPTH_ROUTE_INAPPLICABLE_TO_LOCAL_EVIDENCE_TASKS —
EXPECTED_ROUTING_LIMITATION / ADAPTIVE_REQUIREMENT. OUTWARD external-
evidence semantics preserved unchanged.

1163 tests pass (was 1158); ruff clean.
2026-09-09 22:18:50 +01:00

710 B

Research Stage: INNOVATION

Process capsule

  • Issue: {{ISSUE_NUMBER}}
  • Round: {{ROUND}}
  • Stage: INNOVATION (of 8)
  • Prior artifacts: {{PRIOR_ARTIFACTS}}
  • Blocking unknowns: {{BLOCKING_UNKNOWNS}}

Your task

From the frozen evidence, derive ADOPT/ADAPT/BORROW/BUILD candidates.

You MUST

every candidate derives_from specific evidence IDs

You MUST NOT

do NOT introduce candidates without evidence derivation

Output

Produce your stage artifact as structured text. End with:

StageCompleted: INNOVATION  (stdout ONLY — the artifact file must contain exactly one JSON document, nothing else)

If you cannot complete this stage, end with:

StageFailed: INNOVATION
Reason: <why>