Skip to content

Add multiplayer Plannotator review to Tasks#2

Draft
mmkal wants to merge 4 commits into
collab-pocfrom
plannotator
Draft

Add multiplayer Plannotator review to Tasks#2
mmkal wants to merge 4 commits into
collab-pocfrom
plannotator

Conversation

@mmkal

@mmkal mmkal commented Jul 22, 2026

Copy link
Copy Markdown

Adds multiplayer task review to the workspace-backed Tasks app. Project members can switch an open task from Edit to Review, select markdown, and leave, edit, or delete Plannotator annotations. Other reviewers see changes live, and refresh restores them from Iterate.

Open task → Review → select text → comment
                       ↳ visible live to every reviewer
                       ↳ durable in the checkout workspace stream

Annotations use the checkout's existing Iterate workspace stream rather than a separate Plannotator service. The vessel stamps authors from the verified project session and stores namespaced add/update/remove events scoped to the task path. The existing collaborative editor remains the markdown source of truth.

This is stacked on the workspace collaboration proof in #1.

Included

  • published @plannotator/ui and @plannotator/core Viewer/AnnotationPanel
  • global and selected-text comments, edit/delete, and agent-feedback copy
  • race-free snapshot + live subscription, with bounded polling recovery
  • URL-backed Edit/Review and selected-annotation state
  • a native WebSocket OPEN barrier found while exercising localhost
  • images and AI intentionally disabled

@plannotator/ui@0.28.0 needs a small checked-in pnpm patch for TypeScript 5.9 response typing and its highlight.js module boundary. The review UI is client-only and lazy-loaded. Its upstream rich-document bundle is large (~1 MB gzip), but board/editor startup is unaffected.

Proof

  • pnpm install --frozen-lockfile
  • pnpm test — 26 tests
  • pnpm typecheck
  • pnpm build
  • two isolated headed localhost browsers: live create/edit/delete without reload, durable refresh, exact selected-text quote, verified Iterate author

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant