KB-2FCD
11000x · 08 — D9 conformance scan (156 → 163, all classes ok=true)
5 min read Revision 1
iu-corev0.611000xd9-conformancedot-scan163-objects
11000x · 08 — D9 conformance scan
SSOT inventory bumps in sql/iu-core/runtime/110_iu_core_dot_conformance_scan.sql
+ ('view', 'v_piece_event_outbox'),
+ ('function', 'fn_iu_piece_emit_event'),
+ ('function', 'fn_iu_lifecycle_log_emit_piece_event_trg'),
+ ('function', 'fn_iu_piece_event_runtime_healthcheck'),
+ ('trigger', 'trg_iu_lifecycle_log_emit_piece_event'),
+ ('config', 'piece_event_runtime.emit_enabled'),
+ ('config', 'piece_event_runtime.dry_run_only'),
D9 verdict VALUES bumped:
- FROM (VALUES ('table',25),('view',23),('function',56),('trigger',5),
- ('config',10),('event_type',21),('route',16)) AS x(class,expected)
+ FROM (VALUES ('table',25),('view',24),('function',59),('trigger',6),
+ ('config',12),('event_type',21),('route',16)) AS x(class,expected)
Total: 156 → 163 (+7 objects).
Live D9 conformance scan output
D9_conformance|config|12|12|t
D9_conformance|event_type|21|21|t
D9_conformance|function|59|59|t
D9_conformance|route|16|16|t
D9_conformance|table|25|25|t
D9_conformance|trigger|6|6|t
D9_conformance|view|24|24|t
ROLLBACK
Every class reports ok=true. D8 drift guard reported 0 unregistered IU Core objects.
Pinning test bumps in same commit (per [[feedback-pinning-tests-bump-per-macro]])
| File | Old | New |
|---|---|---|
tests/test_iu_core_ddl.py::EXPECTED_COUNTS |
table 25 / view 23 / fn 56 / trg 5 / cfg 10 / ev 21 / rt 16; sum=156 | table 25 / view 24 / fn 59 / trg 6 / cfg 12 / ev 21 / rt 16; sum=163 |
tests/test_iu_core_10000x_piece_lifecycle.py |
('table',25),('view',23),('function',56),('trigger',5) |
('table',25),('view',24),('function',59),('trigger',6) |
tests/test_iu_core_120x_three_axis.py |
('view',23), ('function',56) |
('view',24), ('function',59) |
tests/test_iu_core_1k_plus_vector_boundary.py |
(25, 23, 56) tuple | (25, 24, 59) tuple |
tests/test_iu_core_1k_vector_sync_lease.py |
('table',25), ('view',23), ('function',56), ('config',10) |
('view',24), ('function',59), ('config',12) |
tests/test_iu_core_2400x_three_axis_table_promotion.py |
(25, 23, 56) tuple | (25, 24, 59) tuple |
tests/test_iu_core_240x_composer.py |
('view',23), ('function',56), ('config',10) |
('view',24), ('function',59), ('config',12) |
tests/test_iu_core_3000x_auto_refresh_external_surface.py |
('view',23), ('function',56), ('config',10) |
('view',24), ('function',59), ('config',12) |
tests/test_iu_core_4000x_auto_refresh_trigger_ui_runtime.py |
(25, 23, 56, 5) tuple | (25, 24, 59, 6) tuple |
tests/test_iu_core_480x_composer_events.py |
all 6 class tokens | bumped per class |
tests/test_iu_core_500x_operator_surface.py |
('function',56) |
('function',59) |
tests/test_iu_core_540x_operator_runtime.py |
('view',23), ('function',56), ('config',10) |
('view',24), ('function',59), ('config',12) |
tests/test_iu_core_60x_delivery_seam.py |
('trigger',5), ('config',10) |
('trigger',6), ('config',12) |
tests/test_iu_core_structure_op_layer.py |
('function',56), ('view',23), ('config',10) |
('function',59), ('view',24), ('config',12) |
13 pinning files bumped in this commit, as the feedback-pinning-tests-bump-per-macro rule requires.
What's NOT counted by D9
These exist live but are intentionally excluded from the IU Core SSOT:
- Migration 030 only modifies a CHECK constraint — constraints are not in D9's 7 object classes.
- The 6 piece.* events in event_type_registry were registered by 10000x; their D9 inventory entries already exist (see
('event_type', 'piece.split')etc). - The 121,289 rows in event_outbox are data, not schema.
Cross-check vs live pg_proc / pg_class
public.tables = 263 (>>25 by design — D9 scans only IU Core surface)
public.functions = 486 (>>59 by design — D9 scans only IU Core surface)
D9 is a SUBSET-coverage scan over the IU Core surface, NOT a total catalog scan. D8 (drift guard) catches IU-Core-shaped objects that aren't in the SSOT — 0 such drift was reported live.