Move the core business logic for both subsystems:
Package management (CompilerWorkspace):
- PackageOperationQueue: serial async operation queue
- ESMBundleParser: Frida ESM bundle format parsing
- CompilerWorkspace: package install/remove/upgrade,
bundle building via Frida Compiler, workspace lifecycle
- CompilerWorkspacePaths: URL helpers
Collaboration (CollaborationSession):
- Portal bus state machine (connect, create/join room)
- Participant tracking, chat messaging
- Notebook sync protocol (add/update/delete/reorder)
- Uses AsyncEventSource for status change notifications
Both use ProjectStore for persistence instead of SwiftData.