G.9:4.3b — Conditional causal method rung parity
Preface node
heading:g-9-4-3b-conditional-causal-method-rung-parity:80761
What this page is
This is generated FPF reference text from the specification preface or supporting sections. It helps interpret FPF; it is not FPF Reference product documentation.
Methodology
Use it to understand how the specification wants to be read, then return to a route, pattern, or work packet for active work. Cite generated IDs only when the wording changes the task decision.
Content
Use this conditional extension only when a parity report compares causal methods or causal-use claims. The parity report starts with a cheap screen and may stop at degraded parity or abstain when methods plainly answer different causal uses.
Open the full CausalMethodRungParityRecord only when CausalRungParityScreenOutcome = comparableEnoughForFullRecord. Other outcomes are admissible cheap stops: degraded parity, abstain, or apply [C.28](/generated/patterns/C.28), without fabricating a full parity record.
targetCausalityLadderRungSet is the first parity check. Here CausalityLadderRung is a cited causal-use taxonomy value, not a maturity level, upgrade ladder, or superiority scale. If the set has more than one causality-ladder rung and no declared bridge and loss makes the comparison meaningful, the screen returns crossRungDegrade rather than treating the methods as peers.
causalEvidenceSupportBasisSet is the second parity check. If methods depend on different causal support bases and no declared support-loss or bridge makes the comparison meaningful, the screen returns crossSupportBasisDegrade.
sameEstimand = no returns differentEstimandAbstain unless the report names a shared estimand, a bridge and loss relation, or a reason the comparison is intentionally non-parity. A scalar parity result is not admissible across different estimands by default.
sameOutcomeWindow = no returns differentOutcomeWindowAbstain unless the report pins a common follow-up window or declares the window loss. A method that wins at one horizon is not parity-superior at another horizon by default.
Parity reports comparing causal methods then carry a CausalMethodRungParityRecord:
Parity reports comparing causal methods fill this record so the "same" claims are checkable by fields rather than prose:
- comparedMethodsRef;
- targetCausalityLadderRung;
- targetCausalUseClaimKind: CausalUseClaimKind;
- estimandRef;
- interventionBudgetOrActionSetRef;
- causalEvidenceSupportBasis;
- causalUseSupportRecordRef and causalUseSupportVerdict when a
[C.28](/generated/patterns/C.28)support record or verdict is being consumed; - causalFollowUpWindowRef;
- outcomeMeasureRef;
- declaredCausalityLadderBridgeOrLossRef where causality-ladder rungs differ;
- causalTransportabilityProfileRef where source population, target population, domain, context, or evidence regime differs;
- causalParameterEstimationProfileRef where estimation validity, uncertainty, nuisance handling, or sensitivity differs;
- degraded parity or abstain result where parity cannot be established.
Causality-ladder parity is a degrade/abstain condition, not a universal comparison ban. Cross-rung method comparisons must name declaredCausalityLadderBridgeOrLossRef and cannot become superiority claims by default.
What changes in practice: one benchmark cannot compare a predictive model, an interventional action/effect question optimizer, and a counterfactual comparison question strategy as one undifferentiated "method improvement" set.
What this does not authorize: [G.9](/generated/patterns/G.9) does not decide causal identification, causal fairness, or counterfactual sampling realizability; it keeps parity and benchmark harness authority and sends causal-use support to [C.28](/generated/patterns/C.28).
Last Updated: 2026-06-08 — upstream FPF commit 093d30e8 (github.com/ailev/FPF)