v0.1.1
CI / CI (push) Successful in 17m54s
The streaming path used to call _renderAssistantMarkdown on every incoming text delta, which re-ran marked.parse on the WHOLE accumulated markdown source and re-post-processed (added the Copy/Insert/Replace toolbar to) every <pre> block. This is a partial-render problem: a markdown source mid-stream (e.g. an opening ```py fence with no closing fence yet, or a partial heading) classifies DIFFERENTLY than the complete message. Each new delta could re-classify the same text into a different DOM shape, causing visible flicker - <pre>s appearing and disappearing, the toolbar popping in and out, paragraphs re-grouping - while the model is still typing. The bug surfaced because the user could see the glitchy view during a stream but everything looked correct after closing+reopening the panel (which goes through the static setMessages -> marked.parse path on the full text). Fix: keep the streaming path dumb. _appendToAssistantText now just appends the raw delta to the assistant element's textContent. The full markdown render happens exactly once at the end of the turn, inside _resetStreamPointers (which the prompt invokes when session.idle arrives, before calling onStreamEnd). Result: - The user still sees real-time text growth (textContent += delta). - No more intermediate-state flicker. - The rendered view at turn end is byte-for-byte equivalent to what setMessages would produce from the stored history (they share _renderAssistantMarkdown). The corresponding regression test is updated: it now asserts the DURING-stream state is raw text (no <pre>, no toolbar) and the POST-idle state is the rendered DOM with the toolbar attached. Tests: 72 jest (unchanged count, the one streaming test was rewritten), 52 pytest, build green. Co-Authored-By: Claude <noreply@anthropic.com>
…
…
…
…
…
…
…
…
opencode_bridge
A JupyterLab extension.
This extension is composed of a Python package named opencode_bridge
for the server extension and a NPM package named opencode_bridge
for the frontend extension.
Requirements
- JupyterLab >= 4.0.0
Install
To install the extension, execute:
pip install opencode_bridge
Uninstall
To remove the extension, execute:
pip uninstall opencode_bridge
Troubleshoot
If you are seeing the frontend extension, but it is not working, check that the server extension is enabled:
jupyter server extension list
If the server extension is installed and enabled, but you are not seeing the frontend extension, check the frontend extension is installed:
jupyter labextension list
Contributing
If you would like to contribute to this extension, please refer to the Contributing Guide.
Releases
2
Release v0.1.1
Latest
Languages
TypeScript
55.6%
Python
38.8%
CSS
3.9%
JavaScript
0.9%
Shell
0.8%