Skip to content

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.

  • 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)