Learning
GenerationFactDispositionCalculator currently associates diagnostics with facts by parsing human-readable GenerationDiagnostic.Message text for quoted FactIds. Adapter-authored prose can accidentally or maliciously name another fact and change its disposition. Generation #24 requires typed report links and cannot treat diagnostic prose as causality.
Scope
- Add additive typed fact/claim association to generation diagnostics or an equivalent frozen pipeline record.
- Populate typed associations at resolver, derivation, lowering and disposition stages.
- Remove message parsing from disposition calculation.
- Keep human-readable messages presentation-only and preserve existing codes/severity/outcomes/source/subject APIs.
Acceptance criteria
Related: #24, #19, #17.
Learning
GenerationFactDispositionCalculatorcurrently associates diagnostics with facts by parsing human-readableGenerationDiagnostic.Messagetext for quoted FactIds. Adapter-authored prose can accidentally or maliciously name another fact and change its disposition. Generation #24 requires typed report links and cannot treat diagnostic prose as causality.Scope
Acceptance criteria
Related: #24, #19, #17.