Skip to content

feat(packets): populate advert summaries in history and live events - #143

Open
n30nex wants to merge 1 commit into
MeshCore-Beacon:devfrom
n30nex:codex/beacon-packet-summaries
Open

n30nex wants to merge 1 commit into
MeshCore-Beacon:devfrom
n30nex:codex/beacon-packet-summaries

Conversation

@n30nex

@n30nex n30nex commented Sep 12, 2026

Copy link
Copy Markdown
Contributor

What this PR does

Populate the existing optional PacketSummary.summary with an advert's own stored name, and carry the same name in live packetObservation.packet.summary. Global lists, IATA-filtered lists and reconnect backfill all include it. Historical names come from packet metadata rather than a mutable current node record.

Addresses the advert-name example in #99. Empty/missing names, unsupported packet types and unverified live adverts omit the field. Other payload-summary formats remain separate follow-ups.

Type of change

  • New feature

Checklist

  • Build, formatting, vet and full Go tests pass
  • Regression coverage and focused race checks pass
  • SQL and Swagger regenerated; no schema migration or new dependency
  • Contribution rules followed; issue comment precedes implementation

Testing notes

The original live event fails the named-advert regression. Signed-wire tests cover ordinary and Unicode names, invalid UTF-8 normalization, absent/empty names and tampered signatures in both event variants. Native PostgreSQL tests cover historical and backfill responses, missing observations, invalid metadata shapes and unsupported types; each list/backfill read remains one query.

Standalone and combined native Pi builds pass the full Go suite with PostgreSQL enabled. GitHub Actions CI and CodeQL pass. Web PR #46 displays the optional field while retaining endpoints and older-server compatibility.

The Pi preview runs server c955ac43 and web 120ec73d, with matching downloadable source. Live checks matched three global, three regional and three backfill summaries to the packet metadata, plus one newly received WebSocket advert. Desktop/mobile rendering and expansion checks pass; both MQTT feeds remain connected and advancing. Test receipts retain aggregate outcomes only.

AI assistance was used for implementation and verification under the author's ongoing contribution workflow.

@n30nex

n30nex commented Sep 13, 2026

Copy link
Copy Markdown
Contributor Author

@MrAlders0n please review this change with your Claude agent as part of the September 13 Beacon review batch. The current candidate is 71feeed639ec; validation and Pi evidence are in the PR description.

Please review the advert-summary history/live contract together with MeshCore-Beacon/beacon-web#46. Issue #99 remains open: please confirm whether the advert example completes the intended scope or identify the other required packet summaries.

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.

1 participant