The weekly-review dashboard showed two misleading things even while the
classification pipeline was healthy:
-
"Recently Filed" read the notification queue, which the digest truncates of
filed rows after every send — so once a digest had run the table showed
nothing. It now reads the durable pending_meta/ sidecars (the system of
record) unioned with the not-yet-truncated queue, deduped, is_filed-filtered,
within a days window. Human-filed docs surface via the reviewed=True flag. -
"Recent Errors" had no time filter, so a weeks-old error read as current.
read_errors()/api/errors now take a days window and the dashboard passes its
period selector. -
The metric cards/pie read .analytics.json, which only ever recorded manual
saves (so auto-classified was hardcoded ~0%). The counts are now derived from
the sidecars: filed = is_filed; manual = reviewed=True; auto = the rest. A
short TTL cache fronts the per-load sidecar scan, shared by both endpoints.