Files
codebase-memory-mcp/graph-ui/tools/literal-pattern.mjs
T
Martin Vogel 8c4747666c fix: preserve literal input and static asset boundaries
Escape project names before building hand-test patterns, compare transport
identifiers as literal tokens, preserve boundaries when extracting prose
and XML facts, and require canonical containment for smoke static assets.
Add regression coverage for metacharacters, dollar identifiers, markup
joining, traversal, symlinks, and malformed URL encoding.

Signed-off-by: Martin Vogel <martin.vogel.tech@gmail.com>
2026-10-21 23:12:06 +02:00

6 lines
293 B
JavaScript

/** Build a pattern for literal text with optional start/end anchoring. */
export function literalPattern(value, { start = false, end = false } = {}) {
const escaped = value.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
return new RegExp(`${start ? '^' : ''}${escaped}${end ? '$' : ''}`);
}