Skip to content

T03 Validation — Claude Code Driver

T03 Validation — Claude Code Driver

Gate: corepack pnpm@10.34.5 gate:full
Result: 40 passed, 0 failed, 0 skipped, 0 todo (12 T03 cases)
SPEC_DEVIATION: none

Check A — Sufficient coverage

Criterion Assertion evidence Required outcome Covered
Installed CLI is detected without model use spikes/claude-code-driver/test/claude-driver.test.mjs:15-18 — available/version/stream/no-session fields exact Read-only capability probe succeeds for 2.1.168 Yes
Incompatible version blocks claude-driver.test.mjs:23-24 — unavailable and VES_CLAUDE_VERSION_UNSUPPORTED Unsupported CLI fails before session Yes
Invocation is structured and locked down claude-driver.test.mjs:29-35 — required flags true, dangerous flags false Safe stream-json baseline Yes
Prompt is stdin-only claude-driver.test.mjs:40-41 — exact echo and argv absence Private prompt is not process metadata Yes
Identity/events/usage are normalized claude-driver.test.mjs:46-50 — model, lifecycle, delta, usage/cost exact Common Driver evidence is preserved Yes
Tool request is data only claude-driver.test.mjs:55-60 — exact normalized tool object Claude request does not execute a tool in the Driver Yes
Malformed stream fails closed claude-driver.test.mjs:65-66 — stop error and VES_CLAUDE_STREAM_INVALID Invalid NDJSON cannot become events/actions Yes
Execution failure is stable claude-driver.test.mjs:71-73 — stop/code/message exact Claude error remains typed evidence Yes
Cancellation terminates process contract claude-driver.test.mjs:84-86 — integer terminated PID, aborted/code exact Controller cancel reaches tree terminator Yes
Ambient credentials are excluded claude-driver.test.mjs:95-96 — no API key, explicit fixture env preserved Environment is allowlist plus explicit binding Yes
Sensitive output is redacted claude-driver.test.mjs:107-109 — secret absent; stdout/stderr redacted exact No credential material leaves adapter Yes
Session identity is non-portable claude-driver.test.mjs:114-115 — private ID absent and no session field Claude session never enters portable result Yes

Checks B–D

  • Non-shallow: tests execute a real local version probe and real child processes; they assert output/state/error values, not spawn call counts alone.
  • Necessary: each test maps to T03 Done-when, VES-MDL-002/005, or VES-HOF-004; no speculative provider behavior is tested.
  • Guidelines: follows the Driver contract matrix and T03 in tasks.md; model calls are intentionally excluded because T03 qualification needs protocol proof, not paid output quality.

Verdict

PASS — all prior and 12 T03 cases pass with zero skip. Tests are spec-anchored and were not weakened, deleted, skipped, or deferred.