feat: add host system health monitoring - #91
Merged
Conversation
Signed-off-by: Tiberiu Socaci <tsocaci@makeitfuture.com>
makeitfutureDev
marked this pull request as ready for review
September 10, 2026 13:03
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.
The admin UI previously had no host resource monitoring. Add System health as the last navigation item, backed by daemon-side Linux collection rather than the standalone prototype's generated values.
The collector samples every five seconds, persists minute averages/peaks for 30 days, retains storage for 186 days with hourly compaction, and rescans hardware every five minutes or on refresh. The authenticated page supports live/pause/refresh, historical ranges, CPU/RAM and storage charts, truthful empty/error states, capacity warnings and an evidence-dependent forecast. A bounded shutdown flush preserves partial-minute peaks through restart. No container mounts, engine permissions or public health disclosures are widened.
Validation:
Beta deployment was explicitly requested without waiting for the remaining tests. The 24-hour container canary was stopped early and is not recorded as passed. The target-host canary and private QA registry entry remain unexecuted; neither blocks this explicitly authorized beta deployment. Safe restart and activation verification follow the beta merge. No stable release or QA-account substitution was authorized. Cases SYS-01 through SYS-05 are documented in TEST-PLAN.md; they are engine-independent because collection and browser rendering do not invoke an engine. This PR is not a stable release request.