OpenCode V2 catalog — Daemon/Hub wiring slice
Date: 2026-10-11
Docker image: tests/test906-daemon-catalog (Dockerfile + run.sh)
Image built from commit dc4a9292711085f8c5bbe23bb30582d55361b8a0
Runner: docker run --rm -e EXPECTED_SOURCE_COMMIT=dc4a9292711085f8c5bbe23bb30582d55361b8a0
The script requires /.dockerenv, a 40-character SOURCE_COMMIT equal to that value, and `opencode --version` = `opencode v2.0.22`. All three passed. RUN_RC=0.

source=dc4a9292711085f8c5bbe23bb30582d55361b8a0

bun test (reader, endpoint, owned reader, doorbell):
  17 pass, 0 fail, 83 expect() calls, 4 files

Doorbell file opencode-catalog-dispatch.test.ts, included in those 17:
  doorbell reads the owned loopback and acks a whitelist snapshot
  missing endpoint and a directory mismatch ack an error without a fetch
  a pull failure is not acked, and the dispatcher does not spawn
  symlink node directories are not an owned match

Owned-reader path cases in the same run:
  tilde and symlink workdirs match the endpoint, and the snapshot keeps the authorized absolute path

native.ts against opencode v2.0.22 inside the same container:
  PASS L1 real V2 rejects wrong authentication
  PASS L2 real V2 snapshot: providers=2 models=12; NOT invocation verified
  PASS L3 daemon owned reader against the same native server
  PASS L4 missing endpoint is unavailable and does not start another server
  cleanup: private native child exited; disposable fixture removed

Hub authorization is not in this image. On the same commit, host bun 1.3.14 with an isolated COMMHUB_DB:
  server/src/opencode-v2-catalog.test.ts — 5 pass, 0 fail, 52 expect() calls
  Includes Windows `C:/project` accepted for a stored `C:\project`, relative and `C:relative` rejected as invalid_ack, `D:\other` failed as invalid_response, `~/project` matched `/home/user/project`, and lexical `..` collapsed.

This report commit does not change the suite. CI rebuilds the same image with the tip SHA.

Prior host-only note (superseded for the catalog path; kept so the rebase remeasure is not dropped):
  After rebase onto main b4413131, host bun 1.3.14 recorded agent-node catalog files 34 pass, hub authorization 3 pass (before the Windows/tilde cases), tool-audience 12 pass (all 94 / 84,273 B, node 61 / 62,556 B, user 61 / 58,684 B), mcp-context-cost 5 pass, daemon identity 15 pass, test629 inventory_count=85 sdk 1.32.0, doc pins and MCP index 94/94. Byte ceilings in server/src/tool-audience-http.test.ts are user 58,956, all 84,782, node 63,100. That host run did not execute this Docker image. native.ts was not re-run on that host.
