mirror of
https://github.com/zvx-echo6/meshai.git
synced 2026-06-11 01:14:45 +02:00
central: silently drop work_zone envelopes from broadcast pipeline
consumer.py: return None immediately for work_zone/road_closure/road_incident categories instead of routing through format_work_zone_mesh. incident_handler.py: add work_zone kind to _parse_itd_511_incident and return None immediately so itd_511 work_zone events never reach change-detection. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
parent
31c464c0ee
commit
c6c15e03c2
2 changed files with 6 additions and 1 deletions
|
|
@ -526,7 +526,7 @@ class CentralConsumer:
|
||||||
from meshai.central.firms_handler import handle_firms
|
from meshai.central.firms_handler import handle_firms
|
||||||
synthesized = handle_firms(envelope, subject, data=data) or None
|
synthesized = handle_firms(envelope, subject, data=data) or None
|
||||||
elif n is not None and category in ("work_zone", "road_closure", "road_incident"):
|
elif n is not None and category in ("work_zone", "road_closure", "road_incident"):
|
||||||
synthesized = format_work_zone_mesh(n) or None
|
return None # silently drop work zone envelopes
|
||||||
except Exception:
|
except Exception:
|
||||||
logger.exception("normalizer/renderer failed for adapter=%s category=%s",
|
logger.exception("normalizer/renderer failed for adapter=%s category=%s",
|
||||||
inner.get("adapter"), category)
|
inner.get("adapter"), category)
|
||||||
|
|
|
||||||
|
|
@ -396,8 +396,13 @@ def _parse_itd_511_incident(envelope: dict, category_raw: str, now: int) -> Opti
|
||||||
if category_raw.startswith("incident."): kind = "incident"
|
if category_raw.startswith("incident."): kind = "incident"
|
||||||
elif category_raw.startswith("closure."): kind = "closure"
|
elif category_raw.startswith("closure."): kind = "closure"
|
||||||
elif category_raw.startswith("special_event."): kind = "special_event"
|
elif category_raw.startswith("special_event."): kind = "special_event"
|
||||||
|
elif category_raw.startswith("work_zone."): kind = "work_zone"
|
||||||
else: return None
|
else: return None
|
||||||
|
|
||||||
|
# Drop work_zone envelopes -- silently suppressed
|
||||||
|
if kind == "work_zone":
|
||||||
|
return None
|
||||||
|
|
||||||
# Severity filter
|
# Severity filter
|
||||||
min_sev = str(adapter_config.itd_511.min_severity or "None")
|
min_sev = str(adapter_config.itd_511.min_severity or "None")
|
||||||
sev_order = {"None": 0, "Minor": 1, "Major": 2}
|
sev_order = {"None": 0, "Minor": 1, "Major": 2}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue