PolicyEngine / PolicyEngine/microcosm

Port US PUF real-half and clone support diagnostics

Open
#47 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
0
Forks
4
Avg merge
1d 3h
Merged PRs (30d)
94

Description

Source backlog

Copied from the still-relevant parts of the policyengine-us-data backlog:

  • PolicyEngine/policyengine-us-data#1139: PUF clone half receives zero final weight.
  • PolicyEngine/policyengine-us-data#1158 / PR PolicyEngine/policyengine-us-data#1159: enforce PUF-clone weight-share floor and tax-pathology cap before upload/publication.
  • PolicyEngine/policyengine-us-data#1170: separate PUF real-half QRF imputation from clone-half rich-preserving QRF, with income-conditioned predictors.
  • Related: PolicyEngine/policyengine-us-data#555, #560, #590, #595, #541.

Populace direction

Translate the useful behavior into Populace's source-plan architecture rather than porting old staged-pipeline code.

  • Country content may declare support contracts, predictors, support floors, and smoke expectations in specs/manifests.
  • Shared Populace runtime code should implement any generic real-half / clone-half imputation operation.
  • No policyengine-us-data, Microplex, or L0 implementation should be copied directly.

Acceptance criteria

  • Populace has a US support diagnostic for PUF real-half vs clone-half weight share and tax-pathology share.
  • A release/publish gate rejects missing or pathological clone support before artifact publication.
  • PUF-imputed tax-detail variables have fixture/smoke tests preventing known explosions such as charitable/business/tax-detail outliers.
  • The support contract is manifest/spec-driven and covered by unit tests.

Part of #46.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by locating Populace's source-plan specs/manifests, shared runtime imputation operations, release or publication gate, and existing fixture, smoke, and unit-test entry points. Define the manifest-driven support contract for PUF real-half and clone-half behavior, then cover weight-share and tax-pathology diagnostics, clone-support rejection, and imputed tax-detail regression cases. Done means the contract and tests enforce all listed acceptance criteria without copying policyengine-us-data, Microplex, or L0 code.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
data-engineering, release, testing-qa
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.