The v1.4.38.5 / v1.4.38.6 chain promised a fast-path recovery for power-user accounts but gave the operator no way to confirm whether the boot-time discovery had actually found a stranded user — the success log only fired when enqueued > 0 || skipped > 0, so the silent "found nothing" case looked identical to the silent "boot hook never ran" case. And once the worker was up there was no way to re-trigger discovery short of bouncing the container.
Added
POST /api/admin/rollups/recompute— operator-triggered ad-hoc rollup recompute. Body{ userId: string }synchronously folds one user. Body{}re-runsenqueueBootTimeRollupBackfill()to kick the boot-discovery loop across every user. Admin-gated.fallback_reason+missing_typesannotate on theslim_summarieslive-fallback path. When the rollup-fast-path declines, the wide-event now reports exactly which measurement types are missing DAY-bucket coverage so the operator can match a slow/api/analyticscold-mount to the responsible type without DB shell access.
Changed
- Boot-backfill discovery logs every result, including the silent "no users to backfill" case.
Operator notes
- No new migration. No env-var change.