Skip to content

Collab Phase 5: Durable Flush Worker from Drafts to RERUM with Conflict Acks #511

@cubap

Description

@cubap

Summary

Create server-side durable flush pipeline that coalesces draft operations and commits to RERUM with optimistic locking.

Scope

  • Batch and coalesce queued operations by line.
  • Persist through existing Line/Page update flow.
  • Use optimistic locking for overwrite conflict detection.
  • Emit durable events: queued, started, persisted, conflict, failed.
  • Return durable revision metadata in ack payload.

Acceptance Criteria

  • Multiple rapid edits are coalesced into fewer durable writes.
  • 409 conflicts are emitted as durable conflict events with context.
  • Persisted acknowledgements include durable revision references.
  • Backpressure limits prevent unbounded growth.

Dependencies

  • Depends on draft intake issue.
  • Contract: docs/collaboration/websocket-collaboration-contract.md

Metadata

Metadata

Assignees

No one assigned

    Labels

    backendService and API implementationcollaborationRealtime collaboration workstreamcross-repoTracks dependencies across repositoriesdeferred-persistenceDeferred commit and durability pipelinephase-5Collaboration rollout phase 5

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions