Full release notes: https://www.dyad.sh/docs/releases/1.10.0-beta.1
What's Changed
- Deflake setup and version lifecycle E2E tests by @keppo-bot[bot] in #4070
- Document state-machine hardening proposals by @keppo-bot[bot] in #4075
- Add comments for safety by @wwwillchen in #4077
- Harden state-machine types and test tooling by @keppo-bot[bot] in #4076
- Add explicit state-machine capability selectors by @keppo-bot[bot] in #4079
- Add transactional dispatcher with voice-to-text pilot by @keppo-bot[bot] in #4078
- Harden chat stream identity with invocation references by @keppo-bot[bot] in #4080
- Migrate image generation and screenshot controllers to transactional dispatch by @keppo-bot[bot] in #4084
- Add shared scopes and ordered disposal lifecycle by @keppo-bot[bot] in #4082
- Harden app run identity across restarts by @keppo-bot[bot] in #4083
- Recover user-input follow-ups without durable handoff state by @keppo-bot[bot] in #4085
- Polish state machine observability and rules by @keppo-bot[bot] in #4086
- plans: clean-up state machines by @wwwillchen in #4089
- Enforce state ownership boundaries and add selector bindings by @keppo-bot[bot] in #4090
- Retire S-tier state machine mirrors by @keppo-bot[bot] in #4091
- feat: collect user-supplied setup fields for catalog MCP servers by @RyanGroch in #4081
- Replace single-machine Jotai projections with snapshot stores by @keppo-bot[bot] in #4092
- Replace cross-machine preview atom edges with facades by @keppo-bot[bot] in #4093
- Add the safe A6b renderer reader seam by @keppo-bot[bot] in #4094
- Retire legacy chat streaming status and error atoms by @keppo-bot[bot] in #4095
- docs: record main-owned state machine architecture by @keppo-bot[bot] in #4096
- Add golden single-window characterization suite by @keppo-bot[bot] in #4097
- Give preview runtime channels explicit owners by @keppo-bot[bot] in #4098
- Define app-run wire codecs and safe remote projection by @keppo-bot[bot] in #4099
- Extract transport-neutral app runtime service by @keppo-bot[bot] in #4101
- Document C2 main registry boundaries and hardening by @keppo-bot[bot] in #4103
- Add multi-window infrastructure and coherence harness by @keppo-bot[bot] in #4102
- Add the local distributed actor kernel by @keppo-bot[bot] in #4100
- Rewire single-window audit paths for multi-window delivery by @keppo-bot[bot] in #4104
- Add contract-driven remote actor transport by @keppo-bot[bot] in #4105
- Add remote distributed machine client and React bindings by @keppo-bot[bot] in #4106
- Move app run authority to main actor by @keppo-bot[bot] in #4108
- Delete legacy renderer app run authority by @keppo-bot[bot] in #4109
- Move GitHub operations to the main actor host by @keppo-bot[bot] in #4116
- Delete legacy GitHub operations adapter by @keppo-bot[bot] in #4117
- Harden main-owned connection registries by @keppo-bot[bot] in #4122
- Move image generation jobs to the main actor host by @keppo-bot[bot] in #4121
- Automatically remove unauthorized GitHub releases by @keppo-bot[bot] in #4124
- Make stopping a stream non-destructive for queued prompts by @azizmejri1 in #4126
- Move chat and plan execution authority to main by @keppo-bot[bot] in #4119
- refactor: delete legacy chat stream adapters by @keppo-bot[bot] in #4120
- Move version preview lifecycle behind main-process actor by @keppo-bot[bot] in #4123
- Pin compaction to gpt-5.6-luna for Pro users; add compaction quality benchmark by @keppo-bot[bot] in #4128
- Add opt-in multi-window app product surface by @keppo-bot[bot] in #4115
- Remove retired state-machine compatibility infrastructure by @keppo-bot[bot] in #4129
- correct state machines plans by @wwwillchen in #4131
- format plan by @wwwillchen in #4135
- fix: preserve recovery after interrupted version restore by @keppo-bot[bot] in #4132
- refactor: add state-machine contract and conformance shell by @keppo-bot[bot] in #4133
- Add delete and open-in-editor actions to the Tests panel by @azizmejri1 in #4087
- refactor: centralize pending receipt deduplication by @keppo-bot[bot] in #4136
- Stabilize test teardown and worker scheduling by @keppo-bot[bot] in #4137
- refactor: harden remote intent admission and subscriptions by @keppo-bot[bot] in #4138
- feat: encrypt MCP server headers and env vars at rest by @RyanGroch in #4130
- Add cross-window chat tab transfer by @keppo-bot[bot] in #4134
- refactor: enforce keyed actor admission fences by @keppo-bot[bot] in #4139
- refactor: add correlated actor request settlement by @keppo-bot[bot] in #4143
- refactor: migrate image generation to authoritative operation settlement by @keppo-bot[bot] in #4144
- fix: resume the chat after the database integration Continue by @azizmejri1 in #4147
- refactor: migrate app run to correlated actor requests by @keppo-bot[bot] in #4145
- Deflake Windows dependency and app navigation E2Es by @keppo-bot[bot] in #4150
- refactor: enforce correct state-machine construction by @keppo-bot[bot] in #4149
- docs: plan remaining distributed-machine migrations by @keppo-bot[bot] in #4152
- refactor: add operation route registry by @keppo-bot[bot] in #4153
- Upgrade GitHub workflows to Claude Opus 5 by @wwwillchen in #4158
- Keep app references available across a chat in agent modes by @azizmejri1 in #4151
- feat: open a plugin's page after adding it by @RyanGroch in #4160
- fix: stop asking for OAuth once an MCP token works by @RyanGroch in #4186
- Add edit action to code diff toolbar by @azizmejri1 in #4159
- Use Agent mode for AI merge conflict resolution by @wwwillchen in #4191
- Compact model context before tool outputs cross limits by @keppo-bot[bot] in #4148
- Make version diff mode easier to exit by @keppo-bot[bot] in #4195
- feat: migrate apps off legacy Supabase API keys by @azizmejri1 in #4173
- Require build provenance for release artifacts by @wwwillchen in #3966
- Bump to v1.10.0-beta.1 by @wwwillchen in #4196
- Fix draft release asset verification by @wwwillchen in #4199
- Enable show_full_output for Claude PR review debugging by @wwwillchen in #4198
- Use GPT-5.6 Luna for MCP consent classification by @wwwillchen in #4197
- Match release provenance to published assets by @wwwillchen in #4200
- Deflake app search and Supabase dependency E2Es by @keppo-bot[bot] in #4201
- Remove sub-agent from Claude PR review to fix missing-output flake by @wwwillchen in #4204
- Fix merge conflict recovery UX by @wwwillchen in #4202
- Keep apps selectable when Supabase metadata lookup fails by @wwwillchen in #4206
- Fix cross-platform CI test synchronization by @keppo-bot[bot] in #4205
Full Changelog: v1.9.0...v1.10.0-beta.1