summaryrefslogtreecommitdiffhomepage
path: root/packages/app/src/context/global-sync
diff options
context:
space:
mode:
authorLuke Parker <[email protected]>2026-04-27 10:54:55 +1000
committerGitHub <[email protected]>2026-04-27 00:54:55 +0000
commit141f33d24bdc059aa26bd1e32c9416ac3aed36e1 (patch)
treeffd2f8b70439cdc134cb3b7e70c7fbf7130f1b81 /packages/app/src/context/global-sync
parentc4d8a8183e6c2d15831767f1b898a8d0ed0297b9 (diff)
downloadopencode-141f33d24bdc059aa26bd1e32c9416ac3aed36e1.tar.gz
opencode-141f33d24bdc059aa26bd1e32c9416ac3aed36e1.zip
feat: configurable shell selection + desktop settings UI (#20602)
Diffstat (limited to 'packages/app/src/context/global-sync')
-rw-r--r--packages/app/src/context/global-sync/bootstrap.ts7
1 files changed, 4 insertions, 3 deletions
diff --git a/packages/app/src/context/global-sync/bootstrap.ts b/packages/app/src/context/global-sync/bootstrap.ts
index 66f4a3b15..a83030fad 100644
--- a/packages/app/src/context/global-sync/bootstrap.ts
+++ b/packages/app/src/context/global-sync/bootstrap.ts
@@ -78,7 +78,7 @@ export async function bootstrapGlobal(input: {
() =>
retry(() =>
input.globalSDK.global.config.get().then((x) => {
- input.setGlobalStore("config", x.data!)
+ input.setGlobalStore("config", reconcile(x.data!, { merge: false }))
}),
),
]
@@ -245,7 +245,7 @@ export async function bootstrapDirectory(input: {
input.setStore("provider", input.global.provider)
}
if (Object.keys(input.store.config).length === 0 && Object.keys(input.global.config).length > 0) {
- input.setStore("config", input.global.config)
+ input.setStore("config", reconcile(input.global.config, { merge: false }))
}
if (loading || input.store.provider.all.length === 0) {
input.setStore("provider_ready", false)
@@ -265,7 +265,8 @@ export async function bootstrapDirectory(input: {
input.queryClient.ensureQueryData(
loadAgentsQuery(input.directory, input.sdk, (x) => input.setStore("agent", normalizeAgentList(x.data))),
),
- () => retry(() => input.sdk.config.get().then((x) => input.setStore("config", x.data!))),
+ () =>
+ retry(() => input.sdk.config.get().then((x) => input.setStore("config", reconcile(x.data!, { merge: false })))),
() => retry(() => input.sdk.session.status().then((x) => input.setStore("session_status", x.data!))),
!seededProject &&
(() => retry(() => input.sdk.project.current()).then((x) => input.setStore("project", x.data!.id))),