From 7aca24946837d3e84e02f84fbfd6ff3ceb316e9a Mon Sep 17 00:00:00 2001 From: Brad Stein Date: Wed, 4 Feb 2026 13:51:12 -0300 Subject: [PATCH] atlasbot: tighten metric fact matching --- atlasbot/engine/answerer.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/atlasbot/engine/answerer.py b/atlasbot/engine/answerer.py index 6488b82..6610b5c 100644 --- a/atlasbot/engine/answerer.py +++ b/atlasbot/engine/answerer.py @@ -2264,7 +2264,11 @@ def _reply_matches_metric_facts(reply: str, metric_facts: list[str]) -> bool: reply_numbers = set(re.findall(r"\d+(?:\\.\d+)?", reply)) if not reply_numbers: return False - fact_numbers = set(re.findall(r"\d+(?:\\.\d+)?", " ".join(metric_facts))) + fact_numbers: set[str] = set() + value_pattern = re.compile(r"(?:>=|<=|=|:)\\s*(\\d+(?:\\.\\d+)?)") + for line in metric_facts: + for match in value_pattern.findall(line): + fact_numbers.add(match) if not fact_numbers: return True return bool(reply_numbers & fact_numbers)