08 — Decorated-on-Generated Design
08 — Decorated-on-Generated Design
Current decorated contract v_rp_universal_node_ui_contract_current = 34 columns (label, count_value, count_status, lifecycle/governance_status, warning_flags(+v2), has_children/child_count/child_node_codes, grouping_status/scope, final_substrate_ref/substrate_available, drill_action, next_route, owner_blocker, related_axes, proof_source, empty_reason, reliability_label, source_scope, confidence_score, lane_code, count_semantics, blocker_type_v2, next_action_v2, count_provenance/grain, reconciles_against, count_correction_flag). It is a thin alias of v_rp_universal_node_ui_contract_current_v2.
Generated backbone v_rp_universal_node_ui_contract_generated_v2 = 7 columns (axis_code, node_code, count_value, source_view, leg_kind, is_registry_backed, is_synthetic) — membership + count + provenance, NO decoration.
Design: decorated-on-generated = generated_v2 backbone LEFT JOIN decoration by (axis_code, node_code). Decoration columns come from the decorated contract. OOM-safety constraint: the candidate is a 2-stack (no-smoke) view (SLOW_BOUNDED); the parity proof is FUNCTION-BACKED (each gate ≤2-stack, no smoke). Circularity constraint: for an actual repoint, decoration must source from _current_v2 (not the _current alias). No-hardcode constraint: truly de-hardcoding decoration (registry-driven) is authority-gated (the 58 view-edits).