What's Changed
- feat: let web search widen past the focused session's workspace by @saucam in #312
- fix: resolve the qwen model catalog from the gateway, not qwen-code by @saucam in #313
- fix: recover a qwen session whose backing chat does not exist by @saucam in #314
- fix: unstick the model alias from a superseded Opus, bump the agent SDK by @saucam in #315
- fix: share one model resolver between the daemon and the web client by @saucam in #316
- docs: federation design — one hub view over N machines by @saucam in #317
- chore(web): declare the Node floor the test environment actually needs by @saucam in #321
- fix(test): stop the gemini-cli live smoke flaking on the default timeout by @saucam in #318
- fix(dispatch): scope task claim and reclaim to the owning daemon by @saucam in #319
- feat(web): make the conductor and its workers legible in the session list by @saucam in #320
- feat(web): live fleet board state over fleet.subscribe by @saucam in #324
- fix(web-ui): serve /ui on Windows by comparing against the platform separator by @saucam in #322
- feat(web): render conductor fleet calls as action cards by @saucam in #323
- feat(web): dock the state-grouped fleet beside the conductor's chat by @saucam in #325
- fix(claude): re-send a prompt the backend consumed without running it by @saucam in #327
- fix(conductor): let the fleet read surface run without prompting by @saucam in #328
- feat(web): Conductor ⇄ Sessions toggle by @saucam in #329
- feat: sign in to a backend from codeoid, instead of pasting an API key by @saucam in #331
Full Changelog: v0.4.2...v0.4.3