The capability snapshot blocks its caller while it probes, and since Part B the vision probe on a reasoning model spends 10 to 15 seconds thinking before it answers, so the System panel and /api/health hang on roughly every other poll. Serve a stale snapshot instantly and refresh expired probes in ONE background pass (single-flight); per-entry checkedAt keeps the staleness honest and a dead runtime still goes loud on the next background pass. The vision probe also gains its own registry-level cache (3 minutes, the reasoning-probe precedent) so panel polling stops sending an image to the model runtime three times a minute.
The capability snapshot blocks its caller while it probes, and since Part B the vision probe on a reasoning model spends 10 to 15 seconds thinking before it answers, so the System panel and /api/health hang on roughly every other poll. Serve a stale snapshot instantly and refresh expired probes in ONE background pass (single-flight); per-entry checkedAt keeps the staleness honest and a dead runtime still goes loud on the next background pass. The vision probe also gains its own registry-level cache (3 minutes, the reasoning-probe precedent) so panel polling stops sending an image to the model runtime three times a minute.