Skip to content

Add CI to prevent breaking changes in policyengine-us-data #134

@baogorek

Description

@baogorek

Context

Recent changes to microimpute have inadvertently broken policyengine-us-data's dataset generation (see #133). This highlights the need for automated testing of downstream dependencies.

Problem

Currently, developers have no way to know if their changes to microimpute will break important downstream packages like policyengine-us-data. This can lead to:

  • Production failures in dependent packages
  • Time spent debugging issues that could have been caught earlier
  • Potential data quality issues if breaks go unnoticed

Solution

Add a GitHub Actions workflow that automatically tests policyengine-us-data when changes are made to microimpute. This ensures:

  1. Developers get immediate feedback if their changes break downstream packages
  2. Breaking changes can be addressed before merging
  3. Better stability for the entire PolicyEngine ecosystem

Implementation

A PR will be submitted shortly that adds a downstream-compatibility.yml workflow that:

  • Runs on all PRs and pushes to main
  • Installs the current branch of microimpute
  • Runs policyengine-us-data's PUF tests that depend on microimpute
  • Warns developers if tests fail

This is especially important given that policyengine-us-data is a critical dependency for PolicyEngine's tax modeling infrastructure.

Related to: #133 (specific bug that motivated this change)

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