github stablyai/orca mobile-android-v0.0.44
Orca Mobile Android mobile-android-v0.0.44

pre-releaseone hour ago

What's Changed

  • fix(terminal): clear the SGR pen on hidden-output restore and abandon by @brennanb2025 in #14241
  • test(e2e): stabilize release triage coverage by @AmethystLiang in #14328
  • test(renderer): cover Agent Dashboard status replay fanout by @Jinwoo-H in #14036
  • Deflake native chat watcher rebind test by @brennanb2025 in #14335
  • fix(orchestration): retry silent mail pointers by @brennanb2025 in #14332
  • fix(docs): replace stale preload typecheck reference by @HoonDongKang in #14298
  • Remove icons from Non-Orca worktree sources by @brennanb2025 in #14345
  • feat(dashboard): give the agent question state its own color and glyph by @brennanb2025 in #14248
  • fix(worker-start): allow max effort on the gpt-5.6 Codex family by @kespineira in #14281
  • feat(sidebar): replace the external-worktrees inbox list with one card by @brennanb2025 in #14341
  • Fix native chat watcher identity race by @brennanb2025 in #14344
  • fix(skills): use exported recipe id in environment guide by @erishforG in #14280
  • feat(agent-map): flare fresh questions and finishes by @brennanb2025 in #14349
  • fix(ai-vault): make the merged scan stamp independent of leg order by @nwparker in #14270
  • fix(browser): fence the cookie-clear fallback to the pre-clear snapshot (STA-4170) by @brennanb2025 in #14343
  • fix(daemon): isolate durable-history checkpoints per session (STA-4173) by @brennanb2025 in #14346
  • revert(ssh): back out #13326 and #13928 — reconnect loses every tab by @nwparker in #14361
  • fix(terminal): resolve legacy wrapper fallbacks from PATH only (STA-4169) by @nwparker in #14365
  • fix(orchestration): wait for Claude composer render by @Jinwoo-H in #14342
  • fix(orchestration): mark late dependents ready when deps already completed by @bbingz in #14163
  • fix(orchestration): resolve explicit worker worktrees directly by @DTSFO in #14275
  • fix(terminal): make the bold font weight its own setting by @brennanb2025 in #14368
  • fix(serve): exit cleanly after headless Linux signals by @Jinwoo-H in #14334
  • Fix paired remote terminal browser link creation by @OrcaWin in #14363
  • fix(terminal): reject cwd-resolving PATH entries and harden the legacy wrappers by @nwparker in #14370
  • fix(agent-status): preserve Codex escape interruption by @brennanb2025 in #14372
  • fix(vm): make hidden SSH cleanup retryable by @Jinwoo-H in #14351
  • feat(vm): define the provisioned-root recipe contract by @Jinwoo-H in #14352
  • feat(vm): add main-owned provisioned SSH root adoption by @Jinwoo-H in #14353
  • feat(vm): create workspaces from provisioned SSH roots by @Jinwoo-H in #14359
  • fix(macos): recover severed terminal TCC attribution after updates by @OrcaWin in #13992
  • feat(dashboard): give the agent map a real filter panel by @brennanb2025 in #14338
  • fix(terminal): bake the wrapper interpreter and emit CRLF for cmd by @nwparker in #14382
  • fix(ssh): reapply the reattach-identity work and stop the fallback fence stranding moved panes by @nwparker in #14384
  • Fix Codex hook trust before manual shell launches by @brennanb2025 in #14326
  • fix(updater): recover renderer shutdown checkpoint by @brennanb2025 in #14373
  • fix(terminal): name the POSIX interpreter directly when generating on Windows by @nwparker in #14386
  • fix(mobile): self-heal host opens and harden session liveness by @Jinwoo-H in #14333
  • fix(terminal): clear CDPATH when resolving the wrapper directory by @nwparker in #14387
  • Revert "fix(ssh): reapply the reattach-identity work and stop the fallback fence stranding moved panes" by @nwparker in #14395
  • perf(worktrees): bound the duplicate-id scan in reuseEqualCatalogRows by @nwparker in #14271
  • test(terminal): pin the wrapper security properties that survived mutation by @nwparker in #14394
  • ci(windows): cover the worktree admin fingerprint on the Windows runner by @nwparker in #14378
  • Center newly opened tabs at end, keep close controls visible by @AmethystLiang in #14314
  • fix(orchestration): release federation ack checkpoints once a dispatch settles by @nwparker in #14380
  • fix(worktree-scan): stop a stalled admin probe from poisoning repo refresh by @nwparker in #14379
  • fix(workspaces): gate the GitLab palette number match on repo identity by @nwparker in #14381
  • test(terminal): fix ordering pins that pass when the needle is absent by @nwparker in #14409
  • Forward Unix launcher signals to orca serve supervisor by @Boulea7 in #14071
  • fix(terminal): stop leaking raw PTY lifecycle tokens into the error toast by @nwparker in #14415
  • fix(repos): re-probe git remote identity so a stale snapshot stops misjudging identity gates by @nwparker in #14414
  • fix(workspaces): gate the GitHub palette number match on repo remote identity by @nwparker in #14413
  • refactor(shared): split shared/types.ts into per-domain type modules by @nwparker in #14397
  • refactor(shared): group worktree, github, and linear modules into folders by @nwparker in #14437
  • refactor(preload): split the preload contract into per-domain api modules by @nwparker in #14403
  • fix(stats): wrap long usage breakdown model names by @AmethystLiang in #14065
  • fix(test): deflake relay exec env, project boundary, and speech resume tests by @nwparker in #14446
  • Revert "Center newly opened tabs at end, keep close controls visible" by @AmethystLiang in #14450
  • fix(native-chat): keep caller abort ahead of WSL gate refusal by @AmethystLiang in #14445
  • refactor(store): unify the duplicated catalog equality and identity-key helpers by @nwparker in #13804
  • fix(worktree-scan): keep the admin-fingerprint probe inside the caller's per-repo budget by @nwparker in #14454
  • fix(agent-teams): require an absolute Orca CLI for the tmux shim by @nwparker in #14438
  • fix(browser): acknowledge paired tab before navigation by @Jinwoo-H in #14402
  • refactor(shared): drop the shared/types barrel and import from the real modules by @nwparker in #14447
  • perf(renderer): parallelize runtime catalog and worktree refresh by @nwparker in #14138
  • fix(browser): restore replaced cookies through CDP identities by @brennanb2025 in #14383
  • fix(terminal): deliver Ctrl+C when a non-Latin input source rewrites the key by @nwparker in #14462
  • refactor(sidebar): split WorktreeList into a worktree-list module by @nwparker in #14465
  • fix(sidebar): satisfy extracted hook quality gates by @nwparker in #14467
  • fix(renderer): stop git history hover from showing two tooltips by @AmethystLiang in #14468
  • feat(workspaces): rework cleanup discovery and dialog by @brennanb2025 in #13413
  • test(e2e): stabilize terminal failure coverage by @AmethystLiang in #14466
  • fix(terminal): resolve Ctrl chords positionally on a non-Latin layout by @nwparker in #14469
  • fix(agent-status): stop start-less child stops from minting phantom working by @brennanb2025 in #14375
  • fix(runtime): cap remote git.diff and file previews at the transport budget by @nwparker in #14160
  • revert: restore git history tooltip change for community PR by @AmethystLiang in #14485
  • fix(renderer): remove duplicate git history tooltips by @dngur6344 in #14453
  • fix(terminal): keep split error when rejected cleanup throws by @AmethystLiang in #14463
  • perf(runtime): resolve an explicit worktree id without scanning every repo by @nwparker in #14399
  • fix(terminal): strip the captured shim dir across trailing-separator spellings by @nwparker in #14439
  • Terminate renderer graph reload generations and contain disposed-frame notifications by @Boulea7 in #14070
  • test(e2e): headless preedit-geometry coverage for Korean and CJK terminal input by @nwparker in #14500
  • fix(terminal): ground the emulator to the snapshot's baseline after a byte gap by @nwparker in #14374
  • fix(linear): label Start workspace and add Open on Linear by @AmethystLiang in #14492
  • fix(mobile): match desktop project and run target picker by @brennanb2025 in #14457
  • Add global worktree visibility source defaults by @brennanb2025 in #14276
  • fix(daemon): persist the pending-output counter across empty incremental takes (STA-4297) by @brennanb2025 in #14496
  • fix(daemon): bound the caller's wait on final durable-history checkpoints (STA-4228) by @brennanb2025 in #14497
  • fix(daemon): harden checkpoint admission after per-session isolation by @brennanb2025 in #14385
  • fix(devin): preserve JSONC comments when writing hook config by @brennanb2025 in #14199
  • fix(orchestration): wait for Codex composer render by @Jinwoo-H in #14575
  • Keep other-client workspace filter visible for remote hosts by @Jinwoo-H in #14579
  • fix(codex): resolve the launch preflight to a verified absolute Orca CLI path (STA-4270) by @brennanb2025 in #14458
  • STA-4276: preflight Codex in Command Prompt and Git Bash by @brennanb2025 in #14441
  • fix(agent-map): commit slider changes once (STA-4281) by @brennanb2025 in #14442
  • fix(agent-launch): wait longer for cold-boot Codex composer before dropping prompt (STA-3367) by @brennanb2025 in #12853
  • feat(native-chat): Extra high grok effort per model by @AmethystLiang in #14577
  • fix(vm): preserve runtime sidecar rollback compatibility by @Jinwoo-H in #14444
  • fix(vm): keep failed cleanup retryable by @Jinwoo-H in #14476
  • fix(vm): harden provisioned root ownership and cleanup by @Jinwoo-H in #14477
  • Keep other-client workspace filter visible during catalog hydration by @Jinwoo-H in #14595
  • fix(source-control-ai): stop duplicating singleton CLI flags in agent argv by @brennanb2025 in #14585
  • fix(git): allow bounded override of worktree-add timeout by @innocarpe in #12823
  • fix(terminal): bracket agent-pane pastes so a pasted newline can't submit the draft by @brennanb2025 in #14456
  • refactor(renderer): decompose App.tsx into an app-shell module by @nwparker in #14607
  • fix(workspace-cleanup): make the Filters panel scrollable by @brennanb2025 in #14629
  • fix(orchestration): stop fencing fresh-run callers and accept revoked coordinator after takeover by @leofmarciano in #11582
  • fix(orchestration-cli): point dropped mutations at --retry-request by @brennanb2025 in #14586
  • fix(orchestration): preserve mailbox delivery identity by @Jinwoo-H in #13717
  • Split worktrees slice by @AmethystLiang in #14643
  • fix: detect external git init on folder projects and upgrade to git repo by @fsdwen in #11480
  • fix(i18n): correct Chinese translations by @DaQun in #14299
  • fix(browser): keep browser guests painting when the workbench is hidden by @brennanb2025 in #14599
  • fix(mobile): keep polling session tabs while an active terminal is pending-handle (STA-4256) by @brennanb2025 in #14623
  • preserve agent badges when searching for tabs by @AmethystLiang in #14677
  • fix(workspaces): gate the Jira palette match on the issue's tenant by @nwparker in #14671
  • fix(repos): forget remote-identity deadlines for removed repo locations by @nwparker in #14672
  • fix(skills): cancel and bound abandoned skill discovery scans by @nwparker in #14670
  • fix(native-chat): stop glued rapid sends from pinning queued bubbles by @brennanb2025 in #14663
  • fix(worktree): never reissue a generated workspace name by @brennanb2025 in #14350
  • fix(macos): stop reporting every app update as severed TCC attribution by @brennanb2025 in #14655
  • Update mobile 0.0.43 Android download links by @brennanb2025 in #14696
  • fix(browser): align anti-detection identity signals by @brennanb2025 in #14685
  • fix(mobile-native-chat): retire pending bubbles glued into one transcript row (mobile half of #14262) by @brennanb2025 in #14665
  • fix(agent-launch): preserve cold Codex startup drafts by @brennanb2025 in #14688
  • fix: keep remote visibility hydration off local startup path by @brennanb2025 in #14674
  • fix(deps): bump transitive nanoid to 3.3.18 (GHSA-2v37-7h3g-55p8) by @nwparker in #14723
  • fix(terminal): hold a cursor chord until the composing syllable commits by @nwparker in #14730
  • perf(usage): index repos for worktree metadata by @nwparker in #8077
  • feat(computer-use): support macOS middle click and stop the silent left-click fallback by @brennanb2025 in #14721
  • refactor(tests): split every oversized test file off the max-lines suppression list by @nwparker in #14728
  • fix(e2e): unblock golden file-link hover and Windows worktree activate by @AmethystLiang in #14720
  • fix(terminal): make close and handles incarnation-stable (STA-4327) by @Jinwoo-H in #14590
  • ci: post test vs non-test LoC on pull requests by @nwparker in #14738
  • fix(workspace-cleanup): refuse removal when the owning host is not certain (STA-4343) by @brennanb2025 in #14731
  • fix(ci): unbreak static analysis on main (restrict-template-expressions) by @nwparker in #14755
  • perf: coalesce SSH git status reads by @nwparker in #11696
  • perf(renderer): index web session tab reconciliation by @nwparker in #8098
  • test(daemon): stop mutating process-global cwd in the daemon cwd-repair tests by @nwparker in #14750
  • feat(shortcuts): warn when macOS Mission Control captures digit chords by @pythonstrup in #14734
  • fix(terminal): stop the hidden-output restore re-arming itself after dispose by @nwparker in #14749
  • Remove worktree deletion success toasts by @AmethystLiang in #14724
  • refactor(sidebar): group worktree-list files by domain by @AmethystLiang in #14486
  • fix(terminal): settle CLI prompts for Claude and Codex by @Jinwoo-H in #14608
  • Revert "#14665 fix(mobile-native-chat): retire pending bubbles glued into one transcript row" by @AmethystLiang in #14819
  • refactor(source-control): extract modules to half SourceControl.tsx by @AmethystLiang in #14396
  • refactor(browser): split browser and browser-IPC modules under the max-lines budget by @nwparker in #14697
  • refactor(ipc): split main-process IPC modules under the max-lines budget by @nwparker in #14703
  • refactor(integrations): split issue-tracker clients under the max-lines budget by @nwparker in #14704
  • refactor(hooks,relay): split agent hook services and relay under the max-lines budget by @nwparker in #14725
  • refactor(usage): split AI-usage scanners and stores under the max-lines budget by @nwparker in #14668
  • refactor(right-sidebar): split file explorer and sidebar under the max-lines budget by @nwparker in #14741
  • refactor(editor): split Monaco, autosave and notebook modules under the max-lines budget by @nwparker in #14748
  • refactor(panes,tabs): split pane manager and tab-group modules under the max-lines budget by @nwparker in #14760
  • refactor(daemon,runtime): split daemon, pty and rpc modules under the max-lines budget by @nwparker in #14834
  • refactor(source-control): split the dropdown action resolver under the max-lines budget by @nwparker in #14835
  • fix(tab-bar): exclude disabled agents from new-tab search by @nwparker in #14824
  • refactor(persistence): extract modules to half persistence.ts by @AmethystLiang in #14252
  • Refactor: split editor.ts into modular state actions by @AmethystLiang in #14847
  • ci: color added/deleted LoC counts in PR summary by @nwparker in #14839
  • ci: render LoC + and - signs huge bold by @nwparker in #14855
  • perf: coalesce git upstream status reads by @nwparker in #11697
  • feat(crash-reporting): capture Crashpad minidumps and name the failing CHECK by @nwparker in #14823
  • fix(editor): address review feedback on the split editor slice by @AmethystLiang in #14850
  • fix(persistence): address review feedback on extracted modules by @AmethystLiang in #14862
  • fix(worktrees): address review feedback on the worktrees slice split by @AmethystLiang in #14669
  • fix(daemon): validate spawn cwd asynchronously so one dead share cannot freeze every terminal by @nwparker in #14848
  • ci: run the daily macOS build 4 hours later by @AmethystLiang in #14869
  • ci: run full e2e against the daily cut commit by @AmethystLiang in #14870
  • feat(skills): add private bundle sharing by @Jinwoo-H in #14401
  • feat(workspace): set project location from the create-worktree host picker by @nwparker in #14868
  • Preserve OpenCode session across command completion, control SessionStart emission by @AmethystLiang in #14866
  • Revert "#14401 feat(skills): add private bundle sharing" by @AmethystLiang in #14913
  • Revert "#14868 feat(workspace): set project location from the create-worktree host picker" by @AmethystLiang in #14912
  • docs: refresh WeChat group 7 QR by @OrcaWin in #14911
  • fix(browser): route every cookie-import write through CDP identities (STA-4300) by @brennanb2025 in #14729
  • Revert "#14866 Preserve OpenCode session across command completion" by @AmethystLiang in #14943
  • Revert "#14729 fix(browser): route every cookie-import write through CDP identities" by @AmethystLiang in #14942
  • fix(mobile): present pending Relay fallback accurately by @Jinwoo-H in #14922
  • fix(shell-ready): preserve Bash PROMPT_COMMAND composition by @Jinwoo-H in #14619
  • fix(terminal): type Option-composed ASCII instead of reporting it as a chord by @nwparker in #14743
  • feat(skills): reland private bundle sharing safely by @Jinwoo-H in #14934
  • feat(relay): prefer the closest available region by @Jinwoo-H in #14366
  • refactor(shell): one portable Unix startup dialect instead of shell detection by @nwparker in #14863
  • fix(crash-reporting): preserve coalesced repeat accounting by @brennanb2025 in #14666
  • fix(terminal): keep unresolved snapshot-capability verdicts re-askable by @brennanb2025 in #14676
  • fix(crash-reporting): give the parking census a retained breadcrumb slot without starving memory highwaters by @brennanb2025 in #14867
  • fix(crash-reporting): stop post-mortem process metrics crowning a survivor as the crasher by @brennanb2025 in #14662
  • fix(crash-reporting): decode POSIX wait statuses in crash-report display and record OS session ends by @brennanb2025 in #14659
  • fix(terminal): clear the preedit overlay when an IME cancels a composition by @nwparker in #14758
  • fix(daemon): bound cwd validation and attach-only requests on a dead share by @nwparker in #14966
  • fix(crash-reporting): prune Crashpad dumps at startup and bound signature parsing by @nwparker in #14968
  • Revert "#14922 fix(mobile): present pending Relay fallback accurately" by @AmethystLiang in #14976
  • Refactor: split GitHubItemDialog into lifecycle-organized modules by @AmethystLiang in #14931
  • Revert "#14863 refactor(shell): one portable Unix startup dialect instead of shell detection" by @AmethystLiang in #14975
  • fix(daemon): bound cwd validation per UNC route by @nwparker in #14967
  • reland(workspace): set project location from the create-worktree host picker by @nwparker in #14965
  • fix(mobile): bound pending-handle session-tab recovery polling (STA-4407) by @brennanb2025 in #14916
  • Reset terminal SGR state around restored output by @brennanb2025 in #14700
  • fix(terminal): align Cursor Agent IME preedit anchor by @nwparker in #14982
  • feat(browser): add a WebAuthn account picker by @brennanb2025 in #14687
  • fix(browser): report cookies an import could not decrypt by @brennanb2025 in #14683
  • Bump mobile app.json to 0.0.44 by @brennanb2025 in #14983
  • fix(mobile): reland truthful Relay recovery status by @Jinwoo-H in #14986
  • fix(grok): strip quotes from GROK_HOME in the Windows hook by @OrcaWin in #14985
  • fix(browser): return a real PermissionStatus from the query override by @brennanb2025 in #14684
  • fix(agent-status): announce Claude turn complete while background work runs by @brennanb2025 in #14580
  • fix(agent-hooks): make the Windows managed hook survive Claude-hooks-compat consumers by @OrcaWin in #14825
  • fix(terminal): inset the grid inside the xterm surface by @brennanb2025 in #14583
  • feat(i18n): localize Automations settings and navigation to Korean by @hwantage in #15004
  • Fix Windows horizontal computer-use scroll by @brennanb2025 in #14727
  • test(crash-reporting): keep ambiguous whole-tree kills reportable by @brennanb2025 in #14667
  • fix(commit-message): keep Windows paths intact in agent command overrides by @nwparker in #14984
  • Split pull request page by @AmethystLiang in #14853
  • Rethrow update errors after lineage recovery attempt by @OrcaWin in #15008
  • revert(crash-reporting): drop the dead terminal_parking_pass retained-slot reservation (#14867) by @brennanb2025 in #15005
  • fix(agent-hooks): default-form managed hook vars so a static precheck cannot reject them by @brennanb2025 in #14994
  • fix(repos): never probe the client filesystem for a remote repo icon by @brennanb2025 in #14947
  • feat(terminal): report execution host and listing scope in terminal list by @brennanb2025 in #14973
  • fix(ci): run PR LoC scripts from the default branch, not PR head by @nwparker in #15016
  • Remap SSH leases per execution host, not globally by @OrcaWin in #15009
  • fix(browser): keep cookie-import warnings readable from newer hosts by @brennanb2025 in #15002
  • refactor: split db.ts under 400 lines by @AmethystLiang in #14979
  • fix(terminal): dispose a deferred IME chord instead of leaving it armed by @nwparker in #15017
  • fix(skills): keep an unanswered skill root's last known skills instead of reporting none by @nwparker in #15015
  • fix(terminal): verify agent prompt submission by @Jinwoo-H in #14962
  • reland(shell): one portable Unix startup dialect, with both revert causes fixed by @nwparker in #15018
  • fix(mobile): decide terminal preedit from the marked-text range, not a script table by @nwparker in #15007
  • Include descendants in Pinned section when parent is pinned by @AmethystLiang in #15035
  • fix(ssh): stop reporting a confirmed kill when the SSH provider is gone by @brennanb2025 in #14977
  • fix(github): fail closed instead of running client git against a remote repoPath when the SSH provider is unregistered by @brennanb2025 in #14945
  • fix(terminal): render the row tail the IME preedit overlay covers by @nwparker in #15014
  • fix(orchestration): enforce task dispatch state invariant by @Jinwoo-H in #14961
  • fix(cli): relativize absolute POSIX paths against UNC worktree roots in WSL by @stroland02 in #11406
  • fix(skills): harden cross-host bundle installs by @Jinwoo-H in #15000
  • fix(folder-workspaces): keep the broken-folder marker when a host sends a new reason by @brennanb2025 in #15027
  • fix(terminal): scope the IME composition route to captured sessions by @nwparker in #15056
  • fix(ui): ignore IME composition Enter in the comment composer and replace field by @nwparker in #15057
  • fix(mobile-native-chat): reland glued pending retirement without the two revert causes (STA-4482, STA-4492) by @brennanb2025 in #14936
  • fix(computer): preserve accessibility value types by @brennanb2025 in #15031
  • fix(worktree): skip retirement backfill on every non-local host by @brennanb2025 in #15023
  • fix(orchestration): enforce honest recipient routing by @Jinwoo-H in #14964
  • fix(mobile): escalate continuous Relay outages (STA-4587) by @Jinwoo-H in #15071
  • fix(codex): stop a transient filesystem error from logging out the active account by @brennanb2025 in #15046
  • refactor(terminal): redesign quick command dialog with expanded layout by @AmethystLiang in #15011
  • fix(mobile): render pairing QR at scanner-safe scale by @Jinwoo-H in #15058
  • fix(agent-status): preserve restored child provenance by @brennanb2025 in #15082
  • fix(native-chat): enforce each pending send's own boundary in glue matching (STA-4477) by @brennanb2025 in #14935
  • fix(mobile-ios): pin fastlane and gate the Fastfile in CI by @brennanb2025 in #15092
  • fix(worktrees): keep retirement tombstones across project and SSH target re-add by @brennanb2025 in #14917
  • reland(browser): route every cookie-import write through CDP identities, and never clear what it will not write back by @brennanb2025 in #15030
  • fix(orchestration): expose unsupervised dispatch lanes by @Jinwoo-H in #15105
  • Improve cmd j search keyword match by @AmethystLiang in #15170
  • Fix in-flight checkpoint cleanup in daemon shutdown test by @AmethystLiang in #15010
  • Split browser pane by @AmethystLiang in #14861
  • test(folder-workspaces): await routed update admission by @Jinwoo-H in #15179
  • fix(codex): stop resuming a session under the wrong account when a sessions tree is locked by @brennanb2025 in #15093
  • fix(agent-hooks): detect IDS-truncated hook POSTs instead of failing open silently (STA-2870) by @brennanb2025 in #14625
  • fix(opencode): emit a default export the plugin loader accepts (STA-3097) by @brennanb2025 in #14612
  • fix(computer-macos): allow final click to dismiss target by @Jinwoo-H in #15169
  • fix(persistence): harden persistence edge cases by @AmethystLiang in #15171
  • fix(opencode): keep the pane working while a background subagent runs (#9692) by @brennanb2025 in #14712
  • fix(agents): lift the pane retirement fence when a live PTY re-attaches (STA-4114) by @brennanb2025 in #14624
  • revert(terminal): back out the xterm surface inset that black-barred packaged builds (#14583) by @nwparker in #15181
  • fix(workspaces): delete on the confirmed host, and make both hosts' rows selectable (STA-4343) by @brennanb2025 in #15013
  • fix(runtime): tear down terminal subscriptions only through their owning registration by @brennanb2025 in #14992
  • fix(agent-status): say what an OpenCode permission request is waiting on (STA-3160) by @brennanb2025 in #14614
  • fix(agent-hooks): bind agent status to the pane its session was spawned into (STA-2069) by @brennanb2025 in #14615
  • feat(ssh): verify host keys, and restore panes correctly across a reconnect by @nwparker in #14844
  • Prevent tab search results from jumping while typing by @AmethystLiang in #15133
  • test(e2e): pin Hangul byte exactness across a terminal wrap boundary by @nwparker in #15080
  • feat(agent-status): surface the model each Codex subagent is running by @brennanb2025 in #14627
  • fix(mobile): keep phone tab selection across host snapshots by @nwparker in #13387
  • fix(watcher): watch the resolved worktree root so symlinked and differently-cased paths work by @nwparker in #15077
  • Restructure automation editor dialog into three-column layout by @AmethystLiang in #14803
  • ci: cut PR wall clock by caching what CI recomputes every run by @nwparker in #15211
  • fix(cmd-j): decline a GitLab iid match when the repo remote names a different project (STA-4450) by @nwparker in #15193
  • fix(daemon): stop a failed spawn cancel from tearing down the shared connection (STA-4663) by @nwparker in #15194
  • ci: stop refreshing every apt repo three times to install fish by @nwparker in #15217
  • fix(repo-identity): bound git remote-identity probes and retire them with their repo by @nwparker in #15196
  • fix(terminal-history): drop an inherited Orca fish_history so nested Orca panes stop merging worktree histories (STA-4682) by @nwparker in #15195
  • Filter automations list by agents by @AmethystLiang in #15224
  • Split github client by @AmethystLiang in #15214
  • build(xterm): restore the patch regeneration harness and gate it in CI by @nwparker in #15223
  • fix(terminal): stop the macOS IME forwarder from running on iPadOS by @nwparker in #15218
  • docs(mobile): add Android APK install guidance by @Jinwoo-H in #14978
  • fix(new-workspace): keep workspace creation reachable with zero projects by @nwparker in #15234
  • Redesign artifacts page as full-width table with drawer by @AmethystLiang in #15233
  • Display occupant agent icons in tab search results by @AmethystLiang in #15134
  • fix(terminal): deliver an IME commit the deferred textarea diff missed by @nwparker in #15198
  • feat(crash-reporting): read-only Windows install-dir DACL probe breadcrumb by @nwparker in #15107
  • ci: run the IME e2e suite when terminal input code changes by @nwparker in #15239
  • fix(terminal): end a url at CJK punctuation instead of swallowing it by @nwparker in #15240
  • fix(dev): stop macOS Keychain password prompts on pnpm dev by @nwparker in #15183
  • fix(mobile): escalate a persistently rejected Relay pairing to re-pair (STA-4681) by @Jinwoo-H in #15237
  • fix(relay): scope shell history for Windows -> WSL panes (STA-4682) by @nwparker in #15236
  • test(updater): await the linux install re-proof instead of budgeting event-loop turns by @nwparker in #15246
  • test(e2e): harden triaged CI failures by @AmethystLiang in #14656
  • refactor(shell): build every zsh startup wrapper from one shared builder by @nwparker in #15245
  • fix(runtime): stop one unreachable relay from freezing every workspace as active (STA-517) by @brennanb2025 in #14649
  • fix(stats): count agent sessions from hook transitions, not OSC titles (STA-2445) by @brennanb2025 in #14657
  • fix(antigravity): install a PreToolUse status hook without deciding tool permissions by @brennanb2025 in #14701
  • feat(agent-status): step 1 — stamp observation provenance and ordering at every status ingress (STA-4293) by @brennanb2025 in #14706
  • fix(sidebar): name each split-pane agent row from its own pane title (STA-2811) by @brennanb2025 in #14707
  • fix(remote): keep the host's last assistant message on client-owned agent rows (#12906) by @brennanb2025 in #14716
  • docs(computer): explain screenshot file requirements by @brennanb2025 in #15054
  • fix(tab-bar): restore the tab-results fixture after occupantAgent became required by @nwparker in #15277
  • fix(wsl): pass guest argv verbatim through --exec by @OrcaWin in #15039
  • ci(e2e): install a CJK font on the e2e runners by @nwparker in #15259
  • fix(wsl): read machine output from a fenced login shell by @OrcaWin in #15290
  • test(terminal): pin that the CJK block is the preedit overlay, not the cursor by @nwparker in #15242
  • fix(git): fence buffered WSL login-shell reads by @OrcaWin in #15060
  • fix(git): run WSL git reads without a shell by @OrcaWin in #15257
  • fix(shell): repair worktree HISTFILE in plain zsh panes via one positive feature channel by @nwparker in #15258
  • ci(e2e): keep the relay version markers in the e2e build artifact by @brennanb2025 in #15303
  • Revert "fix(agent-hooks): bind agent status to the pane its session was spawned into (STA-2069)" (#14615) by @brennanb2025 in #15295
  • fix(computer): report unasserted accessibility actions by @brennanb2025 in #15028
  • fix(orchestration): deliver worker-exit escalations to lightweight Run coordinators (STA-4604) by @Jinwoo-H in #15235
  • fix(relay): let one owner hold pty.ackData instead of relying on construction order by @brennanb2025 in #15079
  • fix(dev): stop caching unsigned bundles and reclaim stale dev copies by @nwparker in #15247
  • fix(orchestration): record why a terminal's process is gone (STA-4603, STA-4536) by @Jinwoo-H in #15244
  • fix(github): scope GHES host-auth cache to the executing connection by @brennanb2025 in #14948
  • fix(package): keep cached dev Electron bundles out of app.asar by @nwparker in #15359
  • fix(remote): search Quick Open paths on the host by @Jinwoo-H in #15158
  • refactor(test): move shell wrapper fixtures where they read as test data by @nwparker in #15363
  • fix(sidebar): clear the delete state when a removal is refused by @brennanb2025 in #15187
  • refactor(test): use fixtures for wrapper snapshots and teach the LoC bot by @nwparker in #15365
  • fix(codex): stop overwriting and deleting Codex files that were merely unreadable (STA-4737) by @brennanb2025 in #15287
  • fix(cli): route --host runtime: to that server instead of answering locally by @nwparker in #15364
  • fix(codex): keep two host-lane records that a failed read used to destroy (STA-4735) by @brennanb2025 in #15289
  • fix(codex): stop a locked auth.json from deleting a just-authenticated account (STA-4734) by @brennanb2025 in #15279
  • feat(orchestration): report a worker blocked on a human prompt (STA-4513, STA-3714) by @Jinwoo-H in #15261
  • fix(shell): carry a WSL pane's shell across relay revive and stop forking to probe zsh emulation (STA-4682) by @nwparker in #15361
  • fix(agent-status): stop an idle title retiring a pane pending a human answer by @brennanb2025 in #15351
  • refactor(runtime): name every mobile-session close outcome so the tombstone decision is explicit (STA-4718) by @nwparker in #15346
  • fix(ssh): validate hashed known_hosts fields through one strict base64 decoder (STA-4717) by @nwparker in #15345
  • test(terminal): assert wide-char buffer content across repaints by @nwparker in #15280
  • fix(browser): serialize cookie imports per partition by @brennanb2025 in #15095
  • fix(cmd-j): host-qualify worktree resolution and disambiguate list render keys (STA-4343) by @AmethystLiang in #15371
  • fix(shell): content-address shell-ready wrapper trees so builds stop clobbering each other by @nwparker in #15285
  • Kill hung WSL transcript filesystem operations via child process with route quarantine by @OrcaWin in #15381
  • test(agent-hooks): prove the Windows hook actually receives its payload by @OrcaWin in #15403
  • Fix skill install dialog overflow and simplify file summaries by @Jinwoo-H in #15406
  • fix(tabs): keep an open diff focused while agents stream (STA-4697) by @brennanb2025 in #15390
  • test(wsl): account for the route quarantine in stalled-mount tests by @brennanb2025 in #15408
  • fix(quick-open): stop node:path from white-screening the renderer by @brennanb2025 in #15405
  • test(relay): stop port-scan fixtures colliding with the worker pid by @brennanb2025 in #15413
  • fix(sidebar): render folder workspaces under every Group by mode (#15362) by @brennanb2025 in #15404
  • fix(runtime): scope create-with-activate navigation to the requesting client (STA-2802) by @Jinwoo-H in #15407
  • feat(terminal): read the rendered screen with terminal read --screen (STA-4792) by @nwparker in #15380
  • fix(terminal): stop a Hangul-terminating digit being eaten as a candidate pick by @nwparker in #15429
  • test(e2e): keep the native Hangul reproduction harness by @nwparker in #15438
  • Fix WSL stall tests to reset gate state and fake performance timer by @OrcaWin in #15414
  • fix(workspace-cleanup): require a host-qualified key for every candidate row by @brennanb2025 in #15422
  • Update readme by @OrcaWin in #15466
  • feat(sidebar): name the host when a delete batch collides on one id by @brennanb2025 in #15423
  • fix(browser): stop the auth-host UA write from cancelling redirects by @choihjin in #15221
  • fix(browser): grant storage-access so requestStorageAccess() stops rejecting by @brennanb2025 in #15481
  • fix(mobile): keep a terminal lease alive when the handle lookup fails by @brennanb2025 in #15463
  • fix(workspaces): re-seed a terminal when an emptied workspace is opened by @Jinwoo-H in #15513
  • ci: bound the shell-contracts apt install so a stalled mirror cannot wedge the run by @brennanb2025 in #15532
  • fix(agent-hooks): stop backgrounded Claude sessions posting a stale pane key (STA-4769) by @brennanb2025 in #15304
  • fix(remote): stop paired-tab resurrection, ghost agent rows, and frozen visible panes (STA-4593) by @Jinwoo-H in #15459
  • fix(terminal): keep a cold-parked pane's runtime-graph leaf while its PTY lives (STA-2854) by @Jinwoo-H in #15514
  • fix(browser): scope a native cookie import's clear to the domains it imports (STA-4797) by @brennanb2025 in #15375
  • feat(remote): add a positional file read to the filesystem provider by @brennanb2025 in #15517
  • fix(mobile): keep a desktop take-back from being undone by a passive viewport report by @brennanb2025 in #15539
  • fix(runtime): stamp a runtime's own project setups as local, and report remote status about the remote (STA-4792) by @nwparker in #15376
  • fix(mobile): scope optimistic workspace removal to the deleted host by @brennanb2025 in #15424
  • fix(cli): resolve host names across both kinds, and stop ssh: answering empty by @nwparker in #15449
  • fix(repos): keep the desktop-owned manual project order authoritative across paired clients and SSH catalog publishes (STA-4850) by @Jinwoo-H in #15538
  • feat(release): build unsigned Windows artifacts for the dev channels by @nwparker in #15465
  • fix(agent-hooks): stop Antigravity's Windows hook from spawning PowerShell on every event by @nwparker in #15520
  • fix(mobile): replay a delivery-ambiguous worktree.create instead of failing it by @brennanb2025 in #15472
  • fix(workspaces): settle an orca.yaml trust prompt when the modal slot is taken by @brennanb2025 in #15540
  • fix(terminal): require a proven exit before retiring a subscription's lease by @brennanb2025 in #15470
  • fix(terminal): make remote-host take-back release the phone-fit lock by @brennanb2025 in #15473
  • feat(cmd-j): rank palette results by direct matches and recency by @AmethystLiang in #15551
  • fix(pty): keep a CPR reply from overtaking a deferred colour reply by @nwparker in #15559
  • fix(hooks): isolate lint-staged backups per worktree by @nwparker in #15388
  • refactor(shell): collapse the zsh wrapper to one .zshenv and a precmd hook (STA-4786) by @nwparker in #15391
  • Auto e2e tests autofix scheduled ci 1h run 1 20260818T2143 by @AmethystLiang in #15379
  • fix(terminal): refuse a cursor on a screen read, and correct the source docs by @nwparker in #15563
  • fix(tabs): stop split workspaces multiplying columns on return by @nwparker in #15482
  • fix(terminal): keep xterm's render pause latched for a pane with no layout box by @brennanb2025 in #15555
  • ci: stop docs-only commits from starting the skill-roundtrip matrix by @nwparker in #15474
  • Ship the WSL transcript helper with the Windows relay (STA-4831) by @OrcaWin in #15529
  • fix(browser): name the requesting frame and the permission in denial notices by @brennanb2025 in #15542
  • docs(ssh): state the SSH execution boundary and pin the liveness vocabulary by @brennanb2025 in #14971
  • fix(terminal): apply pane padding on all four edges by @brennanb2025 in #15544
  • fix(sidebar): host-qualify discovery notice rows on multi-host projects by @brennanb2025 in #15546
  • fix(worktrees): cover WSL distro history and bound the retirement backfill scan (STA-4472, STA-4473) by @brennanb2025 in #14924
  • fix(pty): delete the reply-withholding scheduler by @nwparker in #15578
  • test(terminal): pin the two conditions that keep macOS period substitution out by @nwparker in #15393
  • Revert "fix(terminal): apply pane padding on all four edges (#15544)" by @AmethystLiang in #15623
  • docs(readme): add Android install guide link to README.ko.md (STA-4817) by @OrcaWin in #15566
  • fix(terminal): keep a quick command queued until its own spawn takes it by @AmethystLiang in #15630
  • Fix flaky CI tests by adding retry logic and increasing timeouts by @AmethystLiang in #15635
  • fix(runtime): recover adopted tui-idle and pin worker fixtures by @Jinwoo-H in #15569
  • fix(worktrees): honor absolute Linux worktree base paths for WSL repos (STA-4772) by @OrcaWin in #15384
  • fix(grok): stop the Windows status hook from spawning two interpreters per event by @OrcaWin in #15595
  • fix(ci): restrict release test token permissions (STA-4970) by @Jinwoo-H in #15675
  • fix(ui): keep dialog title and footer inside the panel by @ppw-stack in #15707
  • fix(terminal): mark captured shortcut input interactive by @itisvincent in #13800
  • fix(terminal): preserve Shift+Enter during routing confirmation by @itisvincent in #13598
  • fix(worktree): let a configured worktree base outrank a built-in visibility source (#15232) by @OrcaWin in #15430
  • fix(skills): isolate concurrent upload staging by @Jinwoo-H in #15693
  • fix(rate-limits): support Codex 0.149 approval policy by @Jinwoo-H in #15823
  • fix(linear): unbound list-issues by default, surface truncation, bind cursor workspace by @brennanb2025 in #15824
  • fix(ssh): let fork-PR worktrees add their contributor remote via the relay by @nwparker in #15827
  • fix(terminal): stop orphaning live agent terminals across host restarts and graph syncs by @Jinwoo-H in #15644
  • Change 'SEÑOR' to 'MR' in Spanish locale by @YerayAlonso in #15594
  • fix(codex): suppress false restart notices after reauth by @Jinwoo-H in #15835
  • fix(windows): one chokepoint for every child process by @nwparker in #15746
  • feat(dashboard): add a keyboard shortcut to toggle the Agent Dashboard by @DNX in #15353
  • fix(worktree): drop a just-added fork remote when its head fetch fails by @nwparker in #15850
  • Remove agent map view from dashboard by @AmethystLiang in #15853
  • perf(windows): read the process table natively instead of forking PowerShell by @nwparker in #15749
  • fix(editor): detect .liquid files as Liquid by @webdevtodayjason in #15213
  • fix(agent-catalog): update outdated Claude Code doc links by @heychs in #15387
  • fix(windows): own PTY process trees with job objects by @nwparker in #15755
  • fix(cmd-j): host-qualify browser and simulator tab candidates (STA-4965) by @Jinwoo-H in #15686
  • fix(windows): reach the pty job on the teardown path that actually runs by @nwparker in #15886

New Contributors

Full Changelog: mobile-android-v0.0.43...mobile-android-v0.0.44

Don't miss a new orca release

NewReleases is sending notifications on new releases.