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

update inflation policy parameter values for the year 2020, 2021, 2022 #2633

Merged
merged 41 commits into from
Mar 15, 2022

Conversation

bodiyang
Copy link
Contributor

add the inflation policy form Revenue Procedure 2021-45

@bodiyang
Copy link
Contributor Author

bodiyang commented Nov 22, 2021

This PR aims to update the policy parameter values for inflation adjustments of the year 2020, 2021, 2022

The process to update policy parameter values will follow Issue #2183

The inflation adjustments of year 2022 follows the newly published tax law inflation adjustments for 2022 by IRS, as Revenue Procedure 2021-45

The inflation adjustments of year 2020 and 2021 follows the published IRS tax forms and instructions:

Form 1040 and instructions, Form 1040 (Schedule 1), Form 1040 (Schedule 2), Form 1040 (Schedule 4), Form 1040 (Schedule A) and instructions
Form W-2 and instructions
Form 6251 and instructions
Form 8863 and instructions
Form 8812 and instructions

cc @MattHJensen

@bodiyang bodiyang changed the title add 2022 inflation policy form update 2022 inflation policy parameter values Nov 22, 2021
@martinholmer
Copy link
Collaborator

In PR #2633, @bodiyang said:

This PR aims to update the policy parameter values for 2022 ..., following the newly published tax law inflation adjustments for 2022 by IRS ...
The process to update policy parameter values will follow Issue #2183

I'm confused about the objective of this PR. Do you mean this PR will add, to the policy_current_law.json file, inflation adjusted parameter values for three years: 2020, 2021, and 2022?

Right now, the last "know year" in the policy_current_law.json file is 2019, as can be seen in the following fragment from that file:

"STD_Dep": {
        "title": "Standard deduction for dependents",
        "description": "This is the maximum standard deduction for dependents.",
        "notes": "",
        "section_1": "",
        "section_2": "",
        "indexable": true,
        "indexed": true,
        "type": "float",
        "value": [
            {
                "year": 2013,
                "value": 1000.0
            },
            {
                "year": 2014,
                "value": 1000.0
            },
            {
                "year": 2015,
                "value": 1050.0
            },
            {
                "year": 2016,
                "value": 1050.0
            },
            {
                "year": 2017,
                "value": 1050.0
            },
            {
                "year": 2018,
                "value": 1050.0
            },
            {
                "year": 2019,
                "value": 1100.0
            }
        ],
        "validators": {
            "range": {
                "min": 0,
                "max": 9e+99
            }
        },
        "compatible_data": {
            "puf": true,
            "cps": true
        }
    },

@bodiyang
Copy link
Contributor Author

bodiyang commented Dec 1, 2021

In PR #2633, @bodiyang said:

This PR aims to update the policy parameter values for 2022 ..., following the newly published tax law inflation adjustments for 2022 by IRS ...
The process to update policy parameter values will follow Issue #2183

I'm confused about the objective of this PR. Do you mean this PR will add, to the policy_current_law.json file, inflation adjusted parameter values for three years: 2020, 2021, and 2022?

Right now, the last "know year" in the policy_current_law.json file is 2019, as can be seen in the following fragment from that file:

"STD_Dep": {
        "title": "Standard deduction for dependents",
        "description": "This is the maximum standard deduction for dependents.",
        "notes": "",
        "section_1": "",
        "section_2": "",
        "indexable": true,
        "indexed": true,
        "type": "float",
        "value": [
            {
                "year": 2013,
                "value": 1000.0
            },
            {
                "year": 2014,
                "value": 1000.0
            },
            {
                "year": 2015,
                "value": 1050.0
            },
            {
                "year": 2016,
                "value": 1050.0
            },
            {
                "year": 2017,
                "value": 1050.0
            },
            {
                "year": 2018,
                "value": 1050.0
            },
            {
                "year": 2019,
                "value": 1100.0
            }
        ],
        "validators": {
            "range": {
                "min": 0,
                "max": 9e+99
            }
        },
        "compatible_data": {
            "puf": true,
            "cps": true
        }
    },

Thanks for checking with this point. This PR will update the inflation adjusted parameter value for the 2022 only, to the policy_current_law.json file. This update will be based upon the newly published tax law inflation adjustments for 2022 by IRS, as Revenue Procedure 2021-45

@martinholmer
Copy link
Collaborator

@bodiyang said:

This PR will update the inflation adjusted parameter value for 2022 only, to the policy_current_law.json file.

OK. But what about the known values for 2020 and 2021? Aren't those considered important any more?

@bodiyang
Copy link
Contributor Author

bodiyang commented Dec 1, 2021

@bodiyang said:

OK. But what about the known values for 2020 and 2021? Aren't those considered important any more?

Yes, year 2020 and 2021 are also considered to be added into policy_current_law.json file. I will add them either in two separate commits or create two PRs.

Bodi Yang added 2 commits December 8, 2021 16:38
… Rate, Child Tax Credit, Earned Income Crdit, Exemption Amounts for Alternative Minimum Tax, Standard Deduction, Qualified Business Income
@bodiyang
Copy link
Contributor Author

bodiyang commented Dec 16, 2021

This Commit complete the update of major parameters for the year 2022 (only part of the adjusted parameters, 62 items total) in policy_current_law.json file, following tax law inflation adjustments for 2022.

updated items including:
Section 2:
.01 (ii) Lifetime Learning Credit

Section 3:
.01 Tax Rate Tables
.03 Maximum Capital Gains Rate
.05 Child Tax Credit
.06 Earned Income Credit
.11 Exemption Amounts for Alternative Minimum Tax
.12 Alternative Minimum Tax Exemption for a Child Subject to the "Kiddie Tax"
.15 Standard Deduction
.27 Qualified Business Income.

