feat(status): GET /agentmemory/status and a viewer Health tab (#1408)
* feat(status): GET /agentmemory/status and a viewer Health tab One report of what is wrong with an install and how to fix it: health monitor state and alerts, LLM and embedding providers, the circuit breaker, functions failing on at least 20% of 5+ calls (with a provider-specific fix for summarize, compress and graph extraction), observations missing from the search index, graph snapshot age, ports, uptime, the pinned engine version and every feature flag. The missing-observation check reuses the boot reconcile scan (findUnindexedObservations, split out of reconcileIndex), so it counts exactly what search cannot find instead of comparing approximate session counters. Every probe is time-boxed at 5 s. Browsers get an HTML page with no scripts behind a strict nonce CSP; other clients get JSON, and ?format=json|html forces either. Same bearer auth as the rest of the API. The flag list moves into buildConfigFlags() so config/flags and status share it, and the engine pin moves into src/version.ts so the CLI and the status report read the same constant. * chore(skills): regenerate the REST reference for the new endpoint npm run skills:check fails CI when plugin/skills/agentmemory-rest-api/ REFERENCE.md does not list every registered REST route; regenerated with npm run skills:gen. * fix(status): report a missing health snapshot and share one index scan A status report with no health snapshot (none yet, or the probe timed out) added no problem and could read ok; it now adds an info-level health-check-unavailable finding. Every status request started its own findUnindexedObservations scan, and the 5 s probe timeout only stopped waiting, so repeated requests stacked full storage scans. singleFlight() shares one in-flight scan between overlapping requests and reuses its result for 30 s; a failed scan is dropped so the next request retries.
R
Rohit Ghumare committed
20f26e4e1026d87125724f1ca430c8100464350c
Parent: bb6cef3
Committed by GitHub <noreply@github.com>
on 9/25/2026, 3:24:40 AM