fix(web): upgrade markstream-vue to 1.0.3 to fix blank nested code blocks - #1032
Merged
Conversation
🦋 Changeset detectedLatest commit: 8898309 The changes in this PR will be included in the next version bump. This PR includes changesets to release 1 package
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
Contributor
|
❌ Nix build failed Hash mismatch in
Please update |
commit: |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Related Issue
No kimi-code issue was filed — this is a clear, reproducible rendering bug with a focused diff, so the problem is explained below. The underlying cause is upstream and tracked at Simon-He95/markstream-vue#498 (fixed by Simon-He95/markstream-vue#502).
Problem
In the web chat, a fenced code block nested inside a list item (e.g. a ```js block under a
-bullet) renders blank — only the language header shows, with an empty body. It surfaces right when a turn finishes generating, and a full page reload temporarily "fixes" it.Root cause is two compounding factors:
code-renderer="shiki", so code blocks inside list items fell through to the Monaco renderer. With the optionalstream-monacopeer not installed, the production bundle stubs it to an empty module, the block hangs atdata-markstream-pending, and never paints. (Top-level blocks use Shiki and are unaffected.)smooth-streamingflipstrue → false; finalizing the still-pending nested block drops its fallback body, leaving it blank. A fresh reload mounts in the settled state directly, which is why reloading appears to fix it.What changed
Upgrade
markstream-vue1.0.1-beta.5 → 1.0.3, which contains the upstream fix so nested renderers inherit the parent code renderer (Shiki) like top-level blocks.stream-markdownis bumped^0.0.15 → ^0.0.16to satisfy the new peer requirement. No application code changes.Checklist
stream-monacostub), which the unit-test/jsdom environment can't exercise. Verified instead by building the production bundle and confirming in a real browser that nested list code blocks now render with Shiki highlighting and survive the streaming→settled transition; the existing 55 web tests still pass.gen-changesetsskill, or this PR needs no changeset.gen-docsskill, or this PR needs no doc update. — N/A: no user-facing docs affected.