did not include the rest of adjusted items --- didn't find corresponding parameters in policy_current_law.json file

@bodiyang bodiyang changed the title update 2022 inflation policy parameter values update inflation policy parameter values for the year 2020, 2021, 2022 Dec 20, 2021
@bodiyang
Copy link
Contributor Author

bodiyang commented Dec 20, 2021

@bodiyang said:

This PR will update the inflation adjusted parameter value for 2022 only, to the policy_current_law.json file.

OK. But what about the known values for 2020 and 2021? Aren't those considered important any more?

follow up note: the work of updating inflation adjusted parameter value for the year 2020 and 2021 is now included in this PR

@jdebacker
Copy link
Member

@bodiyang Can you push your latest changes showing how you've modified files for the test_reforms.test_round_trip_reforms test?

@bodiyang
Copy link
Contributor Author

bodiyang commented Feb 7, 2022

@bodiyang Can you push your latest changes showing how you've modified files for the test_reforms.test_round_trip_reforms test?

This commit is the current work in progress to change the TCJA.json file to pass the test_reforms.test_round_trip_reforms test.

@bodiyang
Copy link
Contributor Author

bodiyang commented Feb 14, 2022

Issue to pass the test:

testing failure brief: multiple updated parameters failed the test test_round_trip_reforms(fyear, tests_path), checking if the projected value matches the expected value

As an example: unmatched value between clp value -- the expected value and rtr value -- the projected value.
EITC_c in 2023 : rtr=[[ 556.21 3707.32 6127.7 6894.19]] clp=[[ 570.25 3801.31 6174.97 7061.91]]

For most of these parameters, the test failure can be solved by writing these parameter's expected value (clp) in the TCJA.json file. However, there are several exceptions and the EITC_c in 2023 is an example case.

Have written EITC_c :{2023: [ 570.25 3801.31 6174.97 7061.91]} in the TCJA.json file, I still receive the test failure of this parameter from the feedback of local testing, as EITC_c in 2023 : rtr=[[ 556.21 3707.32 6127.7 6894.19]] clp=[[ 570.25 3801.31 6174.97 7061.91]]

Please refer to my last commit for the updated TCJA.json file and this attached pdf file for the testing errors
Terminal Saved Output.pdf. PS: I've marked the errors in yellow for the convenience to read

@jdebacker
Copy link
Member

@bodiyang I've checked out your branch from this PR and have the round-trip-reform test passing (with modifications to reform files reflected in PSL/examples PR #11. I will open a PR to your branch when I get some feedback on exactly how to handle adding new reform files. I posed the relevant question in Issue #2589.

@codecov
Copy link

codecov bot commented Mar 2, 2022

Codecov Report

Merging #2633 (d058cb2) into master (36f75f2) will not change coverage.
The diff coverage is 100.00%.

Impacted file tree graph

@@           Coverage Diff           @@
##           master    #2633   +/-   ##
=======================================
  Coverage   98.54%   98.54%           
=======================================
  Files          14       14           
  Lines        2609     2609           
=======================================
  Hits         2571     2571           
  Misses         38       38           
Flag Coverage Δ
unittests 98.54% <100.00%> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files Coverage Δ
taxcalc/policy.py 100.00% <100.00%> (ø)

@martinholmer
Copy link
Collaborator

@bodiyang said:

no there is not a known 2022 value of SS_Earnings_c

This statement is definitely not true.

@bodiyang
Copy link
Contributor Author

bodiyang commented Mar 7, 2022

@bodiyang said:

no there is not a known 2022 value of SS_Earnings_c

This statement is definitely not true.

@bodiyang said:

no there is not a known 2022 value of SS_Earnings_c

This statement is definitely not true.

My only reference file for this work of inflation parameter update is the instruction for 2022 tax return file RP-2021-45, in which 2022 Maximum taxable earnings for Social Security, SS_Earnings_c, was not mentioned.

I've just checked other online sources which indicating SS_Earnings_c is $147,000. link. Shall I include this number from this source?

taxcalc/policy_current_law.json Outdated Show resolved Hide resolved
{
"year": 2021,
"value": 0.0
},
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Again, 2020 before 2021. And it looks like really no change here.

{
"year": 2021,
"value": 0.0
},
{
"year": 2020,
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

2020 should be before 2021

{
"year": 2021,
"value": 0.0
},
{
"year": 2020,
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

2020 should be before 2021

taxcalc/policy_current_law.json Show resolved Hide resolved
@jdebacker
Copy link
Member

@bodiyang wrote:

I've just checked other online sources which indicating SS_Earnings_c is $147,000. link. Shall I include this number from this source?

Yes!

@bodiyang
Copy link
Contributor Author

bodiyang commented Mar 9, 2022

@jdebacker I've corrected the format & missing value in 2022 issues in your comments in the new commit 8c1b609

PS:changes still required to pass the test ~ working on it

@bodiyang
Copy link
Contributor Author

@jdebacker I've corrected the format & missing value in 2022 issues in your comments in the new commit 8c1b609

PS:changes still required to pass the test ~ working on it

Have passed all the tests on local machine

@jdebacker
Copy link
Member

@bodiyang I opened a PR to your branch with updated PUF results.

But in reviewing my comments, there are still a few that aren't addressed. One of them has to do with the SS_earnings_c parameter, which will affect the expected results that are in my PR. So please go ahead and resolve all comments in my review and then I will make another commit to the PR to your branch that I've opened.

@jdebacker
Copy link
Member

@bodiyang Thank you for this PR!

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

Successfully merging this pull request may close these issues.

3 participants