Recorded on 2026-08-01 (Asia/Shanghai) on Windows x64 and WSL2 Ubuntu 26.04 x64 with Bun 1.3.14.
- npm registry is process-locally fixed to
https://registry.npmjs.org/through.npmrc.test,NPM_CONFIG_USERCONFIG, andNPM_CONFIG_REGISTRY. - Git fsmonitor is disabled only in the child process with
GIT_CONFIG_COUNT,GIT_CONFIG_KEY_0=core.fsmonitor, andGIT_CONFIG_VALUE_0=false. - Every invocation uses a PID-unique repository-sibling
.opencode-v031-test-runtimedirectory for TEMP, XDG config/data, and Bun cache state. The sibling location prevents discovery of repository.opencodeplugins andAGENTS.md; the same drive preserves Windows path semantics. - Collaboration V0.2/V0.3, Scanner, Journal, management API, automatic recovery, and fault-injection flags are explicitly disabled for the general baseline.
- The PID directory is removed after the child exits; cleanup failure makes a successful run fail. No user-level npm or Git configuration is modified.
- Reusable runner:
bun run test:v03-baseline.
bun run test:v03-baseline
WSL2 result: 55 passed, 1 platform-specific skip, 0 failed, 228 assertions, 10.02 seconds across 10 files. The selected Worktree.remove fsmonitor fallback case only runs on Windows; all 56 selected tests were accounted for.
Direct collaboration result: 42 passed, 0 failed, 201 assertions, 9.68 seconds across 8 files.
The focused baseline covers V0.1/V0.2 compatibility, V0.3 Scanner, Journal, recovery, lifecycle, management API/UI, real child-process locking, registry isolation, and Windows fsmonitor fallback.
- OpenCode and Core package-level typechecks passed during focused diagnostics.
packages/core: bun run migration --check: passed in 3 seconds in the WSL2 clean bundle clone; no incremental schema changes and the full generated schema matched.- Root
bun run typecheck: passed all 30 tasks in 99.005 seconds in the WSL2 clean bundle clone. Both tracked declaration links were real symlinks and resolved to../../ui/src/custom-elements.d.ts. - The Windows checkout still materializes those links as 33-byte path text files and produces TS1128. That platform limitation remains documented, but it no longer blocks the release because the required symlink-capable gate passed in WSL2.
The exact all-target bun run build completed successfully in the clean bundle clone after assigning process-local writable runtime directories. It emitted:
- Linux: arm64, x64, x64-baseline, arm64-musl, x64-musl, x64-baseline-musl.
- macOS: arm64, x64, x64-baseline.
- Windows: arm64, x64, x64-baseline.
- Windows x64 and x64-baseline
--versionsmoke tests passed.
bun run test:v03-baseline --timeout 60000
Final result:
- Total: 3293 tests across 254 files
- Passed: 3270
- Failed: 0
- Skipped: 22
- Todo: 1
- Snapshots: 50 passed
- Assertions: 8831
- Execution time: 460.73 seconds
The Linux test graph contains 45 fewer platform-selected cases than the Windows graph and 38 fewer skips. The two file-symlink tests that capability-skip on this Windows token executed on Linux. The historical Windows 18-failure analysis remains 9 environment/platform (D) and 9 test-isolation (E), with no V0.3 regression (A); detailed evidence is in docs/collaboration/V0.3.1_BASELINE_REPORT.md.
- Four V0.3.1 regressions (Scanner cancel, recovery idempotency, route cache isolation, fault recovery): 50/50 passed, 320 assertions, 31.43 seconds.
- SQLite/lock real child processes: before fix 13 pass / 7 fail across 10 rounds; after fix 20/20 passed, 180 assertions, 80.81 seconds.
- Shell progressive metadata: before deterministic synchronization 4/5 passed; file-latch implementation 10/10 passed.
- Compaction cancellation: five independent Windows measurements were 315–354 ms, supporting a 500 ms Windows-only test threshold while other platforms retain 250 ms.