mirror of
https://github.com/rcourtman/Pulse.git
synced 2026-11-08 11:03:31 +00:00
8b6c93d3e5
The first registry diff after Pulse starts compares against an empty generation, so every restart or update recorded each resource the fleet already had as "resource discovered". On a 1,776-resource mock fleet one restart added 1,776 such rows, which buries a night's real changes when an agent asks list_recent_changes what happened overnight, for example after an auto-update. Before its first diff the monitor adapter now reads each resource's last recorded state. A known resource's first appearance in the run records nothing when that state still holds, a transition from it marked "resource state changed while Pulse was stopped" when it differs, and a normal discovery when it was last recorded as removed. The while-stopped transition keeps the boundary availability reports need for a resource that recovered or failed during the gap. The same restart now records 35 rows, each a real difference. Removals during the gap are still not recorded, and a resource whose history aged out or whose canonical ID changed across the restart is discovered once more.