## lidge-jun/opencodex — v2.77.0…v2.78.0-preview.20261005

_267+ commits._

### Features
- **feat(integrations): show the missing-store remedy in the dashboard (#6597)** (e023835)
- **feat(gui): one-page Claude Code settings and Desktop model roles (#6596)** (c22aba6)
- **feat(cli): make existing management workflows discoverable (#6526)** (5c645e3)
- **feat(gui): group the sidebar into eight rows and tidy the Claude surface (#6593)** (01a9923)
- **feat(service): name the holder when the runtime mutation lease is busy (#6512)** (815b1f6)
- **feat(gui): icon theme switch sharing a row with the zoom stepper (#6579)** (a6bc608)
- **feat(codex): heal lost catalog rows only from the idle owner** (68ca3bf)
- **feat(codex): audit catalog writes with bounded private records** (950a5f7)
- **feat(anthropic): add native pool preference with explicit opt-out precedence (#6562)** (33125e6)

### Fixes
- **fix(cli): name the real cause and next action in restart, update, and management refusals (#6615)** (0511f45)
- **fix(cli): honest exit codes and JSON receipts for config, alias, health, update; validate provider add before saving (#6614)** (f9e3678)
- **fix(cli): reject arguments to uninstall and redact credential values in argument errors (#6608)** (62fa24d)
- **fix(cli): name ocx start when integration preview finds no running proxy (#6622)** (b8d0302)
- **fix(gui): integration dialog starts on Close; client status failure offers Retry (#6623)** (4a7d96e)
- **fix(gui): keep Claude Desktop role selects inside the Models card (#6625)** (6af4ef4)
- **fix(cli): stop echoing values in claude desktop apply argument errors (#6618)** (96f0a21)
- **fix(claude): serve the Desktop picker over HTTP/2 so SSE streams cannot starve claude.ai (#6511) (#6610)** (aa10846)
- **fix(test): keep armed test processes out of the real Codex home (#6591)** (10d063b)
- **fix(gui): short sidebars, Claude sidecar rows, Save errors and legacy #debug after the GUI regroup (#6612)** (33ec795)
- **fix(responses): normalize native upstream session aliases (#6588)** (e44cada)
- **fix(management): keep inference ports independent of management ingress (#6601)** (fe09557)
- **fix(update): stop-first manual reinstall guidance; refresh shim, update-failed, and ZCode guide text (#6619)** (f89e42a)
- **fix(cli): correct help and CLI reference text and show declared flags in leaf help (#6609)** (a055b67)
- **fix(cli): show account health actions, paid-credit consent, and empty-list next steps (#6611)** (29f8a38)
- **fix(cli): explain Codex shim overlay migration and activation in status and doctor (#6607)** (8431189)
- **fix(cli): accept the DSH profile-patch plan path from refreshed dev** (f108061)
- **fix(integrations): write DSH routes to the Desktop profile patch it reads (#6522)** (69ce37c)
- **fix(cli): guard standalone update restart with exact replacement verification (#6556)** (7cf1b76)
- **fix(codex): keep Unix autostart shims off package-manager paths (carry of #6301) (#6589)** (907c6f4)
- **fix(server): wait for a complete Bun before restarting onto a replaced package tree (#6569)** (accd694)
- **fix(droid): preserve reasoning defaults after settings normalization (#6577)** (de0361e)
- **fix(codex): skip non-executable POSIX PATH entries in readiness checks (#6493)** (3953f11)
- **fix(combos): report the spent primary, not the fallback's own refusal (#6564)** (df61d03)
- **fix(oauth): release Anthropic refresh intent after a proven-unsent DNS failure (#6586)** (989bb24)
- **fix(cli): default config flags-only calls to show (carry #6483) (#6585)** (dabaed4)
- **fix(codex): honor consented credits after included quota exhaustion (#6572)** (2dd3f82)
- **fix(chatgpt): say why a dropped chatgptDesktop block reads as off (#6486)** (6e5cf45)
- **fix(ollama): preserve additional tool outputs during replay (#6576)** (9096934)
- **fix(cli): keep the pool-save bookkeeping warning from refreshed dev** (9950cd8)
- **fix(cli): accept the nativeMessages pool capability from refreshed dev** (dcd630e)
- **fix(cli): surface catalog-owner safety refusals in provider add --sync** (922485b)
- **fix(codex): accept owner publications while heal writes are gated** (89f5ef8)
- **fix(codex): observe startup catalog promptly and fence path aliases** (98a9fc8)
- **fix(codex): harden fresh Windows audit files before diagnostics** (e57243a)
- **fix(codex): enforce ownership at journal writer entrypoints** (37d0a22)
- **fix(codex): bind catalog writes to home ownership and intent** (8094078)
- **fix(codex): require combo authority for routed aliases** (d5f9c39)
- **fix(codex): require saved config authority for routed catalog removal** (3ee6137)
- **fix(anthropic): preserve native Messages through pooled dispatch** (a0c3f3a)
- **fix(anthropic): retain native client preambles and feature betas** (d13c144)
- **fix(anthropic): retain required beta for inline tool changes** (221b7dc)
- **fix(anthropic): retain narrowed typed block during copy-on-write** (0c01d51)
- **fix(anthropic): preserve declared native OAuth tool references** (17632e3)
- **fix(responses): share reset replay grants across translated sends (#6555)** (16d5dae)
- **fix(devin): qualify child trajectories by supplied parent (#6565)** (7edad58)
- **fix(claude): preserve bounded large headers in picker relay (#6551)** (df3dd3f)
- **fix(devin): retain bounded conversation trajectories (#6557)** (be297a5)
- **fix(server): promote scoped caller conversation headers (#6554)** (f85925d)

### Backend
- **Merge pull request #6630 from lidge-jun/codex/promote-preview-2.78.0** (04e175f)
- **Merge preview into 2.78.0-preview.20261005 promotion** (2eee777)
- **Merge pull request #6545 from lidge-jun/codex/cli-parity-observation-api** (dadc232)
- **Merge pull request #6542 from lidge-jun/codex/cli-parity-integrations-maintenance** (f14e3a3)
- **Merge pull request #6539 from lidge-jun/codex/cli-parity-accounts-settings** (79db47c)
- **Merge pull request #6535 from lidge-jun/codex/cli-parity-models-routing** (4cc48d9)
- **Merge pull request #6528 from lidge-jun/codex/cli-parity-providers** (a8d8562)
- **Merge cli-parity-integrations-maintenance after the dev sync (tree unchanged)** (5dc1ad1)
- **Merge cli-parity-accounts-settings after the dev sync (tree unchanged)** (b55fe09)
- **Merge cli-parity-models-routing after the dev sync (tree unchanged)** (dcdaf13)
- **Merge cli-parity-providers after the dev sync (tree unchanged)** (432bc4d)
- **Merge dev after the #6526 squash (tree unchanged)** (275dc63)
- **Merge branch 'codex/cli-parity-integrations-maintenance' into codex/cli-parity-observation-api** (1ae0faa)
- **Merge branch 'codex/cli-parity-accounts-settings' into codex/cli-parity-integrations-maintenance** (1b4df42)
- **Merge branch 'codex/cli-parity-models-routing' into codex/cli-parity-accounts-settings** (a8d2d65)
- **Merge branch 'codex/cli-parity-providers' into codex/cli-parity-models-routing** (e36d125)
- **Merge branch 'codex/cli-parity-foundation' into codex/cli-parity-providers** (637f26a)
- **Merge remote-tracking branch 'origin/dev' into codex/cli-parity-foundation** (e65d30c)
- **Merge branch 'codex/cli-parity-integrations-maintenance' into codex/cli-parity-observation-api** (31ded57)
- **Merge branch 'codex/cli-parity-accounts-settings' into codex/cli-parity-integrations-maintenance** (fcbdc06)
- **Merge branch 'codex/cli-parity-models-routing' into codex/cli-parity-accounts-settings** (4491ef7)
- **Merge branch 'codex/cli-parity-providers' into codex/cli-parity-models-routing** (2f1993c)
- **Merge branch 'codex/cli-parity-foundation' into codex/cli-parity-providers** (8ba53fe)
- **Merge remote-tracking branch 'origin/dev' into codex/cli-parity-foundation** (c4b02a2)
- **Merge branch 'codex/cli-parity-integrations-maintenance' into codex/cli-parity-observation-api** (e468022)
- **Merge branch 'codex/cli-parity-accounts-settings' into codex/cli-parity-integrations-maintenance** (5e829cc)
- **Merge branch 'codex/cli-parity-models-routing' into codex/cli-parity-accounts-settings** (a5d3554)
- **Merge branch 'codex/cli-parity-providers' into codex/cli-parity-models-routing** (604044d)
- **Merge branch 'codex/cli-parity-foundation' into codex/cli-parity-providers** (c28c84e)
- **Merge remote-tracking branch 'origin/dev' into codex/cli-parity-foundation** (de7c7bb)
- **Merge branch 'codex/cli-parity-integrations-maintenance' into codex/cli-parity-observation-api** (b9b6b53)
- **Merge branch 'codex/cli-parity-accounts-settings' into codex/cli-parity-integrations-maintenance** (b63ced6)
- **Merge branch 'codex/cli-parity-models-routing' into codex/cli-parity-accounts-settings** (04a639e)
- **Merge branch 'codex/cli-parity-providers' into codex/cli-parity-models-routing** (adf8574)
- **Merge branch 'codex/cli-parity-foundation' into codex/cli-parity-providers** (24ca58e)
- **Merge remote-tracking branch 'origin/dev' into codex/cli-parity-foundation** (270c33c)
- **Merge branch 'codex/cli-parity-integrations-maintenance' into codex/cli-parity-observation-api** (6f8943e)
- **Merge branch 'codex/cli-parity-accounts-settings' into codex/cli-parity-integrations-maintenance** (3e6035d)
- **Merge branch 'codex/cli-parity-models-routing' into codex/cli-parity-accounts-settings** (8d2ccf9)
- **Merge branch 'codex/cli-parity-providers' into codex/cli-parity-models-routing** (7114851)
- **Merge branch 'codex/cli-parity-foundation' into codex/cli-parity-providers** (1909deb)
- **Merge remote-tracking branch 'origin/dev' into codex/cli-parity-foundation** (c560b81)
- **Merge branch 'codex/cli-parity-integrations-maintenance' into codex/cli-parity-observation-api** (7b1b7a4)
- **Merge branch 'codex/cli-parity-accounts-settings' into codex/cli-parity-integrations-maintenance** (ea4b1c6)
- **Merge branch 'codex/cli-parity-models-routing' into codex/cli-parity-accounts-settings** (95868c7)
- **Merge branch 'codex/cli-parity-providers' into codex/cli-parity-models-routing** (8a6dc57)
- **Merge branch 'codex/cli-parity-foundation' into codex/cli-parity-providers** (c08bbca)
- **Merge remote-tracking branch 'origin/dev' into codex/cli-parity-foundation** (4bcd561)
- **Merge branch 'codex/cli-parity-integrations-maintenance' into codex/cli-parity-observation-api** (69e42d1)
- **Merge branch 'codex/cli-parity-accounts-settings' into codex/cli-parity-integrations-maintenance** (292535a)
- **Merge branch 'codex/cli-parity-models-routing' into codex/cli-parity-accounts-settings** (4fc2914)
- **Merge branch 'codex/cli-parity-providers' into codex/cli-parity-models-routing** (dd646e4)
- **Merge branch 'codex/cli-parity-foundation' into codex/cli-parity-providers** (598b5c8)
- **Merge remote-tracking branch 'origin/dev' into codex/cli-parity-foundation** (6467207)
- **Merge branch 'codex/cli-parity-integrations-maintenance' into codex/cli-parity-observation-api** (146994d)
- **Merge branch 'codex/cli-parity-accounts-settings' into codex/cli-parity-integrations-maintenance** (fad6f66)
- **Merge branch 'codex/cli-parity-integrations-maintenance' into codex/cli-parity-observation-api** (9894ea7)
- **Merge branch 'codex/cli-parity-accounts-settings' into codex/cli-parity-integrations-maintenance** (cb0cd76)
- **Merge branch 'codex/cli-parity-integrations-maintenance' into codex/cli-parity-observation-api** (85aaeaf)
- **Merge branch 'codex/cli-parity-accounts-settings' into codex/cli-parity-integrations-maintenance** (a78321e)
- **Merge branch 'codex/cli-parity-models-routing' into codex/cli-parity-accounts-settings** (bfa4d0b)
- **Merge branch 'codex/cli-parity-providers' into codex/cli-parity-models-routing** (7bad34a)
- **Merge branch 'codex/cli-parity-foundation' into codex/cli-parity-providers** (3a0558e)
- **Merge remote-tracking branch 'origin/dev' into codex/cli-parity-foundation** (50482e2)
- **Merge pull request #6563 from lidge-jun/codex/next-release-261004-catalog-a4** (33185c2)
- **Merge pull request #6560 from lidge-jun/codex/next-release-261004-catalog-a3** (8aff79e)
- **Merge pull request #6558 from lidge-jun/codex/next-release-261004-catalog-a2** (f74a3db)
- **Merge pull request #6553 from lidge-jun/codex/next-release-261004-catalog-a1** (9289396)
- **Merge pull request #6559 from lidge-jun/codex/next-release-261004-claude-native** (26dd8cf)
- **Merge pull request #6552 from lidge-jun/codex/next-release-261004-claude-tools** (0455845)

### Tests
- **test: make catalog audit and provider proxy fixture robust on Windows; state unhealthy in-place shim status (#6602)** (e53c807)
- **test(oauth): make the startup-proxy refresh test hold on Windows (#6600)** (8ef6ad9)
- **test(cli): make audio device refusal and login child import portable to Windows (#6599)** (164786a)
- **test(clients): guard Kilo symlink regression on Windows (#6405)** (a0ea6d3)
- **test: make provider proxy fixture DNS and child lifetime deterministic (#6578)** (1b3ecb8)
- **test(layout): compact test-layout fixture to restore ratchet headroom (#6583)** (584b92a)
- **test(cli): follow catalog observation readiness forwarding** (5bd1d55)
- **test(codex): keep client guard scenarios reachable after owner admission** (3d8bc39)

### Docs
- **docs: sync Connect, Claude settings and DSH profile-patch guides with the dashboard (#6613)** (e9d5908)
- **docs(devlog): close the CLI update restart unit with its delivery outcome (#6595)** (829a18b)
- **docs(structure): keep clients/integrations.md within its 600-line budget** (e4504e4)
- **docs: state the deferred Windows audit stream coverage** (9cc0357)
- **docs: clarify native OAuth scope and repair roadmap formatting** (124c85e)
- **docs: plan focused Claude request preservation replacements** (eb66133)
- **docs: record 2.77.0 candidate acceptance and publication (#6561)** (5965256)

### Chore
- **chore(release): 2.78.0-preview.20261005** (6f1a571)
- **chore(test-layout): compact this layer's own layout entries** (e950893)
- **chore(test-layout): compact this layer's own layout entries** (b6cd273)
- **chore(test-layout): compact this layer's own layout entries** (f812563)
- **chore(test-layout): compact this layer's own layout entries** (7d23f8a)
- **chore(test-layout): compact this layer's own layout entries** (697cc9e)
- **chore(test-layout): compact this layer's own layout entries** (e3ff9fd)

_Recap by [Repo Wrapped](https://repowrapped.com/gh/lidge-jun/opencodex?utm_source=github-action)._