From 8a5453e3e7b3e3f09dad69207a4fe093b126a668 Mon Sep 17 00:00:00 2001 From: divanoli Date: Thu, 5 Feb 2026 11:36:58 +0300 Subject: [PATCH] fix(telegram): use regex literal and depth counters for tag tracking Code review fixes: 1. Replace RegExp constructor with regex literal for autoLinkedAnchor - Avoids double-escaping issues with \s - Uses backreference \1 to match href=label pattern directly 2. Replace boolean toggles with depth counters for tag nesting - codeDepth, preDepth, anchorDepth track nesting levels - Correctly handles nested tags like
...
- Prevents wrapping inside any level of protected tags Add 4 tests for edge cases: - Nested code tags (depth tracking) - Multiple anchor tags in sequence - Auto-linked anchor with backreference match - Anchor with different href/label (no match) --- src/telegram/format.ts | 29 +++++++++++++---------------- src/telegram/format.wrap-md.test.ts | 27 +++++++++++++++++++++++++++ 2 files changed, 40 insertions(+), 16 deletions(-) diff --git a/src/telegram/format.ts b/src/telegram/format.ts index 777ac3aaec6..6282e0d2828 100644 --- a/src/telegram/format.ts +++ b/src/telegram/format.ts @@ -137,12 +137,9 @@ export function wrapFileReferencesInHtml(html: string): string { const extensionsPattern = Array.from(FILE_EXTENSIONS_WITH_TLD).join("|"); // Safety-net: de-linkify auto-generated anchors where href="http://