Skip to content

feat: unified workspace adaptive card form#8

Merged
tonythethompson merged 4 commits into
masterfrom
pr/unified-workspace-form
Jul 3, 2026
Merged

feat: unified workspace adaptive card form#8
tonythethompson merged 4 commits into
masterfrom
pr/unified-workspace-form

Conversation

@tonythethompson

Copy link
Copy Markdown
Owner

Summary

  • Replace ShortcutEditorPage + ShortcutLaunchFormPage with unified ShortcutFormPage.
  • Shared template JSON + cache; browse folder/custom companion app actions.
  • Consolidated draft save logic and import/export tests.

Test plan

  • dotnet test (136 tests on stacked branch)
  • Manual: create/edit workspace, multi-launch commands, custom companion browse

Copilot AI review requested due to automatic review settings July 2, 2026 17:54

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR refactors the workspace editor into a unified Adaptive Card form (ShortcutFormPage), centralizing template/data JSON generation and adding caching to reduce repeated template construction. It also updates related draft persistence behavior and expands import/export and template coverage with new tests.

Changes:

  • Consolidates workspace create/edit UI into a single form page and removes the legacy editor/navigation/launch-form pages and commands.
  • Introduces shared template/data JSON builders plus a template cache, and updates form flows for folder browsing + companion app selection.
  • Improves draft-store lifecycle (clear events + stale-write prevention) and adds/updates unit tests for template and import/export behaviors.

Reviewed changes

Copilot reviewed 21 out of 21 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
QuickShell/Services/ShortcutEditorState.cs Removed legacy editor state helpers (replaced by unified form flow).
QuickShell/Services/ShortcutEditorNavigationState.cs Removed legacy navigation state (no longer needed with unified form page).
QuickShell/Pages/ShortcutLaunchFormPage.cs Removed separate terminal/launch form page (functionality moved into unified form).
QuickShell/Pages/ShortcutEditorPage.cs Removed legacy editor page and launch-row commands (superseded by unified form).
QuickShell/Commands/ShortcutLaunchCommands.cs Removed commands tied to the legacy editor/launch list.
QuickShell/Pages/ShortcutFormPage.cs Main refactor: unified form logic, template caching, companion app browse action, and draft-cleared handling.
QuickShell/Pages/PendingShortcutEditPage.cs Terminology update from “project” to “workspace” in UI text.
QuickShell/Pages/ImportConflictPage.cs Terminology update from “project” to “workspace” in tooltips.
QuickShell/Commands/DuplicateShortcutCommand.cs Changes duplicate behavior to open the unified form prefilled with a duplicate seed.
QuickShell/Commands/DeleteShortcutCommand.cs Updates not-found messaging to “Workspace”.
QuickShell.Core/Services/WorkspaceValidation.cs Updates legacy-warning strings to “workspace”.
QuickShell.Core/Services/ShortcutLaunchFormJson.cs Updates command row JSON to use template bindings rather than embedding command text.
QuickShell.Core/Services/ShortcutFormTemplateJson.cs New shared builder for template JSON + data JSON + renderability assertions.
QuickShell.Core/Services/ShortcutFormTemplateCache.cs New template cache keyed by command count and terminal application id.
QuickShell.Core/Services/ShortcutFormDraftStore.cs Adds “Run editor” save path that preserves additional launches/metadata on edits.
QuickShell.Core/Services/ShortcutDraftStore.cs Adds cleared event + generation-based protection against stale async writes recreating draft file.
QuickShell.Core.Tests/ShortcutLaunchFormJsonTests.cs Updates expectations for templated command bindings.
QuickShell.Core.Tests/ShortcutImportExportTests.cs New import/export round-trip and conflict tests.
QuickShell.Core.Tests/ShortcutFormTemplateJsonTests.cs New tests validating template/data JSON structure and token expansion.
QuickShell.Core.Tests/ShortcutDraftStoreTests.cs New draft-store clear/generation regression tests.
QuickShell.Core.Tests/FakeShortcutRepository.cs Allows injecting config directory; updates reset messaging text.

Comment thread QuickShell.Core/Services/ShortcutFormTemplateJson.cs Outdated
Comment thread QuickShell/Pages/ShortcutFormPage.cs
Comment thread QuickShell.Core/Services/ShortcutFormTemplateCache.cs
Comment thread QuickShell/Commands/DuplicateShortcutCommand.cs Outdated

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 51787d59d2

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread QuickShell/Pages/ShortcutFormPage.cs
@tonythethompson tonythethompson force-pushed the pr/settings-and-home-display branch from bcaf5ee to 8141c01 Compare July 3, 2026 05:08
tonythethompson and others added 3 commits July 2, 2026 22:08
Replace separate editor and launch-form pages with ShortcutFormPage, shared
template JSON with caching, consolidated draft save logic, and browse actions
for folder and custom companion apps.

Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Signed-off-by: Anthony Thompson <tonythethompson@hotmail.com>
Merge create/edit into ShortcutFormPage, address Copilot and Codex
review feedback for companion reconciliation, duplicate command,
template cache key, and remove obsolete launch form page routing.

Co-authored-by: Cursor <cursoragent@cursor.com>
@tonythethompson tonythethompson force-pushed the pr/unified-workspace-form branch from 3fdd084 to dccf8ac Compare July 3, 2026 05:11
@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.
To continue using code reviews, you can upgrade your account or add credits to your account and enable them for code reviews in your settings.

BuildFormChoicesJson now omits catalog presets that are not installed, matching IsPresetInstalled and fixing CI on runners where VS Code is on PATH but not at standard install locations.

Co-authored-by: Cursor <cursoragent@cursor.com>
@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.
To continue using code reviews, you can upgrade your account or add credits to your account and enable them for code reviews in your settings.

@tonythethompson tonythethompson changed the base branch from pr/settings-and-home-display to master July 3, 2026 07:54
@tonythethompson tonythethompson merged commit 7981b07 into master Jul 3, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants