# Test 226 — opencode-cli release pin matrix

date: 2026-07-16T03:15:29+00:00
candidate pin: 1.18.1
opencode: 1.18.1
bun: 1.3.1
node: v18.20.4

## Layer 1 — environment / ACP surface

- exact binary version: PASS
- opencode acp --help: PASS

## Layer 2 — real ACP single-turn

# RFC-029 PR④ — kernel-live ACP e2e report

date: 2026-07-16T03:15:30+00:00
bun: 1.3.1
node: v18.20.4
opencode: 1.18.1
free model: opencode/deepseek-v4-flash-free

## Full harness output

```
[runtime.log] [opencode-acp] session/new — ses_09713c95...
===S-happy-live-BEGIN===
{
  "freeModel": "opencode/deepseek-v4-flash-free",
  "wallMs": 9227,
  "replyText": "hello world",
  "replyTextLength": 11,
  "thoughtTextLength": 94,
  "sessionId": "ses_09713c955ffeS3V1KKYzyigDOR",
  "chunks": 2,
  "thoughtChunks": 22,
  "stopReason": "end_turn",
  "rescued": false,
  "usage": {
    "inputTokens": 3657,
    "outputTokens": 3,
    "totalTokens": 3682,
    "thoughtTokens": 22
  },
  "pidsBefore": [],
  "pidsDuring": [
    83
  ],
  "pidsAfter": [],
  "logsFromRuntime": [
    "[opencode-acp] session/new — ses_09713c95..."
  ],
  "warnsFromRuntime": []
}
===S-happy-live-END===
```

harness exit=0

## Assertions

  ✓ opencode child present during turn (pgrep) — ge '1' got '1'
  ✓ session id issued by session/new — regex '^ses_' got 'ses_09713c955ffeS3V1KKYzyigDOR'
  ✓ at least one agent_message_chunk — ge '1' got '2'
  ✓ replyText non-empty (real upstream free model produced text) — gt '0' got '11'
  ✓ replyText looks like a real turn (contains a letter) — regex '[A-Za-z]' got 'hello world'
  ✓ stopReason recorded — regex '.+' got 'end_turn'
  ✓ no orphan opencode after runtime.client.stop — eq '0' got '0'
  ✓ wall time under 3-minute idle ceiling — regex '^[0-9]+$' got '9227'

OVERALL: PASS
trailer: RFC-029 PR④ kernel-live — PASS

## Gate

- real opencode child spawned: PASS
- ACP session/new returned a session id: PASS
- live free-model reply was non-empty: PASS
- child cleanup left no orphan: PASS

OVERALL: PASS
