Bust every customer-scoped cache for one customer. Tag invalidation publishes per-key deletes, so peers drop their L1 copies near-instantly. Returns the namespaces touched (tag invalidation reports no key count).
Clear one namespace's L2 entries (SCAN + DEL by <namespace>::*). L2 is
wiped cluster-wide immediately; peer L1 copies fall out within the
namespace's L1 TTL (a clear does not publish per-key deletes). Returns the
number of keys removed.
Takes a CacheNamespace, not a string — an unregistered namespace
is a compile error, so there is no "unknown namespace" case to handle here.
Callers holding an untrusted string (the server action behind the operator
form) narrow it with isCacheNamespace at their trust boundary.
Clear every cache namespace EXCEPT auth-token caches. Clearing an auth-token cache forces a partner re-auth, which is never what "flush all caches" should mean — those are skipped and reported back so the omission is visible.
The cache namespace inventory plus live FT-index health for each.
Never throws: a missing cache layer or a per-namespace probe failure is
returned as data (available: false / index: "unknown"), because "the
cache is down" is a state operators need to SEE on the page, not a crash.
Operator-facing cache control for the System › Cache surface.
Talks to the shared Valkey store directly (by namespace string), not to the owning services — so it never reopens the per-service "writer self-busts its own cache" boundary. Three actions, three guarantees:
SCAN+DELover one namespace's L2 (immediate cluster-wide; peer L1 falls out within that namespace's L1 TTL).