HANK incidence overlay omits the model's labour-tax financing
Maintainer thường phản hồi trong vòng 9 ngày
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 2/5
- Thời gian dự kiến
- 1-3 giờ
- Mức phù hợp với người mới
- 67/100
Hướng nghiên cứu
Đọc integration/src/policyengine_macro/assumptions.py, đặc biệt là from_hank_result quanh các dòng 319–430, và kiểm tra caveat_strings() để xem các giả định HANK được báo cáo như thế nào. Issue khuyến nghị thêm một lưu ý và báo cáo lộ trình thuế cùng với hệ số thu nhập; hãy kiểm tra các bài kiểm thử hiện có cho những đầu ra đó. Công việc hoàn tất khi người dùng có thể thấy rằng phần tài trợ thuế của HANK không được áp dụng và kiểm tra lộ trình thuế được báo cáo.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Problem
hank_shock_incidence scales pre-tax employment income by the HANK w and N paths (integration/src/policyengine_macro/assumptions.py from_hank_result, ~L319-430) and leaves PolicyEngine's statutory taxes unchanged. In the HANK DAG, though, the labour tax rate is endogenous: it balances tax*w*N = r*Bg + G every period (us-hank-model README.md, gated by tests/test_shocks.py). The overlay drops that financing leg, so the incidence omits a large part of what the model says happens to household income.
Sizes from the us-hank-model production-grid solve (CI run 42141004536, 6 Nov 2026; pinned in PolicyEngine/us-hank-model#4 tests/test_scenarios.py):
| shock | tax rate, impact | tax rate, q1 | wage bill (w+N), impact |
|---|---|---|---|
| G +1% of GDP, rho 0.8 | +0.51pp | +1.59pp | about +0.31% |
| 25bp/qtr easing, rho 0.61 | −0.63pp | — | — |
| 100bp/qtr easing, rho 0.9 | −6.56pp | — | — |
For a spending rise, the overlay shows a small pre-tax earnings gain for households while the model is charging them a labour tax 0.5–1.6pp higher. So the sign of the net income effect for workers can be wrong, not just its size. caveat_strings() doesn't mention this.
Options
- Add a caveat only: state that the HANK tax-financing leg is not applied, and report the tax path next to the earnings factor. Cheap, and honest about the gap.
- Apply the tax leg: scale the earnings factor by
(1 − tax_ss − dtax)/(1 − tax_ss)(post-tax wage income,tax_ss = 0.356), or apply an equivalent flat-rate employment-income tax change through a PE reform. This needstaxcarried in thehank_shockpayload (it already is, in pp) and a decision on mapping the model's flat labour tax onto the US schedule. - Refuse
kind='fiscal_spending'in incidence until option 2 exists.
Recommendation
Do option 1 now and option 2 as the follow-up. Option 1 is a one-line caveat plus a reported field. Option 2 changes published incidence numbers, so Vahid should decide the mapping.
🤖 Generated with Claude Code
- Ngôn ngữ chính
- HTML
- Star
- 3
- Fork
- 0
- Merge trung bình
- 8 ngày 15 giờ
- Pull request đã merge (30 ngày)
- 1
Chuẩn bị môi trường
- Không có Dockerfile hay tệp Docker Compose
- Không có mẫu pull request
- Đọc hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của PolicyEngine/macro
-
bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
PolicyEngine/macro#225 · 2 bình luận ·
Maintainer thường phản hồi trong vòng 9 ngày
-
bug documentation
Độ khó 1/5 1-3 giờ Mức phù hợp với người mới 76/100
PolicyEngine/macro#211 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 9 ngày
-
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 18/100
PolicyEngine/macro#230 ·
Maintainer thường phản hồi trong vòng 9 ngày
-
question
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 22/100
PolicyEngine/macro#227 · 4 bình luận ·
Maintainer thường phản hồi trong vòng 9 ngày
-
Nowcast can't archive a new round: the hosted forecast_uk is pinned to boe-var data ending 2026Q1Đang mởdata question
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 34/100
PolicyEngine/macro#224 · 3 bình luận ·
Maintainer thường phản hồi trong vòng 9 ngày
Tất cả issue của PolicyEngine/macro
Issue tương tự
-
Runner API: GET /api/jobs/<id> returns branch: null; the branch only appears under input.branchĐang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 65/100
radiancelux/prgenie#204 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 76/100
WalletConnect/walletconnect-monorepo#7392 · 1 bình luận ·
-
Calendar sync: recurring events land a day late when the local start falls on a different UTC dateĐang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 76/100
Maintainer thường phản hồi trong vòng 1 ngày
-
area: app type: bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 77/100
qutip/qutip#3088 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 2 ngày