content: durable CRDT replication (crdt-store) + 14 tests (277/277)
Some checks failed
Test, Build, and Deploy / test-build-deploy (push) Failing after 36s
Some checks failed
Test, Build, and Deploy / test-build-deploy (push) Failing after 36s
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` → **263/263** (Phases 1–4 COMPLETE + extensions: HTML/SX escaping, Markdown render)
|
||||
`bash lib/content/conformance.sh` → **277/277** (Phases 1–4 COMPLETE + extensions: HTML/SX escaping, Markdown, durable CRDT replication)
|
||||
|
||||
## Ground rules
|
||||
|
||||
@@ -79,9 +79,17 @@ lib/content/api.sx ── (content/edit) (content/render) (content/history) ─
|
||||
- [x] HTML escaping at the render boundary (`String>>htmlEscaped`: & < > ")
|
||||
- [x] asSx wire string-escaping (`String>>sxEscaped`: \ and " in SX literals)
|
||||
- [x] Markdown render mode (`asMarkdown:` / `content/render doc "md"`)
|
||||
- [x] durable CRDT replication (`crdt-store.sx`: ops on persist, replay + converge)
|
||||
|
||||
## Progress log
|
||||
|
||||
- 2026-06-07 — Extension: durable CRDT replication (`crdt-store.sx`), uniting
|
||||
Phase 2 (persist) + Phase 3 (CvRDT). Each replica appends its CRDT ops to its
|
||||
own stream (`crdt:<doc>:<replica>`); `crdt/replay` folds one log into a state,
|
||||
`crdt/converge` merges every replica's replayed state, `crdt/document` /
|
||||
`crdt/order` materialise. Converged result is identical regardless of replica
|
||||
order or duplicate delivery (join + idempotent apply) → offline-capable,
|
||||
eventually-consistent editing. 14 tests; suite 277/277.
|
||||
- 2026-06-07 — Extension: Markdown render mode (`markdown.sx`). Third boundary
|
||||
format alongside asHTML/asSx via the same polymorphic dispatch; blocks answer
|
||||
`asMarkdown: nl` (boundary supplies the newline — this Smalltalk dialect has
|
||||
|
||||
Reference in New Issue
Block a user