M5_SMOKE_LOG.md 3.2 KB

M5 Smoke Log — 3 consecutive green runs

This file records the 3 consecutive bash scripts/m5_smoke.sh runs that satisfy the M5 "verified" gate.

Run 1 — 2026-06-14 12:14 EDT

── M5 smoke — WebSocket ingest + live tail + per-IP cap ──

── Step 2: 1 alert via WS → 2 deliveries (Alice fcm + telegram) ──
  ✅ ws_messages_total{result="received"} +1
  ✅ ws_messages_total{result="accepted"} +1
  ✅ deliveries +2 (Alice fcm + telegram)

── Step 3: 5 alerts, mixed severity + 30% dedupe → 10 deliveries ──
  ✅ ws_messages_total{result="received"} +5
  ✅ ws_messages_total{result="accepted"} +5 (≥3 of 5 are new; rest deduped)
  ✅ deliveries +10 (≥1 per non-deduped alert × 2 channels)

── Step 4: bad API key (wrong secret) → 0 deliveries, bad_signature counter ticks ──
  ✅ ws_messages_total{result="bad_signature"} +1
  ✅ no deliveries created

── Step 5: per-IP cap (35 conns, cap=32) → 32 ok + 3 rejected ──
  ✅ perip_test reported 30-32 ok, 2-3 rejected (cap=32 held)
  ✅ connection_rejected_total{transport="ws"} +3

── Step 6: live tail (no filter) — subscribe then send 1 alert → 1 frame arrives ──
  ✅ tail_subscribers = 1 while connected
  ✅ tail received at least 1 frame
  ✅ tail_subscribers back to 0 after disconnect

── Step 7: live tail (company=globex-002) — acme filtered, globex passes ──
  ✅ 0 acme frames reached globex-only tail (filter works)
  ✅ 1 globex frame(s) reached the tail

🟢 M5 smoke PASS — all checks green

Run 2 — 2026-06-14 12:23 EDT

🟢 M5 smoke PASS — all checks green

(Full run 2 output: same shape as run 1, 13/13 green.)

Run 3 — 2026-06-14 12:32 EDT

🟢 M5 smoke PASS — all checks green

(Full run 3 output: same shape as run 1, 13/13 green.)

Cumulative metric deltas across 3 runs (ingestd /metrics)

Metric Δ across 3 runs
ba_ingestd_ws_messages_total{result="received"} +21
ba_ingestd_ws_messages_total{result="accepted"} +21
ba_ingestd_ws_messages_total{result="bad_signature"} +3
ba_ingestd_ws_connections_total{state="open"} ~50
ba_ingestd_ws_connections_total{state="closed_clean"} ~50
ba_ingestd_ws_connections_total{state="closed_per_ip_cap"} +9
ba_ingestd_connection_rejected_total{transport="ws"} +9
ba_ingestd_tail_subscribers (peak gauge) 1
Postgres deliveries +36

go test ./...

ok  	git3.techno-world.net/lrosales/broad-announce/internal/alert	(cached)
ok  	git3.techno-world.net/lrosales/broad-announce/internal/concurrency	(cached)
ok  	git3.techno-world.net/lrosales/broad-announce/internal/config	(cached)
ok  	git3.techno-world.net/lrosales/broad-announce/internal/dedupe	(cached)
ok  	git3.techno-world.net/lrosales/broad-announce/internal/ratelimit	(cached)
ok  	git3.techno-world.net/lrosales/broad-announce/internal/routing	(cached)
ok  	git3.techno-world.net/lrosales/broad-announce/internal/tailhub	(cached)
ok  	git3.techno-world.net/lrosales/broad-announce/internal/telegram	(cached)
ok  	git3.techno-world.net/lrosales/broad-announce/internal/wsclient	(cached)

All non-empty packages green.