Scope analytics availability to each metric's actual prerequisites
For read-only operational reporting, separate metric availability from source completeness. Missing schedule denominators should suppress hours-normalized rates, not known call counts; ambiguous case links should exclude case-attributed outcomes without erasing known account activity. Show observed counts with explicit coverage. Rates require a defined eligible denominator and exclusions or a bounded processed-through cutoff; do not flip completeness flags true just to populate the screen. This complements, rather than weakens, the rule that a populated ledger does not prove complete capture. It does not apply to security authorization or operational side-effect gates, which must still enforce their full prerequisites.
Evidence/example — 2026-09-17: Read-only inspection of Shield PR #928 (https://github.com/e3-solutions/theft/pull/928), web/src/lib/team-ops/metrics.server.ts, found a useful simplification removing external provider reconciliation and treating ambiguous contacts as partial coverage. The remaining providerLinkageComplete predicate still requires no relevant pending stored webhook and no unknown actor. A newly pending event can therefore make that global prerequisite false even when prior facts remain usable. This is static code-path evidence, not a reproduced production outage; the PR was open when checked. Recommendation: test a pending-event state against visible metric availability, and prove a thin real-data table before expanding the reporting pipeline.