export const harnessPaths = [ { name: 'Foreground long-poll', harness: 'Codex desktop · observed', pickup: 'Immediate when the turn is blocked', tradeoff: 'Reliable, but Live occupies the main agent and inherits its model speed.', status: 'Baseline', statusTone: 'ready', }, { name: 'Background terminal + watcher', harness: 'Codex app-server · available primitives', pickup: 'Not yet measured end-to-end', tradeoff: 'The app-server exposes output notifications and fs.watch, but a watcher still has to wake model work quickly.', status: 'Benchmark next', statusTone: 'measure', source: 'https://learn.chatgpt.com/docs/app-server#api-overview', }, { name: 'Warm variant producer', harness: 'Codex custom agent', pickup: 'Spawn/resume cost unknown', tradeoff: 'Can pin a faster model and lower reasoning, but fresh context and handoff can erase the gain unless the agent stays warm.', status: 'Prototype', statusTone: 'prototype', source: 'https://learn.chatgpt.com/docs/agent-configuration/subagents', }, { name: 'Background variant producer', harness: 'Claude Code subagent', pickup: 'Supported; measure per version', tradeoff: 'Model, effort, background execution, and resume are configurable. Preserve the current main-thread path as fallback.', status: 'Cross-harness control', statusTone: 'control', source: 'https://code.claude.com/docs/en/sub-agents', }, ]; export const liveExperiments = [ { rank: 1, title: 'Dispatch first, capture second', evidence: 'The plain path spends 828 ms before the generate POST leaves the browser.', move: 'For unannotated picks, post the event immediately and run shader capture in parallel. Keep annotated capture on the blocking path until the protocol can attach evidence later.', expected: 'Removes up to 90% of the measured model-free floor on the common path.', confidence: 'Measured', }, { rank: 2, title: 'Reveal variants progressively', evidence: 'First and all variants arrive together today; the measured delivery gap is only the observer settling time.', move: 'Give each variant its own ready event or preview file. Reveal variant 1 as soon as it validates while the remaining variants continue.', expected: 'Large perceived win whenever generation is the dominant stage.', confidence: 'Protocol change', }, { rank: 3, title: 'Keep a harness-native producer warm', evidence: 'Codex and Claude can assign a different model to a custom subagent; both support continuing agent state.', move: 'Resume one narrow Live producer with a compact contract, low reasoning, and source-write tools only. Quality-gate its output before preview.', expected: 'Reduces model latency without forcing the user to change the main conversation model.', confidence: 'Needs spawn/resume benchmark', }, { rank: 4, title: 'Move context work into the selection dwell', evidence: 'The existing prefetch event was disabled because quick Go clicks paid an extra harness round trip.', move: 'Debounce selection, then resolve the source file, style mode, token summary, and identity lock locally. Cancel or reuse the result on Go without queueing a model turn.', expected: 'Shortens scaffold and prompt preparation while keeping quick clicks cheap.', confidence: 'Low-risk prototype', }, { rank: 5, title: 'Generate knobs after pixels', evidence: 'Parameter manifests are authored in the same response as every variant even though the first job is visual comparison.', move: 'Render validated variants first. Infer coarse CSS knobs locally or ask the producer for parameters only for the visible/selected variant.', expected: 'Cuts output tokens and lets the first useful preview land sooner.', confidence: 'Quality experiment', }, { rank: 6, title: 'Parallelize variant ideas, centralize writes', evidence: 'Modern harnesses can run several specialized agents concurrently, but shared-file edits create coordination risk.', move: 'Have workers return one structured variant each; one coordinator validates and performs the only source write. Stream the first valid result.', expected: 'Lower time to first option and stronger diversity at higher token cost.', confidence: 'Expensive experiment', }, { rank: 7, title: 'Trim and cache the producer contract', evidence: 'The full Live reference is large and stable; only a small slice is needed for one generate event.', move: 'Compile a provider-specific generation contract, keep the stable prefix cacheable, and attach only the action reference plus picked-element context.', expected: 'Lower prefill latency and cost, especially for fresh subagents.', confidence: 'Harness-specific', }, { rank: 8, title: 'Wake on the journal, not terminal stdout', evidence: 'Codex app-server exposes fs.watch and process output notifications, while this desktop probe still required an explicit terminal read.', move: 'Benchmark a plugin/app-server bridge that watches the durable Live journal and starts or steers a dedicated turn directly.', expected: 'Frees the main turn if watcher-to-turn startup beats foreground polling.', confidence: 'Architectural bet', }, ]; export const currentHarnessProbe = { testedAt: '2026-07-11', surface: 'Codex desktop unified exec', delayedOutputMs: 3000, processExitMs: 4000, surfacedAutomatically: false, result: 'The sentinel appeared only after an explicit session read; no app terminal was attached.', };