Repository navigation
Model the Minnesota Paid Leave employer premium - #10294
Conversation
Add employer_state_payroll_premium_deduction_share (default 1) for the programs whose statute puts the premium on the employer and lets it deduct up to a share from wages: CO FAMLI, DE Paid Leave, ME and MA PFML, MN Paid Leave, NY PFL and DBL, the VT Child Care Contribution and WA PFML. The employee amount is the permitted share times the deduction share; the employer-side variables carry the part it does not deduct. Encode Acts 2026 c. 101 ss. 25-26 for Massachusetts from 2027-01-01, with DFML's 2027 family and medical rates, and cite CGS 31-49g(b)(1) for the Connecticut paid leave rate. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…variants Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Describe the deduction-share programs by the employer's choice, not by who owes the premium (NY and WA put the contribution on the worker), note that MN and NY employer costs are not modeled, state why WA PFML is in and Paid Leave Oregon is out, and note that Rev. Rul. 2025-4's treatment of an employer-paid employee share as wages is not modeled. Cap the one-worker employer's taxable total in the invariants so the employer-level path is checked for every modeled state and size, pin the 2027 Massachusetts parameter values, and add file-page anchors to the PDF references. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Minn. Stat. 268B.14 makes the premium payable by the employer, which pays at least half (subd. 3); a small employer under subd. 5a pays 75% of the rate and at least a quarter of the full rate. The employer pays the premium less the employee deduction, so the part of the permitted employee share an employer does not deduct (PR #10285) now lands on the employer side. - New parameters: rate (0.88% for 2026 and 2027), employer_minimum_share, and small_employer/{rate_share, employer_minimum_share, max_headcount, max_average_quarterly_wage}. They replace employee_rate (0.44%), which is now derived. - New variables: mn_paid_leave_small_employer (employer_headcount and a new average quarterly wage input stand in for subds. 5b and 5c), mn_paid_leave_premium_rate, mn_paid_leave_permitted_employee_rate, mn_paid_leave_premium, mn_employer_paid_leave_contribution, mn_employer_additional_state_payroll_tax and employer_total_mn_paid_leave_taxable_wages. - employer_additional_state_payroll_tax and the employer-level employer_total_additional_state_payroll_tax include Minnesota. - YAML cases computed from the statute and DEED rates, MN rows in the payroll contribution tests, and MN in the deduction-share invariants, with a new statute-literal property for Minnesota. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…re' into mn-employer-paid-leave-premium # Conflicts: # policyengine_us/variables/input/employer_payroll.py
A reform of the rate or the employer minimums reaches both sides, and a small employer minimum above the small employer premium leaves employees nothing (subd. 5a(b)(2), "the remaining portion, if any"). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- The small employer wage limit is now the statutory 150% (subd. 5a(a)(2))
times DEED's statewide average annual wage ($73,989 for 2026 premiums,
from DEED's small employer designation notice) per quarter, compared in
whole cents as DEED states it ($27,745.88). This replaces the
max_average_quarterly_wage parameter, which had no period and cited a page
that gives no year.
- The permitted employee rate is capped at the premium as well as floored at
0 ("the remaining portion, if any"); the reform test covers both.
- The structural shares and limits no longer carry zero placeholders before
2026; the rate alone gates the program.
- The property test draws the average wage in whole cents, so its float64
reference can't disagree with the model's float32 input below a cent.
- Cite DEED's July 31, 2026 bulletin for the 2027 rate, and move the
employee_rate removal into a removed changelog fragment.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…at32 - Restore the 0000-01-01 sentinels on the Minnesota Paid Leave shares and limits. pe-us backdates parameters only to 2015, so without them every Minnesota employer-side calculation before 2015 raised ParameterNotFoundError (caught by the delta review; a 2014 YAML case now guards it). - Compare the unrounded average wage with DEED's cent-rounded limit at the input's float32 precision, instead of rounding the input to cents: an average a fraction of a cent above $27,745.88 now fails the test, as it does against DEED's published limit, while an input of exactly $27,745.88 still meets it. A YAML case covers $27,745.885. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…re' into mn-employer-paid-leave-premium
- The Minnesota Paid Leave shares and limits now carry their 2026 values from 0000-01-01, so a reform that sets an earlier rate gets the statutory split instead of a zero employer minimum; the zero rate still keeps the program off before 2026, and pre-2015 years still compute. - Round the small employer wage limit to the cent half up, as the repo does for Minnesota's taxable wage base, instead of numpy's half-to-even. - Say that DEED calculates the statewide average annual wage each year, and that 150% of $73,989 / 4 is $27,745.875, which DEED gives as $27,745.88. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- The sentinel comment now says what happens: earlier years read the 2026 value every year, and the zero rate keeps every amount at 0 before 2026. - A reform setting the statewide average to $73,991 puts the limit at $27,746.625, which half-up rounding makes $27,746.63; the new test fails under numpy's half-to-even rounding. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
Hand-off to the US + core hub.
🤖 Generated with Claude Code |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #10294 +/- ##
==========================================
Coverage 100.00% 100.00%
==========================================
Files 1 1
Lines 37 193 +156
==========================================
+ Hits 37 193 +156
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
PR Review: Model the Minnesota Paid Leave employer premiumPR #10294 (author: MaxGhenis). Head SummaryThe PR adds the employer side of Minnesota Paid Leave under Minn. Stat. 268B.14:
Scope. This review covers only #10294's own six commits ( Law and sources. I re-read 268B.14 subds. 1, 3, 4, 5a–5c, 6 and 7 and 268B.01 subd. 43 on the Revisor's site. I also re-read DEED's small employer designation notice and DEED's July 31, 2026 bulletin for 2027. Every rate, share, limit and wage base matches the law and DEED's figures:
Code.
Tests, axiom and branch.
Open items. One should-fix item remains, the same one we raised on #10285: seven new parameter descriptions don't follow the house template. There are five optional suggestions. Critical (must fix)None. Should address1. Seven new parameter descriptions don't follow the house template.
Suggestions1. Report the cost of the two new reform tests (CLAUDE.md, "Measure simulation-heavy additions").
2. Keep the 2027 carry-forward note in
3. Separate the new flow case from Minnesota unemployment insurance values that are out of date on
4. Update one sentence in rulespec-us#1819 to match the head's wage-limit logic.
5. Small text fixes.
Verified correct
Axiom line assessmentValid. The line reads
CI status29 checks pass and 3 are skipping at head
Branch status
Verdict: REQUEST_CHANGES |
DTrim99
left a comment
There was a problem hiding this comment.
Minnesota's rate, the employer/employee split, the small-employer reduction, the wage limit and the float32 boundary all match 268B.14 and DEED, and all 22 new cases hand-check. One should-address item: seven new MN parameter descriptions don't follow the house template (rewrites are in the report). Five suggestions. Merge #10285 first; the merge with it and with main is clean. Full report in the comment above.
|
Picking this up for the US hub. I'll post a hand-off comment here when it's ready. Generated by Claude Code |
Rewrite the seven Minnesota parameter descriptions to the house template and point each statute href at its subdivision; note that no 2027 state average wage has been published; pin the flow case's unemployment rate to 0 so it no longer depends on main's out-of-date Minnesota UI wage base; say the average wage input is a quarterly amount, because the small employer test compares it with a quarterly limit; and reuse the 'caps what the employer may deduct' wording in the invariants docstring. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
Ready for hub review Head: Picked up at
What the item asked forShould address: the seven descriptions (house template, DTrim99's wording), line 1 of each under
Suggestion 1: cost of the two reform tests, now in the PR body.
Suggestion 2: the 2027 note.
Suggestion 3 and hub P3 (a): the stale UI wage base.
Suggestion 4: rulespec-us#1819. Draft sentence for the hub to post, replacing "compared in whole cents":
Optional companion row: Suggestion 5: text fixes.
Hub P3 (b): units of the subd. 5c input.
Hub P3 (c): invariants docstring. Tests run (one file per process)
Hand computation: the one changed expectation is above (440 / 8,132). No other value changed. Mutants: none. The only non-text change is a test input. CINone at this head. The pull_request workflow didn't start, because the PR conflicts with Judgment calls
Reply to DTrim99Thanks for the review. Taking each item in turn:
Generated by Claude Code |
Minn. Stat. 268B.14 subd. 5c(b) divides estimated wages for a tax year by estimated employees, so that quotient is annual, and the input takes a quarterly amount. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
Hub review in progress Superseded by the final review: #10294 (comment) Generated by Claude Code |
|
Ready for hub review Delta review of Bottom line: every should-address item in DTrim99's review is resolved, and each of his five suggestions is taken or properly handed to the hub (details below). The hub can dismiss the CHANGES_REQUESTED review with a note. All findings are P3: PR-body text, the drafted rulespec sentence, and a follow-up that already exists on FindingsP1: none. P2: none. P3-1. The PR body has four stale or contradictory statements. A reader could rely on each of them.
P3-2. The body has no P3-3. The sentence drafted for rulespec-us#1819 leaves out float32 precision. The hand-off's draft says the employer average "is compared with it unrounded". The code compares
The optional row ($27,745.885, 10 employees, $100,000 → not small; premium 880, employee 440, employer 440) follows from the code. The YAML case at P3-4. Follow-up, same on
DTrim99's items
What the build asked for that the PR doesn't do:
The hand-off's reply to DTrim99 matches what changed. Every should-address item is resolved, so the hub can dismiss DTrim99's CHANGES_REQUESTED (5591809822) with a note pointing to The UI wage base (
|
| Mutant | Killed by |
|---|---|
M1: half-to-even (np.round) limit |
test_minnesota_small_employer_wage_limit_rounds_half_up (1 failed) |
M2: drop + 0.5 (truncate to $27,745.87) |
YAML "An average quarterly wage equal to the limit meets the small employer wage test." |
M3: headcount < max_headcount |
YAML: 3 small-employer cases at 30 employees |
M4: drop mn_employer_additional_state_payroll_tax from employer_additional_state_payroll_tax |
YAML: "…pays half the premium", "A small employer pays 75%…", "The employer premium flows into…" |
M5 (mine): UI override >= 0 → > 0 |
YAML "The employer premium flows into employer state and total payroll taxes." |
Readers
- Parameters. Readers of the seven parameters, which changed text only:
mn_paid_leave_premium_rateandmn_paid_leave_permitted_employee_rate(rate, the shares);mn_paid_leave_small_employer(max_headcount,max_average_wage_ratio,state_average_annual_wage);test_payroll_contributions.py's reforms.
mn_paid_leave_employer_average_quarterly_wage. Read bymn_paid_leave_small_employer, the invariants test, the YAML andtest_payroll_contributions.py.- No reader is worse. The delta changes no formula, so no reader becomes worse. The whole PR changes only MN employer-side outputs at baseline from 2026, as the body says.
- Population check. The hub's impact run should confirm that
mn_employer_paid_leave_contribution≈ 0.44% of capped MN wages at the defaults, and thathousehold_net_incomedoesn't move.
Checked and sound
-
Scope.
- Nothing under
.github/ortests/policy/baseline/partners/, checked withgit diff --name-only 3698893465 eef658a1b9. - Open-PR overlap search: only Let employers deduct less than the permitted state payroll premium, and apply Massachusetts' PFML cap swap from 2027 #10285 (its parent). Zero a separate filer's whole standard deduction and exclude dependent care benefits from wages #10579 matched on body text but touches none of these files.
- Nothing under
-
Tests, one file per process with thread caps at 4; every changed test file passes in both runs.
File Head Post-merge mn_employer_paid_leave_contribution.yaml22 22 mn_employee_paid_leave_contribution.yaml3 3 state_payroll_premium_deduction_share.yaml16 16 test_state_payroll_premium_deduction_share_invariants.py2 (0.83 GB) 2 (1.43 GB) test_input_variable_definitions.py4 4 test_payroll_contributions.py107 (1.63 GB) 107 (2.08 GB) test_source_conflicts.pyn/a 103 test_reference_urls.pyn/a 32 test_parameter_yaml_keys.pyn/a 34 The YAML files peaked at 2.0–2.4 GB. My first head run of the invariants file failed at collection because
hypothesiswasn't installed in this VM's env; it passed afteruv sync --extra dev. -
CI. None has run at
bfab0c9abeoreef658a1b9: the actions runs API returnstotal_count0 foreef658a1b9, because the PR conflicts withmain. -
Axiom line. It is present and unchanged from the round DTrim99 found valid.
What I couldn't check
-
Sources. revisor.mn.gov, mn.gov, pl.mn.gov, uimn.org and content.govdelivery.com were all refused by this VM's proxy and DNS (curl CONNECT 403, WebFetch ENOTFOUND). So I couldn't fetch:
- Minn. Stat. 268B.14 subds. 5a–5c verbatim;
- DEED's 2026 and 2027 wage figures;
- whether DEED has issued a 2027 small-employer limit since 2026-10-20;
- whether the
#stat.268B.14.*anchor ids resolve.
These hosts must be allowed in the session's network settings for a later check. The source facts in this review rest on the earlier reviews' fetches and on the code.
-
Linux CI timing and memory for the reform tests, and CI as a whole: none can run until Let employers deduct less than the permitted state payroll premium, and apply Massachusetts' PFML cap swap from 2027 #10285 lands.
-
The impact run, which is the hub's.
Generated by Claude Code
Resolve the two conflicts with the squashed payroll deduction-share change. The input's documentation now names New York alone as the state whose employer cost goes unmodeled, because this branch models Minnesota's. The property test keeps main's workers on each side of the employer-size thresholds, each with an average quarterly wage of 0, beside this branch's Minnesota workers. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
… the review's survivors - source_conflicts/candidates.yaml records two ruled items. us-mn:paid-leave-small-employer-average-wage: the model takes subd. 5c(a)'s quotient, as DEED's designation notice does, where the UIMN page divides it by four again. us-mn:paid-leave-small-employer-wage-limit-cents: the model rounds the 2026 limit half up to DEED's $27,745.88. - test_payroll_contributions.py checks the employer-level total under the shares reform, the statutory split in 2025 when a reform sets only the rate, and a 2027 limit that rounding up would raise to $27,745.89. - mn_employer_paid_leave_contribution.yaml adds three 2025 cases for the small employer test, which reads the 2026 limits. - The removed.md changelog names every parameter that replaces employee_rate. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…r backlog items Add captures of the three texts the two us-mn:paid-leave-small-employer items cite: pages 1 and 2 of DEED's small employer designation notice (pdftotext), the text of Unemployment Insurance Minnesota's small employer page (pandoc), and Minn. Stat. 268B.14 as fetched. Keep only the UIMN page's text, because mn.gov adds a bot-check token to the page it serves. In the two items, DEED and UIMN act in their own documents, UIMN gets its full name once, and the examples name the employer's covered wages. The changelog names employee_rate in place of an unclear "it". Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
David, thanks for the review. I've addressed each point, so I dismissed the review to merge this PR. Here's where each one stands at
An independent AI agent reviewed 🤖 Generated with Claude Code |
|
US + core hub merge audit, us#10294 at
🤖 Generated with Claude Code |
Main's Minnesota Paid Leave premium (#10294) and its premium deduction share (#10285) touched the same employer payroll aggregates as this branch. The employer aggregates now list Minnesota's and New Jersey's components side by side, and employee_state_payroll_tax's documentation names Alaska UI among the contributions the statute puts on the worker and makes the employer withhold (AS 23.20.165(c)). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
What this changes
Minnesota Paid Leave had only an employee-side variable, so
employer_additional_state_payroll_tax,employer_payroll_taxand the employer-levelemployer_total_additional_state_payroll_taxleft out Minnesota's employer premium. The part of the permitted employee share an employer doesn't deduct also had nowhere to land. This PR models the premium under Minn. Stat. 268B.14:state_payroll_premium_deduction_sharetimes the permitted employee portion.Each rate applies to taxable wages: wages up to the Social Security base rounded to the nearest $1,000, which gives $185,000 in 2026 (268B.01, subd. 43). 268B.14, subd. 4 caps wages at the same base without the rounding, $184,500 for 2026. The model, as on
main, follows subd. 43's rounded figure, the one DEED publishes. Using $184,500 instead would lower the 2026 maximum premium per worker from $1,628 to $1,623.60. In its small employer designation notice, DEED says "Like large employers, small employers can deduct up to 0.44% of wages", and defines the 2026 basis period and the small employer wage limit.Parameters (
gov.states.mn.tax.payroll.paid_leave)rate: 0.88% from 2026, with 2027 entered explicitly.employer_minimum_share: 50%.small_employer.rate_share: 75%.small_employer.employer_minimum_share: 25% of the full rate.small_employer.max_headcount: 30.small_employer.max_average_wage_ratio: 150% (subd. 5a(a)(2)).small_employer.state_average_annual_wage: $73,989 for 2026 premiums (DEED's statewide average annual wage for 2025).Each parameter starts with a
0000-01-01sentinel. PolicyEngine US backdates first values only to 2015, so without one, every Minnesota calculation before 2015 fails withParameterNotFoundError; a 2014 YAML case guards this.rate's sentinel of 0 keeps the program off before 2026. The others carry their 2026 values, so a reform that sets an earlier rate gets the statutory split and a nonzero employer minimum.This PR removes
employee_rate(0.44%). The model now derives the permitted employee rate as the premium rate less the employer's minimum. It applies a reform of the rate or either size's shares to both the employee and employer amounts. Users whose reforms setgov.states.mn.tax.payroll.paid_leave.employee_ratemust now setrate,employer_minimum_shareorsmall_employer.employer_minimum_share.Variables
mn_paid_leave_small_employer: the subd. 5a(a) test (see the proxies below).mn_paid_leave_premium_rate: the rate, or 75% of it for a small employer.mn_paid_leave_permitted_employee_rate: the premium rate less the employer's minimum, from 0 ("the remaining portion, if any") up to the premium rate.mn_paid_leave_premium: the premium rate times taxable wages.mn_employee_paid_leave_contribution: the permitted employee rate times taxable wages times the deduction share. Its output doesn't change at any current parameter value.mn_employer_paid_leave_contribution: the premium less the employee contribution.mn_employer_additional_state_payroll_tax: added toemployer_additional_state_payroll_tax.employer_total_mn_paid_leave_taxable_wages: the employer-level wage base.employer_total_additional_state_payroll_taxgains a Minnesota branch. It computes (premium rate − share × permitted employee rate) × employer-level wages, reading the same two rate variables as the per-worker path.Proxies for subds. 5a–5c, and what the model leaves out
employer_headcount(default 100) stands in for the employer's highest quarterly count of wage records in the basis period, the four quarters ending September 30 of the prior year. For an employer not covered for the whole period, it stands in for the employer's own estimate (5b(c)).mn_paid_leave_employer_average_quarterly_wage, takes the covered wages of the employer's highest-paid quarter divided by its highest employee count. For a new employer, enter its subd. 5c(b) estimate, which covers a tax year, divided by 4. The default of 0 treats the wage test as met, soemployer_headcountalone decides the small employer rate unless a user sets the input. We rejected two alternatives:employer_total_mn_paid_leave_taxable_wagesdefaults toemployer_total_taxable_earnings_for_social_security, the employer's total of each worker's wages up to the Social Security base: $184,500 in 2026 and $192,300 in 2027. Minnesota rounds those bases to $185,000 and $192,000. For a worker who earns more than the lower base, the default understates Minnesota's 2026 wages by up to $500 and overstates its 2027 wages by up to $300. Users can set the input directly.Source conflicts
This PR records two items in
source_conflicts/candidates.yamland captures the three texts they cite insource_conflicts/sources/us-mn/:us-mn:paid-leave-small-employer-average-wage. Under subd. 5c(a), an employer's average wage equals its highest quarterly covered wages divided by its highest quarterly count of wage records, and DEED computes it the same way in its designation notice. On its small employer page, Unemployment Insurance Minnesota divides that quotient by four again. The model follows the statute. For example, an employer with 10 employees and $400,000 of covered wages in its highest-paid quarter averages $40,000 and pays the full 0.88%. Under the page's steps, it would average $10,000 and pay 0.66%.us-mn:paid-leave-small-employer-wage-limit-cents. A quarter of 150% of $73,989 comes to $27,745.875, and DEED states the 2026 limit as $27,745.88. Subd. 5a(a)(2) doesn't state the limit per quarter or set its rounding, so the model follows DEED's figure, and an average of $27,745.88 qualifies.Default outputs that change
From 2026, every Minnesota worker has an employer premium. At the defaults (100 employees, full deduction) it equals 0.44% of taxable wages, and it flows into:
employer_additional_state_payroll_tax;employer_state_payroll_tax;employer_payroll_tax;employer_cost_of_employment.For Minnesota employer-level inputs, the employer-level path rises the same way:
employer_total_additional_state_payroll_tax,employer_total_state_payroll_tax,employer_total_payroll_taxandemployer_total_cost_of_employment. Employee-side amounts don't change, because the permitted employee rate stays 0.44% for both sizes of employer. Household outputs don't change either: no household or tax-unit variable reads these employer-side variables. The CRFBtax_employer_payroll_taxreform adds only employer Social Security and Medicare tax to gross income, so it doesn't pick up the premium.Invariants
policyengine_us/tests/core/test_state_payroll_premium_deduction_share_invariants.pychecks these with Hypothesis in 2026 and 2027, over 8 derandomized examples that each mix 30 fixed workers with 4 to 30 drawn ones:employer_total_additional_state_payroll_taxequals the per-workeremployer_additional_state_payroll_tax.mn_paid_leave_premiumequals that premium;Tests
New
policyengine_us/tests/policy/baseline/gov/states/mn/tax/payroll/paid_leave/mn_employer_paid_leave_contribution.yaml(25 cases). Comments derive each new value from the statute and DEED figures. The cases cover:employer_payroll_tax($8,132 on $100,000, with the unemployment insurance rate set to 0 so the case doesn't depend on Minnesota's unemployment insurance wage base);state_payroll_premium_deduction_share.yaml's Minnesota case now also checks the employer's $660. The 3 cases inmn_employee_paid_leave_contribution.yamlpass unchanged.policyengine_us/tests/code_health/test_source_conflicts.pypasses with the two new items (103 tests).policyengine_us/tests/core/test_payroll_contributions.pyadds Minnesota to the employer-side and employer-level cases.test_minnesota_paid_leave_shares_follow_the_parametersapplies reforms of the rate and both employer minimums. It checks the per-worker and employer-level amounts, and the statutory split in 2025, when the reform sets only the rate. It also checks the derived employee portion against two bounds:test_minnesota_small_employer_wage_limit_rounds_half_uppins the limit's rounding with two reformed statewide averages. A 2026 average of $73,991 gives 150% × $73,991 / 4 = $27,746.625, which rounds half up to $27,746.63, so $27,746.63 qualifies and $27,746.64 doesn't. A 2027 average of $73,989.02 gives $27,745.8825, which rounds to $27,745.88, so $27,745.88 qualifies and $27,745.89 doesn't.The two reform tests run 3 cases, and each case builds a reformed system. Locally on macOS (Apple M5 Max),
test_payroll_contributions.pytook 84.9 s of wall time at a 2.28 GiB peak with those 3 cases, and 46.7 s at 1.95 GiB without them. On Linux CI at780a23ecca, the file ran in thecoregroup'score-3chunk on Rest Python shard 3 (run 42660976073). Its 107 cases took 112.4 s of test time, 63.5 s of it in the 3 reform cases. Onmainatba9bfdea75, its 100 cases took 45.0 s in thecore-2chunk on shard 1 (run 42624467915). CI reports memory for each chunk, not each file, and the two chunks hold different files. In this PR's run,core-3took 22 min 31 s and peaked at 8,555,256 KiB (8.16 GiB). Onmain,core-2took 27 min 28 s and peaked at 9,549,272 KiB (9.11 GiB).Microsimulation impact
We estimate that Minnesota's employer premium adds $860.2m to
employer_additional_state_payroll_taxin 2026 on the default dataset. We comparedmainatba9bfdea75with this branch at2c662e9e50. The commits after2c662e9e50change only tests, the changelog, the source-conflict backlog and source captures (source_conflicts/).The premium reaches 1,731 sampled Minnesota workers (3.11m weighted), at the default 0.44% of taxable wages and at most $814 a worker, 0.44% of the $185,000 base.
employer_state_payroll_taxandemployer_payroll_taxrise by the same $860.2m. Income taxes, household net income and household benefits don't change.employer_additional_state_payroll_taxemployer_state_payroll_taxemployer_payroll_taxstate_income_taxincome_taxhousehold_net_incomehousehold_benefitsimpact: employer payroll tax +$860.2m in 2026 (1,731 Minnesota workers, 3,112,607 weighted), from Minnesota's employer paid leave premium; household outputs don't change
axiom: Minn. Stat. 268B.14 → TheAxiomFoundation/rulespec-us#1819 queued (extended with the employer outputs, the subd. 5a leaf inputs and companion rows matching these YAML cases; blocked on corpus ingestion, TheAxiomFoundation/axiom-corpus#893)
🤖 Generated with Claude Code