Skip to content

Commit 4f9cf39

Browse files
schmonzclaude
andcommitted
docs: session-end wrap — self-attesting binaries vision, ws/bundled-deps decision, START-HERE-TOMORROW
Capture the 'ship binaries that run their own tests' direction (clode selftest as the delivery vehicle for the oracle principle) + the ws decision (required deps bundled, missing = fail loud, revisit 8dc4947). Consolidated loose ends + tomorrow's start (ws decision first, then apicheck v1 / selftest, M3, upstream batch, SPARC verify). Full design in docs/superpowers/specs/2026-07-08-api-surface-gate-design.md. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
1 parent 2d1f249 commit 4f9cf39

1 file changed

Lines changed: 40 additions & 0 deletions

File tree

‎BACKLOG.md‎

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,46 @@ Concrete clode-under-Node divergences from native Claude Code, to triage and fix
66

77
## NEXT UP — Phase 3: TUI paints (M1) + human-verified turn (M2) + AGENTIC TOOL USE all work under tjs; M3 (render parity) next
88

9+
### ▶ START HERE TOMORROW (session 2026-07-08 end)
10+
11+
**Landed today (15 commits, `e3e5a15`..`2d1f249`; tree clean):** UAF/SIGSEGV fixed
12+
(ASAN); 5 interactive-path gaps (Intl polyfill, Intl-new-optional, setEncoding,
13+
child.stdin Writable, +the persistent-shell stdin hang); **agentic tool use** (Bash
14+
tool: memoryUsage/cpuUsage, fs.promises.open+O_*, tjs.spawn numeric-fd inherit). So
15+
under tjs now: **M1 paint + M2 human turn + slash commands + Bash tool all work.** v0
16+
API-surface gate shipped (`scripts/apicheck.mjs`). Full suite (with TUI-live-render):
17+
**514/474 pass/2 fail/1 todo** — the 2 fails are STALE ws tests (see below), not tjs.
18+
Endgame design (untracked): `docs/superpowers/specs/2026-07-08-api-surface-gate-design.md`.
19+
20+
**Recommended first move — the ws / bundled-deps decision (brick #1 of self-attesting binaries):**
21+
1. Settle the shipped-binary deps contract: SEA `deps.tar` bundling is the only model
22+
for shipped binaries; a missing REQUIRED dep = broken build → **fail loud** (user's rule).
23+
2. Revisit `8dc4947` (non-fatal `require('ws')` was a bring-up concession) — restore
24+
fail-loud-at-require for required deps, or scope the lazy stub behind a dev flag.
25+
3. The 2 stale tests (`websocket.test.cjs`, `e2e-tui.test.cjs`) resolve as a
26+
CONSEQUENCE of that decision — do NOT touch them in isolation.
27+
28+
**Then / in parallel (ranked):**
29+
- **apicheck v1 = the embeddable oracle:** recording-Proxy per-module coverage %,
30+
checked-in golden baselines + baseline manifest, and broaden the corpus to include
31+
**tool-use turns** (today's OVr bug was invisible to headless `-p` — the corpus MUST
32+
exercise tools). This artifact IS the future `clode selftest`.
33+
- **`clode selftest`** (self-attesting binary): wire the corpus+baselines into a shipped
34+
`clode selftest [--json]` — a per-capability confidence map users run on their own box
35+
(offline, node-free, token-free). Delivery vehicle for the oracle principle; design doc.
36+
- **M3 (render parity):** tjs interactive render ~1.2MB vs node ~8KB/turn (redundant
37+
full redraws). Last phase-3 milestone; non-fatal.
38+
- **Upstream-txiki batch** (awaiting go-ahead): `txiki-spawn-fail-uaf`,
39+
`txiki-stream-write-sync-number`, `txiki-spawn-inherit-fd`, the quickjs-ng v-flag
40+
`\p{}` regexp bug, + the phase-2 batch (sync-fs, sync-spawn CLOEXEC, no-origin,
41+
netbsd, default-stack-size).
42+
- **SPARC verify-next:** does the `-p` path instantiate any wasm (tokenizer), or is all
43+
wasm behind the TUI (Yoga)? If `-p` is wasm-free, headless-SPARC decouples from
44+
wamr-big-endian.
45+
- Minor: `process.resourceUsage` still undefined (unneeded so far; add if a path hits it).
46+
47+
---
48+
949
**AGENTIC TOOL USE WORKS (`d4e197d`, independently verified):** a real Bash-tool turn
1050
runs a shell command and returns output under `CLODE_ENGINE=tjs`. Root cause was a
1151
cluster of tool-path shim gaps (NOT the async-gen codegen bug): `process.memoryUsage`/

0 commit comments

Comments
 (0)