meshai/meshai
K7ZVX 11e37c4f48 fix(central): v0.4 D.2 -- remap Central adapter names to meshai source for consistent dashboard attribution
Phase D catalogued a source-name divergence: central-sourced events carried
Central's adapter name (wfigs_incidents, nwis, swpc_alerts, wzdx) rather than
meshai's native source (fires, usgs, swpc, traffic), so the C.2 family-tab
per-adapter event filtering (which keys on the native source name) wouldn't
group central events under the right adapter.

Fix: CENTRAL_ADAPTER_TO_SOURCE table in consumer.py; normalize() now remaps
inner Event.adapter -> meshai source, falling back to the literal adapter name
for anything not in the table (logged at DEBUG when a translation happens).

before -> after (Event.source):
  wfigs_incidents / wfigs_perimeters -> fires
  nwis                               -> usgs
  swpc_alerts / swpc_kindex / swpc_protons -> swpc
  wzdx                               -> traffic
  nws, usgs_quake, firms             -> unchanged (1:1, omitted from table)
  unknown (e.g. experimental_foo)    -> passthrough as-is

Tests: tests/test_central_consumer.py parametrized test_central_adapter_source_remap
(6 cases: 4 remaps + nws passthrough + unknown passthrough). Full suite: 283 passed.

In-prod verify (rebuilt, ephemeral probe over real Central data): the four
observed adapters now normalize to source=fires/usgs/swpc/traffic; nws passes
through. No live flip needed; container stays native baseline + healthy.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-28 06:12:47 +00:00
..
backends fix: Remove hard-coded token limits on LLM responses 2026-05-05 22:06:50 +00:00
central fix(central): v0.4 D.2 -- remap Central adapter names to meshai source for consistent dashboard attribution 2026-05-28 06:12:47 +00:00
cli feat: Full alert engine — 17 conditions, scaling cooldown, per-condition TUI toggles 2026-05-06 05:39:11 +00:00
commands build: normalize all line endings to LF 2026-05-14 22:43:06 +00:00
dashboard fix(dashboard): v0.4 C.2.1 -- route PUT /config to multi-file save_section (Rule 17 persistence unblocked) 2026-05-28 03:17:30 +00:00
env feat(central): v0.4 C.1 Central connector backend (no-op until adapter source flipped) 2026-05-28 02:28:19 +00:00
notifications fix(notifications): Phase 2.16.1 unblock pipeline -- grouper flush + rules coercion + toggle warning 2026-05-28 00:36:13 +00:00
scripts build: normalize all line endings to LF 2026-05-14 22:43:06 +00:00
sources build: normalize all line endings to LF 2026-05-14 22:43:06 +00:00
__init__.py Initial commit: MeshAI - LLM-powered Meshtastic assistant 2025-12-15 11:53:46 -07:00
__main__.py Initial commit: MeshAI - LLM-powered Meshtastic assistant 2025-12-15 11:53:46 -07:00
alert_engine.py refactor: simplify severity to 3 levels (routine/priority/immediate) 2026-05-13 19:05:50 -06:00
chunker.py feat: ACK-based message delivery, markdown stripping, prompt fixes 2026-05-06 04:17:44 +00:00
config.py feat(central): v0.4 C.1 Central connector backend (no-op until adapter source flipped) 2026-05-28 02:28:19 +00:00
config_loader.py fix(central): v0.4 C.3.1 -- preserve secret refs in save_section + deliver_policy=NEW (no backlog flood) 2026-05-28 04:55:20 +00:00
connector.py fix: node_id int handling in connector + rule stats data path 2026-05-13 19:27:04 -06:00
context.py Add passive mesh context awareness — observe channel traffic, inject into LLM prompts 2026-02-24 22:02:42 +00:00
geo.py build: normalize all line endings to LF 2026-05-14 22:43:06 +00:00
history.py Support unlimited message history when max_messages_per_user is 0 2026-02-24 07:03:15 +00:00
knowledge.py build: normalize all line endings to LF 2026-05-14 22:43:06 +00:00
main.py feat(central): v0.4 C.1 Central connector backend (no-op until adapter source flipped) 2026-05-28 02:28:19 +00:00
memory.py Unify memory implementations: delete AnthropicMemory and GoogleMemory 2026-02-23 20:14:50 +00:00
mesh_data_store.py fix: notification system improvements and threshold corrections 2026-05-14 06:03:51 +00:00
mesh_health.py fix: notification system improvements and threshold corrections 2026-05-14 06:03:51 +00:00
mesh_models.py feat: Feeder-level gateway awareness from /api/packets_seen 2026-05-05 19:55:23 +00:00
mesh_reporter.py fix: notification system improvements and threshold corrections 2026-05-14 06:03:51 +00:00
mesh_sources.py build: normalize all line endings to LF 2026-05-14 22:43:06 +00:00
meshmonitor.py build: normalize all line endings to LF 2026-05-14 22:43:06 +00:00
responder.py fix: Switch to delay-based delivery — wantAck firmware retries cause duplicates 2026-05-07 21:50:09 +00:00
router.py build: normalize all line endings to LF 2026-05-14 22:43:06 +00:00
subscriptions.py build: normalize all line endings to LF 2026-05-14 22:43:06 +00:00