refactor(settings): move workflows out of transport adapters - #595
Merged
Conversation
Codex ReviewVerdict: mergeable No actionable findings. Summary: Static inspection found no concrete merge-blocking defect introduced by this pull request. No tests, lint, typecheck, build, or dependency commands were run. |
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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Problem
Settings mutations were persisted by
SettingsService, but cross-module follow-up effects still lived in the Electron/Web transport adapter. That madesettings/ipc.tsown provider reconnects, framework switches, Skill reloads, Connector permission cleanup, derived Connector Skill documents, and native icon application. The same composition also kept Connector runtime projection state and the shared provider/install id counter close to the facade instead of with explicit owners.Proposed change
ConnectorRuntimeSettingsProjection.Scope and non-goals
Acceptance criteria and validation
All checks below ran after the last material edit.
npm test -- --run src/main/settings/workflows.test.ts src/main/settings/ipc.test.ts src/main/connectors/runtime-settings-projection.test.ts src/main/connector-reload.test.ts-> 4 files passed, 77 tests passed.npm test -- --run src/main/settings src/main/acp src/main/connectors src/main/connector-reload.test.ts-> 125 files passed, 1 skipped; 2,226 tests passed, 42 skipped.npm test-> 641 files passed, 15 skipped; 9,446 tests passed, 184 skipped.npm run typecheck-> passed.npm run check:web-api-map-> passed.npm run lint-> 0 errors; 23 unchanged latest-main warnings.git diff --check-> passed.Uncovered risk: there is no new manual UI/E2E run because this PR does not change UI or public interaction. Production effect composition is covered through the real workflow/projection tests, transport registration tests, full suite, and independent wiring review rather than a dedicated
src/main/ipc.tscomposition integration test; CI E2E remains the final gate.Review focus