Repository navigation
Store each board's report of itself from its heartbeat - #20
Merged
Merged
Conversation
Boards (agent 0.3.0 on) send `telemetry.board` with every heartbeat: the board app they run, the content they show and how many days are left, software waiting for the nightly install window, the outcome of the last agent self-update, and whether their clock can be believed. The backend keeps the latest one per device (devices.board_report, JSON text, plus board_report_at; V3 for Postgres and SQLite) and returns it in the device summaries the admin portal lists, as `board` and `boardReportAt`. A heartbeat without a report keeps the last one; unknown fields in a report are ignored, so a newer agent never breaks heartbeat parsing. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01VUxfdFFUkL7SmAEUvUzspy
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
The agent now reports whether it follows the release channels, when it last checked and why that failed; which offline routes the board accepts (service port, USB); and its content's time zone, so the portal can work out days left again from lastDay when a report is old. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01VUxfdFFUkL7SmAEUvUzspy
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
From agent 0.3.0 (LensBridge/agent#3), every heartbeat carries
telemetry.board, the board's own report of itself:The backend keeps the latest report per device and returns it to the admin portal:
BoardReportrecord, stored throughBoardReportConverteras JSON text indevices.board_report, plusboard_report_at. The V3 migration exists for both Postgres and SQLite.HeartbeatServicestores the report when the heartbeat has one. A heartbeat without one keeps the last report.DeviceSummaryreturns it asboardandboardReportAt.Test plan
mvn test: 602 pass, includingHeartbeatServiceTestcases. One parses a full agent heartbeat JSON (with the new fields and an unknown field) and round-trips the stored report; one checks that a heartbeat without a report keeps the last one.validateaccepted the schema.Portal side: LensBridge/LensBridgeFrontend#10.
🤖 Generated with Claude Code
https://claude.ai/code/session_01VUxfdFFUkL7SmAEUvUzspy