Repository navigation
Conversation
Markdown shows bidi controls, zero-width and other hidden characters in code and link text as markers. What nests past MAX_DEPTH shows as its source instead, and that source kept them as written, so code nested that deep, and the text of a link one level above it, could read other than written with no marker. The Studio check named only tooDeep for such code. Text past MAX_CHARS or MAX_WORK, shown as plain text, kept them as written too, code included. What nests past MAX_DEPTH, raw HTML (in a link's text too) and a table past its caps all show as their source, and that source now shows its hidden characters as markers. So does Markdown past the parser's limits, where the app shows it as plain text; plain text that is not Markdown keeps them as written. A link whose own text would nest past MAX_DEPTH shows as its source rather than as a followed link, so a followed link's own text is never source; markup nested deeper inside it can be, its hidden characters as markers. inspectMarkdown notes code or a link shown as source that holds hidden characters, and markdownProblems names them as hiddenControl, so the check matches what the app shows. Plain text holding one no longer counts as shown as written. Refs: GHSA-9wqg-2c2v-j9v8
ixuz
enabled auto-merge
November 12, 2026 00:03
ixuz
added this pull request to the merge queue
Nov 12, 2026
Any commits made after this event will not be merged.
This branch has not been deployed
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.
What and why
Markdown shows bidi controls, zero-width characters and other hidden characters in code and link text as markers. Markup nested past
MAX_DEPTHis shown as its source instead, and that source kept them as written. So code nested that deep, and the text of a link one level above it, could read other than it is written, with no marker. The Studio check named such code only astooDeep. Text pastMAX_CHARSorMAX_WORK, which the app shows as plain text, also kept them as written, code included.What changes:
MAX_DEPTH, raw HTML (in a link's text too) and a table past its caps all show as their source, and that source now shows its hidden characters as markers.MAX_DEPTHshows as its source rather than as a followed link, so a followed link's own text is never source.inspectMarkdownnotes code or a link shown as source that holds hidden characters, andmarkdownProblemsnames them ashiddenControl, so the check matches what the app shows.Behavior changes worth knowing:
docs/markdown.mddescribes the rule. The tests write the characters as\uescapes.Refs: GHSA-9wqg-2c2v-j9v8