--- id: TASK-23 title: 'Feature parity audit: 13 overlapping shapes' status: Done assignee: [] created_date: '2026-02-18 19:49' labels: - audit - phase-0 milestone: m-0 dependencies: [] priority: high --- ## Description Compare each of the 13 shapes that exist in both canvas-website (tldraw) and rspace-online (folk-*) side-by-side. Document missing features in the rspace versions. Pairs to audit: 1. ChatBox ↔ folk-chat 2. VideoChat ↔ folk-video-chat 3. Embed ↔ folk-embed 4. Markdown ↔ folk-markdown 5. Slide ↔ folk-slide 6. Prompt ↔ folk-prompt 7. ObsNote ↔ folk-obs-note 8. Transcription ↔ folk-transcription 9. ImageGen ↔ folk-image-gen 10. VideoGen ↔ folk-video-gen 11. GoogleItem ↔ folk-google-item 12. Map ↔ folk-map 13. WorkflowBlock ↔ folk-workflow-block For each pair: read both implementations, note feature gaps, classify as critical/nice-to-have. ## Acceptance Criteria - [x] #1 All 13 shape pairs compared side-by-side - [x] #2 Feature gaps documented with severity (critical/nice-to-have) - [x] #3 Critical gaps identified for immediate fix ## Implementation Notes ### Audit Findings Summary Completed feature-parity audit across all 13 shape pairs. Identified critical gaps in 7 shapes requiring backend/architecture work: **Critical Gaps by Shape:** 1. **folk-chat**: No real-time backend sync (local-only messages). Messages only persist in client-side Automerge store; no server broadcast or presence system. 2. **folk-video-chat**: No peer-to-peer video infrastructure. Missing Jitsi integration; only local camera preview available. 3. **folk-markdown**: Plain textarea implementation vs canvas-website's MDXEditor. No table support, syntax highlighting, or rich markdown features. 4. **folk-slide**: No slide navigation or presentation system. Currently a decorative container only; lacks deck traversal and full-screen mode. 5. **folk-prompt**: No streaming response support. No arrow-binding template substitution for dynamic prompt construction from shape references. 6. **folk-obs-note**: No vault sync mechanism (Quartz/GitHub integration). Plain textarea editor without multi-format obsidian compatibility. 7. **folk-map**: No collaborative presence indicators, pin annotations, routing/directions, or multi-style layer support (satellite, terrain). **Pervasive Gap (All 13 Shapes)**: StandardizedToolWrapper features missing across all implementations: pin/minimize/maximize/tags. These foundational window-management features need framework-level integration. **Best Parity Shapes** (closest feature coverage): - folk-google-item: Good feature alignment with canvas-website GoogleItem - folk-embed: Functional iframe/external content support - folk-transcription: Core audio-to-text parity achieved **Recommendation**: Prioritize real-time sync infrastructure (folk-chat, folk-video-chat) and StandardizedToolWrapper integration as foundational for improving parity across all shapes. Markdown and slide features require moderate lift; map and obs-note features are lower priority for MVP.