Summary
After the quantecon-theme v2.0.0 + mystmd 1.9.1 upgrade (#45), clicking the in-page execution ⏻ power button hangs indefinitely at:
⚡ Connecting to JupyterLite ⚡
[client] Connecting…
The kernel never becomes ready, so no executable cell can run on any lecture. In-page execution is effectively broken site-wide.
Reproduction
- Open a lecture built with the v2.0.0 toolchain, e.g. https://pr-45--beautiful-dodol-cb9543.netlify.app/inflation-history/
- Click the ⏻ power button (top-right of the content).
- The "Connecting to JupyterLite…
[client] Connecting…" banner appears and never completes.
Scope — what this is NOT
When it started
Introduced with #45 (v2.0.0 upgrade: mystmd 1.9.1 + Node 20 + the unpinned quantecon-theme bundle). Before the upgrade the kernel connected — see #42, where connect succeeded and only the %pip install step emitted a 404.
Suspected cause (unconfirmed)
The CI install line pins mystmd but leaves the thebe runtime deps unpinned:
npm install -g mystmd@1.9.1 thebe-core thebe thebe-lite
This is the same "unpinned dependency vs. theme bundle" mismatch that broke output-node rendering until mystmd was pinned. If the thebe-lite runtime is out of sync with what the v2.0.0 theme client (@myst-theme 1.x) expects, the kernel handshake may never complete. Two candidate fix locations:
- lecture-wasm build config — pin
thebe-core / thebe / thebe-lite to versions compatible with quantecon-theme v2.0.0 (fix here).
- Theme bundle — the v2.0.0
@myst-theme thebe-lite integration is itself broken (fix upstream in QuantEcon/quantecon-theme-src).
Next diagnostic step
Capture DevTools Network + Console while clicking power:
- Which request goes red / stays pending (thebe-lite worker, pyodide,
*-kernel*.js, .whl/.data)?
- Any red console errors?
This disambiguates (1) vs (2) above.
Refs
Summary
After the quantecon-theme v2.0.0 + mystmd 1.9.1 upgrade (#45), clicking the in-page execution ⏻ power button hangs indefinitely at:
The kernel never becomes ready, so no executable cell can run on any lecture. In-page execution is effectively broken site-wide.
Reproduction
[client] Connecting…" banner appears and never completes.Scope — what this is NOT
pypi/warehouse. The warehouse is only read at%pip installtime after a successful connect (see piplite 404 warnings on pip install cells (missing local PyPI warehouse) #42), so it cannot affect connection. PR Add local PyPI warehouse for piplite #44 is unaffected and orthogonal.When it started
Introduced with #45 (v2.0.0 upgrade: mystmd 1.9.1 + Node 20 + the unpinned quantecon-theme bundle). Before the upgrade the kernel connected — see #42, where connect succeeded and only the
%pip installstep emitted a 404.Suspected cause (unconfirmed)
The CI install line pins
mystmdbut leaves the thebe runtime deps unpinned:This is the same "unpinned dependency vs. theme bundle" mismatch that broke output-node rendering until
mystmdwas pinned. If the thebe-lite runtime is out of sync with what the v2.0.0 theme client (@myst-theme1.x) expects, the kernel handshake may never complete. Two candidate fix locations:thebe-core/thebe/thebe-liteto versions compatible with quantecon-theme v2.0.0 (fix here).@myst-themethebe-lite integration is itself broken (fix upstream inQuantEcon/quantecon-theme-src).Next diagnostic step
Capture DevTools Network + Console while clicking power:
*-kernel*.js,.whl/.data)?This disambiguates (1) vs (2) above.
Refs
QuantEcon/quantecon-theme-src(quantecon-theme v2.0.0 /@myst-theme1.x)