Skip to content

feat(dashboard): packet detail modal in live feed#68

Merged
KMX415 merged 2 commits into
KMX415:mainfrom
iceice400:feat/packet-detail-modal
Jul 8, 2026
Merged

feat(dashboard): packet detail modal in live feed#68
KMX415 merged 2 commits into
KMX415:mainfrom
iceice400:feat/packet-detail-modal

Conversation

@iceice400

Copy link
Copy Markdown
Contributor

Summary

  • Replace inline JSON row expand in the live packet feed with a structured Packet detail modal
  • Layers: RF (freq, modem, RSSI, SNR), Mesh (from/to, hops, channel hash, relay byte), Payload (decrypt success/failure + content), Capture (packet id, source, timestamp)
  • Close via ✕, Escape, or backdrop; feed keeps updating behind the modal; selected row highlight; map focus via existing setOnFocus

Why

Operators need a quick layered breakdown of each packet without scrolling raw JSON in the table. This is PR 1 of the operator diagnostics suite (frontend only, no new API).

Type

  • Bug fix
  • Feature
  • Docs
  • Refactor
  • UI
  • Installer
  • Region support
  • Hardware change

Testing

  • Local only (code review / static)
  • Tested on hardware
  • Dashboard tested on device

Manual checklist (on gateway):

  1. Open dashboard → Live feed tab; click a packet row → modal opens with four layers
  2. Encrypted / no-key packet shows Decrypt: No matching key (red)
  3. Decrypted text/position/telemetry shows human-readable Content
  4. Close with ✕, Escape, and backdrop click; row highlight clears
  5. While modal open, new packets still append to feed
  6. Clicking a row still focuses source node on map (if map tab wired)

Hardware: RAK7248 or Pi + HAT · US915 (recommended before merge)

Impact

  • Parsing
  • Relay
  • TX
  • Radio driver
  • Region logic
  • UI only
  • Installer only

Risks: Low — frontend-only; reads existing WebSocket packet.to_dict() payload. Deferred: multi-channel duplicate breakdown, channel name from hash map, ToA estimate.

AI-assisted?

  • Yes

iceice400 and others added 2 commits June 6, 2026 04:37
Replace inline JSON expand in the live packet feed with a structured modal showing RF, mesh header, payload/decrypt state, and capture metadata. Frontend only — uses existing WebSocket packet objects; no new API.
Use --accent-green/--accent-red for status values; replace em-dash
placeholders with n/a in displayed fields.

Co-authored-by: Cursor <cursoragent@cursor.com>
@KMX415 KMX415 merged commit ab3b1b5 into KMX415:main Jul 8, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants