diff --git a/backlog/tasks/task-46 - Implement-Cross-App-Embedding-r-ecosystem-apps-in-rSpace-canvases.md b/backlog/tasks/task-46 - Implement-Cross-App-Embedding-r-ecosystem-apps-in-rSpace-canvases.md index 988e137..2cd3b60 100644 --- a/backlog/tasks/task-46 - Implement-Cross-App-Embedding-r-ecosystem-apps-in-rSpace-canvases.md +++ b/backlog/tasks/task-46 - Implement-Cross-App-Embedding-r-ecosystem-apps-in-rSpace-canvases.md @@ -1,9 +1,10 @@ --- id: TASK-46 title: 'Implement Cross-App Embedding: r-ecosystem apps in rSpace canvases' -status: To Do +status: In Progress assignee: [] created_date: '2026-02-18 20:07' +updated_date: '2026-02-26 03:50' labels: - feature - phase-5 @@ -60,7 +61,15 @@ Runtime: - [ ] #3 Trusted Web Components share CRDT and port/event system - [ ] #4 Sandboxed iframe mode works with postMessage bridge - [ ] #5 Server proxy avoids CORS for manifest/module loading -- [ ] #6 Toolbar dynamically shows ecosystem app buttons -- [ ] #7 Remote clients lazy-load modules when ecosystem shapes appear +- [x] #6 Toolbar dynamically shows ecosystem app buttons +- [x] #7 Remote clients lazy-load modules when ecosystem shapes appear - [ ] #8 Service Worker caches ecosystem modules for offline + +## Implementation Notes + + +POC implemented in commit 50f0e11: folk-rapp shape type embeds live rApp modules as iframes on the canvas. Toolbar rApps section creates folk-rapp shapes with r-prefixed moduleIds. Module picker dropdown, colored header with badge, open-in-tab action, Automerge sync. Remaining: manifest protocol, EcosystemBridge, sandboxed mode, Service Worker caching, remote lazy-loading. + +Enhanced in 768ea19: postMessage bridge (parent↔iframe context + shape events), module switcher dropdown, open-in-tab navigation. AC#7 (remote lazy-load) works — newShapeElement switch handles folk-rapp from sync. +