PolicyEngine / PolicyEngine/policyengine.py
Add source-only Armenia Axiom integration
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 7
- Forks
- 9
- Avg merge
- 15h 51m
- Merged PRs (30d)
- 9
Description
Scope
Add a source-only Armenia integration behind the policyengine.py interface. The integration must execute RuleSpec through the real Axiom runtime and preserve Microcosm household-weight inheritance.
Acceptance criteria
- Add
AMYearDataandPopulaceArmeniaDatasetwithout registering or downloading an uncertified population. - Require a content-addressed Microcosm release manifest and verify the supplied H5 before loading it.
- Add an Axiom-backed Armenia model identity and execution receipt.
- Require cryptographically verified Axiom encoder apply manifests for RuleSpec inputs.
- Register PolicyEngine variables from Axiom's derived-variable metadata.
- Reject PolicyEngine policy dictionaries and behavioral overlays; counterfactuals require a separately signed RuleSpec artifact.
- Exercise executable behavior only through the real Axiom runtime. Tests skip when the native source stack is unavailable.
Non-goals
This work does not certify an Armenian population, establish current-law completeness, publish national results, or implement Armenian tax-benefit rules in Python.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Read the policyengine.py interface first, then trace the existing country integration and dataset patterns relevant to AMYearData and PopulaceArmeniaDataset. Confirm the native Axiom and Microcosm source stack available for testing; the work is done when the stated manifest verification, runtime execution, variable registration, rejection, and non-certification requirements are exercised without implementing Armenian rules.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- backend, security
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100