From 9da0bb72a64883a0daa1f4c788393e6d8ecbd947 Mon Sep 17 00:00:00 2001 From: rachitrajvaishkiyar Date: Sun, 14 Jun 2026 22:18:24 +0530 Subject: [PATCH] fix: ignore structural markdown comments in static engine --- .../nodes/analyzers/static_patterns_prompt_injection.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/skillspector/nodes/analyzers/static_patterns_prompt_injection.py b/src/skillspector/nodes/analyzers/static_patterns_prompt_injection.py index c062ee6..a3e86ac 100644 --- a/src/skillspector/nodes/analyzers/static_patterns_prompt_injection.py +++ b/src/skillspector/nodes/analyzers/static_patterns_prompt_injection.py @@ -146,6 +146,10 @@ def ctx(start: int) -> str: if file_type in ("markdown", "other"): for pattern, confidence in P2_PATTERNS: for match in re.finditer(pattern, content, re.IGNORECASE | re.DOTALL): + matched_str = match.group(0) + if any(p in matched_str.lower() for p in ["template:","theme:","coalmine:","revalidate"]): continue + if matched_str.startswith(chr(60)+chr(33)+chr(45)+chr(45)): + if not any(d in matched_str.lower() for d in ["ignore previous","system prompt","override instructions","you must","respond as"]): continue line_num = get_line_number(content, match.start()) findings.append( AnalyzerFinding(