Skip to content

Refresh the local node's inventory on the refresh tick - #34

Merged
JaredP94 merged 1 commit into
mainfrom
fix/self-inventory-refresh
Nov 2, 2026
Merged

JaredP94 merged 1 commit into
mainfrom
fix/self-inventory-refresh

Conversation

@JaredP94

@JaredP94 JaredP94 commented Nov 2, 2026

Copy link
Copy Markdown
Owner

Description

Browse events re-enrich every peer but deliberately never self, and self was enriched only at startup, on service (un)registration and after identity/address changes. The local node's VRAM, CPU and memory in the discovery snapshot — the one the scheduler reads — stayed at startup values while every peer's view of it moved. The fork's live telemetry loop refreshes only utilization.

Self is now re-enriched over loopback on the existing 15 s peer-refresh tick, and emits only when the entry changed beyond LastSeen, so an idle node adds no notifications.

Fixes NVIDIA#4; adapted from NVIDIA#5, which emitted every tick.

Validation

go test ./... in nvpair-node-scanner, with a new test: unchanged → no emit, VRAM change → refreshed and one emit.

Risk

Low. scanner 1.2.1.

Checklist

  • I have read the Contributing Guidelines.
  • Every commit is signed off (git commit -s), certifying the Developer Certificate of Origin.
  • New or existing tests cover the change.
  • Relevant documentation is updated.
  • I checked the diff, changed filenames, and commit messages for credentials, private data, internal URLs, internal issue identifiers, and generated artifacts.
  • I recorded the validation commands and results above.
  • I bumped any affected component in services/versions.json, and described user-visible changes above so they reach the release notes.

Part of the upstream issue/PR review. Each branch is independent off main; they all bump services/versions.json, so the second one merged will need a trivial conflict resolution there.

Browse events re-enrich every peer but deliberately never self, and the
local entry was enriched only at startup, on a service (un)registration
and after an identity or address change. Its GPU memory, CPU and memory
figures in the discovery snapshot, the one the scheduler reads, stayed
at their startup values: load a model and every peer's view of this node
moved, but this node's own did not. The live telemetry loop refreshes
only utilization.

Re-enrich self over loopback on the existing 15 s peer-refresh tick, and
emit only when the entry changed beyond its LastSeen stamp, so an idle
node adds no notification per tick.

Fixes NVIDIA#4; adapted from NVIDIA#5, which emitted on
every tick.

Co-authored-by: canja006 <82221082+canja006@users.noreply.github.com>
Signed-off-by: Jared Ping <13906915+JaredP94@users.noreply.github.com>
@JaredP94
JaredP94 force-pushed the fix/self-inventory-refresh branch from 74dcf9a to 46ac6e0 Compare November 2, 2026 18:54
@JaredP94
JaredP94 merged commit 550ceb5 into main Nov 2, 2026
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.

Local node's GPU/CPU/memory enrichment is never refreshed after startup

1 participant