Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

SOI business net profit/loss targets omit SSTB Schedule C income on the model side

Open
#1,388 0 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
48/100
Issue type
Bug
Clarity
Mostly clear
Activity status
Active
Tech stack
python
Domain
backend, data

Research direction

Start with us_runtime/fiscal_targets.py:256-257 and compare the model mapping for business_net_profits and business_net_losses with SOI A00900, which counts all Schedule C income. Read the qbi_inputs.with_us_qbi_input_reconciliation path to understand how base and SSTB income are routed, then check the loss sign convention and whether farm operations income belongs. Done means choosing and implementing the mapping, re-pinning, and measuring its effect on a calibration run.

Written by the indexing model from the issue text.

Description

Raised in #1380. It is still open after #1384.

us_runtime/fiscal_targets.py:256-257 (at dce4aa99b) maps the SOI business_net_profits and business_net_losses targets to self_employment_income only. SOI A00900 counts all Schedule C income. So the model side of those targets leaves out sstb_self_employment_income:

  • PUF channel: #1380 measured $253.8B (weighted) of SSTB Schedule C income that the targets don't see.
  • ACS rows after QBI reconciliation: qbi_inputs.with_us_qbi_input_reconciliation routes base + SSTB wholly to the SSTB leaf when business_is_sstb. In the lanes that run it (pool, stacked), an SSTB owner's SEMP then leaves the target's model side too.

To do

  • Decide whether the business-net-profit and loss targets should sum the base and SSTB leaves (and farm operations income, if SOI's line maps there). Check the loss leg's sign convention.
  • Re-pin, and measure the effect on a calibration run.
Dominant language
Python
Stars
0
Forks
6
Avg merge
1d 17h
Merged PRs (30d)
130

Getting set up

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.

More from PolicyEngine/microcosm

All issues in PolicyEngine/microcosm

Similar issues

More Python issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.