Skip to main content
Version: MVP

ADR 0001 · Record MVP runner scope

2 min readAcceptedRecorded 2026-04-22

What this ADR decides

That the MVP runner path is a deterministic provider-backed certification path by default, not a fully autonomous agent loop. Live model invocation and real side effects ship behind explicit configuration, grants, redacted receipts, and release-gate coverage.

Status: Accepted.

Match public framing to the shipped artifact.

Context

Craik's public framing must match the shipped artifact. The MVP already has case-file assembly, policy envelopes, prompt compilation, receipts, handoffs, work graphs, local memory proposals, Stigmem-compatible reads, and deterministic OpenAI- and Anthropic-shaped provider runner paths. It does not yet perform live model calls, arbitrary tool execution, file edits, or remote Stigmem writes without an explicit grant flow.

Decision

Default runner path

Deterministic provider-backed certification path. Validates contracts and policy boundaries for OpenAI and Anthropic provider families without live calls in tests or demos.

Live invocation

Added behind explicit configuration, least-privilege grants, redacted receipts, and release-gate coverage.

Adapter framing

Codex, Claude, and Gemini adapters documented as prompt-handoff or fixture adapters until they invoke real runners.

Consequences

Honest docs

README and MVP docs lead with the true current surface, not a promise of full autonomy.

Operator command

craik run execute is the operator command for the deterministic MVP runner workflow.

Policy regression

Policy tests include a provider-runner grant boundary check instead of a placeholder.

Future priorities

Live invocation · bounded tool execution · remote Stigmem write promotion · package cleanup. All ahead of broader surface expansion.

Retraction: none active.

Retract this ADR if Craik moves to a different default runner posture (for example, live calls becoming the default rather than an opt-in).

What's next