Add Belgium pension, GRAPA, and source handoffs - #213
Draft
MaxGhenis wants to merge 12 commits into
Draft
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Source pin and fact scope
Official SFPD artifact:
https://www.sfpd.fgov.be/files/3432/fr_stat_2502.pdf0d6173e71a0e9c2cd220cd024a5b5fecbb6ca79f8b791cbd2b3368e7f8412106All four facts are February 2025
observationassertions withadministrativeprovenance, Belgian country scope, exact publisher periods, and full source-cell lineage. The pension beneficiary snapshot is explicitly dated 1 February 2025. The pension total is narrowed to the employee and/or self-employed regimes actually covered by table 2.2.An authenticated read-only fetch from the
ledger-rawbucket returned exactly 2,319,705 bytes with the pinned SHA-256. No R2 object was uploaded or mutated.No aging, period alignment, reconciliation, imputation, take-up mechanics, target profile, model binding, solver construction, PolicyEngine-computed value, or Axiom concept is included.
Validation
validate-package sfpd-legal-pension-caseload-2025 --year 2025: PASS, 4 record sets/rows/measures and zero errors/warnings;git diff --check: PASS;ledger-source-fidelity: PASS;ledger-boundary: PASS.The full bundle run exposed stale period/entity histograms for these four replacement facts. The corrected goldens move four facts from calendar year 2025 to February 2025 and two expenditure facts from person to government. No fact value, selector, or source-package semantic changed in that correction.
Follow-ups and governance
The regional child-benefit and HFCS sources require native exports or official publisher responses. Their deterministic retrieval instructions are in
FETCH-MANIFEST-BELGIUM-PUBLIC-FACTS.json; no values were transcribed. Follow-up issues are #214--#218.The literal
ledger-source-ingestor.allowed_pathslist omits several paths this task explicitly requires (PROGRESS.md,db/data/**, the root handoff, issue drafts, and the pre-existing Belgium test). This PR makes no contract, schema, core, model, or consumer-owned behavior change; maintainer acceptance or a registry clarification remains required for that path inconsistency.Exact-head Fable adjudication at
c4969e15136b9eba1ebedf6c51aa5938acf697ee: APPROVE, no critical/high findings and no blocking code finding. This remains a draft pending final-head CI and the disclosed path-registry decision. Nothing is merged.Refs #69