0.4.41 (2026-07-10)
- ci: push updates manifest as app-repoman to clear require-PR ruleset (#296) (ec7822b)
- i18n: use "Historique" for French log strings (#301) (b6d57a0), closes #299
- site: redirect legacy /maximal/ path to the root (#294) (c8c4f43)
- site: serve mxml.sh at root, not the /maximal base path (#290) (a562cc9)
0.4.40 (2026-07-08)
- billing: price usage from Copilot token_prices, demote is_premium to legacy fallback (#259) (#265) (7bcdc70)
- dashboard: add per-model + total cost column from total_nano_aiu (#259) (#264) (7c69a9b)
- dev: add build-readiness verification (verify:build) + checklist (#256) (8a3450e)
- dev: add dispersion stats + interleaved A/B significance to baseline harness (#255) (e3fffce)
- dev: add reusable baseline measurement harness for cost/warmup/caching (#253) (6be5c2a)
- i18n: add zh, fr, de, ru, ja, it, pt locales (#285) (4b82922)
- i18n: full multi-locale catalog (es, en-GB, es-MX/es-ES) across settings + dashboard (#282) (e579acb)
- i18n: localize OS-conditional UI terminology via an ICU MessageFormat catalog (#279) (a69be20)
- i18n: localize the native shell chrome to the picker locale (#284) (0abc953)
- responses: enable opt-in prompt_cache_retention with safe fallback (#252) (55d1736)
- setup: add opt-in --deep-smoke for an end-to-end completion check (#250) (7856b66), closes #227
- shell-ui: vendor Commissioner + Fraunces web fonts locally (offline/CSP) (#268) (d1a56df)
- site: extend updates manifest to schema 2 with per-channel downloads (#267) (a21e17e), closes #218 #219
- site: hydrate download links + version from manifest at runtime (#221) (#273) (1bdac36), closes #218
- apps: consolidate atomic-JSON writes behind one shared helper (#245) (d3401d4), closes #231
- pages: prevent duplicate github-pages artifacts on deploy re-run (#239) (#263) (108d1bb)
- security: remove /token route that leaked the raw Copilot token (#240) (43655f9), closes #230
- web-tools: sum usage across agent turns and add keepalive pings (#246) (7826578)
- web-tools: sum usage across turns in non-streaming agent path (#260) (#261) (3f0e6d4)
- warmup: short-circuit Claude Code warmup requests locally instead of round-tripping (#258) (#262) (8d3ee4d)
0.4.39 (2026-07-03)
- server: stamp x-maximal-version response header on all responses (#213) (d45bd8e)
- web-tools: no-key web_search via Copilot /responses, DuckDuckGo fallback (#205) (6cbdb36), closes #204
- claude-desktop: restore MCP/extension keys, fix Artifacts preview (#203) (4037fe4), closes #188
- thinking: honor client extended-thinking display and disable on Copilot-served Claude (#211) (e5510a5)
- web-tools: align web_fetch domain matching with spec-correct web_search matcher (#209) (0cccb40)
0.4.38 (2026-07-03)
- auth: tear down Copilot refresh loop cleanly on abort (#197) (18ca76e)
- ci: stop CodeQL Reconcile crashing on alert re-open (#195) (68620c2)
- errors: make model_not_supported advice client-neutral (#201) (be26b58)
- messages: default Claude Code haiku tier to a tool-competent model (#191) (6df203c)
0.4.37 (2026-06-30)
0.4.36 (2026-06-25)
- site: Windows installer pickup + light-mode god-rays + stale-cache bypass (#182) (2829bfc)
- update: dev build of current release no longer self-reports an upgrade (#186) (389d081)
0.4.35 (2026-06-24)
- shell: warn to restart Claude Code when disabling routing on Windows (c881305)
- Windows tray parity + god-rays site redesign (v0.4.35) (1164d79)
- Windows tray parity + god-rays site redesign (v0.4.35) (#181) (1164d79)
- auth: prime models cache after device-flow sign-in (#177) (8259883)
- shell: show splash only once the webview has painted (6fdb0fc)
- shell: windows startup notification — system tray + down arrow (ba14174)
- windows: correct Claude Desktop 3P dir to %LOCALAPPDATA% + fix detection (f010499)
- windows: detect MSIX/Store Claude Desktop install (aba5850)
0.4.34 (2026-06-24)
0.4.33 (2026-06-24)
- update: add beta manifest channel (5b4fb02)
- update: drive the update channel from the build's MAXIMAL_CHANNEL (#166) (ae0ca68)
- windows: functional parity with macOS — tray app, %APPDATA% paths, Claude discovery, fixed installers (#172) (708568c)
- dev: self-heal the ui-embed stub so fresh worktrees pass the gates (#161) (baff99e)
- update: compare prerelease versions (45e63fc)
0.4.32 (2026-06-22)
- detect new versions and surface an in-app upgrade prompt (#157) (3cd63bb)
- errors: reframe opaque upstream errors with context + recovery (#156) (5a03386)
- shell: defer first-run Settings + show version on splash and Settings titlebar (#154) (a9c8aae)
0.4.31 (2026-06-22)
0.4.30 (2026-06-22)
- ci: auto-dispatch release.yml for unpublished tagged releases (#139) (40ab095)
- ci: grant actions:write so release-please can dispatch release.yml (#140) (d700c31)
- ci: pass required tag input when auto-dispatching release.yml (#141) (0c41c78)
- cli: show 'maximal' instead of legacy 'copilot-api' in debug/setup output (#3) (#145) (6dba335)
- messages: strip unsupported top-level diagnostics field from inbound requests (#127) (#143) (f301dc1)
0.4.29 (2026-06-18)
0.4.28 (2026-06-18)
0.4.27 (2026-06-18)
0.4.26 (2026-06-17)
- cli: symlink DMG CLI onto PATH + show launch path in diagnostics (#129) (1e70756)
- settings: models section with capabilities + manual refresh (#130) (1e70756)
0.4.25 (2026-06-16)
- auth: show a readable message when Copilot token mint is rejected (#124) (59ab92d)
- claude-desktop: persist deploymentMode=3p and enable Cowork web search (#128) (e0599a7)
- shell: show known-account roster in the failed/device-code states (#125) (abd4df2)
0.4.24 (2026-06-15)
- auth: /accounts routes — list, switch, remove (slice 3, PR 2/3) (#116) (547b993)
- auth: AuthStatus union, live SSE updates, and sign-in/window fixes (ADR-0006/0007) (#121) (08de601)
- auth: detect the local gh CLI + its accounts (Phase 4) (#107) (f25f6fa)
- auth: multi-account registry store + migration (slice 3, PR 1/3) (#115) (2862b3c)
- auth: reuse a GitHub CLI account to sign in (Phase 4) (#108) (6bead6f)
- shell: ambient in-progress indicator (accent chase bar) (#111) (dc0dcf0)
- shell: multi-account quick-switch UI (slice 3, PR 3/3) (#117) (937818c)
- shell: sign out by rebooting the sidecar, not editing it (#106) (96341ae)
- auth: allowlist the gh runner to read-only commands (isolation by construction) (#112) (6294ff7)
- auth: gh-reuse — validate before reboot + refresh discovery on focus (#113) (33ab9e7)
- auth: guard-timer every auth/token fetch (incl. the refresh self-loop) (#110) (2c74667)
- auth: self-heal the Copilot host + clear the deprecation warning (#101) (3ee2d7e)
- auth: surface fatal Copilot rejection on device-code sign-in; add cancel + busy feedback (#114) (0041f2e)
- release: poll for the builder's actual dmg name (Maximal.dmg) (#98) (77bbf2e)
- release: ship the macOS dmg under the versioned name pattern (#100) (7de0cda)
- shell: DEV baseUrl must target the sidecar on :4141, not :4142 (#119) (f699f28)
- shell: poll for the reboot result after 'use a gh account' (#109) (f96c852)
0.4.23 (2026-06-09)
0.4.22 (2026-06-09)
0.4.21 (2026-06-09)
0.4.20 (2026-06-09)
0.4.19 (2026-06-09)
0.4.18 (2026-06-09)
0.4.17 (2026-06-09)
0.4.16 (2026-06-09)
0.4.15 (2026-06-08)
0.4.14 (2026-06-08)
0.4.13 (2026-06-08)
- Claude Code routing — lifecycle reconciler + Apps card rework (#75) (58e1baa)
- claude-code: route via ~/.claude/settings.json instead of a PATH shim (#74) (cf0f578)
- status: add GET /status health endpoint + strip orphaned installer PATH block on uninstall (#72) (9431730)
0.4.12 (2026-06-05)
- shim: complete the Claude Code shim lifecycle (uninstall cleanup + macOS path bugs); drop max wrapper (#67) (b465ea1)