Skip to content

fix(desktop): wizard freezes on Continue — rename colliding bridge const#358

Merged
Weegy merged 1 commit into
mainfrom
fix/desktop-wizard-const-collision
Jun 22, 2026
Merged

fix(desktop): wizard freezes on Continue — rename colliding bridge const#358
Weegy merged 1 commit into
mainfrom
fix/desktop-wizard-const-collision

Conversation

@Weegy

@Weegy Weegy commented Jun 22, 2026

Copy link
Copy Markdown
Contributor

Follow-up to #357 (onboarding preload bundle, already merged). That fix made window.omadia actually load — which unmasked a second bug.

Symptom

After entering an API key, "Continue" does nothing. Console shows:

Uncaught SyntaxError: Identifier 'omadia' has already been declared (at wizard.js:1:1)

Root cause

contextBridge.exposeInMainWorld('omadia', …) exposes window.omadia as a non-configurable global property. wizard.js declared a top-level const omadia = window.omadia, and ECMAScript forbids a global lexical binding (const/let) whose name matches a non-configurable global property. The declaration throws at parse time, which aborts the entire script — so no click handlers ever bind and the wizard freezes on Continue.

It only appeared now: before #357 the preload was broken, so window.omadia didn't exist and the collision couldn't happen.

Fix

Rename the local reference to bridge (with a comment so it isn't "fixed" back to omadia). loading.js was unaffected — it uses window.omadia directly without a top-level binding.

Verification

On the packaged macOS .app, driven against the actual wizard via CDP:

  • no SyntaxError; the script loads (top-level identifiers defined);
  • clicking Continue advances the wizard (step 0 → 1, rail active item follows).

Platform-agnostic (no Windows-specific code). All three desktop builds are green (run 27938240201).

Once the preload actually loaded (previous commit), `window.omadia` exists as a
NON-CONFIGURABLE global property created by contextBridge. wizard.js declared a
top-level `const omadia = window.omadia`, and ECMAScript forbids a global lexical
binding whose name matches a non-configurable global property:

  Uncaught SyntaxError: Identifier 'omadia' has already been declared

That aborts the entire script, so no click handlers bind and "Continue" does
nothing. Rename the local reference to `bridge` (with a comment so it isn't
"fixed" back). loading.js was unaffected — it uses `window.omadia` directly.

Verified on the packaged macOS .app via CDP: no SyntaxError, the script loads,
and clicking Continue advances the wizard (step 0 → 1).
@Weegy Weegy merged commit 860841b into main Jun 22, 2026
5 checks 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.

1 participant