Pillar B: CRDT Real-time Multi-user Collaboration Prompts¶
Seven prompts exercising v1.5.0 Pillar B — CRDT-backed real-time multi-user collaboration over the FCC event bus — from session start, through concurrent edits, to conflict-free merge.
This pillar turns FCC sessions from single-seat into multi-seat without a central lock. CRDTs (Conflict-free Replicated Data Types) let every participant edit locally and converge later.
Context for Claude¶
Collaboration sessions run against fcc.collaboration.engine,
publish state deltas to UXBus, and are observed via AURORA's
Sky Parlour. Merge semantics are last-writer-wins for scalars
and union/intersection for set-valued attributes.
Prompt 1: Start a 3-seat session¶
Start a CRDT session with 3 participants (BC, RC, UG) working on
"Hello-FCC Chapter Outline". For each participant:
- Seat ID
- Subscription to UXBus events
- Initial-state snapshot
Report the session SHA and first 5 event types emitted.
Expected outcome: session start report.
Prompt 2: Concurrent edits¶
All 3 participants edit simultaneously:
- BC adds 2 sections
- RC renames section 1
- UG deletes section 2 (one of BC's)
Walk the conflict resolution:
- Which edits apply
- Which edits get last-writer-wins priority
- Final state (3 sections or 2?)
Expected outcome: deterministic merged state.
Prompt 3: Offline-then-merge¶
UG goes offline for 10 minutes. During that time BC + RC make 12
more edits. Produce:
- UG's local (diverged) state when they reconnect
- The replay transcript
- Final merged state
- Any edit UG made offline that conflicts with a live edit
Close with the observability spans emitted during merge.
Expected outcome: offline merge narrative.
Prompt 4: Session handoff¶
BC hands off the session to CW (Content Writer). Produce:
- Handoff sequence (events)
- Permission delta
- State continuity guarantees
- Failure modes if handoff drops mid-stream
Expected outcome: handoff plan.
Prompt 5: AURORA trace view¶
While a CRDT session runs, what does AURORA (Sky Parlour) render
for the viewer? Describe:
- The live-trace view
- Participant-presence indicators
- Conflict markers
- Replay scrubber behavior
Expected outcome: AURORA view spec.
Prompt 6: CRDT semantics audit¶
For each session-state attribute, name the CRDT semantic:
- Scalar: last-writer-wins (LWW)
- Set: union / intersection
- Counter: PN-counter
- Ordered list: RGA
Produce an attribute → semantic table for the CollaborationSession
model. Flag any attribute whose semantic is unclear.
Expected outcome: semantics table.
Prompt 7: Multi-user notebook¶
Reproduce the CRDT demo from notebook 47
(47_crdt_multi_user_demo.ipynb). For each cell:
- What it demonstrates
- Expected output
- Pitfalls for users without AURORA
Add a reviewer note if a cell depends on the live LYRA bridge.
Expected outcome: notebook walkthrough.
Related¶
- Tutorial:
docs/tutorials/advanced-capabilities/crdt-multi-user-collaboration.md(Pool B) - Notebook:
notebooks/47_crdt_multi_user_demo.ipynb(Pool F) - Persona YAML: LAR, collaboration engine
- ADR:
docs/decisions/ADR-012_crdt.md(v1.5.1)