Skip to content

Add base year support for parameter uprating #403

@MaxGhenis

Description

@MaxGhenis

Summary

Add support for specifying a base year and base value in uprating metadata to match statutory language in tax codes like IRC §24(i), §63(c)(7), etc.

Current Behavior

Uprating currently uses incremental calculation:

value(2027) = value(2026) × (CPI(2026) / CPI(2025))
value(2028) = value(2027) × (CPI(2027) / CPI(2026))

Desired Behavior

Enable base-year calculation per statutory requirements:

value(year) = base_value × (CPI(year) / CPI(base_year))

Proposed API

metadata:
  uprating:
    parameter: gov.irs.uprating
    base_year: 2017  # Calendar year for base inflation calculation
    base_value: 1400  # Optional: for verification/documentation
    rounding:
      type: downwards
      interval: 100

Key Requirements

  1. Manual values override calculation: If IRS announces a specific value (e.g., via Revenue Procedure), that takes precedence over calculated values
  2. Apply only beyond latest manual value: For years after the last manually-specified value, apply the base-year formula
  3. Backward compatible: Existing incremental uprating should continue to work
  4. Verification: Optionally check that base_value matches the parameter value at base_year

Mathematical Equivalence

Note: Incremental and base-year approaches are mathematically equivalent:

Incremental: 2028 = 2026 × (CPI_2027/CPI_2025)
Base-year:   2028 = base_2025 × (CPI_2027/CPI_2024) = 2026 × (CPI_2027/CPI_2025)

However, explicit base-year support improves:

  • Traceability to statutory language
  • Auditability (clear which base year each parameter uses)
  • Documentation (matches how statutes are written)

Examples from US Tax Code

IRC §24(i)(1) - CTC Refundable:

"In the case of a taxable year beginning after 2024, the $1,400 amount in subsection (h)(5) shall be increased...determined by substituting 'calendar year 2017' for 'calendar year 2016'"

IRC §24(i)(2) - CTC Amount:

"In the case of a taxable year beginning after 2025, the $2,200 amount in subsection (h)(2) shall be increased...determined by substituting '2024' for '2016'"

IRC §63(c)(7)(B)(ii)(II) - Standard Deduction:

Uses "calendar year 2024" as reference for adjustments beginning after 2025

Use Case

PolicyEngine US issue #6671 adds 2026 IRS tax parameters. Several parameters specify base-year calculations in statute, but we currently implement them incrementally.

Related: PolicyEngine/policyengine-us#[WILL_CREATE]

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions