Skip to content

fix(channel): render inline HTML in Telegram list items - #170

Merged
codeaholicguy merged 1 commit into
mainfrom
feature-telegram-list-html
Aug 17, 2026
Merged

fix(channel): render inline HTML in Telegram list items#170
codeaholicguy merged 1 commit into
mainfrom
feature-telegram-list-html

Conversation

@codeaholicguy

@codeaholicguy codeaholicguy commented Aug 17, 2026

Copy link
Copy Markdown
Owner

Summary

  • Markdown lists with inline markup (bold/code/italic) rendered tags literally in Telegram: the list renderer block-parsed item tokens, and marked's synthetic paragraph text token re-escaped the already-rendered HTML.
  • Fix: render list-item text tokens inline exactly once via parser.parseInline(token.tokens!), block-parse non-text tokens (paragraphs, nested lists); drop the now-unreachable custom listitem() and the dead text() nested-token branch; escape inline raw HTML while stripping block HTML.

Validation

  • channel-connector: 112/112 tests; coverage 75.15% branches global (threshold 75), telegramHtml.ts 97.72% stmts / 87.5% branches
  • typecheck + build + repo-wide lint: exit 0 (pre-existing warnings only)
  • Mutation check: reverting the fix fails 8 regression cases (tight/loose ordered+unordered lists, links, literal <script> escaping)
  • Full workspace pre-commit suite green after npm ci + npm run build

@codeaholicguy
codeaholicguy merged commit b9c0603 into main Aug 17, 2026
7 checks passed
@codeaholicguy
codeaholicguy deleted the feature-telegram-list-html branch August 17, 2026 04:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant