content: persist-backed op log + versioning + diff (Phase 2 complete, 162/162)
Some checks failed
Test, Build, and Deploy / test-build-deploy (push) Failing after 53s
Some checks failed
Test, Build, and Deploy / test-build-deploy (push) Failing after 53s
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -19,7 +19,7 @@ injected adapter, not core.
|
||||
|
||||
## Status (rolling)
|
||||
|
||||
`bash lib/content/conformance.sh` → **133/133** (Phase 1 complete: blocks + doc + render + api)
|
||||
`bash lib/content/conformance.sh` → **162/162** (Phase 1 complete + Phase 2: persist op log)
|
||||
|
||||
## Ground rules
|
||||
|
||||
@@ -63,8 +63,8 @@ lib/content/api.sx ── (content/edit) (content/render) (content/history) ─
|
||||
- [x] `api.sx` + tests + scoreboard + conformance.sh
|
||||
|
||||
## Phase 2 — Op log + versioning
|
||||
- [ ] edit ops as `persist` events; replay to any version
|
||||
- [ ] `(content/history doc)`, diff between versions
|
||||
- [x] edit ops as `persist` events; replay to any version
|
||||
- [x] `(content/history doc)`, diff between versions
|
||||
|
||||
## Phase 3 — Collaborative merge (CRDT)
|
||||
- [ ] commutative/idempotent op merge
|
||||
@@ -77,6 +77,15 @@ lib/content/api.sx ── (content/edit) (content/render) (content/history) ─
|
||||
|
||||
## Progress log
|
||||
|
||||
- 2026-06-07 — Phase 2 `store.sx` (**Phase 2 complete**): op log + versioning
|
||||
over the persist event stream. `content/commit!` appends an edit op as a
|
||||
persist event to the doc's stream (`content:<id>`); the log is the source of
|
||||
truth. `content/head` / `content/at b id seq` replay the op stream to the
|
||||
latest / any version (materialised doc is a cache, never primary state).
|
||||
`content/history` returns per-version metadata; `content/diff` /
|
||||
`content/diff-versions` report added/removed/changed block ids. Backend is
|
||||
injected via `(persist/open)` — content knows nothing about which backend.
|
||||
Minimal persist load (event/backend/log/kv/api). 29 tests; suite 162/162.
|
||||
- 2026-06-07 — Phase 1 `api.sx` (**Phase 1 complete**): `content/*` facade over
|
||||
block + doc + render. `content/bootstrap!` registers the hierarchy;
|
||||
`content/edit` applies one op or an op stream; `content/render` picks the
|
||||
|
||||
Reference in New Issue
Block a user