Skip to content

fix(desktop): add planModeEnabled to the client settings fixture - #60

Merged
rynfar merged 1 commit into
pylonfrom
fix/desktop-client-settings-plan-mode
Aug 19, 2026
Merged

rynfar merged 1 commit into
pylonfrom
fix/desktop-client-settings-plan-mode

Conversation

@rynfar

@rynfar rynfar commented Aug 19, 2026

Copy link
Copy Markdown
Collaborator

pylon is red. Adding planModeEnabled to ClientSettingsSchema in #59 broke DesktopClientSettings.test.ts, failing both the Test and Check jobs on 509d497d8.

That fixture is an exhaustive ClientSettings literal rather than a spread of the defaults, so any new key breaks it:

error TS2741: Property 'planModeEnabled' is missing in type '{ ... }'
AssertionError: expected { _id: 'Option', _tag: 'Some', … } to deeply equal { … }

How I missed it

Upstream's #5551 updated this same file in the same commit — one line. I ported that change rather than cherry-picking it (deliberately, since the commit is 338 back and its other hunks are stale) and did not carry the fixture update across.

Then I verified only web and contracts — the two packages I had edited — while the fixture lives in desktop. A contracts change fans out to every consumer, so the scope to verify is every consumer, not the files I happened to touch.

Verification

  • Typecheck clean across all seven contracts consumers: web, desktop, server, shared, contracts, client-runtime, mobile. 0/7 cache hits, so they genuinely ran.
  • DesktopClientSettings.test.ts: 7 tests, passing.
  • Swept for other exhaustive settings fixtures — this is the only one. The modelSelection.test.ts fixtures spread DEFAULT_UNIFIED_SETTINGS, which is why they were unaffected.

Model: Claude Opus 5 in Pylon.


View with [code]smith Autofix with [code]smith
Need help on this PR? Tag @codesmith with what you need. Autofix is disabled.

Adding `planModeEnabled` to `ClientSettingsSchema` in #59 broke
`DesktopClientSettings.test.ts`, whose fixture is an exhaustive
`ClientSettings` literal rather than a spread of the defaults, so a new key
fails both typecheck and the round-trip assertion.

Upstream's #5551 updated this same file in the same commit. I ported that
change instead of cherry-picking it and did not carry the one-line fixture
update across, then verified only web and contracts — the two packages I had
edited — while the fixture lives in desktop. A contracts change fans out to
every consumer, so the scope to verify is every consumer.

Confirmed clean across all seven: web, desktop, server, shared, contracts,
client-runtime, and mobile. This is the only exhaustive settings fixture in
the repo; the `modelSelection.test.ts` ones spread the defaults.
@rynfar
rynfar merged commit d60b33d into pylon Aug 19, 2026
8 checks passed
@rynfar
rynfar deleted the fix/desktop-client-settings-plan-mode branch August 19, 2026 22:50
@github-actions github-actions Bot added vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. size:XS labels Aug 19, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:XS vouch:trusted PR author is trusted by repo permissions or the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant