From a1d68d33e56a3f8ead3f4c13644de0e97c9a9d7f Mon Sep 17 00:00:00 2001 From: sechmachine <97589681+sechmachine727@users.noreply.github.com> Date: Tue, 11 Aug 2026 12:57:01 +0700 Subject: [PATCH] docs(openspec): reconcile workspace command surfaces --- openspec/changes/phase-3d-macos-native-mvp/design.md | 3 +++ openspec/changes/phase-3d-macos-native-mvp/proposal.md | 10 ++++++---- .../specs/macos-workspace/spec.md | 6 +++++- openspec/changes/phase-3d-macos-native-mvp/tasks.md | 2 +- 4 files changed, 15 insertions(+), 6 deletions(-) diff --git a/openspec/changes/phase-3d-macos-native-mvp/design.md b/openspec/changes/phase-3d-macos-native-mvp/design.md index e11901b..695c170 100644 --- a/openspec/changes/phase-3d-macos-native-mvp/design.md +++ b/openspec/changes/phase-3d-macos-native-mvp/design.md @@ -89,6 +89,9 @@ review evidence only. - The client uses `NavigationSplitView`, native controls/materials, and standard macOS 26 Liquid Glass APIs conditionally. macOS 15/14 retain identical hierarchy with native materials; no custom glass framework is introduced. +- The main split workspace exposes All, Favorites, Desktops, and Pools. Settings opens from + the app menu in a separate regular window, and a Connections menu owns resource commands; + neither surface adds Apps, Add PC, manual endpoint, or direct-provider entry. - Desktop cards use a bounded adaptive `300...360 pt` width, `16:10` aspect ratio, and `16 pt` spacing. Cards grow continuously within natural column bands, including three columns; a new column appears only when every card can remain at least `300 pt` wide; diff --git a/openspec/changes/phase-3d-macos-native-mvp/proposal.md b/openspec/changes/phase-3d-macos-native-mvp/proposal.md index 971a84c..0564bf4 100644 --- a/openspec/changes/phase-3d-macos-native-mvp/proposal.md +++ b/openspec/changes/phase-3d-macos-native-mvp/proposal.md @@ -10,8 +10,9 @@ control and transport boundaries. - Build the Apple-Silicon SwiftUI/AppKit client and platform-neutral Rust Streaming Core behind one sized/versioned C ABI (`P3D-001`–`P3D-031`). -- Implement the reviewed native workspace, bounded adaptive `300...360 pt` `16:10` preview - cards with `16 pt` spacing and natural columns, Favorites, search/sort, settings, +- Implement the reviewed native All/Favorites/Desktops/Pools workspace, bounded adaptive + `300...360 pt` `16:10` preview cards with `16 pt` spacing and natural columns, search/sort, + a Connections menu, Settings through the app menu in a separate regular window, accessibility, and privacy-bounded desktop previews (`P3D-032`, `P3D-037`). Screenshot pixels are behavioral evidence, not authoritative geometry constants. - Add feature-gated requested/effective display modes, Server-owned policy clamping, @@ -39,8 +40,9 @@ control and transport boundaries. clipboard, mappings, reserved local chords, and release-all behavior. - `macos-lifecycle-quality`: Interruption, reconnect, accessibility, privacy, diagnostics, packaging, rollback, uninstall, and candidate qualification behavior. -- `macos-workspace`: Screenshot-backed workspace/card/settings interactions, Favorites, - search/sort, and privacy-bounded previews. +- `macos-workspace`: Screenshot-backed workspace/card interactions, All/Favorites/Desktops/ + Pools navigation, separate Settings and Connections command surfaces, search/sort, and + privacy-bounded previews. - `session-display-mode`: Feature-gated requested/effective display mode, Server policy clamping, client detection/disclosure, and owner Apollo IDD acceptance. diff --git a/openspec/changes/phase-3d-macos-native-mvp/specs/macos-workspace/spec.md b/openspec/changes/phase-3d-macos-native-mvp/specs/macos-workspace/spec.md index 2de0201..ebfa2d8 100644 --- a/openspec/changes/phase-3d-macos-native-mvp/specs/macos-workspace/spec.md +++ b/openspec/changes/phase-3d-macos-native-mvp/specs/macos-workspace/spec.md @@ -1,7 +1,7 @@ ## ADDED Requirements ### Requirement: P3D-032 native desktop workspace -The app SHALL expose Favorites, Desktops, Pools, and Settings in a native split workspace without Apps, Add PC, manual endpoint, or direct-provider surfaces. Desktop cards SHALL use a bounded adaptive `300...360 pt` width, `16:10` aspect ratio, and `16 pt` spacing; grow continuously within natural column bands including three columns; add a column only when every card remains at least the minimum; clamp at the maximum with residual row width; and use full-bleed previews with subtle readable metadata treatment. Screenshot pixels SHALL be non-authoritative. +The app SHALL expose All, Favorites, Desktops, and Pools in a native split workspace without Apps, Add PC, manual endpoint, or direct-provider surfaces. Settings SHALL open from the app menu in a separate regular window, and a Connections menu SHALL expose applicable resource commands. Desktop cards SHALL use a bounded adaptive `300...360 pt` width, `16:10` aspect ratio, and `16 pt` spacing; grow continuously within natural column bands including three columns; add a column only when every card remains at least the minimum; clamp at the maximum with residual row width; and use full-bleed previews with subtle readable metadata treatment. Screenshot pixels SHALL be non-authoritative. #### Scenario: Narrow and wide resize - **WHEN** the workspace moves between narrow, medium, and wide widths @@ -11,6 +11,10 @@ The app SHALL expose Favorites, Desktops, Pools, and Settings in a native split - **WHEN** a card receives hover or keyboard focus - **THEN** Favorite and settings controls become available without adding a connect button; double-click or Return connects +#### Scenario: Settings and Connections surfaces +- **WHEN** the user invokes Settings or a Connections command +- **THEN** Settings opens in its separate regular window and a resource command acts only on the currently visible selection; Return connects only a focused card + ### Requirement: P3D-037 private favorites and previews Favorites, search, sort, filters, diagnostics, and previews SHALL reveal only current authorized resources. A stable desktop MAY retain one `656 x 410` mode-`0600` preview only after an active session ends cleanly; pool art is generic and preview bytes are excluded from backup/telemetry/log/crash/support data. diff --git a/openspec/changes/phase-3d-macos-native-mvp/tasks.md b/openspec/changes/phase-3d-macos-native-mvp/tasks.md index fafae61..d8e7596 100644 --- a/openspec/changes/phase-3d-macos-native-mvp/tasks.md +++ b/openspec/changes/phase-3d-macos-native-mvp/tasks.md @@ -35,7 +35,7 @@ ## 6. Workspace and Display UX -- [ ] 6.1 Build the screenshot-backed Favorites/Desktops/Pools/Settings shell with bounded adaptive `300...360 pt` `16:10` cards, `16 pt` spacing, continuous within-band growth, natural minimum-triggered columns including three, maximum clamp/residual width, safe truncation, native focus/VoiceOver, and no Apps/Add-PC/direct endpoint surfaces; treat screenshot pixels as non-authoritative +- [ ] 6.1 Build the screenshot-backed All/Favorites/Desktops/Pools workspace with bounded adaptive `300...360 pt` `16:10` cards, `16 pt` spacing, continuous within-band growth, natural minimum-triggered columns including three, maximum clamp/residual width, safe truncation, native focus/VoiceOver, Settings through the app menu in a separate regular window, a Connections menu, and no Apps/Add-PC/manual/direct endpoint surfaces; treat screenshot pixels as non-authoritative - [ ] 6.2 Add global and resource Automatic/preset/Custom/Full Native settings, physical-pixel/FPS detection, notch-safe disclosure, and requested/accepted projections with deterministic display fakes - [ ] 6.3 Add aspect-fit viewport math, letterbox pointer exclusion, display-move reconnect offer, and new-session/idempotency behavior tests - [ ] 6.4 Pass geometry/hierarchy/visibility/responsive/accessibility automation and bounded macOS 26/15/14 native-material review