Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add passive/active partnership and S-corp variables from PUF #105

Open
MaxGhenis opened this issue Oct 28, 2024 · 0 comments
Open

Add passive/active partnership and S-corp variables from PUF #105

MaxGhenis opened this issue Oct 28, 2024 · 0 comments
Assignees

Comments

@MaxGhenis
Copy link
Contributor

Currently map E26270 to partnership_s_corp_distributions, but PUF provides more detailed components we should use:

Partnership:

  • Passive: E25920 (loss), E25940 (income)
  • Active: E25960 (loss), E25980 (income)

S-corporation:

  • Passive: E26160 (loss), E26170 (income)
  • Active: E26180 (loss), E26190 (income)

Also:

  • E68000: Total losses allowed from passive activities
  • F8582: Indicator for Form 8582

Changes needed in puf.py:

  1. Add mappings for all passive/active components
  2. Add validation that components sum to E26270:
    # Partnership components
    partnership_total = (E25940 + E25980  # income
                        - E25920 - E25960) # losses
    # S-corp components
    scorp_total = (E26170 + E26190  # income
                   - E26160 - E26180) # losses
    
    assert np.allclose(E26270, partnership_total + scorp_total)
  3. Map E68000 to passive_losses_allowed
  4. Map F8582 to has_form_8582

This will enable proper passive loss limitation calculations in policyengine-us.

@PavelMakarchuk PavelMakarchuk self-assigned this Oct 29, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants