6f6a873c ยท zzmq.dev@gmail.com/zz
Commit
6f6a873cb72a3e861677bc59f8cef30a746f9c11
Spec out the Cloudflare Artifacts/Durable Objects backend move New page (site/content/remote-backend/index.md): local stays the default and keeps working unconfigured -- this is a pluggable Backend interface (same shape as engine/model.ts's ModelBackend split), not a one-way migration. Researched current Cloudflare Artifacts/Durable Objects APIs before writing anything concrete rather than guessing. Key finding: Artifacts' only write path is a real `git push` over the smart HTTP protocol -- no binding method writes a blob/tree/commit/ref directly. That's good news: engine/gitNotes.ts already uses isomorphic-git specifically because it's Workers-compatible, so the Ladder's git-notes mechanism doesn't need to change shape, just where the clone it operates on lives. Maps every existing piece onto a primitive: git content and the Ladder onto Artifacts (via isomorphic-git push/clone against a token from repo.createToken()), Lane/Ask/Answer state onto one Durable Object per repo (SQLite-backed storage, replacing engine/store.ts's flat files), and the agent tool surface onto Worker routes with the same names already defined in app/agent/tools.ts. Flags the real open questions (push cost/reliability against Artifacts untested, whether the DO keeps its own clone or fetches on demand, diffing without a full clone, token rotation, current beta access) rather than glossing over them, and lays out a five-step build sequence ending in the same bounded zz work test already used locally, run against the remote backend for comparison. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Troy Howard <thoward37@gmail.com> -- 2026-10-08T08:26:15.000Z