Repository navigation
Conversation
|
@davidfant is attempting to deploy a commit to the Vercel Team on Vercel. A member of the Team first needs to authorize it. |
❌ Unsigned commits found4 of 4 commit(s) in this pull request do not have a verified signature. All commits must be signed before this PR can be merged.
How to fix1. Set up commit signing (one-time; SSH shown, GPG and S/MIME also work): git config --global gpg.format ssh
git config --global user.signingkey ~/.ssh/id_ed25519.pub
git config --global commit.gpgsign true2. Add the key to GitHub as a Signing Key at github.com/settings/ssh/new (an authentication key alone is not enough), and make sure your 3. Re-sign the commits on this branch and force-push: git fetch https://github.com/vercel/streamdown.git main
git rebase --exec 'git commit --amend --no-edit --no-verify -S' $(git merge-base HEAD FETCH_HEAD)
git push --force-with-leaseThis check re-runs automatically when you push. See CONTRIBUTING.md for more details. 🤖 Using an AI coding agent? Paste this promptChecked at ba8b9e7. |
b271a4b to
b57a8e8
Compare
9867b51 to
75896c5
Compare
There was a problem hiding this comment.
Additional findings
-
packages/remend/src/html-tag-handler.ts:45-46— An incomplete HTML tag immediately following a literal range causes trimEnd() to delete protected trailing whitespace from that range. -
packages/remend/src/link-image-handler.ts:22-30— An incomplete link or image URL opened before a literal range deletes that protected range and all following prose, including in text-only mode. -
packages/remend/src/emphasis-handlers.ts:634-641— When underscore emphasis precedes a literal range containing trailing newlines, completion inserts_inside the protected payload instead of outside the range.
Summary
Add generic
literalRangessupport so Remend's built-in repairs preserve parser-owned opaque source while retaining normal whole-document Markdown context.Zero Streamdown package changes. No container grammar, tag registration, renderer, dependency, lockfile or default Streamdown behavior changes. This draft supersedes the broader container proposal, preserved on its archival branch.
Before / After / Why
Before: callers cannot protect exact literal payloads while retaining ordinary incomplete-Markdown repair. Repair can consume literal content or treat its punctuation as surrounding Markdown.
After: an optional callback supplies sorted non-overlapping UTF-16
{start,end}intervals (exclusive end). Built-in repairs respect literal markers, whitespace, edit boundaries and surrounding context. Without the callback, existing behavior remains covered by the full suite.Why: disabling repair loses ordinary streaming behavior; masking source or repairing fragments independently adds context-loss workarounds. The caller's existing grammar supplies boundaries. Remend knows nothing about tabs, HTML containers or Energy.
Implementation
Review corrections
The setext finding and three further review findings were independently reproduced before fixes. Additional audit cases covered HTML deletion across ranges, protected comparison escapes, and literal star/dollar half-closers.
At corrected head
ba8b9e7e7061e6b78b0f9f9bcb93daea0ae13e69:Local upstream Biome remains unavailable because shared tooling lacks
ultracite/core; added tests formatted with platform Biome/basic matching configuration. Diff check passes. CI statuses reported separately; earlier unsigned-commit/deployment prerequisites remain external, no key access or deployment authorized.Downstream integration
Product draft uses unmodified Streamdown2.7.1 and app-owned grammar through existing remark/block/rehype hooks. Generic literal ranges come from that same grammar.
The durable product pin5a192dbfe is based on original2.7.1 source; this PR uses current upstream main. Remend runtime is identical, avoiding unrelated unreleased APIs downstream. Product JS SHA256:
e9ffa20dd95ec86ec8c6e5577ad1cff082ab2d9363f3b5aa60a8bf3e3b41ef49.Lines of code
True base:
c6f590577744a6328440019deb6ad6053167eb96. Mutually exclusive categories:Nothing excluded. No generated/lockfile/media changes and no unrelated deletions.
Models used
Implementation and independent review:OpenAI
gpt-6.1-sol. No model override/fallback; reasoning effort not independently verified.Draft, unmerged.
Final exact-head checks
Atba8b9e7 AgentReviewSUCCESS/zero suggestions,InternalSecuritySUCCESS,bothSocketSUCCESS. Reviewer resolution confirmation. No new findings. DraftOPEN/MERGEABLE/unmerged. Signed-commit policy still fails for4unsignedcommits and Verceldeployment authorization is external. No keys accessed,deployment or merge authorized. Downstream exact3151 OSVfullscan passes; mainCIregistration blocked by staleGitHubtest-merge state, not claimed passing.