Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
482 commits
Select commit Hold shift + click to select a range
16c4999
refactor(runtime): check terminal identity modules (#27595)
nwparker Oct 14, 2026
207b220
fix(browser): agent keys and text go straight to the page, never into…
nwparker Oct 14, 2026
8d88c44
refactor(runtime): type terminal waits and delivery evidence (#27602)
nwparker Oct 14, 2026
f894e25
ci: stop daily and post-merge headless-server checks (#28664)
nwparker Oct 14, 2026
078f8f3
refactor: check terminal output methods and organize modules (#27606)
nwparker Oct 14, 2026
5592d98
refactor: check terminal layout methods and organize modules (#27614)
nwparker Oct 14, 2026
d3b17ca
fix(runtime): save a windowless host's chat tabs in its layout (#28354)
Jinwoo-H Oct 14, 2026
fe060f9
refactor(runtime): check workspace removal and recovery ownership (#2…
nwparker Oct 14, 2026
4f01443
refactor(runtime): check workspace creation and metadata ownership (#…
nwparker Oct 14, 2026
8400aa5
fix(ssh): a new desktop can connect to a host already running a diffe…
OrcaWin Oct 14, 2026
075718f
fix(ssh): a password host no longer asks again after every reconnect …
OrcaWin Oct 14, 2026
f31aada
Require a unique full PR gate before merging (#28632)
nwparker Oct 14, 2026
092d6bd
ci: check README links and workflow configuration on main (#28678)
nwparker Oct 14, 2026
4a0541a
Stop orphaned background browsers from blocking Orca updates (#28562)
nwparker Oct 14, 2026
09681f0
test(native-chat): replay recorded Linux Sogou commits into the chat …
nwparker Oct 14, 2026
c1597c3
ci: remove recurring homepage repository checks (#28682)
nwparker Oct 14, 2026
9c0420f
fix(browser): agent clicks keep the user's keyboard focus (#28454)
nwparker Oct 14, 2026
b3938e6
fix(jira): adapt issue list columns to panel width (#28583)
nwparker Oct 14, 2026
04e8cd9
fix(jira): preserve linked description and comment text (#28584)
nwparker Oct 14, 2026
7ac2dcc
feat(cli): let agents read and update Jira tickets safely (#28592)
nwparker Oct 14, 2026
64538a6
fix(tasks): make mobile and desktop searches agree (#28580)
nwparker Oct 14, 2026
cf11916
fix(jira): support scoped Cloud API tokens (#28604)
nwparker Oct 14, 2026
5277fb4
fix(jira): keep edits and comments visible while saving (#28585)
nwparker Oct 14, 2026
3bf9c85
Search connected tasks by keyword from Cmd+J (#28617)
nwparker Oct 14, 2026
51173e4
feat(jira): generate issue titles on the connection host (#28625)
nwparker Oct 14, 2026
ba81b43
Fix Jira Cloud All and classify presets by ticket status (#28579)
nwparker Oct 14, 2026
6d04aea
feat(cli): resolve Jira keys in workspace references (#28619)
nwparker Oct 14, 2026
8f91313
Show every linked Jira workspace and add a Has Workspace view (#28590)
nwparker Oct 14, 2026
5ae088a
fix(integrations): notice Jira and Linear state changes from other pr…
nwparker Oct 14, 2026
cacce17
feat(tasks): browse Jira and start workspaces on mobile (#28616)
nwparker Oct 14, 2026
0c05e6d
feat(jira): add row quick copy and reusable prompt templates (#28618)
nwparker Oct 14, 2026
d7315af
Save and reuse named Jira JQL filters on the execution host (#28600)
nwparker Oct 14, 2026
4731172
feat(jira): choose planning columns in the issue list (#28615)
nwparker Oct 14, 2026
702777e
Filter Jira preset views by multiple workflow statuses (#28623)
nwparker Oct 14, 2026
d194712
Choose Jira key casing and keep canonical Jira keys in review titles …
nwparker Oct 14, 2026
eb1ee8f
fix(jira): collect required fields before changing status (#28588)
nwparker Oct 14, 2026
fa5533e
test(relay): check invariant 4 (one demotion winner) in the step-5 si…
Jinwoo-H Oct 14, 2026
8e68481
refactor: clear Jira CI lint failures without behavior changes (#28717)
nwparker Oct 14, 2026
8c5ac7a
Make existing Jira assignees searchable and add Assign to me (#28612)
nwparker Oct 14, 2026
624c414
View Jira work on a board and filter the current sprint (#28633)
nwparker Oct 14, 2026
a0c46b4
feat(jira): load attachment images outside issue Markdown (#28631)
nwparker Oct 14, 2026
ef34067
feat(jira): remember repository project defaults (#28622)
nwparker Oct 14, 2026
c8ed629
fix(cloud-auth): one owner for the cloud session; never drop a rotate…
Jinwoo-H Oct 14, 2026
dd4d0fa
Repair Jira integration fixtures and verification contracts (#28743)
nwparker Oct 14, 2026
cc0217f
test(ci): bound the Windows OEM process-read test's cold PowerShell s…
nwparker Oct 14, 2026
3879c6d
feat(wsl-mover): fence moving projects from new terminals and hide th…
nwparker Oct 14, 2026
dc146c0
fix(ssh): the CLI, phone and paired clients no longer list a converte…
nwparker Oct 14, 2026
93baa82
refactor(unread): one workspace-attention module owns every unread tr…
Jinwoo-H Oct 14, 2026
e5e6189
Split Jira issue workspace hooks and IPC param checks (#28759)
AmethystLiang Oct 14, 2026
81ed8c0
feat(runtime-files): the host serves a chat's scratch folder as a fil…
brennanb2025 Oct 14, 2026
3825530
fix(worktrees): never delete a folder git no longer tracks (#25075)
brennanb2025 Oct 14, 2026
c51a85e
Shorten worker sub-dispatch instructions (#28565)
AmethystLiang Oct 14, 2026
3e25fe7
fix(unread): a pane is read when it is on screen; closing a waiting t…
Jinwoo-H Oct 14, 2026
b85597c
fix(serve): restore a remote server's browser tabs after it restarts …
Jinwoo-H Oct 14, 2026
1ead9c2
fix(terminal): store the Terminal shell setting trimmed so agent tabs…
brennanb2025 Oct 14, 2026
98dc549
refactor(pty): one failure cleanup and agent_error for both terminal …
brennanb2025 Oct 14, 2026
ff1285a
fix(terminal): judge an agent's --shell against the runtime it runs i…
brennanb2025 Oct 14, 2026
52d9dd2
Keep CI failure excerpts bounded and strip malformed ANSI controls li…
AmethystLiang Oct 14, 2026
8644ade
Remove Hermes automation support (#28519)
AmethystLiang Oct 14, 2026
dfafde6
test(cross-version): pin the ephemeral-key and source-fence downgrade…
Jinwoo-H Oct 14, 2026
33b8558
fix(terminal): name the fix that applies when --shell is refused (#28…
brennanb2025 Oct 14, 2026
fd4a802
Native chat: record which agent run wrote each journal item (1/5, reb…
brennanb2025 Oct 14, 2026
7eb6c45
refactor(native-chat): open a chat visual like any file (#28437)
brennanb2025 Oct 14, 2026
872012f
fix(i18n): drop catalog strings left behind by the automation removal…
Jinwoo-H Oct 14, 2026
b0308f2
feat(wsl-mover): refuse edits to a project a WSL move is taking (D1b-…
nwparker Oct 14, 2026
8dfaeea
Resume in New Native Chat for Pi (#28080)
brennanb2025 Oct 14, 2026
17959a9
feat(relay): measure each host hello's pre-auth time on the cell (#28…
Jinwoo-H Oct 14, 2026
68b186e
fix(relay): end the restart-safe quiet at the drain's pace window, no…
Jinwoo-H Oct 14, 2026
d09605e
ci: run the Electron browser probes serially, out of the unit shards …
Jinwoo-H Oct 14, 2026
657a47c
fix(pty): report agent start failures the same way from every launch …
brennanb2025 Oct 14, 2026
5976c46
fix(new-tab): Enter on a visited site's name opens the site, not a fi…
AmethystLiang Oct 14, 2026
8f83f6b
feat(wsl-mover): pause a moving project's terminals through Sleep and…
nwparker Oct 14, 2026
d40fbdb
feat(native-chat): Share a chat visual from the chat (#28479)
brennanb2025 Oct 14, 2026
941a0f2
fix(opencode): refuse a picked OpenCode model in any \\wsl$ repo (#28…
brennanb2025 Oct 14, 2026
6f92984
fix(mobile): workspace list host badge, "workspaces" wording, and sea…
Jinwoo-H Oct 14, 2026
2de7381
fix(relay): supersede a reserve seat from the feed once a later, newe…
Jinwoo-H Oct 14, 2026
b024043
refactor(tabs): delete unused copy-tab and merge-group store actions …
Jinwoo-H Oct 14, 2026
23103e5
perf(layout): re-project only the written partition in the layout str…
Jinwoo-H Oct 14, 2026
cc03142
feat(wsl-mover): background writers step aside for a project a WSL mo…
nwparker Oct 14, 2026
63780c6
fix(i18n): correct the Japanese label for the Cleaned browser identit…
sojiro-o Oct 14, 2026
a93a236
fix(i18n): use クリーンアップ in the Japanese VM cleanup stop dialog (#28533)
sojiro-o Oct 14, 2026
c8f0807
refactor(terminal): publish new tabs together with their startup comm…
Jinwoo-H Oct 14, 2026
cc7d03d
fix(daemon): keep every pane in main's layout through a terminal serv…
Jinwoo-H Oct 14, 2026
47b63b4
chore(relay): pin staging c4 to image G for E-pre (#28854)
Jinwoo-H Oct 14, 2026
f8cbfef
test(session): compare what the window shows before and after the sha…
Jinwoo-H Oct 14, 2026
ebd4f00
Skip reindexing unchanged transcripts on cold session list reads (#28…
AmethystLiang Oct 14, 2026
27c0275
feat(mobile): log OTA shell lifecycle to the connection diagnostics (…
Jinwoo-H Oct 14, 2026
e53b200
fix(terminal): reject a requested tab id that is already taken (#28841)
Jinwoo-H Oct 14, 2026
e18e7fc
chore(relay): pin staging c1, c5, c6 and c7 to image G for E-pre (#28…
Jinwoo-H Oct 14, 2026
7244bf3
Reclaim idle worktree space automatically on dev startup (#28864)
nwparker Oct 14, 2026
850e71e
Resume in New CLI for OpenCode and OMP chats (#28075)
brennanb2025 Oct 14, 2026
bd6f1ca
fix(automations): sleep a finished run's terminal instead of closing …
AmoabaKelvin Oct 14, 2026
6607c54
perf(ci): cut redundant tests and reuse expensive setup (#28669)
nwparker Oct 14, 2026
818e782
feat(relay): split step-5 shadow compare and dry-run logs per cell (#…
Jinwoo-H Oct 14, 2026
66451a2
feat(orcad-migration): a capability-gated blob channel beside scrollb…
nwparker Oct 14, 2026
232f604
Remove obsolete Hermes cron documentation and translations (#28877)
AmethystLiang Oct 14, 2026
0b1a600
feat(wsl-mover): a moved pane reopens in its last folder on the WSL h…
nwparker Oct 14, 2026
02d9366
refactor(tabs): mint a workspace's root group with the loader's id (#…
Jinwoo-H Oct 14, 2026
a90ff59
Show whole credit balances in usage displays (#28887)
nwparker Oct 15, 2026
f9ef559
refactor(tabs): choose new tab ids before creating them at simple cre…
Jinwoo-H Oct 15, 2026
8a6cc6c
fix(terminal): bring each pane back after a terminal service restart …
Jinwoo-H Oct 15, 2026
39815a0
Reduce CI import, frame-capture, teardown, and shard costs (#28879)
nwparker Oct 15, 2026
d5324c9
fix(ssh): the SSH password dialog no longer closes itself and comes b…
OrcaWin Oct 15, 2026
a46dfac
chore(i18n): translate new keys to es/fr/ja/ko/zh
AmethystLiang Oct 15, 2026
a140cc4
chore(i18n): address review threads on the translation scan
AmethystLiang Oct 15, 2026
9195d2a
refactor(terminal): park and quit capture keeps the stored pane layou…
Jinwoo-H Oct 15, 2026
2036c59
refactor(store): route worktree, repo and SSH layout writes through t…
Jinwoo-H Oct 15, 2026
48c1d4d
refactor(tabs): move tab drag preview selection writes into tabs-slic…
Jinwoo-H Oct 15, 2026
6e46d5e
feat(relay): watch a reserve cell and flip it back on the first step …
Jinwoo-H Oct 15, 2026
1f50bd3
Reduce unrelated setup in attention and mailbox fixtures (#28897)
nwparker Oct 15, 2026
11aad14
fix(app-shell): let users close the profile storage delay warning (#2…
brennanb2025 Oct 15, 2026
d78363a
fix(agent-launch): find a repo's project the way the window does (#28…
brennanb2025 Oct 15, 2026
c056cfc
feat(native-chat): add a "New" line above unseen messages (#28333)
AmoabaKelvin Oct 15, 2026
88accb2
feat(relay): log where the sticky lane's slot time goes, per pooled c…
Jinwoo-H Oct 15, 2026
67a3aa4
feat(wsl-mover): shell history moves with the project to the WSL host…
nwparker Oct 15, 2026
6d519f7
fix(mobile): keep content clear of the side insets in landscape (#28749)
AmoabaKelvin Oct 15, 2026
c7cb5d1
fix(mobile): open Create Workspace and Close issue from Tasks on iOS …
AmoabaKelvin Oct 15, 2026
fbb93b7
fix(native-chat): send typing after a click to the chat's composer (#…
AmoabaKelvin Oct 15, 2026
0905ad4
feat(native-chat): copy chat selections when Copy on Select is on (#2…
AmoabaKelvin Oct 15, 2026
222b780
Reuse real launcher builds and guard unused runtime RPC imports (#28905)
nwparker Oct 15, 2026
3b11b7a
fix(mobile): phone server rows follow the desktop's other-client and …
Jinwoo-H Oct 15, 2026
f23fa8c
Prepare Windows natives with scoped compiler settings and measure ser…
nwparker Oct 15, 2026
095399a
fix(mobile): render markdown with markdown-it instead of a hand-writt…
AmoabaKelvin Oct 15, 2026
e2fa611
feat(native-chat): chat scratch folders expire after 30 days unused (…
brennanb2025 Oct 15, 2026
d1bb7fe
[CI] Reduce repeated test imports and fixture overhead (#28627)
nwparker Oct 15, 2026
ab8d33b
[CI] Reuse automation publication test imports (#28910)
nwparker Oct 15, 2026
64c6306
Fix WSL upload readiness fixture transport (#28911)
nwparker Oct 15, 2026
eeb4311
test: narrow editor model lifetime fixture (#28916)
nwparker Oct 15, 2026
8df0f67
ci: skip redundant PR platform warmers (#28917)
nwparker Oct 15, 2026
d3fc802
test: isolate inactive browser pane leaves (#28918)
nwparker Oct 15, 2026
7cf0980
fix(mobile): group by Project with the desktop sidebar's own code (#2…
Jinwoo-H Oct 15, 2026
8148480
Drop a stored terminal row the tab bar already shows when loading the…
Jinwoo-H Oct 15, 2026
1bdbc23
refactor(runtime): check session graphs and tab lifecycle (#27694)
nwparker Oct 15, 2026
f5c5064
refactor(runtime): check terminal creation and splitting (#27708)
nwparker Oct 15, 2026
74ad230
test: remove duplicate execution and reduce fixture startup (#28926)
nwparker Oct 15, 2026
1c31c5b
test: overlap independent real pty idle checks (#28932)
nwparker Oct 15, 2026
79589c0
feat(layout): publish each pane's live terminal title on the layout s…
Jinwoo-H Oct 15, 2026
6837a4c
fix(ssh): a relay-era desktop can join the server another desktop on …
OrcaWin Oct 15, 2026
ee5efad
refactor(runtime): check terminal input and mail delivery (#27746)
nwparker Oct 15, 2026
d371e2d
ci: reduce runner occupancy in release and contract jobs (#28930)
nwparker Oct 15, 2026
767f0dd
ci: skip packaging for verified unit harnesses (#28934)
nwparker Oct 15, 2026
69042fe
test: reduce coordinator mail polling overhead (#28945)
nwparker Oct 15, 2026
6448b2f
refactor(runtime): check workspace startup on original prototypes (#2…
nwparker Oct 15, 2026
3bfb114
Native chat: one current-work projection for every host reader, death…
brennanb2025 Oct 15, 2026
bcaed52
ci: contain persistent transforms and trim model overhead (#28948)
nwparker Oct 15, 2026
1578939
refactor(tabs): create split tabs in the same update as their split (…
Jinwoo-H Oct 15, 2026
446cedc
fix(notifications): hidden workspaces stop notifying unless you opt i…
Jinwoo-H Oct 15, 2026
d717798
refactor(runtime): check terminal stop and workspace admission (#27782)
nwparker Oct 15, 2026
1d60a21
test: consolidate automations page suites (#28953)
nwparker Oct 15, 2026
f5d5c5c
test: share setup across related leaf suites (#28956)
nwparker Oct 15, 2026
9623805
test: restore terminal stop routing coverage (#28971)
nwparker Oct 15, 2026
41b6f68
refactor: check PTY inventory and lifecycle dispatch (#27825)
nwparker Oct 15, 2026
c464348
fix(layout): keep a tab in the group its tab-bar entry names when loa…
Jinwoo-H Oct 15, 2026
117d362
test: defer runtime setup for skipped CLI probes (#28976)
nwparker Oct 15, 2026
13a1e9b
test: consolidate structured session close suites (#28970)
nwparker Oct 15, 2026
209ef94
refactor: check terminal queries and preserve early view operations (…
nwparker Oct 15, 2026
8cfa1bb
test: consolidate contract suites and trim duplicate cases (#28988)
nwparker Oct 15, 2026
21ba1c3
fix(skills): force git messages to English so skill updates work in t…
Jinwoo-H Oct 15, 2026
0ec009a
refactor(runtime): check workspace host, file and persistence boundar…
nwparker Oct 15, 2026
05c9c3b
Drop the pre-tab-bar session format; orphan recovery writes tab-bar e…
Jinwoo-H Oct 15, 2026
acd415a
test: consolidate orchestration mailbox suites (#29002)
nwparker Oct 15, 2026
d0c8bee
refactor(runtime): check session host queries and terminal focus (#28…
nwparker Oct 15, 2026
10c2650
Check mobile session projection and lifecycle types (#28368)
nwparker Oct 15, 2026
e0c6ae4
test: guard remote input model from default RPC manifest (#29012)
nwparker Oct 15, 2026
2c468f9
Stop Jira list loops after saved-filter load failures (#29011)
nwparker Oct 15, 2026
c3b9212
Check mobile session close ownership types (#28369)
nwparker Oct 15, 2026
cbc357f
fix(browser): agent typing into a cross-site frame no longer borrows …
nwparker Oct 15, 2026
89d0ed1
Update release channel and chat input translations (#29027)
AmethystLiang Oct 15, 2026
8d09041
refactor(agent-launch): launching into a paired-server workspace stop…
Jinwoo-H Oct 15, 2026
d771cf3
fix(browser): end downloads that are waiting for a manual resume Orca…
brennanb2025 Oct 15, 2026
215bdbd
fix(browser): settle client-hosted download toasts after their page c…
brennanb2025 Oct 15, 2026
9ebdc68
Check agent execution namespace types (#28370)
nwparker Oct 15, 2026
d9de1fa
Native chat: desktop and mobile read the host's working answer; plain…
brennanb2025 Oct 15, 2026
f6d5086
feat(persistence): one-time profile backup before startup rewrites sa…
Jinwoo-H Oct 15, 2026
cf0aea3
ci: reuse bundled Node for selection evidence (#29017)
nwparker Oct 15, 2026
41a78bb
test(layout): list the window-parity differences that are not bugs se…
Jinwoo-H Oct 15, 2026
2590886
Bump Electron to 43.7.8 to fix find-in-page looping (#28909)
AmethystLiang Oct 15, 2026
5931104
Check orchestration terminal authority types (#28371)
nwparker Oct 15, 2026
cc690cf
feat(jira): add bounded site-specific favourite filter catalogue (#29…
nwparker Oct 15, 2026
62c6e99
fix(native-chat): Use short effort label in the model pill (#29029)
AmethystLiang Oct 15, 2026
2885bc3
refactor(ssh): keep SSH terminal bindings on disconnect, reconnect an…
Jinwoo-H Oct 15, 2026
08257b9
test: avoid unused imports while preserving export contracts
nwparker Oct 15, 2026
78bb358
fix(linux): run each terminal in its own systemd scope so one out-of-…
Jinwoo-H Oct 15, 2026
caa4155
Check terminal pane recovery types (#28372)
nwparker Oct 15, 2026
e5bdc23
fix(native-chat): recognize missing history before chat creation (#28…
brennanb2025 Oct 15, 2026
8e35055
Increase chat transcript bottom padding so reply controls clear the c…
AmethystLiang Oct 15, 2026
635d385
fix(agent.launch): avoid blank shells when launching new workspaces (…
brennanb2025 Oct 15, 2026
44735c6
Check automation and persisted terminal surface types (#28373)
nwparker Oct 15, 2026
efd7e50
fix(ssh): start a managed server that stopped, on every connect path …
OrcaWin Oct 15, 2026
ef563bc
fix(ssh): stop stale saved state from blocking an SSH host's move to …
OrcaWin Oct 15, 2026
7b96a10
Unify lineage child indentation across worktree card styles (#29044)
AmethystLiang Oct 15, 2026
e9199bd
feat(jira): use favourite filters within their source site (#29037)
nwparker Oct 15, 2026
6ade7a5
Check terminal orphan adoption types (#28374)
nwparker Oct 15, 2026
a7edea4
Detect stalled terminal daemon I/O and offer restart review (#29087)
nwparker Oct 15, 2026
36b2ed4
Check mobile session membership and publication types (#28375)
nwparker Oct 15, 2026
4782db1
refactor(sidebar): one shared Workspace options filter and sort evalu…
Jinwoo-H Oct 15, 2026
1e2c0a7
test: allow Windows large recovery fixture to finish before cleanup (…
nwparker Oct 15, 2026
9943b57
perf: load structured agent adapters when the host starts (#29086)
nwparker Oct 15, 2026
bd17973
test(tabs): pin three refactor behaviours (#29118)
Jinwoo-H Oct 15, 2026
a89b105
refactor(sidebar): the Workspace options menu renders from one shared…
Jinwoo-H Oct 15, 2026
45862c2
Fix terminal daemon restart leaving macOS service registered (#29130)
nwparker Oct 15, 2026
cdf4b38
Check Linear command construction types (#28376)
nwparker Oct 15, 2026
f3551db
fix(mobile): show skill commands you ran and draw warnings, errors an…
AmoabaKelvin Oct 15, 2026
1a19671
test: remove low-value coverage and shorten expensive fixtures (#29135)
nwparker Oct 15, 2026
67fe1e1
Check runtime construction and remaining service owners (#28377)
nwparker Oct 15, 2026
da8de74
feat(mobile): the phone filters and sorts with the desktop's shared W…
Jinwoo-H Oct 15, 2026
deeadb1
ci: avoid mobile runs for desktop test-only changes (#29138)
nwparker Oct 15, 2026
0235673
ci: finish successful aggregate checks without a runner queue (#29136)
nwparker Oct 15, 2026
a3373af
ci: skip unused platform runs and reduce runtime test setup (#29144)
nwparker Oct 15, 2026
bd62269
ci: reuse pinned fast typecheck for Windows installer tests (#29149)
nwparker Oct 15, 2026
e8c7b32
fix(native-chat): focus the composer after a keyboard switch between …
AmoabaKelvin Oct 15, 2026
7a47f46
ci: trim redundant tests and consolidate suite startup (#29156)
nwparker Oct 15, 2026
507d0a9
fix(mobile): show answered approvals and questions as receipts, and a…
AmoabaKelvin Oct 15, 2026
02b4ea2
fix(native-chat): show and focus the field in pi text dialogs (#28895)
AmoabaKelvin Oct 15, 2026
fca6a94
ci: reduce fixture startup and shutdown waits (#29163)
nwparker Oct 15, 2026
f4abedd
ci: skip unneeded native builds for proven test-only changes (#29169)
nwparker Oct 15, 2026
55687fb
test(ci): remove repeated fixtures and deadline waits (#29174)
nwparker Oct 15, 2026
0d4eb24
Recover failed-job log retrieval onto main (#29180)
AmethystLiang Oct 15, 2026
0c7efcb
Derive skill discovery folders and home env overrides from the agent …
Jinwoo-H Oct 15, 2026
ebef2ea
fix(skills): share again under an existing skill bundle name as a new…
Jinwoo-H Oct 15, 2026
027ac77
test(ci): reuse costly fixtures and quiet passing logs (#29189)
nwparker Oct 15, 2026
fd21909
Install shared skills for 20 more agents and read every agent home in…
Jinwoo-H Oct 15, 2026
13b79a2
refactor(layout): build today's store slices from layout frames (iner…
Jinwoo-H Oct 15, 2026
bf71d64
[CI] Group skill update checks by operating system (#29021)
nwparker Oct 15, 2026
2c100ef
test(ci): reuse setup across PTY connection suites (#29193)
nwparker Oct 15, 2026
b1db103
fix(mobile): phones on a host with no window list each terminal once …
Jinwoo-H Oct 15, 2026
06ead8d
Add the dark layout.apply channel and route pane splits through main …
Jinwoo-H Oct 15, 2026
7965ccb
fix(web): persist Jira saved and status filters on the paired host (#…
Jinwoo-H Oct 15, 2026
3a3889c
feat(native-chat): show Claude's /goal in the goal banner (#28923)
brennanb2025 Oct 15, 2026
2744bc7
fix(jira): show linked workspaces in Has Workspace by matching the Ji…
Jinwoo-H Oct 15, 2026
11352d4
fix(mobile): open the OTA workspace page on iOS 18 (#29197)
Jinwoo-H Oct 15, 2026
9e04ecb
fix(omp): start OMP on cmd.exe when setup runs first (#29176)
brennanb2025 Oct 15, 2026
6fcd521
Session History: the scanner reports its progress to windows (no visi…
brennanb2025 Oct 15, 2026
4fdccda
fix(native-chat): keep Claude skills tagged as skills after the agent…
brennanb2025 Oct 15, 2026
7f492dc
fix(native-chat): resume large terminal conversations in a new native…
brennanb2025 Oct 15, 2026
36e36f2
[CI] Reuse web preload imports across local-field tests (#29202)
nwparker Oct 15, 2026
76735ed
feat(acp): chat agents can declare a managed runtime that a start run…
brennanb2025 Oct 15, 2026
88bd5db
fix(windows): copy a file to the clipboard without a visible PowerShe…
zanmlakar Oct 15, 2026
b97a1a6
fix(ssh): a paused move to the managed server says so; servers show t…
OrcaWin Oct 15, 2026
33759f9
fix(ssh): give each machine sharing one home its own managed server (…
OrcaWin Oct 15, 2026
36344bc
fix(remote-terminal): reattach a healthy remote pane promptly after a…
OrcaWin Oct 15, 2026
cc5cbc0
feat(layout): draw local and SSH layouts from main's layout stream be…
Jinwoo-H Oct 15, 2026
1b1d09c
Open a native chat copy in the CLI without waiting for History (#29126)
brennanb2025 Oct 15, 2026
5dcb77e
Merge remote-tracking branch 'upstream/main' into sync/upstream-1.4.214
frbarbre Oct 15, 2026
bc8cbeb
fix(fork): keep review-workspace setup and temporary-checkout filter …
frbarbre Oct 15, 2026
d37da1f
style(fork): format the fork card display options
frbarbre Oct 15, 2026
7abfabd
docs(fork): log the sync of upstream 1.4.214 (475 commits)
frbarbre Oct 15, 2026
24a98d7
fix(fork): pass Verify on upstream's new type and line-cap checks
frbarbre Oct 15, 2026
ae08df4
fix(fork): route review-workspace setup by the worktree's owner, not …
frbarbre Oct 15, 2026
c4f79b9
fix(fork): restore the localization key of the review-workspace Setup…
frbarbre Oct 15, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
The diff you're trying to view is too large. We only load the first 3000 changed files.
1 change: 1 addition & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,7 @@
# normalisation on a Windows checkout would rewrite the evidence the fixture exists to be.
/src/main/runtime/__fixtures__/*.txt -text
/src/main/daemon/__fixtures__/pty-transcripts/*.txt -text
/src/renderer/src/components/terminal-pane/terminal-link-transcripts/*.txt -text whitespace=cr-at-eol
# Generated runtime English subset: compared byte-for-byte by
# verify:localization-runtime-catalog, so a CRLF checkout would fail the gate.
/src/renderer/src/i18n/en-runtime-required.json linguist-generated=true text eol=lf
Expand Down
12 changes: 10 additions & 2 deletions .github/actions/prepare-native-runtime/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ runs:
env:
NATIVE_RUNTIME: ${{ inputs.native-runtime }}
NODE_VERSION: ${{ inputs.node-version }}
NATIVE_SOURCE_HASH: ${{ hashFiles('pnpm-lock.yaml', 'pnpm-workspace.yaml', '.npmrc', '.pnpmfile.cjs', '.github/actions/prepare-native-runtime/action.yml', 'config/scripts/ensure-native-runtime.mjs', 'config/scripts/rebuild-native-deps.mjs', 'config/scripts/node-pty-job-ownership.cjs', 'config/scripts/windows-pe-machine.cjs', 'config/scripts/windows-process-tree-gyp-rebuild.mjs', 'config/scripts/windows-process-tree-creation-time.cjs', 'config/scripts/install-electron-package-binary.mjs', 'config/scripts/electron-platform-path.mjs', 'config/scripts/zip-extractor-command.mjs', 'src/shared/zip-extractor-command.ts', 'config/scripts/shared-electron-dist-cache.mjs', 'config/scripts/space-sharing-copy.mjs', 'config/patches/node-pty@1.1.0.patch', 'config/patches/@vscode__windows-process-tree@0.8.0.patch', 'native/windows-registry/src/addon.cc', 'native/windows-registry/binding.gyp', 'native/windows-registry/package.json', 'native/windows-registry/index.js') }}
NATIVE_SOURCE_HASH: ${{ hashFiles('pnpm-lock.yaml', 'pnpm-workspace.yaml', '.npmrc', '.pnpmfile.cjs', '.github/actions/prepare-native-runtime/action.yml', 'config/scripts/ensure-native-runtime.mjs', 'config/scripts/initialize-windows-native-toolchain.mjs', 'config/scripts/capture-windows-native-environment.cmd', 'config/scripts/rebuild-native-deps.mjs', 'config/scripts/node-pty-job-ownership.cjs', 'config/scripts/windows-pe-machine.cjs', 'config/scripts/windows-process-tree-gyp-rebuild.mjs', 'config/scripts/windows-process-tree-creation-time.cjs', 'config/scripts/install-electron-package-binary.mjs', 'config/scripts/electron-platform-path.mjs', 'config/scripts/zip-extractor-command.mjs', 'src/shared/zip-extractor-command.ts', 'config/scripts/shared-electron-dist-cache.mjs', 'config/scripts/space-sharing-copy.mjs', 'config/patches/node-pty@1.1.0.patch', 'config/patches/@vscode__windows-process-tree@0.8.0.patch', 'native/windows-registry/src/addon.cc', 'native/windows-registry/binding.gyp', 'native/windows-registry/package.json', 'native/windows-registry/index.js', 'native/windows-security/src/addon.cc', 'native/windows-security/binding.gyp', 'native/windows-security/package.json', 'native/windows-security/index.js') }}
run: |
scope="${ImageOS:-$RUNNER_OS}"
if [ -r /etc/os-release ]; then
Expand All @@ -69,6 +69,7 @@ runs:
path<<ORCA_NATIVE_BUILD_DIRECTORIES
node_modules/.pnpm/node-pty@*/node_modules/node-pty/build
native/windows-registry/build
native/windows-security/build
node_modules/.pnpm/@vscode+windows-process-tre*/node_modules/@vscode/windows-process-tree/build
ORCA_NATIVE_BUILD_DIRECTORIES
ORCA_NATIVE_CACHE_PATHS
Expand All @@ -82,6 +83,7 @@ runs:
path: |
node_modules/.pnpm/node-pty@*/node_modules/node-pty/build
native/windows-registry/build
native/windows-security/build
node_modules/.pnpm/@vscode+windows-process-tre*/node_modules/@vscode/windows-process-tree/build
key: ${{ steps.native-cache-scope.outputs.key }}

Expand All @@ -93,6 +95,7 @@ runs:
path: |
node_modules/.pnpm/node-pty@*/node_modules/node-pty/build
native/windows-registry/build
native/windows-security/build
node_modules/.pnpm/@vscode+windows-process-tre*/node_modules/@vscode/windows-process-tree/build
key: ${{ steps.native-cache-scope.outputs.key }}

Expand All @@ -117,4 +120,9 @@ runs:
shell: bash
env:
NATIVE_RUNTIME: ${{ inputs.native-runtime }}
run: node config/scripts/ensure-native-runtime.mjs --runtime="$NATIVE_RUNTIME"
run: |
if [ "$RUNNER_OS" = Windows ] && [ "$NATIVE_RUNTIME" = node ]; then
node config/scripts/initialize-windows-native-toolchain.mjs
else
node config/scripts/ensure-native-runtime.mjs --runtime="$NATIVE_RUNTIME"
fi
4 changes: 2 additions & 2 deletions .github/actions/prepare-orcad-prebuilds/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -63,5 +63,5 @@ runs:
fi
pnpm build:orcad-prebuilds
fi
pnpm build:orcad-prebuilds --require-slots "$(node config/scripts/build-orcad-prebuilds.mjs --print-slot)"
pnpm build:orcad-prebuilds --smoke
node config/scripts/build-orcad-prebuilds.mjs --require-slots "$(node config/scripts/build-orcad-prebuilds.mjs --print-slot)"
node config/scripts/build-orcad-prebuilds.mjs --smoke
53 changes: 53 additions & 0 deletions .github/actions/prepare-wayland-clipboard/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
name: Prepare Wayland clipboard helper
description: Reuse the source-matched Ubuntu 20.04 helper, validating its architecture and glibc requirements every time.

inputs:
save-cache:
description: Publish a validated helper from the default branch.
default: 'false'

runs:
using: composite
steps:
- name: Resolve Wayland clipboard build identity
id: identity
shell: bash
run: |
node --input-type=module <<'NODE'
import { appendFileSync } from 'node:fs'
import { waylandClipboardFingerprint } from './config/scripts/build-wayland-clipboard.mjs'
const fingerprint = waylandClipboardFingerprint(process.cwd(), process.arch)
// Immutable invalid hits need a version bump here before publishing their repair.
appendFileSync(process.env.GITHUB_OUTPUT, `key=wayland-clipboard-v1-${process.arch}-${fingerprint}\n`)
NODE

- name: Restore Wayland clipboard helper
id: cache
uses: actions/cache/restore@v5
continue-on-error: true
with:
path: native/wayland-clipboard/.build
key: ${{ steps.identity.outputs.key }}

- name: Build or validate Wayland clipboard helper
shell: bash
env:
CACHE_HIT: ${{ steps.cache.outputs.cache-hit }}
run: |
if node config/scripts/build-wayland-clipboard.mjs; then
exit 0
fi
if [ "$CACHE_HIT" != true ]; then
exit 1
fi
echo 'Discarding an unusable Wayland clipboard cache and rebuilding from source.'
rm -rf -- native/wayland-clipboard/.build
node config/scripts/build-wayland-clipboard.mjs

- name: Save validated Wayland clipboard helper from main
if: inputs.save-cache == 'true' && steps.cache.outputs.cache-hit != 'true' && github.ref == 'refs/heads/main' && github.event_name != 'pull_request'
uses: actions/cache/save@v5
continue-on-error: true
with:
path: native/wayland-clipboard/.build
key: ${{ steps.identity.outputs.key }}
27 changes: 27 additions & 0 deletions .github/actions/prepare-windows-agent-hook/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
name: Prepare the Windows agent hook
description: Compiles native/windows-agent-hook into native/windows-agent-hook/.build/orca-agent-hook.exe, which electron-builder --win refuses to package without.

runs:
using: composite
steps:
- name: Cache the Windows agent hook build
if: runner.os == 'Windows'
uses: actions/cache@v5
with:
path: |
native/windows-agent-hook/.build
native/windows-agent-hook/target
~/.cargo/registry
key: windows-agent-hook-${{ runner.os }}-${{ runner.arch }}-${{ hashFiles('native/windows-agent-hook/**', 'config/scripts/build-windows-agent-hook.mjs', 'config/scripts/windows-rust-executable-build.mjs', 'resources/build/icon.ico', 'package.json') }}

# Why explicit: a runner image without cargo would otherwise fail inside electron-builder's verify.
- name: Build the Windows agent hook
if: runner.os == 'Windows'
shell: pwsh
run: |
if (-not (Get-Command cargo -ErrorAction SilentlyContinue)) {
rustup toolchain install stable --profile minimal
rustup default stable
}
node config/scripts/build-windows-agent-hook.mjs
if ($LASTEXITCODE -ne 0) { exit $LASTEXITCODE }
2 changes: 1 addition & 1 deletion .github/actions/prepare-windows-cli-launcher/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ runs:
.build/windows-cli-launcher
native/windows-cli-launcher/target
~/.cargo/registry
key: orcad-windows-cli-launcher-${{ runner.arch }}-${{ inputs.arches }}-${{ hashFiles('native/windows-cli-launcher/**', 'config/scripts/build-windows-cli-launcher.mjs', 'resources/build/icon.ico', 'package.json') }}
key: orcad-windows-cli-launcher-${{ runner.arch }}-${{ inputs.arches }}-${{ hashFiles('native/windows-cli-launcher/**', 'config/scripts/build-windows-cli-launcher.mjs', 'config/scripts/windows-rust-executable-build.mjs', 'resources/build/icon.ico', 'package.json') }}

# Why explicit: a runner image without cargo would otherwise fail inside the orcad build.
- name: Build the launcher for each architecture
Expand Down
27 changes: 27 additions & 0 deletions .github/scripts/check-required-pr-context.mjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
import { readdirSync, readFileSync } from 'node:fs'
import { join } from 'node:path'
import { pathToFileURL } from 'node:url'

export function verifyRequiredPrContext(parseYaml) {
const directory = '.github/workflows'
const providers = readdirSync(directory)
.filter((file) => /\.ya?ml$/.test(file))
.flatMap((file) => {
const workflow = parseYaml(readFileSync(join(directory, file), 'utf8'))
return Object.entries(workflow.jobs)
.filter(([id, job]) => (job.name ?? id) === 'PR checks passed')
.map(([id]) => `${file}:${id}`)
})
if (providers.length !== 1 || providers[0] !== 'pr.yml:verify') {
throw new Error(`Required PR context must belong only to pr.yml:verify; found ${providers}`)
}
}

if (process.argv[1] && import.meta.url === pathToFileURL(process.argv[1]).href) {
const yaml = globalThis.Bun?.YAML
if (!yaml) {
throw new Error('Run workflow context validation with the pinned Bun runtime.')
}
verifyRequiredPrContext(yaml.parse)
console.log('Required PR check context verified.')
}
112 changes: 112 additions & 0 deletions .github/workflows/ci-cache-warmup-platform-jobs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,112 @@
name: Warm shared CI platform cache jobs

on:
workflow_call:

permissions:
contents: read

jobs:
warm-linux-arm:
if: github.event_name != 'pull_request'
concurrency:
group: ci-cache-warmup-linux-arm-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: ${{ github.event_name != 'schedule' }}
runs-on: ubuntu-24.04-arm
timeout-minutes: 10
env:
ORCA_BACKGROUND_LAUNCH: '1'
steps:
- uses: actions/checkout@v6
with:
persist-credentials: false
- uses: ./.github/actions/install-node-dependencies
with:
native-runtime: node
node-version: '24'
cache-electron-package: 'true'
cache-pnpm-store-lookup-only: 'true'
- name: Populate shared Electron archive
run: node config/scripts/install-electron-package-binary.mjs
- name: Verify native cache is usable
run: node config/scripts/ensure-native-runtime.mjs --check-only

warm-windows:
concurrency:
group: ci-cache-warmup-windows-${{ matrix.os }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: ${{ github.event_name != 'schedule' }}
strategy:
fail-fast: false
matrix:
os: [windows-2022, windows-11-arm]
runs-on: ${{ matrix.os }}
timeout-minutes: 20
env:
ORCA_BACKGROUND_LAUNCH: '1'
steps:
- uses: actions/checkout@v6
with:
persist-credentials: false
- uses: ./.github/actions/install-node-dependencies
with:
native-runtime: node
cache-pnpm-store-lookup-only: 'true'
- name: Verify native cache is usable
run: node config/scripts/ensure-native-runtime.mjs --check-only

- name: Cache Windows CLI launcher
if: runner.arch == 'X64'
uses: actions/cache@v5
with:
path: |
native/windows-cli-launcher/.build
native/windows-cli-launcher/target
native/windows-agent-hook/.build
native/windows-agent-hook/target
~/.cargo/registry
key: windows-cli-launcher-${{ runner.os }}-${{ runner.arch }}-${{ hashFiles('native/windows-cli-launcher/**', 'native/windows-agent-hook/**', 'config/scripts/build-windows-cli-launcher.mjs', 'config/scripts/build-windows-agent-hook.mjs', 'config/scripts/windows-rust-executable-build.mjs', 'resources/build/icon.ico', 'package.json') }}

- name: Build the Windows native executables
if: runner.arch == 'X64'
shell: pwsh
run: |
if (-not (Get-Command cargo -ErrorAction SilentlyContinue)) {
rustup toolchain install stable --profile minimal
rustup default stable
}
node config/scripts/build-windows-agent-hook.mjs
if ($LASTEXITCODE -ne 0) { exit $LASTEXITCODE }
node config/scripts/build-windows-cli-launcher.mjs
if ($LASTEXITCODE -ne 0) { exit $LASTEXITCODE }

- name: Warm the Windows ARM server launcher
if: runner.arch == 'ARM64'
uses: ./.github/actions/prepare-windows-cli-launcher
with:
arches: arm64

warm-linux-package-fixtures:
if: github.event_name != 'pull_request'
concurrency:
group: ci-cache-warmup-linux-package-fixtures-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: ${{ github.event_name != 'schedule' }}
runs-on: ubuntu-latest
timeout-minutes: 10
env:
ORCA_BACKGROUND_LAUNCH: '1'
steps:
- uses: actions/checkout@v6
with:
persist-credentials: false
- uses: ./.github/actions/prepare-linux-package-fixture
with:
fixture: daemon-shutdown-descendants
save-cache: ${{ github.event_name != 'pull_request' }}
- uses: ./.github/actions/prepare-linux-package-fixture
with:
fixture: headless-serve-shutdown
save-cache: ${{ github.event_name != 'pull_request' }}
- uses: ./.github/actions/prepare-linux-package-fixture
with:
fixture: cli-launch-contract
save-cache: ${{ github.event_name != 'pull_request' }}
56 changes: 56 additions & 0 deletions .github/workflows/ci-cache-warmup-platforms.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
name: Warm shared CI platform caches

on:
push:
branches: [main]
paths:
- '.github/workflows/ci-cache-warmup.yml'
- '.github/workflows/ci-cache-warmup-platform-jobs.yml'
- '.github/workflows/ci-cache-warmup-platforms.yml'
- '.github/actions/install-node-dependencies/**'
- '.github/actions/restore-pnpm-verification/**'
- '.github/actions/prepare-native-runtime/**'
- '.github/actions/prepare-windows-cli-launcher/**'
- '.github/actions/prepare-git-compatibility/**'
- '.github/actions/prepare-linux-package-fixture/**'
- 'config/docker/headless-serve-shutdown/**'
- 'config/docker/cli-launch-contract/**'
- 'config/docker/daemon-shutdown-descendants/**'
- 'package.json'
- 'pnpm-lock.yaml'
- 'pnpm-workspace.yaml'
- '.npmrc'
- '.pnpmfile.cjs'
- 'config/scripts/ensure-native-runtime.mjs'
- 'config/scripts/initialize-windows-native-toolchain.mjs'
- 'config/scripts/capture-windows-native-environment.cmd'
- 'config/scripts/rebuild-native-deps.mjs'
- 'config/scripts/node-pty-job-ownership.cjs'
- 'config/scripts/windows-pe-machine.cjs'
- 'config/scripts/windows-process-tree-gyp-rebuild.mjs'
- 'config/scripts/windows-process-tree-creation-time.cjs'
- 'config/scripts/install-electron-package-binary.mjs'
- 'config/scripts/electron-platform-path.mjs'
- 'config/scripts/zip-extractor-command.mjs'
- 'src/shared/zip-extractor-command.ts'
- 'config/scripts/shared-electron-dist-cache.mjs'
- 'config/scripts/space-sharing-copy.mjs'
- 'config/patches/**'
- 'native/windows-registry/**'
- 'native/windows-cli-launcher/**'
- 'native/windows-agent-hook/**'
- 'config/scripts/build-windows-cli-launcher.mjs'
- 'config/scripts/build-windows-agent-hook.mjs'
- 'config/scripts/windows-rust-executable-build.mjs'
- 'resources/build/icon.ico'
pull_request:
paths:
- '.github/workflows/ci-cache-warmup-platforms.yml'
- '.github/workflows/ci-cache-warmup-platform-jobs.yml'

permissions:
contents: read

jobs:
warm-platforms:
uses: ./.github/workflows/ci-cache-warmup-platform-jobs.yml
Loading
Loading