-
Notifications
You must be signed in to change notification settings - Fork 682
fix(settings): clone save payloads #1768
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Changes from all commits
Commits
Show all changes
7 commits
Select commit
Hold shift + click to select a range
a0c9d5b
docs: add tape systems design
zerob13 a32c029
feat(tape): implement view manifest flow
zerob13 bd14a7d
fix: address tape view manifest review feedback
zerob13 99b45c1
fix(tape): address view manifest review
zerob13 c477e13
fix(settings): clone save payloads
zerob13 1ff28ff
fix(tape): address review feedback
zerob13 a884103
chore: merge dev into config save
zerob13 File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Some comments aren't visible on the classic Files Changed page.
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,12 @@ | ||
| # DeepChat Tape Baseline Plan | ||
|
|
||
| ## Approach | ||
|
|
||
| Keep the Tape implementation baseline as a goal-scoped architecture document. | ||
| Use it as the shared map for the active Tape SDD folders. | ||
|
|
||
| ## Maintenance | ||
|
|
||
| - Keep references to active Tape SDD folders relative to this directory. | ||
| - Update the baseline when ownership or runtime flow changes. | ||
| - Keep compatibility notes aligned with the current Tape schema. |
12 changes: 6 additions & 6 deletions
12
docs/architecture/deepchat_tape_spec_v1.md → ...chitecture/deepchat-tape-baseline/spec.md
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,5 @@ | ||
| # DeepChat Tape Baseline Tasks | ||
|
|
||
| - [x] Move the baseline spec into a kebab-case architecture folder. | ||
| - [x] Update relative links to active Tape SDD folders. | ||
| - [x] Update references from the legacy flat architecture path. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,15 @@ | ||
| # MCP Server Form Auto Approve Controls Plan | ||
|
|
||
| ## Approach | ||
|
|
||
| Restore the existing checkbox component binding for the MCP server form auto-approve options. | ||
| Keep the submitted `MCPServerConfig.autoApprove` shape unchanged. | ||
|
|
||
| ## Implementation | ||
|
|
||
| - Import the shared checkbox component used by the form template. | ||
| - Verify edit-mode initial values and submit behavior for read/write permissions. | ||
|
|
||
| ## Verification | ||
|
|
||
| - `pnpm vitest --config vitest.config.renderer.ts test/renderer/components/McpServerForm.test.ts` |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,36 @@ | ||
| # MCP Server Form Auto Approve Controls Spec | ||
|
|
||
| ## Goal | ||
|
|
||
| Restore editable auto-approve controls in the MCP server add/edit form. | ||
|
|
||
| ## Requirements | ||
|
|
||
| - The MCP add server form displays interactive controls for All, Read, and Write auto-approve options. | ||
| - The MCP edit server form displays the same controls and initializes them from `initialConfig.autoApprove`. | ||
| - Submitting the form persists the selected values through `MCPServerConfig.autoApprove`. | ||
| - Existing server fields, route contracts, and store behavior remain unchanged. | ||
|
|
||
| ## Layout | ||
|
|
||
| Before: | ||
|
|
||
| ```text | ||
| Auto Approve | ||
| All | ||
| Read | ||
| Write | ||
| ``` | ||
|
|
||
| After: | ||
|
|
||
| ```text | ||
| Auto Approve | ||
| [ ] All | ||
| [ ] Read | ||
| [ ] Write | ||
| ``` | ||
|
|
||
| ## Compatibility | ||
|
|
||
| MCP config keys and saved `autoApprove` values remain unchanged. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,6 @@ | ||
| # MCP Server Form Auto Approve Controls Tasks | ||
|
|
||
| - [x] Restore the checkbox component import. | ||
| - [x] Add a renderer component test for editable auto-approve controls. | ||
| - [x] Assert selected read/write permissions are submitted through `autoApprove`. | ||
| - [x] Run targeted renderer test. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,17 @@ | ||
| # Settings Save Clone Errors Plan | ||
|
|
||
| ## Approach | ||
|
|
||
| Normalize renderer-owned settings payloads into plain objects before invoking config routes. | ||
| Keep route names, persisted config keys, and presenter contracts unchanged. | ||
|
|
||
| ## Implementation | ||
|
|
||
| - Add a small recursive serializer in the renderer config client for arrays, objects, and dates. | ||
| - Apply the serializer to settings save paths that can receive Vue reactive proxies. | ||
| - Normalize DeepChat Agent model selections before building create/update payloads. | ||
| - Cover serialized bridge payloads with structured clone assertions. | ||
|
|
||
| ## Verification | ||
|
|
||
| - `pnpm vitest --config vitest.config.renderer.ts test/renderer/api/clients.test.ts test/renderer/components/DeepChatAgentsSettings.test.ts` |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,19 @@ | ||
| # Settings Save Clone Errors Spec | ||
|
|
||
| ## Goal | ||
|
|
||
| Fix renderer IPC clone errors when settings save paths receive reactive objects. | ||
|
|
||
| ## Requirements | ||
|
|
||
| - Saving an existing DeepChat Agent sends a structured-cloneable payload to the typed route bridge. | ||
| - Creating a DeepChat Agent uses the same structured-cloneable payload shape as updating. | ||
| - Adding, updating, and replacing custom prompts send structured-cloneable payloads. | ||
| - Adding, updating, and replacing system prompts send structured-cloneable payloads. | ||
| - Saving shortcut keys sends a structured-cloneable payload. | ||
| - Existing saved values and route contracts remain unchanged. | ||
| - Tests cover the renderer API client payloads with structured clone validation. | ||
|
|
||
| ## Compatibility | ||
|
|
||
| Settings route names, presenter contracts, and persisted config keys remain unchanged. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,8 @@ | ||
| # Settings Save Clone Errors Tasks | ||
|
|
||
| - [x] Identify settings save routes that can receive reactive objects. | ||
| - [x] Serialize shortcut key, custom prompt, system prompt, and DeepChat Agent payloads. | ||
| - [x] Normalize DeepChat Agent advanced model selections to plain route values. | ||
| - [x] Add renderer API client structured clone coverage. | ||
| - [x] Add DeepChat Agent settings save coverage for cloneable model selections. | ||
| - [x] Run targeted renderer tests. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.