Forge carried a copied Kata browser after Kata became its own product, creating parallel implementations and an ambiguous ownership boundary. Keep only the cross-product workflows Forge owns: stable provider/workspace associations, daemon-pinned read-only detail through Kata’s shared component, safe standalone launch, and Kata-backed workspace creation.
Task presentation and mutation remain in Kata, while linkage metadata exists only in Forge. The integration stays pinned to the reviewed Kata PR commit until the maintainer separately approves a Kata release; the old route, proxy, snapshots, event relay, mode flag, and copied frontend are removed without compatibility shims.
Review fixes included:
- Defer inactive Kata reads and explain workspace mapping failures.
- Keep existing workspaces and completed task links reachable when Kata reads fail.
- Preserve workspace actions across daemon timeouts, failed first reads, and disabled transitions.
Generated with Codex
Co-authored-by: Codex <noreply@openai.com>
Why
Forge still carries a copied Kata browser even though Kata now owns its browser product and shared presentation. Maintaining both implementations creates divergent behavior and an ambiguous data boundary.
What changes
Review note
This branch was flattened to remove transient Superpowers documents and private absolute paths from unpublished history. It currently conflicts with the newer Effect/frontend consolidation now on main; that port should be reviewed as an explicit follow-up rather than hidden inside a mechanical rebase of this product-boundary change.
Verification