02 Source Class Inventory
02 — Source Class Inventory (v_rp_source_class_inventory)
21 source classes total: 16 adapter-instrumented + 5 non-instrumented (tracked separately so the universe is honest, not implied-complete by the 16).
Instrumented (16) — in v_rp_source_adapter_coverage
DB-fn (live daily recompute): approval_requests 230, dot_family_pairs 131, dot_iu_command 54, dot_tools 309, event_type_registry 52, job_queue 8 (kinds), orphan_components 84, pg_proc_functions 571, pg_trigger 410, workflows 2 — all COVERED. FS adapters: fs_dot_bin 287, fs_scripts 42 — COVERED. HOST adapters: docker_containers 11, host_crontab 54, systemd_timers 22 — COVERED. KB: kb_sop_docs 2 — PARTIAL.
Non-instrumented (5) — appended by this macro so they are not invisible
| source_class | layer | scope | count | why tracked |
|---|---|---|---|---|
| ui_route_package_source | CODE | UNKNOWN | null (never 0) | Nuxt RP UI in git; not DB-scannable; operator-gated |
| host_trigger_classes | HOST | PARTIAL | 77 | crontab 49 + systemd-os 18 + cron.d 6 + systemd-app 4; enumerable_in_db=false; RP-visible 0 |
| process_observations | DB | PARTIAL | 15 | 6 run + 9 component; thin runtime evidence; REAL_RUN off |
| pivot_definitions | DB | COVERED | 39 | AX-BASE backbone |
| governance_metadata | GOV | COVERED | 27 | axis_registry + axis_assignment + ownership |
Honesty principle
ui_route_package_source.observed_count is NULL, not 0 — a code source not visible from the DB must read UNKNOWN, never zero. host_trigger_classes (77) and kb_sop_docs (2) carry PARTIAL so a UI cannot present them as complete. This is the foundation for the no-blind-spot-as-zero guard (doc 12).