Commit Graph
20637 Commits
Author SHA1 Message Date
Neil 53dced42c8 fix(cloud): MCP sync review — generic OAuth relay accepts only a loopback GET for its port (2-min TTL, never displaces a sign-in), first sync is an explicit consent before tokens leave this computer, no '.' on the image PATH 2026-11-09 15:09:45 -08:00
Neil 1c67472320 fix(cloud): MCP panel round 2 nits — copy for empty/unreachable/outdated, no double sync after a toggle 2026-11-09 09:02:16 -08:00
Neil d923622039 fix(cloud): MCP panel review round 1 — unreachable warning icon, sorted rows, global-toggle scope + resync, focus kept while syncing (aria-disabled), error stays with retry spinner, pluralized summaries, sr-only row state, glossary copy 2026-11-09 09:00:10 -08:00
Neil 30cbb773e4 fix(cloud): one retry action when the MCP sync error offers Sync again 2026-11-09 08:55:28 -08:00
Neil d6593b834f fix(cloud): MCP servers panel review fixes — shared InlineError and Skeleton, glossary copy (sandbox), egress note, per-server toggles in main, stale-reply guard; host merge hardening from round 1 2026-11-09 08:13:49 -08:00
Neil 9a61cb1fef feat(cloud): MCP sync opens the sandbox's egress for synced remote servers (GET+merge+PUT egress/hosts, ownership ledger); tests for egress merge, portability and the loopback relay 2026-11-09 08:09:34 -08:00
Neil 3c553acc77 feat(cloud): MCP servers panel on Orca Cloud workspaces; resolve stdio commands like agent launches; image puts node/npx on agents' PATH 2026-11-09 07:59:02 -08:00
Neil 382b54efce feat(cloud): sync desktop MCP servers into Orca Cloud VMs on connect; relay agent OAuth loopback callbacks to the host 2026-11-09 07:58:14 -08:00
Neil 52039adecc feat(cloud): host-side MCP config merge for agents (Claude ~/.claude.json, Codex config.toml) with ownership ledger 2026-11-09 07:56:55 -08:00
Neil e753298c72 fix(ui): scope aria-disabled button styling (pending keeps full colour); 24px statusAction hit area (W10) (#92)
* fix(ui): aria-disabled buttons look unavailable unless busy; statusAction hit area

* docs(ui): pending buttons need a spinner/label; pad statusAction hit area on all sides
2026-11-09 07:53:42 -08:00
Neil 79d8f62883 Merge pull request #89 from nwparker/cloud/accounts-ux-3
fix(team): W10 round 6 for billing/team/account
2026-11-09 07:49:01 -08:00
Neil 769b20039b Merge pull request #91 from nwparker/cloud/w4-multiplayer
fix(cloud): default workspace git author on older sandbox images
2026-11-09 07:48:53 -08:00
Neil 07f607d414 fix(cloud): default workspace git author on images older than the start-script default 2026-11-09 07:48:30 -08:00
Neil e06faf79aa chore(i18n): sync after rebase 2026-11-09 07:48:26 -08:00
Neil c252c0fa72 fix(team): aria-disabled buttons look disabled; guarded plan handlers; Send/Create disabled when empty; Leave back in the SSO card with a divider; warning tone on the blocking bar; cap hint under the row; switcher icons 2026-11-09 07:46:59 -08:00
Neil 17ef4821da fix(team): align Create a team with switcher labels 2026-11-09 07:46:50 -08:00
Neil 41203ef471 fix(team): W10 round 6: glossary strings, i18next plurals, per-role sentences, overage rollback + in-place Saving, Progress warning tone, aria-disabled submits, InlineError for plan errors, Leave on its own row, switcher always present, short-window plans 2026-11-09 07:46:50 -08:00
Neil 5c53102202 Merge pull request #90 from nwparker/cloud/w6-mcp-egress
W6: per-workspace egress hosts for synced remote MCP servers
2026-11-09 07:46:17 -08:00
Neil 6c2a37c83b feat(sandbox-control): per-workspace tool egress hosts for synced remote MCP servers (PUT/GET /v1/sandboxes/:id/egress/hosts, migration 0032) 2026-11-09 07:46:04 -08:00
Neil 0bf3dcb720 Merge pull request #85 from nwparker/cloud/w4-multiplayer
feat(cloud): W4 follow-up — attested git-as-sender (default on), terminal sender envelope, follow + chat links, fixtures
2026-11-09 07:45:35 -08:00
Neil 8d07fd6b09 fix(cloud): W10 round 6 — shared CloudStateDot, 'Go to {name}'s chat', confirms for make private / reassign owner, grammar-aware 'you', sign-in action, presence legibility, link highlight, archived dimming 2026-11-09 07:44:08 -08:00
Neil 2fd06245e7 fix(run-on): drop 'Your files are safe.' from create-time out-of-hours hints (no workspace exists yet) (#88) 2026-11-09 07:39:57 -08:00
Neil 84a6c33912 Merge pull request #82 from nwparker/cloud/accounts-ux-2
feat(team): team switcher, Enterprise SSO row, W10 round-5 + glossary fixes
2026-11-09 07:36:20 -08:00
Neil 2790cacf00 Run-on picker: W10 round 3 fixes (a11y ids, shared billing prefetch, actionable hint, copy) (#72)
* fix(run-on): W10 round 3 — stable option ids, shared billing prefetch, actionable hint, a11y and copy polish

* fix(run-on): keyed billing cache with superseding reads, cancellable held picks, member rows say who can fix

* fix(run-on): held picks wait on the current billing read; no hover jump on unready hosts

* fix(run-on): glossary copy (sandbox hours, Team plan, spend cap, payment method), InlineError for blocks, rebase conflict cleanup

* fix(run-on): idle-sleep copy from the shared constant; specs yield to sandbox hours in narrow menus

* fix(run-on): two-line reserved hint (no reflow), live region always mounted, W10 round 6 P2s

* fix(run-on): blocked hint puts the fix on line 1 so nothing truncates; specs drop whole; hours outside the live region
2026-11-09 07:36:17 -08:00
Neil de0cea7ec5 Merge pull request #84 from nwparker/cloud/core-ui-session-2
fix(orca-cloud): W10 P2 follow-ups for session toasts and cloud state labels
2026-11-09 07:36:13 -08:00
Neil 68efe37330 fix(orca-cloud): cleanup check covers records written after the cancel and sandboxes still up after Try again 2026-11-09 07:36:04 -08:00
Neil 80cc6f76d1 chore(i18n): sync billing/team/menu catalog after rebase 2026-11-09 07:35:45 -08:00
Neil 7f85706ce5 fix(orca-cloud): Try again deletes only this create's failed sandbox; guard double retry; unreadable records count as failed 2026-11-09 07:34:44 -08:00
Neil 165d21f764 Merge pull request #86 from nwparker/cloud/w5-ui
feat(cloud): desktop Orca API keys, connected apps and routines settings
2026-11-09 07:33:33 -08:00
Neil f593b16f42 fix(team): re-inviting during the Undo window restores without an API call and dismisses the toast 2026-11-09 07:33:29 -08:00
Neil 16ffbaaf37 fix(team): revoke Undo after send re-invites, re-invite cancels a pending revoke; design P1/P2 polish 2026-11-09 07:33:29 -08:00
Neil 4e94e36ef0 fix(billing): sandbox-hours wording, merged reset/renew line, empty send label 2026-11-09 07:33:24 -08:00
Neil f3c04ed042 fix(team): W10 round 5 + glossary: focus hand-offs, aria-disabled controls, plurals, payment-failed naming, sandbox hours, overage controls, revoke undo, switcher radios, SSO in the Enterprise card 2026-11-09 07:33:19 -08:00
Neil f3201c5a9c feat(team): account-menu team switcher, create-team from the menu, Enterprise SSO row, SettingsGroupHeader 2026-11-09 07:33:07 -08:00
Neil cff627fe6a style(cloud): oxfmt W4 files 2026-11-09 07:32:27 -08:00
Neil 4c6f8b4833 fix(orca-cloud): W10 P2s (canceled, delete-sandbox copy + Try again, plural restart minutes, persistent restart toast with real Open action, Asleep/Waking labels) 2026-11-09 07:31:59 -08:00
Neil 1ba34366c9 chore(cloud): regenerate VM scripts
# Conflicts:
#	cloud/apps/sandbox-control/image/vm-scripts.generated.ts
2026-11-09 07:30:56 -08:00
Neil e39df1502d test(cloud): component fixtures for cloud workspaces (dark/light); type-scale tokens 2026-11-09 07:30:50 -08:00
Neil 6afde0d63d fix(cloud): attest plain terminals by handle+pane (agent terminals still prove their launch token); default workspace git author 2026-11-09 07:30:50 -08:00
Neil fca6f844f8 fix(cloud): glossary copy pass on cloud workspaces (states, sandbox hours, team, plurals, error tone)
# Conflicts:
#	src/renderer/src/components/cloud-workspaces/open-cloud-workspace.ts
2026-11-09 07:30:50 -08:00
Neil baef8f91e0 feat(cloud): member git identity only within a window after the member's own client reports a send (0031); entry points kept current per boot
# Conflicts:
#	cloud/apps/sandbox-control/image/vm-scripts.generated.ts
2026-11-09 07:30:39 -08:00
Neil a3c5f1ed50 fix(cloud): owner device joins the VM member map as soon as it is recorded 2026-11-09 07:30:27 -08:00
Neil fc50ad9466 feat(cloud): per-device sender attestation (orcad orchestration.turnSender, orca sender), root-only member identities + sudo helper, sender-aware git in VMs (default on); terminal-agent sender envelope; follow teammates into chats and chat links; name claim
# Conflicts:
#	cloud/apps/sandbox-control/image/vm-scripts.generated.ts
#	src/renderer/src/components/cloud-workspaces/CloudMemberAvatars.tsx
2026-11-09 07:30:27 -08:00
Neil e5e48898f1 Merge remote-tracking branch 'private/cloud/integration' into w5-ui-merge
# Conflicts:
#	src/main/startup/main-window-core-services.ts
#	src/preload/api-types.ts
#	src/preload/index.ts
2026-11-09 07:30:10 -08:00
Neil 2d01a3d1b2 feat(w3): remote desktop polish — glossary copy, InlineError toasts with one next action, fixtures (#83) 2026-11-09 07:27:19 -08:00
Neil 051a27431e fix(ui): InlineError wraps its action under the text in narrow boxes (#81) 2026-11-09 07:26:22 -08:00
Neil f0015e2839 Merge pull request #64 from nwparker/cloud/w6-ui
W6: Cloud secrets settings (Personal/Shared/Repo/Effective) + "Add an agent" step before the first Orca Cloud workspace
2026-11-09 07:25:05 -08:00
Neil 49007860aa chore(cloud-secrets): resync en.json after rebase; build-sheet fixture passes the new clock 2026-11-09 07:23:39 -08:00
Neil 999978df5c fix(cloud-secrets): Add an agent when Orca Cloud is picked, glossary copy, i18n plurals
The composer offers Add an agent the moment Orca Cloud is chosen for the first time, so a warm
sandbox that starts in seconds cannot outrun the build-sheet step. Copy follows the Orca Cloud
glossary (sandbox, agent sign-ins, Repository, Ask an owner or admin, nothing-lost errors).
Counts use i18next plural forms.
2026-11-09 07:21:06 -08:00
Neil 94b918ff90 fix(cloud-secrets): W10 round-4 fixes and packaged-build control-plane URL
Secrets IPC reads the baked-in control-plane URL like the sandbox client (packaged integration
builds have no shell env). Effective view gives the value hint its own column. The build step keeps
a row for every outcome (saved, signing in, skipped), moves focus to it and announces it; a
multi-line paste keeps focus; failed deletes keep focus; Settings' Subscription tab ends in Got it.
2026-11-09 07:21:05 -08:00