theboringoffice v0.3.17 — attachment routing after swaps
Fixes Markdown/code attachments after backend switches and bypass respawns.
- Ordinary Enter now resolves the current backend when the send command executes.
/backendand/bypasscan no longer leave chat pointing at a stopped backend. - Backend generations transition accepting → draining → retired: new sends switch immediately, preaccepted sends may finish, and old teardown happens asynchronously without freezing the UI.
- Claude stdin write failures return real errors instead of false success, so queued attachments remain retryable.
- End-to-end app-to-wire tests cover OpenCode immediate sends, queued/reset retries, and replaced native Claude. Markdown and Go files are always quoted absolute path references; zero text media parts are emitted.
Full Changelog: v0.3.16...v0.3.17