mirror of
https://github.com/NeuralNomadsAI/CodeNomad.git
synced 2026-08-25 08:12:05 +00:00
feat(v2): unify global service and desktop windows
Use the official host and WSL OpenCode service lifecycle instead of private daemon ownership. Workspace deletion now evicts only the selected location while shared sessions, agents, messages, and executions remain available to other windows. Add profile-scoped singleton multi-window support for Electron and Tauri, isolate local window UI state in a durable partition graph, and preserve migration, fencing, bounded persistence, and cross-host ownership semantics. New Window and New Instance are exposed together in the native Window menu. Harden renderer authority, remote profiles, SSE identity, idle attention, git-status concurrency, SideCar sandboxing, shutdown, generated Tauri ACLs, documentation, and CI coverage. Validated with server, UI, Electron, and Tauri test matrices; TypeScript checks; cargo fmt; production Electron/server/Tauri builds; diff checks; and a packaged Windows smoke covering singleton focus, --new-window, one shared backend, menu placement, and slot hash verification.
This commit is contained in:
parent
5484f9c990
commit
b5f3fc6e82
155 changed files with 10981 additions and 4867 deletions
7
.github/workflows/pr-build.yml
vendored
7
.github/workflows/pr-build.yml
vendored
|
|
@ -104,16 +104,20 @@ jobs:
|
|||
- name: Test changed runnable UI behavior
|
||||
run: >-
|
||||
node --import tsx --test
|
||||
packages/ui/src/components/browser-frame-security.test.ts
|
||||
packages/ui/src/components/message-timeline-v2.test.ts
|
||||
packages/ui/src/components/provider-auth/provider-options.test.ts
|
||||
packages/ui/src/components/session/session-bottom-pin-intent.test.ts
|
||||
packages/ui/src/components/session/session-idle-attention.test.ts
|
||||
packages/ui/src/components/session-list-visibility.test.ts
|
||||
packages/ui/src/components/unified-picker-path.test.ts
|
||||
packages/ui/src/components/virtual-follow-behavior.test.ts
|
||||
packages/ui/src/lib/client-identity.test.ts
|
||||
packages/ui/src/lib/filesystem-events.test.ts
|
||||
packages/ui/src/lib/hooks/use-app-session-capture.test.ts
|
||||
packages/ui/src/lib/hooks/use-instance-metadata.test.ts
|
||||
packages/ui/src/lib/hooks/use-foreground-refresh.test.ts
|
||||
packages/ui/src/lib/hooks/use-electron-folder-launch.test.ts
|
||||
packages/ui/src/lib/launch-errors.test.ts
|
||||
packages/ui/src/lib/message-selection-position.test.ts
|
||||
packages/ui/src/lib/model-visibility.test.ts
|
||||
|
|
@ -126,7 +130,9 @@ jobs:
|
|||
packages/ui/src/stores/app-session-snapshot-merge.test.ts
|
||||
packages/ui/src/stores/restore-workspace-commit-gates.test.ts
|
||||
packages/ui/src/stores/client-state-codec.test.ts
|
||||
packages/ui/src/stores/client-state-partitions.test.ts
|
||||
packages/ui/src/stores/client-state.test.ts
|
||||
packages/ui/src/stores/message-prompt-display.test.ts
|
||||
packages/ui/src/stores/message-v2/instance-store.test.ts
|
||||
packages/ui/src/stores/message-v2/message-hydration-authority.test.ts
|
||||
packages/ui/src/stores/message-v2/message-status.test.ts
|
||||
|
|
@ -145,6 +151,7 @@ jobs:
|
|||
packages/ui/src/components/form-request-tool-target.test.ts
|
||||
packages/ui/src/components/form-request.test.ts
|
||||
packages/ui/src/lib/hooks/use-active-session-message-load.test.ts
|
||||
packages/ui/src/stores/app-tabs.test.ts
|
||||
packages/ui/src/stores/forms.test.ts
|
||||
packages/ui/src/stores/instances-restore-ownership.test.ts
|
||||
packages/ui/src/stores/opencode-data.test.ts
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue