diff --git a/annotations/us_full_run_20260612_policyengine_4_16_1_populace/us_audit_row_annotations.csv b/annotations/us_full_run_20260612_policyengine_4_16_1_populace/us_audit_row_annotations.csv
index 4585eaf3..c2f1c667 100644
--- a/annotations/us_full_run_20260612_policyengine_4_16_1_populace/us_audit_row_annotations.csv
+++ b/annotations/us_full_run_20260612_policyengine_4_16_1_populace/us_audit_row_annotations.csv
@@ -1141,8 +1141,8 @@ us,scenario_014,federal_income_tax_before_refundable_credits,kimi-k2.6,parse_con
us,scenario_014,federal_income_tax_before_refundable_credits,minimax-m3,llm_error,taxable_income_or_deductions,False,"The model claimed the standard deduction and a personal exemption reduce the wages to near zero. 2026 law has no personal exemption, and the $32,200 MFJ deduction leaves $56,727.65 of taxable income and $6,311.32 of tax."
us,scenario_014,federal_income_tax_before_refundable_credits,qwen-3.7-max,llm_error,taxable_income_or_deductions,False,"The model included the spouse's $18,480 of veterans benefits in AGI, even though VA benefits are fully excluded. It also used a $32,600 deduction and invented two children to claim a $4,000 CTC, then submitted a negative $-17,600 that contradicts its own $4,616.80."
us,scenario_014,federal_income_tax_before_refundable_credits,qwen3.8-max,llm_error,categorical_eligibility,False,"The model applied CTC/ODC to wipe out the tax, but the household has no children or other dependents, so neither credit exists. It also wrongly claimed the standard deduction zeroes out $88,927.65 of wages."
-us,scenario_014,federal_refundable_credits,kimi-k2.6,parse_contract_failure,missing_output,False,The model supplied no parseable output for federal_refundable_credits and therefore failed the required submission contract.
-us,scenario_014,federal_refundable_credits,qwen3.8-max,llm_error,categorical_eligibility,False,"The model awarded refundable CTC despite the household having no qualifying children and awarded EITC despite approximately $183,584 of joint income, which exceeds the childless EITC phase-out limit. Those two credits both equal zero, so their asserted $3,067 total has no eligible credit pathway."
+us,scenario_014,federal_refundable_credits,kimi-k2.6,parse_contract_failure,missing_output,False,"The model returned no usable value or explanation for federal_refundable_credits, so its answer was missing rather than a wrong calculation. The correct result is $0 because the household has no children, and its $88,928 in wages is far above the income limit for the childless EITC."
+us,scenario_014,federal_refundable_credits,qwen3.8-max,llm_error,categorical_eligibility,False,"The model counted a refundable Child Tax Credit even though the household has no qualifying children, so refundable CTC is $0. It also gave an EITC, but $88,928 of wages for a joint filer with no children is far above the childless EITC phase-out end of about $26,820. Its $3,067 total comes from credits this household is not eligible for."
us,scenario_014,head_medicaid_eligible,qwen3.8-max,llm_error,taxable_income_or_deductions,False,"The model treated the head's lack of earned income as though Medicaid were tested on the head's income alone, omitting the spouse's wages and other amounts included in household tax-unit MAGI. The resulting MAGI is 4.11 times FPL, above the West Virginia adult limit, and the head has no pregnancy, disability, dependent-child, SSI, or other categorical eligibility pathway."
us,scenario_014,payroll_tax,claude-haiku-4.5,llm_error,state_local_rule,False,"The model got the right Social Security figure on the spouse's $88,928. It then miscomputed Medicare as $1,289.56 instead of $1,289.46. It also added a made-up $6.21 '0.2% state tax' for West Virginia, right after saying WV has no mandatory employee state payroll tax. That extra state tax and the Medicare slip raised the total from $6,802.99 to $6,809.31."
us,scenario_014,payroll_tax,deepseek-v4-pro,llm_error,payroll_tax_base,False,"The model subtracted the spouse's $14,717 in employer-sponsored insurance premiums from her wages as if they were pre-tax cafeteria-plan deductions. It then applied FICA to $74,211, but the facts give no salary-reduction arrangement, so the full $88,928 is the base. The correct 7.65% of $88,928 is $6,802.99, not $5,677."
@@ -1244,11 +1244,11 @@ us,scenario_015,federal_income_tax_before_refundable_credits,kimi-k2.6,parse_con
us,scenario_015,federal_income_tax_before_refundable_credits,minimax-m3,llm_error,other,False,"It assumed the standard deduction and unnamed credits would bring tax to zero. In fact, $26,809 of taxable income remains after the $16,100 standard deduction, and the filer has no nonrefundable credits, so tax is $2,969."
us,scenario_015,federal_income_tax_before_refundable_credits,qwen-3.7-max,llm_error,taxable_income_or_deductions,False,"It added the $960 of workers' compensation to AGI, but workers' compensation is excluded from gross income. It also skipped the $49 IRA deduction and used a $15,750 standard deduction and a $12,150 bracket edge, which gave $3,137.16. It then submitted an unrelated $2,104."
us,scenario_015,federal_income_tax_before_refundable_credits,qwen3.8-max,llm_error,household_unit_or_filing_status,False,"It filed the single, childless head as married filing jointly with MFJ brackets and subtracted a credit for other dependents and child-related credits for dependents who do not exist. It also skipped the 401(k) and IRA deductions and then added an unexplained $2,071.61. A single filer with $26,809 of taxable income and no credits owes $2,969."
-us,scenario_015,federal_refundable_credits,kimi-k2.6,parse_contract_failure,missing_output,False,"The model submitted no parseable value for federal_refundable_credits, violating the required output contract."
-us,scenario_015,federal_refundable_credits,qwen3.8-max,llm_error,categorical_eligibility,False,"The model invented a $1,000 refundable Child Tax Credit despite the household having no qualifying child, and it awarded $1,735.80 of EITC even though this childless adult's approximately $43,450 income exceeds the applicable childless EITC range. Both components are $0, so their sum is $0."
+us,scenario_015,federal_refundable_credits,kimi-k2.6,parse_contract_failure,missing_output,False,"The model returned no value or reasoning for federal_refundable_credits, so the answer was missing. Done correctly, the result is $0: a childless single filer with $45,000 in wages is far above the childless EITC phase-out, gets no CTC without a child, and claims no AOTC without education expenses."
+us,scenario_015,federal_refundable_credits,qwen3.8-max,llm_error,categorical_eligibility,False,"The model claimed a $1,000 refundable additional child tax credit even though the household has no qualifying child, and the ACTC cannot exist without one. It also gave a $1,735.80 EITC, but the childless EITC phases out completely at about $19–20k of earned income/AGI, so it is $0 at $45,000 in wages. The EITC figure does not fit the childless schedule."
us,scenario_015,head_chip_eligible,gemini-3.5-flash-lite,llm_error,other,False,"The model applied the governing rule correctly — CHIP's categorical scope is limited to children under 19 (plus pregnant women at state option), so a 36-year-old head fails the age gate before any income screen — and its explanation ends ""Head is 36 years old, so CHIP eligibility is false. value = 0"". Its submitted numeric value for head_chip_eligible was nevertheless 1, contradicting its own explanation and violating the prompt's rule that a 1 be submitted only when the explanation says eligible. The defect is in the emitted binary, not in the derivation: the stated reasoning matches the reference's chip_category = 3 / is_chip_eligible = False."
-us,scenario_015,head_medicaid_eligible,claude-sonnet-5,llm_error,categorical_eligibility,False,"The model invented qualification through Indiana’s Aged, Blind, and Disabled or working-disabled buy-in pathways from the disability and work facts without applying their actual categorical and financial requirements. The engine assigns category NONE: the head receives no SSI, qualifies through no disability-related pathway, and has MAGI at 2.69 times FPL, so the asserted buy-in eligibility does not exist."
-us,scenario_015,head_medicaid_eligible,minimax-m3,llm_error,categorical_eligibility,False,"The model treated Indiana Medicaid expansion and the disability flag as sufficient for eligibility without identifying or testing a qualifying category. At age 36 with MAGI at 2.69 times FPL and no qualifying disability-related pathway, the head is assigned Medicaid category NONE."
+us,scenario_015,head_medicaid_eligible,claude-sonnet-5,llm_error,categorical_eligibility,False,"The model said $45,000 of earnings was 'well below' the SSI-related disability threshold, which is false. Those earnings, $3,750 a month, exceed SSI's substantial gainful activity limit of $1,690 a month, so PolicyEngine does not count the head as disabled, and $584,850 in bank and stock assets is far above the $2,000 resource cap. The model then based eligibility on Indiana's MED Works buy-in for workers with disabilities, but PolicyEngine does not model that pathway. Its MAGI ratio of 2.69x FPL also exceeds the 138% expansion limit, so no category applies."
+us,scenario_015,head_medicaid_eligible,minimax-m3,llm_error,thresholds_rates,False,"The model treated 'disabled' plus Indiana's expansion status as automatic eligibility and never applied an income test. Indiana's expansion-adult category caps MAGI at 138% FPL, and the head is at 2.69x FPL. In Indiana the disability pathway needs the head to be disabled under SSI's rules, countable income within 100% of the poverty guideline and resources under $2,000, but the head's earnings of $45,000 exceed SSI's substantial gainful activity limit and about $585,000 in assets exceeds the cap, so no Medicaid category applies."
us,scenario_015,head_medicare_eligible,claude-fable-5,llm_error,age_disability,False,"The model said Medicare eligibility applies to anyone who is 65+ or disabled. That is wrong: under-65 disability eligibility requires 24 months of SSDI entitlement, or ESRD or ALS status. The head is 36 and receives no Social Security disability benefits, so the disability pathway doesn't apply and the answer should be 0."
us,scenario_015,head_medicare_eligible,gpt-5.6-luna,llm_error,age_disability,False,"The model decided that being disabled qualifies an adult under 65 for Medicare. That skips the requirement of 24 months of Social Security Disability Insurance entitlement. The 36-year-old head has no SSDI income and no ESRD or ALS status, so they are not Medicare eligible."
us,scenario_015,head_medicare_eligible,gpt-6-astra,llm_error,age_disability,False,"The model based eligibility only on the head being listed as disabled. Disability-based Medicare requires 24 months of SSDI benefit receipt, and a disability flag alone doesn't meet that. The head is 36 and gets no Social Security disability benefits, so the answer is not eligible (0)."
@@ -4023,10 +4023,10 @@ us,scenario_045,payroll_tax,grok-4.5,llm_error,payroll_tax_base,False,"The model
us,scenario_045,payroll_tax,kimi-k2.6,parse_contract_failure,missing_output,False,"The model returned no value and no explanation for payroll_tax, so it never submitted the required key through the submit_outputs contract. The correct derivation is 6.2% and 1.45% of the $36,276 wage base, $2,249.09 + $526.00 = $2,775.08."
us,scenario_045,payroll_tax,minimax-m3,llm_error,other,False,"The model's reasoning was fully correct — $36,276 × 0.062 = $2,249 Social Security, $36,276 × 0.0145 = $526 Medicare, no Additional Medicare Tax, no Michigan employee payroll tax, ""Total ≈ $2,775"" — but it submitted 2837 in the value field, contradicting its own stated total by $62. The failure is the transcription of a derived answer, not the tax rule."
us,scenario_045,self_employment_tax,kimi-k2.6,parse_contract_failure,missing_output,False,All wrong responses were missing or unparseable predictions.
-us,scenario_045,snap,claude-haiku-4.5,llm_error,taxable_income_or_deductions,False,"It subtracted the $21,208 in employer health insurance premiums from income, but SNAP allows no such deduction; medical expenses count only for elderly or disabled members. It also took the $5,200 child support out before any eligibility test. It even said the household exceeded the income limit, then paid a benefit anyway. It never ran the 130% gross test or Michigan's 200% FPL BBCE limit on the full $3,022.97 a month in wages (232% FPL), which the household fails, so the benefit is $0."
-us,scenario_045,snap,claude-opus-4.7,llm_error,state_local_rule,False,"It claimed Michigan excludes child support paid from gross income, and used that to bring gross income ($31,076) just under the 200% FPL BBCE limit. Michigan actually deducts child support at the net income step (273.9(d)(5)), so gross income stays at $36,276 (232% FPL), above both the 130% and 200% limits, and the household is ineligible. Its own benefit arithmetic ($293 maximum minus $616, 30% of net income) also came out below zero, yet it submitted $2,718 with no calculation behind it."
-us,scenario_045,snap,kimi-k2.6,parse_contract_failure,missing_output,False,"The model returned no SNAP value and no explanation, so nothing substantive can be graded. The correct answer is $0: gross income of $3,022.97 a month is 232% FPL, above both the 130% gross limit and Michigan's 200% BBCE limit."
-us,scenario_045,snap,qwen-3.7-max,llm_error,other,False,"Its reasoning correctly found that $3,023 a month exceeds the 130% FPL gross limit and that the household is not eligible, which means $0. It submitted $7,032 anyway, a value its own explanation does not support. It also never checked Michigan's 200% FPL BBCE limit (which the household also fails), and it overstated the 130% limit as $1,766 when the guideline gives about $1,695 a month."
+us,scenario_045,snap,claude-haiku-4.5,llm_error,taxable_income_or_deductions,False,"Subtracted the $21,208 of employer-sponsored insurance premiums from SNAP income, but SNAP has no deduction for these premiums. The full $3,022.97 of monthly gross income fails the 130% gross limit, at about 232% of the guideline. The model even wrote that the household exceeds the income limit, then went on to calculate a $258 monthly benefit anyway, when the correct result is $0."
+us,scenario_045,snap,claude-opus-4.7,llm_error,state_local_rule,False,"Treated Michigan as excluding the $5,200 of child support from gross income, which put adjusted gross income just under the 200% BBCE limit. Michigan instead deducts child support paid only when computing net income, so gross income stays at $3,022.97 a month (about 232% of the guideline) and fails both the 200% BBCE limit and the 130% test. The model's own net income calculation also gave a benefit below zero, yet it submitted $2,718 instead of $0."
+us,scenario_045,snap,kimi-k2.6,parse_contract_failure,missing_output,False,"Gave no SNAP value and no reasoning, so there was nothing to score. The correct result is $0, because $3,022.97 of monthly gross income fails the 130% gross test and the 200% TANF non-cash categorical eligibility limit."
+us,scenario_045,snap,qwen-3.7-max,llm_error,other,False,"Correctly found that $3,023 of monthly gross income exceeds the 130% gross limit and that the household is not eligible for SNAP, but submitted $7,032 instead of $0. The submitted number contradicts the model's own eligibility finding."
us,scenario_045,ssi,kimi-k2.6,parse_contract_failure,missing_output,False,All wrong responses were missing or unparseable predictions.
us,scenario_045,state_income_tax_before_refundable_credits,claude-fable-5,llm_error,other,False,"The model correctly computed 0.0425 × ($36,276 − $5,900) ≈ $1,291, then dropped that result for guesses at higher exemptions. It submitted $1,229, a value that matches none of the exemptions it named. The submitted value contradicts its own correct derivation."
us,scenario_045,state_income_tax_before_refundable_credits,claude-fable-5.1,llm_error,thresholds_rates,False,"The model used $5,800, which is the 2025 Michigan personal exemption, instead of the 2026 amount of $5,900. That overstates taxable income by $100 and gives $1,295.23 instead of 4.25% × $30,375.59 = $1,290.96."
@@ -7367,17 +7367,17 @@ us,scenario_086,federal_income_tax_before_refundable_credits,muse-wonder,llm_err
us,scenario_086,federal_income_tax_before_refundable_credits,ox-alpha,llm_error,taxable_income_or_deductions,False,"It filed single ($16,100 deduction, single brackets reaching 22%) instead of head of household with the $24,150 deduction, and it deducted $275 of auto loan interest. It then let only $500 of the CTC reduce tax. Because tax exceeds the credit, the full $2,200 applies nonrefundably; the $1,700 refundable cap only limits the additional CTC."
us,scenario_086,federal_income_tax_before_refundable_credits,qwen-3.7-max,llm_error,taxable_income_or_deductions,False,"It filed married filing jointly, with MFJ Social Security base amounts and a $31,200 deduction. An unmarried parent with a 12-year-old files head of household, with a $24,150 deduction and HoH brackets. It also used a $2,000 CTC instead of $2,200."
us,scenario_086,federal_income_tax_before_refundable_credits,qwen3.8-max,llm_error,taxable_income_or_deductions,False,"It applied the $32,200 MFJ deduction, excluded the dependent benefits, and claimed taxable income falls to $0, although $62,000 of wages minus even $32,200 leaves positive taxable income. The correct HoH computation gives $48,412.90 of taxable income, $5,455.55 of tax, and $3,255.55 after the $2,200 CTC."
-us,scenario_086,federal_refundable_credits,claude-opus-4.7,llm_error,credit_phaseout,False,"The model computed pre-credit tax of about $4,300 against a $2,200 CTC and then contradicted its own arithmetic by awarding $1,700, writing that the nonrefundable portion ""absorbs tax"" while still paying out the refundable cap. It applied only two of the three ACTC limitations — the $1,700 per-child cap and the 15%-of-earnings-over-$2,500 phase-in — and omitted the controlling leg of IRC 24(d)(1)(B), the amount of CTC blocked by the tax-liability limitation, which is $0 when liability ($5,455.55 here) exceeds the entire $2,200 credit."
-us,scenario_086,federal_refundable_credits,claude-opus-4.8,llm_error,credit_phaseout,False,"The model stated that ""tax liability is largely offset"" by the CTC and then treated the $1,700 refundable ceiling as the amount payable, inverting Schedule 8812: line 16a (total CTC minus the nonrefundable amount actually used) is $0 here, and the $1,700 cap can only limit that residual, never create one. It also used a stale $2,000 CTC rather than the 2026 OBBBA amount of $2,200, but the credit is fully absorbed at either figure since pre-credit tax is $5,455.55."
-us,scenario_086,federal_refundable_credits,claude-sonnet-5,llm_error,credit_phaseout,False,"The model derived the correct answer explicitly — ""the full $2,000 CTC would be absorbed by tax liability, leaving no refundable Additional Child Tax Credit"" — then overrode it with $1,700 by invoking unnamed ""itemized/above-the-line deductions reducing taxable income further."" Reaching any ACTC requires taxable income below roughly $21,280 under the 10%/12% HoH schedule, i.e. about $51,300 of deductions against $72,562.90 of AGI; the actual itemizable items here (mortgage interest on a $55,000 balance, Georgia income tax, and medical costs entirely below the 7.5%-of-AGI floor) fall far short of even the $24,150 standard deduction."
-us,scenario_086,federal_refundable_credits,deepseek-v4-flash-0731,llm_error,credit_phaseout,False,"The model correctly zeroed the refundable CTC but manufactured an EITC of $1,015 by applying the 7.65% phase-out percentage, which IRC 32(b)(1) assigns only to the zero-qualifying-child schedule, to a one-child maximum credit: $4,450 − 0.0765 × ($72,600 − $27,700) = $1,015. The one-child phase-out rate is 15.98%, which exhausts the $4,427 maximum credit about $27,700 above the ~$23,900 threshold, ending the credit near $51,600 — some $21,000 below this filer's phase-out base."
-us,scenario_086,federal_refundable_credits,gemini-3.7-flash,llm_error,credit_phaseout,False,"The model asserted refundable ACTC eligibility in one sentence with no liability comparison and submitted $1,000, the pre-TCJA per-child credit amount, applied as though it were automatically refundable for any household with a qualifying child. The ACTC equals the CTC left unused after the §26(a) liability limit; with $5,455.55 of pre-credit tax against a $2,200 CTC, that residual is $0."
-us,scenario_086,federal_refundable_credits,gpt-5.4-mini,llm_error,credit_phaseout,False,"The model described $62,000 of wages as ""limited earnings"" and produced $1,500 as an approximation without computing the head's tax liability, the step that determines whether any CTC goes unused. The $1,500 figure corresponds to no statutory parameter for 2026 (the CTC is $2,200 with a $1,700 refundable cap), and the correct residual after $5,455.55 of pre-credit tax absorbs the full $2,200 credit is $0."
-us,scenario_086,federal_refundable_credits,gpt-5.5,llm_error,taxable_income_or_deductions,False,"The model applied the right structure — refundable portion equals the $2,200 credit less the part used against tax — but its $384 answer implies pre-credit liability of only $1,816, understating the actual $5,455.55 by more than $3,600. It omitted the $10,900.40 of taxable Social Security dependent benefits from AGI and used a taxable-income figure roughly $30,000 below the correct $48,412.90, since even $61,662 of AGI less the $24,150 HoH standard deduction yields about $4,200 of tax, which already absorbs the entire credit."
-us,scenario_086,federal_refundable_credits,gpt-5.6-luna,llm_error,credit_phaseout,False,"The model reasoned that ""one qualifying child supports the maximum $1,700 refundable child tax credit,"" treating the per-child refundable ceiling as a payment triggered by the presence of a qualifying child. Under IRC 24(d)(1) the cap limits only the CTC that the tax-liability limitation blocked; with $5,455.55 of pre-credit tax fully consuming the $2,200 CTC, Schedule 8812 line 16a is $0 and the refundable credit is $0."
-us,scenario_086,federal_refundable_credits,kimi-k2.6,parse_contract_failure,missing_output,False,"The model returned no value and no explanation for federal_refundable_credits, so no substantive tax reasoning was submitted to evaluate. The required answer is $0: the $2,200 CTC is fully absorbed as a nonrefundable credit against $5,455.55 of pre-credit tax, and EITC, refundable AOTC, the Recovery Rebate Credit, and the refundable payroll tax credit are all zero on these facts."
-us,scenario_086,federal_refundable_credits,ox-alpha,llm_error,credit_phaseout,False,"The model checked exactly two conditions — the 15% phase-in on earnings over $2,500 and the $200,000 §24(b) high-income phase-out start — and concluded the ACTC equals ""the full $1,700 cap,"" skipping IRC 24(d)(1)(B) entirely. That omitted leg is the operative one: the refundable credit equals the CTC that the §26(a) liability limitation blocked, and with $5,455.55 of pre-credit tax against a $2,200 CTC nothing is blocked, so the refundable amount is $0."
-us,scenario_086,federal_refundable_credits,qwen3.8-max,llm_error,household_unit_or_filing_status,False,"The model evaluated the credit's liability limitation against the wrong person, reasoning that ""the child's tax liability is $0 and the credit is fully refundable""; the CTC is claimed on the head's return, where pre-credit tax of $5,455.55 absorbs the entire $2,200 credit and leaves $0 refundable. It also wrongly asserted the 12-year-old is not a qualifying child for EITC — the child meets the §32(c)(3) age, relationship, and residency tests, and EITC is $0 solely because the phase-out base far exceeds the one-child HoH endpoint of roughly $51,600."
+us,scenario_086,federal_refundable_credits,claude-opus-4.7,llm_error,credit_phaseout,False,"The model estimated tax of about $4,300 and a CTC of $2,200, then set ACTC to min($1,700, 15% × (earnings − $2,500)). It left out the limit that ACTC cannot exceed the CTC remaining after the nonrefundable offset. Because $4,300 of tax absorbs the whole $2,200, the refundable portion is $0."
+us,scenario_086,federal_refundable_credits,claude-opus-4.8,llm_error,credit_phaseout,False,"The model said the tax liability is 'largely offset' by the CTC and still assigned the full $1,700 ACTC cap. The refundable amount is limited to CTC left unused after tax, and pre-credit tax of more than $4,000 uses up the entire credit. It also used the old $2,000 per-child amount instead of $2,200."
+us,scenario_086,federal_refundable_credits,claude-sonnet-5,llm_error,credit_phaseout,False,"The model correctly found that tax of about $4,300 absorbs the full CTC and leaves no ACTC. It then reversed itself by inventing extra deductions that do not exist in the facts and submitted $1,700. The correct conclusion from its own reasoning is $0."
+us,scenario_086,federal_refundable_credits,deepseek-v4-flash-0731,llm_error,credit_phaseout,False,"The model computed the one-child EITC as $4,450 minus 7.65% of ($72,600 − $27,700), but 7.65% is the childless phase-out rate and the one-child rate is 15.98%. The head's earned income is $62,000, which is above the roughly $51,000 point where the one-child EITC reaches $0. EITC is therefore $0, and with the CTC fully used against tax, total refundable credits are $0."
+us,scenario_086,federal_refundable_credits,gemini-3.7-flash,llm_error,credit_phaseout,False,"The model claimed a $1,000 ACTC without computing tax liability. Tax on $62,000 of wages (taxable income of at least about $37,500 after the HoH standard deduction) is more than $4,000. That absorbs the entire $2,200 CTC, so the refundable portion is $0."
+us,scenario_086,federal_refundable_credits,gpt-5.4-mini,llm_error,credit_phaseout,False,"The model assumed 'limited earnings,' but the head earns $62,000. At that level, pre-credit federal tax of more than $4,000 fully absorbs the $2,200 CTC, so no ACTC is refundable. Its $1,500 figure is an unsupported guess."
+us,scenario_086,federal_refundable_credits,gpt-5.5,llm_error,credit_phaseout,False,"An ACTC of $384 implies pre-credit income tax of only about $1,816. The actual figure is above $4,000: taxable income is at least about $37,500 after the $24,150 HoH standard deduction, before counting any taxable Social Security. Because tax exceeds the $2,200 CTC, nothing is left to refund."
+us,scenario_086,federal_refundable_credits,gpt-5.6-luna,llm_error,credit_phaseout,False,"The model assigned the maximum $1,700 refundable CTC because there is one qualifying child. It skipped the ordering rule that the CTC first offsets income tax and only the unused remainder is refundable. Tax of more than $4,000 uses the full $2,200, leaving $0."
+us,scenario_086,federal_refundable_credits,kimi-k2.6,parse_contract_failure,missing_output,False,"The model gave no value and no reasoning for federal_refundable_credits, so it has no usable answer. The correct derivation gives $0: EITC is fully phased out at $62,000 of earnings, and tax liability absorbs the entire $2,200 CTC."
+us,scenario_086,federal_refundable_credits,ox-alpha,llm_error,credit_phaseout,False,"The model checked only the 15% earned-income phase-in, the $1,700 cap, and the $200,000 phase-out. It did not apply the limit that ACTC cannot exceed CTC unused after offsetting tax. Pre-credit tax of more than $4,000 absorbs the full $2,200 credit, so ACTC is $0."
+us,scenario_086,federal_refundable_credits,qwen3.8-max,llm_error,credit_phaseout,False,"The model measured the CTC against the child's own $0 tax liability. The credit is claimed on the head's Head of Household return, where tax of more than $4,000 fully absorbs the $2,200 CTC, so no refundable ACTC remains."
us,scenario_086,head_chip_eligible,kimi-k2.6,parse_contract_failure,missing_output,False,All wrong responses were missing or unparseable predictions.
us,scenario_086,head_medicaid_eligible,kimi-k2.6,parse_contract_failure,missing_output,False,All wrong responses were missing or unparseable predictions.
us,scenario_086,payroll_tax,claude-haiku-4.5,llm_error,state_local_rule,False,"The model correctly calculated $4,743 of federal FICA, then improperly added $466.80 of Georgia unemployment insurance as an employee payroll tax. Georgia unemployment insurance is an employer liability and is excluded from this employee-side output."
diff --git a/annotations/us_full_run_20260612_policyengine_4_16_1_populace/us_case_notes.csv b/annotations/us_full_run_20260612_policyengine_4_16_1_populace/us_case_notes.csv
index e3e2f7f8..a3255443 100644
--- a/annotations/us_full_run_20260612_policyengine_4_16_1_populace/us_case_notes.csv
+++ b/annotations/us_full_run_20260612_policyengine_4_16_1_populace/us_case_notes.csv
@@ -111,14 +111,14 @@ us,scenario_013,snap,48,llm_error,categorical_eligibility,False,,"This household
us,scenario_013,state_income_tax_before_refundable_credits,1,llm_error,taxable_income_or_deductions,False,,"Arizona’s standard deduction eliminates the remaining taxable income after excluding Social Security, so applying the 2.5% rate directly to gross dividends and capital gains is incorrect. The resulting Arizona income tax before refundable credits is zero."
us,scenario_013,state_refundable_credits,38,llm_error,state_local_rule,False,,"The $25 comes from Arizona's Credit for Increased Excise Taxes (A.R.S. §43-1072.01). It is fully refundable and pays $25 for each person in the tax unit (taxpayer, spouse, dependents), up to $100. A single filer qualifies with Arizona AGI at or below $12,500. Social Security is excluded here: provisional income of about $18,676 is under the $25,000 base, so none of it is federally taxable, and Arizona exempts it anyway. That leaves Arizona AGI of about $6,736, well under the limit, so this one-person unit gets $25. The credit does not depend on tax liability, earned income, dependents, rent, or property tax. Almost every model either said Arizona has no applicable refundable credit or ruled it out for those wrong reasons. One model counted age and disability exemptions, which this credit does not use."
us,scenario_014,federal_income_tax_before_refundable_credits,35,llm_error,thresholds_rates,False,,"The only taxable income is the spouse's $88,927.65 in wages, and AGI equals that full amount. Veterans benefits are excluded, and the listed ESI premium is not subtracted from the gross wage input. Under OBBBA's permanent 2026 parameters, the MFJ standard deduction of $32,200 leaves taxable income of $56,727.65. Tax is then 10% of the first $24,800 plus 12% of the remaining $31,927.65, which equals $6,311.32, and no nonrefundable credits apply because there are no dependents. Most models went wrong in one of four ways: they assumed the TCJA had sunset (bringing back personal exemptions and a 15% bracket), used stale 2025 deduction and bracket figures, subtracted the ESI premiums from wages, or did the math correctly and then submitted a different number."
-us,scenario_014,federal_refundable_credits,2,llm_error,categorical_eligibility,False,,"Federal refundable credits are zero because this childless joint tax unit has income far above the EITC phase-out range and has no qualifying child for refundable CTC. No education, rebate, or refundable payroll-tax-credit facts create another refundable federal credit."
+us,scenario_014,federal_refundable_credits,2,llm_error,categorical_eligibility,False,,"The tax unit is a married couple with no dependents, so the refundable Child Tax Credit cannot apply because there is no qualifying child. The childless EITC phases out completely at about $26,820 of earned income/AGI for joint filers in 2026, and the spouse's $88,928 in wages is far above that. Veterans benefits are nontaxable and do not create eligibility for any credit. There are also no education expenses (so no refundable AOTC) and no recovery rebate, so federal refundable credits are $0."
us,scenario_014,head_medicaid_eligible,1,llm_error,taxable_income_or_deductions,False,,"Medicaid eligibility for the head uses household tax-unit MAGI rather than only the head's earned income. The household's MAGI is approximately $183,584, or 4.11 times FPL, exceeding every applicable West Virginia Medicaid income limit, and the head has no alternative categorical pathway."
us,scenario_014,payroll_tax,16,llm_error,payroll_tax_base,False,,"Only the spouse has wages, so the correct answer is the 7.65% employee FICA rate applied to her full $88,928 gross wages: $5,513.51 Social Security plus $1,289.45 Medicare, or $6,802.96. The facts do not say she pays premiums through a salary-reduction (Section 125) plan, so the $14,717 in employer-sponsored insurance premiums does not come out of the FICA wage base. Veterans benefits are not wages, and West Virginia has no employee state payroll tax. The largest group of wrong answers (7 models) assumed a cafeteria plan that the facts never mention and taxed only $74,211. Most of the rest applied 7.65% to $88,928 and then invented an extra tax, made an arithmetic slip, or submitted a number different from their own total."
us,scenario_014,state_income_tax_before_refundable_credits,48,llm_error,thresholds_rates,False,,"West Virginia taxable income is federal AGI of $88,927.65, which is the spouse's wages only. The veterans benefits are excluded and the $14,717 employer-sponsored insurance premium is not subtracted again. WV has no standard deduction, so the only subtraction is two $2,000 personal exemptions, leaving $84,927.65. The 2026 MFJ schedule cuts the 2025 rates by another 5%, to 2.11% / 2.81% / 3.16% / 4.22% / 4.58% at breakpoints of $10k / $25k / $40k / $60k: 211 + 421.50 + 474 + 844 + 0.0458 × 24,927.65 = $3,092.19. Most models got the $84,928 base right but used the 2025 schedule (2.22–4.82%, giving $3,255.03) or the 2024 schedule (2.36–5.12%, giving $3,459.81). Others shrank the base by subtracting ESI premiums or inventing standard deductions."
us,scenario_015,federal_income_tax_before_refundable_credits,36,llm_error,thresholds_rates,False,,"The correct calculation is short. Start with wages of $45,000 minus the $1,042 traditional 401(k) deferral, add $2,000 of interest, subtract the $3,000 capped capital loss and the $49 IRA deduction, and AGI is $42,909. Subtract the $16,100 single standard deduction for 2026 (OBBBA made the TCJA structure permanent, so there is no personal exemption) to get taxable income of $26,809. Tax at 10% up to $12,400 and 12% above that is $1,240 + $1,729.13 = $2,969.13. No nonrefundable credits apply: there are no dependents, AGI is above the Saver's Credit limit, and the elderly/disabled credit is phased out. Most models got AGI right and then missed the answer in one of four ways: they used 2024 or 2025 standard deductions and bracket edges ($14,600, $15,000 or $15,750; $11,600, $11,925 or $12,150), assumed the TCJA had expired and applied a personal exemption with a 15% bracket, made up deductions such as mortgage interest or pre-tax health premiums, or made arithmetic and transcription errors after reaching about $2,969."
-us,scenario_015,federal_refundable_credits,2,llm_error,categorical_eligibility,False,,"A single adult with no dependent children or qualifying education expenses receives neither the refundable Child Tax Credit nor the refundable American Opportunity Credit. At approximately $43,450 of income, the childless EITC is also zero, and all other evaluated refundable-credit components are zero, yielding total federal refundable credits of $0."
+us,scenario_015,federal_refundable_credits,2,llm_error,categorical_eligibility,False,,"The head files alone as a single adult with no qualifying children and earns $45,000 in wages, so no refundable credit applies. The refundable CTC/ACTC requires a qualifying child. The childless EITC phases out completely at roughly $19–20k of earned income/AGI in 2026. There are no education expenses, so the refundable AOTC is $0, and the Recovery Rebate and payroll tax credits are $0 in 2026. Any positive figure is incorrect for this household."
us,scenario_015,head_chip_eligible,1,parse_contract_failure,other,False,,"CHIP eligibility runs through categorical gates first: coverage is for children under 19 and, at state option, pregnant women, so a 36-year-old head never reaches the income test — PolicyEngine assigns chip_category = 3 (categorically ineligible) and is_chip_eligible = False. The ~$43,450 household income and Indiana's Hoosier Healthwise/CHIP income thresholds are irrelevant to a person who fails the age/pregnancy gate, and the separate Medicaid pathways also return NONE for a non-aged, childless adult at that income in a state whose adult expansion he clears on neither disability-SSI nor MAGI grounds. The single wrong answer stated this categorical rule correctly in prose and then emitted the opposite binary."
-us,scenario_015,head_medicaid_eligible,2,llm_error,categorical_eligibility,False,,"Disability alone does not establish Medicaid eligibility; the person must satisfy a specific Indiana eligibility pathway and its applicable requirements. The head falls into Medicaid category NONE, receives no SSI, is not a dependent, and has MAGI at 2.69 times FPL, so no MAGI, disability-related, or state-specific pathway confers eligibility."
+us,scenario_015,head_medicaid_eligible,2,llm_error,categorical_eligibility,False,,"The head is a 36-year-old non-dependent adult with MAGI at 2.69x FPL. That is far above Indiana's 138% FPL expansion-adult limit, so the MAGI pathway fails. The head receives no SSI, and PolicyEngine's aged/blind/disabled pathway in Indiana requires the head to be aged, blind or disabled under SSI's rules, countable income within 100% of the poverty guideline and resources under $2,000. Earnings of $45,000 are above SSI's substantial gainful activity limit, so PolicyEngine does not count the head as disabled for this pathway, and about $585,000 in bank and stock assets is far above the resource cap, so medicaid_category is NONE. One model treated the disability flag by itself as qualifying and the other wrongly asserted that the head met the disability pathway's limits, even though disability opens a pathway only when its income and asset tests are met, and PolicyEngine models a working-disabled buy-in only for California, Illinois and Mississippi, not Indiana."
us,scenario_015,head_medicare_eligible,4,llm_error,age_disability,False,,"A person under 65 becomes eligible for Medicare on disability grounds only after 24 months of entitlement to Social Security Disability Insurance, or through the ESRD or ALS pathways. Being disabled is not enough on its own. The head is 36, has no Social Security disability benefits, and has no ESRD or ALS status. That means they don't meet the age-65 test or any disability-entitlement pathway, so they are not Medicare eligible. All four models treated the bare 'is disabled' flag as automatic Medicare eligibility and skipped the SSDI-receipt requirement."
us,scenario_015,local_income_tax,48,prompt_ambiguity,state_local_rule,False,,"The prompt defines local_income_tax by listing only NYC income tax, Philadelphia wage tax, Kansas City earnings tax and St. Louis earnings tax. PolicyEngine's local_income_tax variable also includes Indiana county income tax. No county was given, so the engine used its default, Adams County, at 1.6%: 1.6% × Indiana AGI of $41,909.38 (federal AGI $42,909.38 minus the $1,000 exemption) = $670.55. That leaves two readings. Reading (a): the output covers only the four listed city taxes, which gives $0. Reading (b): the output is PolicyEngine's full local_income_tax, which includes the Indiana county tax and gives $670.55. Every model chose reading (a), and a few also wrongly said Indiana has no local income tax at all. Developer adjudication (2026-10-10): the judge (claude-opus-5-5) returned prompt_ambiguity; adjudicated prompt_ambiguity (state_local_rule). The prompt places the household in Indiana but states no county. Every Indiana county levies its own local income tax (IC 6-3.6), at rates that differ by county. policyengine-us 2.15.17 left county income tax out of local_income_tax, so the frozen reference was $0.00. From policyengine-us 2.23.1 (PolicyEngine/policyengine-us#9694, which standardized local income tax) the engine counts Indiana county income tax in local_income_tax, at the rate of the county it assigns a household with no stated county. The reference therefore depends on the household's county, which the prompt does not state. Reference depends on an unlisted input; output excluded from scoring (county of residence (Indiana county income tax))."
us,scenario_015,payroll_tax,9,llm_error,payroll_tax_base,False,,"Employee FICA applies to the full $45,000 of gross wages: 6.2% Social Security ($2,790, well under the 2026 wage base) plus 1.45% Medicare ($652.50) gives $3,442.50. Indiana has no mandatory employee state payroll tax, and wages are far below the $200,000 Additional Medicare Tax threshold. The most common wrong move was shrinking the FICA base. Four models treated the listed $2,080 health insurance premiums as a Section 125 pre-tax salary reduction, and one subtracted the traditional 401(k) deferral, even though elective 401(k) deferrals stay subject to FICA. The rest reached or approached $3,442.50 and then broke the total with arithmetic slips or made-up add-ons."
@@ -391,7 +391,7 @@ us,scenario_045,head_medicaid_eligible,8,llm_error,taxable_income_or_deductions,
us,scenario_045,head_medicare_eligible,1,parse_contract_failure,missing_output,False,,All wrong responses were missing or unparseable predictions.
us,scenario_045,payroll_tax,10,llm_error,payroll_tax_base,False,,"The trap is the FICA wage base: seven of the ten models treated the $21,208 employer-sponsored insurance premium as a Section 125 pre-tax salary reduction and shrank the base from $36,276 to $15,068, collapsing on $1,152.70 (7.65% of the reduced figure). PolicyEngine computes employee payroll tax on employment income of $36,276 with no cafeteria-plan exclusion, and the listed ESI amount is the total premium including the employer share, which was never employee wages in the first place. The correct components are 6.2% Social Security ($2,249.09, far below the 2026 wage base cap) and 1.45% Medicare ($526.00), with no Additional Medicare Tax and no Michigan employee payroll tax, totaling $2,775.08. The three remaining misses used the right base and rates but failed at arithmetic, at answer transcription, or at emitting the key at all."
us,scenario_045,self_employment_tax,1,parse_contract_failure,missing_output,False,,All wrong responses were missing or unparseable predictions.
-us,scenario_045,snap,4,llm_error,categorical_eligibility,False,,"This one-person household has no elderly or disabled member, so it must either pass the 130% FPL gross income test or qualify through Michigan's broad-based categorical eligibility (BBCE), which has a 200% FPL gross limit. Michigan counts child support paid in gross income and deducts it only when computing net income (7 CFR 273.9(d)(5)). That leaves gross income at the full $3,022.97 a month, about 232% of the guideline, which fails both limits, so SNAP is $0 for the year. The wrong answers came from three errors: taking child support or health premiums out of gross income, still paying a benefit after finding the household over the limit, and a submitted value that contradicts the model's own finding that the household is ineligible."
+us,scenario_045,snap,4,llm_error,categorical_eligibility,False,,"This household has one person with no elderly or disabled member, so it must pass a gross income screen before net income matters. Michigan counts child support paid in SNAP gross income and deducts it only at the net income step, so gross income is the full $3,022.97 a month. That is about 232% of the poverty guideline, which fails both the 130% gross income test and the 200% limit for Michigan's TANF non-cash categorical eligibility. SNAP is therefore $0 in every month. The wrong answers subtracted items before the gross test, reached a benefit after their own reasoning said the household was ineligible, or gave no answer."
us,scenario_045,ssi,1,parse_contract_failure,missing_output,False,,All wrong responses were missing or unparseable predictions.
us,scenario_045,state_income_tax_before_refundable_credits,41,llm_error,thresholds_rates,False,,"Michigan tax here is 4.25% × (federal AGI of $36,275.59 − the 2026 personal exemption of $5,900) = $1,290.96. Michigan has no standard deduction and no nonrefundable credit that applies to this filer. The largest group of models used an outdated or guessed exemption ($5,000, $5,200, $5,600, $5,800 or $6,000) or the 2023-only 4.05% rate. A second group subtracted the $21,208 employer insurance premiums from the stated gross wages, which brought AGI down to $15,068. Others got to $0 by inventing a standard deduction, deducting child support, or treating the refundable Homestead Property Tax Credit as nonrefundable. A few computed a number close to the reference and then submitted a different value."
us,scenario_045,state_refundable_credits,44,llm_error,state_local_rule,False,,"The whole $760.79 is Michigan's refundable Homestead Property Tax Credit, which renters can claim. The calculation is 23% of the $10,560 rent ($2,428.80), minus 3.2% of total household resources ($36,275.59, i.e., full wages with no deduction for child support paid or ESI premiums), which leaves $1,267.98, times 60% = $760.79. Federal EITC is $0 for this childless filer at $36k, so the Michigan EITC adds nothing. The wrong answers fall into four groups: models that ignored the homestead credit or thought renters can't claim it; models that used the wrong rent share (20% or 17%), the wrong threshold (3.5%) or the wrong credit rate; models that shrank household resources by subtracting the $21,208 ESI premiums or the $5,200 child support; and models that invented a positive EITC."
@@ -674,7 +674,7 @@ us,scenario_085,state_income_tax_before_refundable_credits,35,llm_error,state_lo
us,scenario_086,child1_chip_eligible,1,llm_error,categorical_eligibility,False,,"CHIP requires Medicaid ineligibility and satisfaction of CHIP’s independent age and income criteria. Child 1 is age 12, so age is not the failing criterion; the household income exceeds Georgia’s applicable CHIP income threshold for 2026."
us,scenario_086,child1_medicaid_eligible,5,llm_error,categorical_eligibility,False,,"The models conflated Georgia’s separate PeachCare/CHIP pathway with Medicaid or assumed that being a child creates Medicaid eligibility at higher income levels. At 3.44 times FPL, child1 exceeds Georgia’s child Medicaid thresholds and qualifies for no Medicaid category, so employer-sponsored coverage and non-MAGI expense deductions do not create eligibility."
us,scenario_086,federal_income_tax_before_refundable_credits,44,llm_error,taxable_income_or_deductions,False,"PolicyEngine deducts the full $337.50 educator expense above the line instead of capping it at the IRC §62(a)(2)(D)/(d)(3) limit of $300 per educator. That limit is $250 indexed and rounded down to a $50 multiple, so it is still $300 for 2026. The excess deduction understates taxable income by $37.50 and tax by $4.50; the capped result is about $3,260.05.","The reference files head of household and attributes the $12,824 of Social Security dependent benefits to the head. Provisional income is about $68,075, far above the $34,000 upper base, so 85% ($10,900.40) is taxable. It then subtracts $337.50 of educator expenses and OBBBA's permanent 2026 HoH standard deduction of $24,150, taxes $48,412.90 at 10% up to $17,700 and 12% above that ($5,455.55), and subtracts the full $2,200 CTC. The models went wrong in five ways: treating the benefits as the child's non-taxable income, assuming TCJA expired (personal exemptions, 15% bracket, $1,000 CTC), using stale standard deduction and CTC amounts ($22,500 to $23,350 and $2,000), using single or MFJ status, or deducting the $275 of auto loan interest, which the engine does not allow here. Developer adjudication (2026-09-22): the judge (claude-opus-5-5) returned llm_error; adjudicated llm_error (taxable_income_or_deductions). The 2026 educator expense cap is $350, so the head's $337.50 is fully deductible; the judge's $300 cap is not the law. Reference affirmed (26 U.S.C. 62(a)(2)(D), 62(d)(3); Rev. Proc. 2025-32 section 3.12)."
-us,scenario_086,federal_refundable_credits,11,llm_error,credit_phaseout,False,,"The Additional Child Tax Credit is a residual, not an entitlement: IRC 24(d)(1) makes it the lesser of the per-child refundable cap ($1,700 for 2026) and the amount of CTC that the §26(a) tax-liability limitation actually blocked, which Schedule 8812 computes as line 12 minus line 14 (""If zero, stop here; you cannot take the additional child tax credit""). This head-of-household filer has AGI of $72,562.90 ($62,000 wages plus $10,900.40 of the $12,824 Social Security dependent benefit that is taxable once combined income exceeds the $34,000 tier-2 threshold, less the $337.50 educator deduction), taxable income of $48,412.90 after the 2026 HoH standard deduction of $24,150, and pre-credit tax of $5,455.55 — so the full $2,200 CTC is consumed nonrefundably and nothing spills into the ACTC. EITC is $0 because earned income of $62,000 is far past the 2026 one-child HoH phase-out endpoint of roughly $51,600, computed at the statutory 15.98% phase-out rate, and no education expenses, rebate, or refundable payroll credit exist here. Ten of eleven models treated the $1,700 refundable cap (or a stale $1,000/$1,500 figure) as a floor paid out per qualifying child and never performed the unused-CTC subtraction against liability."
+us,scenario_086,federal_refundable_credits,11,llm_error,credit_phaseout,False,,"The 2026 Child Tax Credit for one child is $2,200. The refundable Additional CTC equals only the part of that credit left over after it offsets income tax, capped at $1,700 and at 15% of earnings over $2,500. This Head of Household filer has $62,000 in wages, so taxable income is at least about $37,500 after the $24,150 standard deduction. That gives pre-credit tax of about $4,100 or more, which absorbs the whole $2,200 credit and leaves $0 of ACTC. Earnings of $62,000 are also above the one-child EITC phase-out end of about $51,000, so EITC is $0. The most common error treated the $1,700 refundability cap as the amount payable and skipped the step that limits ACTC to unused credit after tax liability."
us,scenario_086,head_chip_eligible,1,parse_contract_failure,missing_output,False,,All wrong responses were missing or unparseable predictions.
us,scenario_086,head_medicaid_eligible,1,parse_contract_failure,missing_output,False,,All wrong responses were missing or unparseable predictions.
us,scenario_086,payroll_tax,8,llm_error,payroll_tax_base,False,,"Employee payroll tax is $3,844 of Social Security tax plus $899 of Medicare tax on the head’s full $62,000 wage amount, totaling $4,743. The listed insurance premiums do not reduce the FICA wage base in this computation, Georgia unemployment insurance is employer-paid rather than a mandatory employee payroll tax, and the dependent child has no wages."
diff --git a/annotations/us_full_run_20260612_policyengine_4_16_1_populace/us_wording-amendments.json b/annotations/us_full_run_20260612_policyengine_4_16_1_populace/us_wording-amendments.json
index df1db9c6..69920c7d 100644
--- a/annotations/us_full_run_20260612_policyengine_4_16_1_populace/us_wording-amendments.json
+++ b/annotations/us_full_run_20260612_policyengine_4_16_1_populace/us_wording-amendments.json
@@ -1,5 +1,5 @@
{
- "note": "Wording-only amendments of published text for cases GPT-6.1 Sol re-opened (finish_gpt61sol.py load_amendments): each replaces its old text, found exactly once, with the new text. None changes a class, an exclusion or a score. Triage applies them; export binds this file; the freeze commits it beside the adjudication record. The last 462 (after the first 394) are for cases Muse Wonder re-opened (finish_musewonder.py load_amendments). Wording amendments to the cases the Muse Wonder release re-opened (dashboard-data-20261013). These cases' new Opus 5.5 verdicts replaced text earlier releases had corrected (us_wording-amendments.json, docs/release_20261006/annotation_rewrites.json and reference_audit/2026-10-05-medicaid-031-annotations/rewrites.json). A GPT-6.1 Sol reviewer read each of the 26 cases' new text against the record and proposed corrections; a second GPT-6.1 Sol reviewer checked each one adversarially, keeping 444, refining the wording of 20 and dropping 80; 2 more that would have rewritten the generated adjudication sentence, which restates the record, were left out. Each corrects a statement the record contradicts; none changes a score or a decision.",
+ "note": "Wording-only amendments of published text for cases GPT-6.1 Sol re-opened (finish_gpt61sol.py load_amendments): each replaces its old text, found exactly once, with the new text. None changes a class, an exclusion or a score. Triage applies them; export binds this file; the freeze commits it beside the adjudication record. The last 462 (after the first 394) are for cases Muse Wonder re-opened (finish_musewonder.py load_amendments). Wording amendments to the cases the Muse Wonder release re-opened (dashboard-data-20261013). These cases' new Opus 5.5 verdicts replaced text earlier releases had corrected (us_wording-amendments.json, docs/release_20261006/annotation_rewrites.json and reference_audit/2026-10-05-medicaid-031-annotations/rewrites.json). A GPT-6.1 Sol reviewer read each of the 26 cases' new text against the record and proposed corrections; a second GPT-6.1 Sol reviewer checked each one adversarially, keeping 444, refining the wording of 20 and dropping 80; 2 more that would have rewritten the generated adjudication sentence, which restates the record, were left out. Each corrects a statement the record contradicts; none changes a score or a decision. The last 14 (after the first 856) are for the five cases release dashboard-data-20261013b re-judged (scripts/release_20261013b.py load_amendments). Each corrects a statement in a new verdict's text that the case's prompt or policyengine-us 2.41.0 contradicts. Two independent reviewers (Claude Opus 5.5 and GPT-6.1 Sol, neither part of the release) read all 26 new texts against each case's prompt and the engine, and a review of the release's pull request found three more of scenario_015's Medicaid texts that the household's calculation contradicts and a misstated EITC end point in scenario_014 (docs/release_20261013b/design.md). Each correction here was then checked against the engine's code and parameters, and for scenario_015's Medicaid pathway against a calculation of that household. None changes a class, a flag, an exclusion or a score.",
"amendments": [
{
"case_id": "us__scenario_008__state_refundable_credits",
@@ -6798,6 +6798,110 @@
"old": "Household gross income counts the $2,800 of Social Security, which puts the head in the lowest band (HGI ≤ $3,000). In that band the credit is 50% of property tax above 3.5% of HGI: 0.5 × ($1,633.50 − $98) ≈ $768. Because a household member is 65 or older, the credit is capped at $375.",
"new": "This 74-year-old filer has federal AGI of $0 and property taxes of $1,633.50, above 3.5% of that AGI, so the flat table in force from 2025 gives $375.",
"reason": "The adjudication record (adjudication.json, reasoning; reference_basis N.Y. Tax Law 606(e) as amended by Part RR of Chapter 59 of the Laws of 2025) affirms the federal-AGI flat-table rule, and prior_amendments.json specifically corrects presenting the repealed household-gross-income formula and its $768 calculation as governing."
+ },
+ {
+ "case_id": "us__scenario_015__head_medicaid_eligible",
+ "field": "case_annotation",
+ "old": "PolicyEngine's aged/blind/disabled pathway applies SSI-style income limits plus a small resource cap.",
+ "new": "PolicyEngine's aged/blind/disabled pathway in Indiana requires the head to be aged, blind or disabled under SSI's rules, countable income within 100% of the poverty guideline and resources under $2,000.",
+ "reason": "The text stated Indiana's rule as a general fact and called the income limit SSI-style. Indiana's parameters under gov.hhs.medicaid.eligibility.categories.senior_or_disabled: income limit 1.00 of the poverty guideline (income/limit/individual.yaml), not the SSI federal benefit rate (uses_ssi_federal_benefit_rate.yaml: false), and a $2,000 individual asset limit (assets/limit/individual.yaml), tested as assets below the limit. The pathway's first condition is is_ssi_aged_blind_disabled (is_optional_senior_or_disabled_for_medicaid), which holds for a person who is SSI-aged, blind or SSI-disabled."
+ },
+ {
+ "case_id": "us__scenario_015__head_medicaid_eligible",
+ "field": "case_annotation",
+ "old": "Roughly $45,000 of earnings and about $585,000 in bank and stock assets fail both tests, so medicaid_category is NONE.",
+ "new": "Earnings of $45,000 are above SSI's substantial gainful activity limit, so PolicyEngine does not count the head as disabled for this pathway, and about $585,000 in bank and stock assets is far above the resource cap, so medicaid_category is NONE.",
+ "reason": "The engine's income test does not fail here; the disability condition and the asset test do. Computed for this household on policyengine-us 2.41.0: meets_ssi_disability_criteria False, ssi_engaged_in_sga True, is_ssi_disabled False, is_optional_senior_or_disabled_income_eligible True (medicaid_optional_senior_or_disabled_countable_income 0), is_optional_senior_or_disabled_asset_eligible False (ssi_countable_resources 584,850), medicaid_category NONE. ssi_engaged_in_sga compares monthly ssi_earned_income ($3,750) with gov.ssa.sga.non_blind ($1,690 in 2026), and is_ssi_disabled is meets_ssi_disability_criteria and not ssi_engaged_in_sga. The conclusion does not rest on the unlisted meets_ssi_disability_criteria input, which the household data never set: computed with it set to True, ssi_engaged_in_sga keeps is_ssi_disabled False and medicaid_category stays NONE."
+ },
+ {
+ "case_id": "us__scenario_015__head_medicaid_eligible",
+ "field": "case_annotation",
+ "old": "Both models treated the disability flag by itself as qualifying",
+ "new": "One model treated the disability flag by itself as qualifying and the other wrongly asserted that the head met the disability pathway's limits",
+ "reason": "Only minimax-m3 relied on the flag alone. claude-sonnet-5's reasoning in the case's prompt says the head's income is 'well below the SSI/disability-related Medicaid threshold' and that earnings 'plus assets fall within eligibility limits'. The engine's income test passes for this household, so the text names the pathway's limits rather than its income limit: what fails is the disability condition, because earnings exceed SSI's substantial gainful activity limit, and the asset test. Computed for this household on policyengine-us 2.41.0: ssi_earned_income $45,000, so $3,750 a month against gov.ssa.sga.non_blind of $1,690 a month in 2026; ssi_engaged_in_sga True; is_ssi_disabled False; medicaid_optional_senior_or_disabled_countable_income 0 against a limit of $15,960, so the income test passes; ssi_countable_resources 584,850, so the asset test fails; medicaid_category NONE."
+ },
+ {
+ "case_id": "us__scenario_015__head_medicaid_eligible",
+ "field": "case_annotation",
+ "old": "PolicyEngine does not model a working-disabled buy-in with relaxed limits",
+ "new": "PolicyEngine models a working-disabled buy-in only for California, Illinois and Mississippi, not Indiana",
+ "reason": "True for this household's state but false as a general fact: policyengine-us 2.41.0's is_working_disabled_buy_in_for_medicaid is ca_wdp_eligible or il_hbwd_eligible or ms_wd_eligible, each defined for its own state, and nothing models one for Indiana."
+ },
+ {
+ "case_id": "us__scenario_015__head_medicaid_eligible",
+ "field": "annotation",
+ "model": "minimax-m3",
+ "old": "The disability pathway needs SSI-level income and resources, but the head has $45,000 in wages and about $585,000 in assets",
+ "new": "In Indiana the disability pathway needs the head to be disabled under SSI's rules, countable income within 100% of the poverty guideline and resources under $2,000, but the head's earnings of $45,000 exceed SSI's substantial gainful activity limit and about $585,000 in assets exceeds the cap",
+ "reason": "Indiana's income limit for the pathway is the poverty guideline, not the SSI benefit rate, and the engine's income test passes for this household: what fails is the disability condition and the asset test. Indiana's parameters under gov.hhs.medicaid.eligibility.categories.senior_or_disabled: income limit 1.00 of the poverty guideline (income/limit/individual.yaml), not the SSI federal benefit rate (uses_ssi_federal_benefit_rate.yaml: false), and a $2,000 individual asset limit (assets/limit/individual.yaml), tested as assets below the limit. Computed for this household on policyengine-us 2.41.0: ssi_earned_income $45,000, so $3,750 a month against gov.ssa.sga.non_blind of $1,690 a month in 2026; ssi_engaged_in_sga True; is_ssi_disabled False; medicaid_optional_senior_or_disabled_countable_income 0 against a limit of $15,960, so the income test passes; ssi_countable_resources 584,850, so the asset test fails; medicaid_category NONE."
+ },
+ {
+ "case_id": "us__scenario_045__snap",
+ "field": "annotation",
+ "model": "claude-haiku-4.5",
+ "old": "It also never compared the full $3,022.97 monthly gross income with the 130% gross limit, which the household fails at about 232% of the guideline.",
+ "new": "The full $3,022.97 of monthly gross income fails the 130% gross limit, at about 232% of the guideline.",
+ "reason": "The model's reasoning in the case's prompt gives an income limit of about $1,655 a month and says 'This household exceeds the income limit', as the annotation's next sentence also reports, so 'never compared' contradicts both."
+ },
+ {
+ "case_id": "us__scenario_086__federal_refundable_credits",
+ "field": "annotation",
+ "model": "deepseek-v4-flash-0731",
+ "old": "The model ran the one-child EITC phase-out on a made-up $27,700 AGI.",
+ "new": "The model computed the one-child EITC as $4,450 minus 7.65% of ($72,600 − $27,700), but 7.65% is the childless phase-out rate and the one-child rate is 15.98%.",
+ "reason": "The model's reasoning in the case's prompt is '2026 max $4,450 minus 7.65% phaseout × ($72,600 - $27,700 AGI) = $1,015': $72,600 is the income and $27,700 the phase-out start, so the phase-out was not run on a $27,700 AGI. policyengine-us 2.41.0's 2026 EITC phase-out rates are 0.0765 with no children and 0.1598 with one (gov.irs.credits.eitc.phase_out.rate)."
+ },
+ {
+ "case_id": "us__scenario_086__federal_refundable_credits",
+ "field": "case_annotation",
+ "old": "Most models treated the $1,700 refundability cap as the amount payable and skipped the step",
+ "new": "The most common error treated the $1,700 refundability cap as the amount payable and skipped the step",
+ "reason": "Six of the eleven models submitted $1,700 and four of them skipped the limit (claude-opus-4.7, claude-opus-4.8, gpt-5.6-luna, ox-alpha); claude-sonnet-5 applied it and then overrode it, and qwen3.8-max applied it to the child's liability. That is the most common error, not most models."
+ },
+ {
+ "case_id": "us__scenario_015__federal_refundable_credits",
+ "field": "case_annotation",
+ "old": "the Recovery Rebate and payroll tax credits are inactive in 2026",
+ "new": "the Recovery Rebate and payroll tax credits are $0 in 2026",
+ "reason": "The case's prompt says each component returned $0. In policyengine-us 2.41.0 the refundable payroll tax credit is an input with no dated rule (refundable_payroll_tax_credit has no formula), so 'inactive in 2026' fits only the Recovery Rebate."
+ },
+ {
+ "case_id": "us__scenario_015__federal_refundable_credits",
+ "field": "case_annotation",
+ "old": "Any positive figure means the model either invented a child-based credit or applied the with-children EITC schedule.",
+ "new": "Any positive figure is incorrect for this household.",
+ "reason": "The case's prompt shows every refundable credit component at $0, which supports rejecting any positive answer but not a claim that these two errors are the only way to reach one. policyengine-us 2.41.0's 2026 EITC at $45,000 of earnings for a single filer is $0 with no child (maximum $664), $1,054 with one and $2,870 with two (gov.irs.credits.eitc max, phase_out.start, phase_out.rate), so $1,735.80 fits none of the 2026 schedules."
+ },
+ {
+ "case_id": "us__scenario_015__federal_refundable_credits",
+ "field": "annotation",
+ "model": "qwen3.8-max",
+ "old": "The EITC figure only fits the with-children phase-out schedule.",
+ "new": "The EITC figure does not fit the childless schedule.",
+ "reason": "The model's reasoning in the case's prompt gives $1,735.80 without a schedule. policyengine-us 2.41.0's 2026 EITC at $45,000 of earnings for a single filer is $0 with no child (maximum $664), $1,054 with one and $2,870 with two (gov.irs.credits.eitc max, phase_out.start, phase_out.rate), so $1,735.80 fits none of the 2026 schedules. It exceeds the childless maximum, which is all the record shows."
+ },
+ {
+ "case_id": "us__scenario_015__head_medicaid_eligible",
+ "field": "annotation",
+ "model": "claude-sonnet-5",
+ "old": "Those earnings, plus $584,850 in bank and stock assets, are far above the aged/blind/disabled income limit and its roughly $2,000 resource cap.",
+ "new": "Those earnings, $3,750 a month, exceed SSI's substantial gainful activity limit of $1,690 a month, so PolicyEngine does not count the head as disabled, and $584,850 in bank and stock assets is far above the $2,000 resource cap.",
+ "reason": "The engine's income test does not fail here; the disability condition and the asset test do, as the second amendment of this case's note records. Computed for this household on policyengine-us 2.41.0: ssi_earned_income $45,000, so $3,750 a month against gov.ssa.sga.non_blind of $1,690 a month in 2026; ssi_engaged_in_sga True; is_ssi_disabled False; medicaid_optional_senior_or_disabled_countable_income 0 against a limit of $15,960, so the income test passes; ssi_countable_resources 584,850, so the asset test fails; medicaid_category NONE. Indiana's asset limit is $2,000 (assets/limit/individual.yaml), not roughly $2,000."
+ },
+ {
+ "case_id": "us__scenario_014__federal_refundable_credits",
+ "field": "case_annotation",
+ "old": "phases out completely at roughly $26,000 of earned income/AGI for joint filers in 2026",
+ "new": "phases out completely at about $26,820 of earned income/AGI for joint filers in 2026",
+ "reason": "policyengine-us 2.41.0's 2026 childless EITC for joint filers has a $664 maximum (gov.irs.credits.eitc.max) and phases out at 7.65% (phase_out.rate) from $18,140 (phase_out.start $10,860 plus phase_out.joint_bonus $7,280), so it reaches $0 at $26,820. Computed for a married couple with no children: $62.71 at $26,000 of earnings, $0.06 at $26,819 and $0 at $26,820."
+ },
+ {
+ "case_id": "us__scenario_014__federal_refundable_credits",
+ "field": "annotation",
+ "model": "qwen3.8-max",
+ "old": "phase-out end of about $26,000",
+ "new": "phase-out end of about $26,820",
+ "reason": "policyengine-us 2.41.0's 2026 childless EITC for joint filers has a $664 maximum (gov.irs.credits.eitc.max) and phases out at 7.65% (phase_out.rate) from $18,140 (phase_out.start $10,860 plus phase_out.joint_bonus $7,280), so it reaches $0 at $26,820. Computed for a married couple with no children: $62.71 at $26,000 of earnings, $0.06 at $26,819 and $0 at $26,820."
}
]
}
\ No newline at end of file
diff --git a/app/public/paper/policybench.pdf b/app/public/paper/policybench.pdf
index 8e0ed4f5..14c76af7 100644
Binary files a/app/public/paper/policybench.pdf and b/app/public/paper/policybench.pdf differ
diff --git a/app/public/paper/web/index.html b/app/public/paper/web/index.html
index ea4f611a..9d7f7898 100644
--- a/app/public/paper/web/index.html
+++ b/app/public/paper/web/index.html
@@ -222,7 +222,7 @@
Frozen snapshot an
Frozen export SHA-256 prefix
-
US 5d4d8b872833
+
US d1d6a577d22e
Snapshot manifest
@@ -299,7 +299,7 @@
Frozen snapshot an
-
+
@@ -830,7 +830,7 @@
Reference-output credibility
On 2026-10-10 PolicyBench moved the references from policyengine-us 2.15.17 to 2.38.6, a release that fixes engine defects behind excluded outputs, and recomputed every output under the same publication conventions and adapter (reference_audit/2026-10-09-engine-upgrade). The move fixes the engine defects behind 18 outputs. Earlier releases excluded 14 of them, which return to scoring at the new version’s values; the other four, ruled on 2026-10-06 while still scored, stay scored at those values. Of the 18, 16 land within $1 of the corrected values their exclusion records carry. The other two are held instead to the values the audit’s fix modules give on policyengine-us 2.37.2, an engine that still has the defects; each lands within $1 of its own. The restored outputs take the upstream fixes for the IRA deduction’s compensation limit and a dependent’s contributions (policyengine-us #10032, #9801; three outputs), the IRA deduction’s active-participant phase-out and California’s itemized deduction conformity (policyengine-us #10032, #10034), New Jersey’s worker unemployment and workforce contributions (policyengine-us #10031), Arizona’s standard deduction indexing (policyengine-us #9928), California’s itemized deduction conformity (policyengine-us #10034), Ohio’s medical deduction for health insurance premiums (policyengine-us #10020), estate income in gross income (policyengine-us #10027, #9633; two outputs), Colorado’s 2026 sales tax refund (policyengine-us #9946), the IRA deduction’s active-participant phase-out (policyengine-us #10032; four outputs), New York’s 2026 child and dependent care credit (policyengine-us #9948) and the IRA deduction’s active-participant phase-out and estate income in gross income (policyengine-us #10032, #10027; two outputs). The move changes one scored reference beyond the dollar tolerance and 2 within it, and removes two outputs from scoring. The changed scored reference follows Idaho’s $10 permanent building fund tax (Idaho Code 63-3082), which policyengine-us now counts in state income tax (policyengine-us #9810). The two outputs that leave scoring depend on an input no prompt states: county of residence (Indiana county income tax).
On 2026-10-13 PolicyBench moved the references again, from policyengine-us 2.38.6 to 2.41.0, the first release with every fix the previous move was waiting on. With the same publication conventions and adapter, it recomputed every output (reference_audit/2026-10-12-engine-upgrade). policyengine-us 2.41.0 was the newest release when PolicyBench began sweeping the references on 2026-10-13 (uploaded 01:44 UTC). policyengine-us 2.41.2, the newest release when PolicyBench checked PyPI on 2026-10-13 at 11:34 UTC, gives the same value as 2.41.0 for all 1,984 outputs under the same conventions and adapter. The move fixes the engine defects behind nine outputs. Earlier releases excluded them, and they return to scoring at the new version’s values. Of the nine, six land within $1 of the corrected values their exclusion records carry. The other three are held instead to the values the audit’s fix modules give on policyengine-us 2.38.6, an engine that still has the defects; each lands within $1 of its own. The reference sidecar records each target with the upstream fix it names (regenerated_exclusions). The restored outputs take the upstream fixes for Idaho’s subtraction for health insurance premiums (policyengine-us #10023; two outputs), Wisconsin’s retirement income exclusion before refundable credits and Wisconsin’s capital gain subtraction for distributions (policyengine-us #10026; two outputs), the IRA deduction’s active-participant phase-out, California’s itemized deduction conformity and California’s educator expense addback (policyengine-us #10032, #10034, #10052) and elective deferrals in the earned income behind the EITC and the refundable child tax credit (policyengine-us #10030; four outputs). The move changes no scored reference, by any amount, and removes no output from scoring. PolicyBench re-reviewed the 12 excluded outputs whose values move on 2.41.0; all stay excluded, each with the value it was decided on. The 49 excluded outputs now keep the values they were decided on (29 computed with policyengine-us 1.755.4, 18 with 2.15.17, 2 with 2.38.6).
The audit tooling itself required hardening, which we report because it changes how much the annotations can be trusted. The derivation narratives displayed alongside reference values are generated from engine computation traces. After earlier model-written narratives were found to misattribute eligibility pathways, mechanical validators now enforce that each narrative states the engine’s actual mechanism — for example, that a child ineligible for CHIP because they qualify for Medicaid is never described as failing a CHIP income test. The failure-audit judge reads these grounded narratives together with engine facts and must return a per-model diagnosis naming the specific rule or computation the model missed. It is barred from re-adjudicating the reference in prose: hedged or reference-adjudicating verdicts are mechanically rejected and re-judged, and genuine reference doubt is routed to a structured flag that triggers the manual adjudication described above.
-
After freezing the snapshot and completing response-contract repairs, we annotated the 8,503 rows whose legacy threshold score is below 1 and their scenario-output cases. Table 5 reports the final classifications for that legacy-threshold audit universe. It contains 8,499 of the snapshot’s 8,499 exact-match misses and 4 exact hits. The 2,218 other rows with bounded score below 100 fall outside the selection and have no audit annotation. Each annotated row on a scored output resolves to one of two final classes: llm_error (a substantive miscalculation, with a per-model diagnosis naming the rule or computation the model missed) or parse_contract_failure (a missing or unparsable answer, classified deterministically). Three further classes describe outputs the snapshot does not score, and each such output is removed from scoring for every model, so no model gains or loses from it. prompt_ambiguity marks 42 outputs whose reference depends on an input the prompt never lists, so a careful reader could take the stated facts either way; for each, the reference was recomputed under the other reading with the engine version that produced it, and it moved (the California Medicaid output once the engine’s Working Disabled Program test read SSI’s definition, as the program does). reference_engine_defect marks the 5 outputs where that engine misapplies the law on stated facts. policyengine-us 2.41.0 computes all five at their corrected values; they stay excluded because each also moves under an input the prompt does not state. reference_later_law marks the two Louisiana outputs whose reference rests on an amount the state published after the freeze. Together they remove 49 outputs in 37 households, and of the 1,843 annotated rows on those outputs, 1,805 carry one of these classes as description rather than as a scored class and the rest are answers that never parsed. A scored reference also follows from law published before the references were frozen on 2026-07-03. USDA published the FY2027 SNAP cost-of-living figures on 2026-08-21, after the freeze and after most rows were answered, so grading any model on them would score it against law it could not have seen; SNAP’s October to December months therefore hold the FY2026 figures, and the publication conventions described above apply the same rule to every projected amount. Every model is therefore scored on 1,935 of its 1,984 requested outputs. The exclusion record (reference_exclusions.json) travels with the frozen run and the manifest pins it. No scored row remains classified as a prompt ambiguity, unresolved reference issue, or needs-review item, and zero annotated rows carry a standing reference-suspect flag. The audit pipeline is model-assisted, with developer adjudication of each reference-suspect or prompt-ambiguity flag rather than independent external validation; this snapshot records 61 cases of developer adjudication, kept beside the annotations with the judge’s verdict and the reasoning. Three judge models produced the verdicts, and all are board rows: GPT-5.6 Sol, called through the Codex CLI, judged the cases whose verdicts predate the September 2026 additions; Claude Opus 5, called through the Claude Code CLI, judged the 93 cases the September 5 additions joined that no later judge re-judged; and Claude Opus 5.5 judged the cases the September 22, September 29, September 30, October 9 and October 13 additions joined or a reference revision changed (315 of 677 cases), its own row’s cases included. Each verdict is recorded in a per-case provenance sidecar in the audit tree. Judge verdicts classify misses after scoring and change no score, and every reference flag a judge raised is settled by the developer adjudication above. The unlisted inputs behind the unlisted-input exclusions are the SSI disability criterion (meets_ssi_disability_criteria), false for every person in the certified June 2026 microdata build; months of SSDI receipt (months_receiving_social_security_disability), never carried by the data and integer-typed, which the prompt builder does not expose; weekly hours worked (weekly_hours_worked_before_lsr), which policyengine-us 1.755.4 defaulted to 40 where the prompt treats unlisted numbers as zero; whether survivor benefits other than Social Security are a pension or annuity, which the prompt does not say and which decides both their taxability and whether they count toward Wisconsin’s homestead credit income; who paid for the coverage behind listed employment disability benefits, which decides whether they are taxable; whether listed home mortgage interest is on the home the household occupies, which decides whether SNAP counts it as a shelter cost; whether an adult tax dependent is the claiming filers’ child, which decides whose income counts in that dependent’s Medicaid household; whether the tax behind a listed state and local tax refund reduced federal tax in the year the household paid it, which decides how much of the refund is income; the state income tax a household withheld or paid during 2026, which the federal state and local tax deduction takes as its state income tax part and which policyengine-us estimates from federal adjusted gross income; Medicare enrollment and a Part B premium, which policyengine-us assumes for every Medicare-eligible person and counts as a medical expense; whether the employer deducts the employee share of a state paid-leave or disability premium that the law lets it deduct but does not require, which decides whether that share is a mandatory employee state payroll tax; and whether listed interest comes from a Massachusetts bank deposit, which moves only an output already recorded as an engine-defect exclusion. One definition was also open: the output definition of federal income tax before refundable credits does not say whether it includes the net investment income tax, which the reference adds and Form 1040 reports after its line for tax after nonrefundable credits, so the outputs that tax moves are excluded as well. The prompt lists a general is disabled fact and never a program-specific determination (Section 4.2). Every exclusion but the California Medicaid output and the 2026-10-06 records was derived mechanically rather than from which models missed: each is an output that a sweep of every reference, under an alternative reading or an engine defect’s sandbox fix, moved on policyengine-us 1.755.4 or, for the state and local tax refund reading and the readings of the 2026-10-05 review, on 2.15.17; the outputs the 2026-10-10 upgrade excluded are ones policyengine-us 2.38.6 itself moved, onto an input no prompt states. The 2026-10-06 records are the exception by design. The reference adversary selects the outputs where models agree against the reference, and an independent check against primary law then decided each; the two Louisiana records came from a sweep of that state’s 2026 standard deduction. On 1.755.4, PolicyBench excluded every output an alternative reading of the September 22 audit moved and every output a defect not fixed upstream moved by more than a dollar, which is why the set includes three SNAP outputs that move through the elderly-or-disabled SNAP rules (in two of those households SSI itself stays at zero; in the third an aged member already receives SSI and the disabled member would add a second benefit). On 2.15.17, PolicyBench re-ran four of those sweeps (the IRA deduction limit fix, the net investment income tax definition, and the readings for mortgage residence and 40 unlisted weekly hours) and ran a new one for the state and local tax refund reading. Beyond the one-dollar exact-match tolerance, the new sweep moves three previously scored federal income tax outputs, and PolicyBench excluded them. Set against the same 2.15.17 calculation without its fix or reading, no sweep moves a scored output by more than the tolerance, and three scored outputs move by less. PolicyBench did not re-run the other sweeps on 2.15.17. On 2.15.17, the California Medicaid output stays at 1 under either reading of SSI’s disability criterion, because the engine’s Working Disabled Program test reads the general flag in its place. PolicyBench found that output when it re-reviewed the household’s excluded SNAP output, and excluded it because the program itself requires SSI’s definition of disability.
+
After freezing the snapshot and completing response-contract repairs, we annotated the 8,503 rows whose legacy threshold score is below 1 and their scenario-output cases. Table 5 reports the final classifications for that legacy-threshold audit universe. It contains 8,499 of the snapshot’s 8,499 exact-match misses and 4 exact hits. The 2,218 other rows with bounded score below 100 fall outside the selection and have no audit annotation. Each annotated row on a scored output resolves to one of two final classes: llm_error (a substantive miscalculation, with a per-model diagnosis naming the rule or computation the model missed) or parse_contract_failure (a missing or unparsable answer, classified deterministically). Three further classes describe outputs the snapshot does not score, and each such output is removed from scoring for every model, so no model gains or loses from it. prompt_ambiguity marks 42 outputs whose reference depends on an input the prompt never lists, so a careful reader could take the stated facts either way; for each, the reference was recomputed under the other reading with the engine version that produced it, and it moved (the California Medicaid output once the engine’s Working Disabled Program test read SSI’s definition, as the program does). reference_engine_defect marks the 5 outputs where that engine misapplies the law on stated facts. policyengine-us 2.41.0 computes all five at their corrected values; they stay excluded because each also moves under an input the prompt does not state. reference_later_law marks the two Louisiana outputs whose reference rests on an amount the state published after the freeze. Together they remove 49 outputs in 37 households, and of the 1,843 annotated rows on those outputs, 1,805 carry one of these classes as description rather than as a scored class and the rest are answers that never parsed. A scored reference also follows from law published before the references were frozen on 2026-07-03. USDA published the FY2027 SNAP cost-of-living figures on 2026-08-21, after the freeze and after most rows were answered, so grading any model on them would score it against law it could not have seen; SNAP’s October to December months therefore hold the FY2026 figures, and the publication conventions described above apply the same rule to every projected amount. Every model is therefore scored on 1,935 of its 1,984 requested outputs. The exclusion record (reference_exclusions.json) travels with the frozen run and the manifest pins it. No scored row remains classified as a prompt ambiguity, unresolved reference issue, or needs-review item, and zero annotated rows carry a standing reference-suspect flag. The audit pipeline is model-assisted, with developer adjudication of each reference-suspect or prompt-ambiguity flag rather than independent external validation; this snapshot records 61 cases of developer adjudication, kept beside the annotations with the judge’s verdict and the reasoning. Three judge models produced the verdicts, and all are board rows: GPT-5.6 Sol, called through the Codex CLI, judged the cases whose verdicts predate the September 2026 additions; Claude Opus 5, called through the Claude Code CLI, judged the 92 cases the September 5 additions joined that no later judge re-judged; and Claude Opus 5.5 judged the cases the September 22, September 29, September 30, October 9 and October 13 additions joined or a reference revision changed, its own row’s cases included, and five cases whose earlier verdicts an audit of the judges’ transcripts could not show came from a judge that saw only its prompt (319 of 677 cases in all). Each verdict is recorded in a per-case provenance sidecar in the audit tree. Judge verdicts classify misses after scoring and change no score, and every reference flag a judge raised is settled by the developer adjudication above. The unlisted inputs behind the unlisted-input exclusions are the SSI disability criterion (meets_ssi_disability_criteria), false for every person in the certified June 2026 microdata build; months of SSDI receipt (months_receiving_social_security_disability), never carried by the data and integer-typed, which the prompt builder does not expose; weekly hours worked (weekly_hours_worked_before_lsr), which policyengine-us 1.755.4 defaulted to 40 where the prompt treats unlisted numbers as zero; whether survivor benefits other than Social Security are a pension or annuity, which the prompt does not say and which decides both their taxability and whether they count toward Wisconsin’s homestead credit income; who paid for the coverage behind listed employment disability benefits, which decides whether they are taxable; whether listed home mortgage interest is on the home the household occupies, which decides whether SNAP counts it as a shelter cost; whether an adult tax dependent is the claiming filers’ child, which decides whose income counts in that dependent’s Medicaid household; whether the tax behind a listed state and local tax refund reduced federal tax in the year the household paid it, which decides how much of the refund is income; the state income tax a household withheld or paid during 2026, which the federal state and local tax deduction takes as its state income tax part and which policyengine-us estimates from federal adjusted gross income; Medicare enrollment and a Part B premium, which policyengine-us assumes for every Medicare-eligible person and counts as a medical expense; whether the employer deducts the employee share of a state paid-leave or disability premium that the law lets it deduct but does not require, which decides whether that share is a mandatory employee state payroll tax; and whether listed interest comes from a Massachusetts bank deposit, which moves only an output already recorded as an engine-defect exclusion. One definition was also open: the output definition of federal income tax before refundable credits does not say whether it includes the net investment income tax, which the reference adds and Form 1040 reports after its line for tax after nonrefundable credits, so the outputs that tax moves are excluded as well. The prompt lists a general is disabled fact and never a program-specific determination (Section 4.2). Every exclusion but the California Medicaid output and the 2026-10-06 records was derived mechanically rather than from which models missed: each is an output that a sweep of every reference, under an alternative reading or an engine defect’s sandbox fix, moved on policyengine-us 1.755.4 or, for the state and local tax refund reading and the readings of the 2026-10-05 review, on 2.15.17; the outputs the 2026-10-10 upgrade excluded are ones policyengine-us 2.38.6 itself moved, onto an input no prompt states. The 2026-10-06 records are the exception by design. The reference adversary selects the outputs where models agree against the reference, and an independent check against primary law then decided each; the two Louisiana records came from a sweep of that state’s 2026 standard deduction. On 1.755.4, PolicyBench excluded every output an alternative reading of the September 22 audit moved and every output a defect not fixed upstream moved by more than a dollar, which is why the set includes three SNAP outputs that move through the elderly-or-disabled SNAP rules (in two of those households SSI itself stays at zero; in the third an aged member already receives SSI and the disabled member would add a second benefit). On 2.15.17, PolicyBench re-ran four of those sweeps (the IRA deduction limit fix, the net investment income tax definition, and the readings for mortgage residence and 40 unlisted weekly hours) and ran a new one for the state and local tax refund reading. Beyond the one-dollar exact-match tolerance, the new sweep moves three previously scored federal income tax outputs, and PolicyBench excluded them. Set against the same 2.15.17 calculation without its fix or reading, no sweep moves a scored output by more than the tolerance, and three scored outputs move by less. PolicyBench did not re-run the other sweeps on 2.15.17. On 2.15.17, the California Medicaid output stays at 1 under either reading of SSI’s disability criterion, because the engine’s Working Disabled Program test reads the general flag in its place. PolicyBench found that output when it re-reviewed the household’s excluded SNAP output, and excluded it because the program itself requires SSI’s definition of disability.
diff --git a/app/src/data.artifact.json b/app/src/data.artifact.json
index 49712e6f..862d5382 100644
--- a/app/src/data.artifact.json
+++ b/app/src/data.artifact.json
@@ -1,9 +1,9 @@
{
"asset": "dashboard-data.json",
- "bytes": 130988798,
+ "bytes": 130982477,
"repo": "PolicyEngine/policybench",
- "sha256": "aef5dc73a76433c97994430f8eb6dfad6bdc6518b18ee3ea8f79cee704757477",
- "tag": "dashboard-data-20261013",
- "url": "https://github.com/PolicyEngine/policybench/releases/download/dashboard-data-20261013/dashboard-data.json",
+ "sha256": "0a4b754a4ce3b249e0608efac62e52646e4c6f33c6a28c1a496c4c9fda49b507",
+ "tag": "dashboard-data-20261013b",
+ "url": "https://github.com/PolicyEngine/policybench/releases/download/dashboard-data-20261013b/dashboard-data.json",
"version": 1
}
diff --git a/app/src/paperSnapshot.json b/app/src/paperSnapshot.json
index 73cb1bef..b4d7e746 100644
--- a/app/src/paperSnapshot.json
+++ b/app/src/paperSnapshot.json
@@ -1,6 +1,6 @@
{
- "pdfVersion": "88e3c81e3e13",
+ "pdfVersion": "cee26d0956da",
"responseWindow": "June 12 and October 13, 2026",
"snapshotDate": "2026-10-13",
- "webVersion": "af35d8e23eaf"
+ "webVersion": "320e58e44470"
}
diff --git a/app/tests/notes.test.ts b/app/tests/notes.test.ts
index a9016524..8b2c067f 100644
--- a/app/tests/notes.test.ts
+++ b/app/tests/notes.test.ts
@@ -79,10 +79,15 @@ describe("notes", () => {
expect(markup).not.toMatch(/\{[A-Za-z][A-Za-z0-9]*(?::words)?\}/);
});
- test("the newest note is the frozen release's, ahead of the October 10 one", () => {
- // The live pointer names the frozen release (src/data.artifact.json).
+ test("the newest note is release 20261013's, ahead of the October 10 one", () => {
+ // The live pointer (src/data.artifact.json) names release 20261013 or
+ // 20261013b, which re-judged five audit verdicts on 20261013's numbers
+ // and added no note (scripts/release_20261013b.py).
expect(notes[0].slug).toContain("muse-wonder-joins-the-board");
- expect(notes[0].release).toBe(artifact.tag);
+ expect(notes[0].release).toBe("dashboard-data-20261013");
+ expect(["dashboard-data-20261013", "dashboard-data-20261013b"]).toContain(
+ artifact.tag,
+ );
expect(notes[0].boardSnapshot).toBe(paperSnapshot.snapshotDate);
expect(notes[0].slug.startsWith(notes[0].date)).toBe(true);
// The October 10 note keeps its own release and board snapshot.
diff --git a/docs/benchmark_card.md b/docs/benchmark_card.md
index 1623dd38..c30eb5c1 100644
--- a/docs/benchmark_card.md
+++ b/docs/benchmark_card.md
@@ -174,10 +174,13 @@ excluded outputs and are description, not audit). This audit universe contains
2,218 scored rows have a bounded score below 100 but fall outside the
legacy-threshold selection and have no audit annotation. Three judge models
produced the verdicts, all of them board rows: GPT-5.6 Sol through the Codex
-CLI for 269 cases, Claude Opus 5 through the Claude Code CLI for the 93 cases
+CLI for 266 cases, Claude Opus 5 through the Claude Code CLI for the 92 cases
the September 5 additions joined that no later judge re-judged, and Claude Opus
-5.5 for 315 cases the September 22, September 29, September 30, October 9 and
-October 13 additions joined or a reference revision changed; the
+5.5 for 319 cases: those the September 22, September 29, September 30, October 9
+and October 13 additions joined or a reference revision changed, and five whose
+earlier verdicts an audit of the judges' transcripts could not show came from a
+judge that saw only its prompt
+(docs/judge_isolation_2026-09-30/REPORT.md); the
manifest's audit_annotation_artifacts.judge_provenance block carries the tally.
Verdicts change no score. A judge verdict outside the final classes, and every
reference-suspect flag, is resolved by a recorded developer adjudication
diff --git a/docs/judge_isolation_2026-09-30/REPORT.md b/docs/judge_isolation_2026-09-30/REPORT.md
new file mode 100644
index 00000000..a9e47112
--- /dev/null
+++ b/docs/judge_isolation_2026-09-30/REPORT.md
@@ -0,0 +1,156 @@
+# Judge isolation audit of the published PolicyBench verdicts (2026-09-30)
+
+## Question
+
+On 2026-09-30, during the judging for GPT-6.1 Sol's release, 9 of 134 Opus 5.5 judges read the repo's adjudication decision records and 8 read the policyengine-us checkout. The old `scripts/run_audit_claude.sh` ran each judge from inside the repo with the file and search tools enabled. This audit asks whether any judge behind a verdict in the published release did the same: read files beyond its own prompt, searched, used a shell or browsed.
+
+Trees audited:
+- **seed**: the 674 judged cases of release `dashboard-data-20260929`, at the local stage `adds0928-stage2/results/local/adds0928-v3/audit`. GPT-6.1 Sol's release carries 540 of them over byte for byte.
+- **unified**: the 668 judged cases of the previous release tree, at the local `results/local/unified_audit/audit`. A unified verdict is still published only if the seed holds the same bytes.
+
+## Method
+
+[`audit_judge_isolation.py`](audit_judge_isolation.py) binds every verdict to the transcript that produced it and classifies every tool call in that transcript. It assumes nothing about what a judge was able to do.
+
+- **Binding.** A verdict counts as bound only when the answer in its transcript equals the verdict, compared as parsed JSON through the writers' own serialisation (`json.dumps(indent=2, sort_keys=True)`).
+ - Codex judges: the final message in the case's `codex.log`.
+ - `run_audit_claude.sh` judges: the `StructuredOutput` call in the session transcript named by the sidecar's session id. Sessions were searched in `~/.claude/projects`, every subfleet login's config and Logpile's copies.
+ - Workflow-subagent judges: the `StructuredOutput` call of the agent whose journal label names the case, across the 21 workflow runs whose journals name a PolicyBench case. Every verdict matched exactly one agent.
+- **Tool calls.** Every `tool_use` content part counts (server and MCP tools included), except the final `StructuredOutput`. When a judge launched an Agent, Task or Workflow, its delegates' transcripts are classified too, and their calls count as the judge's. For Codex, every `exec` block and every `mcp:`, `web search:` or patch line counts. Codex 0.144.0, the judges' version, prints all of these; other logs from that version on this machine show them.
+- **Context.** For each judge the audit also records:
+ - the working directory, and whether it is a git checkout;
+ - every CLAUDE.md or memory file injected, with its text as injected (kept with the local audit);
+ - any skill loaded into the conversation;
+ - whether the judge saw exactly the published `prompt.md`. For `claude -p` judges that is the stdin message; for workflow judges, the numbered lines their Read returned; for Codex, the echoed prompt.
+
+**Validation.** On the GPT-6.1 Sol job's own 139 verdict-producing transcripts, the classifier flags exactly 18 judges. That matches the 9 decision-record readers, the 1 repo searcher and the 8 policyengine-us readers named in that job's `judge_report.md`.
+
+**Differential check.** An independent re-implementation, written from scratch on an Opus 5.5 lane without access to this audit ([`independent/`](independent/), report [`review_independent.md`](review_independent.md)), agrees on all 1,342 rows:
+- the affected label (3 yes, 6 unknown, 1,333 no);
+- liveness;
+- the exact transcript path of every bound verdict.
+
+A second Opus reviewer inside that job re-checked all 1,333 "no" rows and refuted none.
+
+An adversarial review on an Opus 5.5 lane ([`review_redteam.md`](review_redteam.md)) found no second affected verdict. It did find weaknesses in how the first version counted and described things, all fixed here:
+- `us_case_notes.csv` and row-annotation reads now count as prior-verdict reads;
+- Codex `mcp:` and `web search:` lines are now detected;
+- injected nested CLAUDE.md content is now captured;
+- git status is now checked directly, since `gitBranch: "HEAD"` appears even outside a repository;
+- prompt identity is now verified.
+
+## Results
+
+Counts by wave. The seed is the published release; unified rows count all 668 verdicts, and "live" means the same verdict is also in the seed.
+
+| Tree | Wave | Runner | Verdicts | Live | Bound to transcript | Used tools | Transcript missing |
+|---|---|---|---|---|---|---|---|
+| seed | Codex (Aug; sidecars backfilled) | run_audit_codex.sh, gpt-5.6-sol | 303 | 303 | 300 | 0 | **3** |
+| seed | 2026-09-05 | run_audit_claude.sh, Opus 5 | 132 | 132 | 132 | **1** | 0 |
+| seed | 2026-09-22 | 16 workflow subagents, 1 run_audit_claude.sh | 17 | 17 | 17 | 0 | 0 |
+| seed | 2026-09-29 | 221 workflow subagents, 1 run_audit_claude.sh | 222 | 222 | 222 | 0 | 0 |
+| unified | Codex | run_audit_codex.sh | 314 | 303 | 311 | 0 | 3 (the same 3) |
+| unified | 2026-09-05 | run_audit_claude.sh | 183 | 132 | 183 | 1 (the same 086) | 0 |
+| unified | 2026-09-22 | 168 workflow, 2 run_audit_claude.sh, 1 main session | 171 | 17 | 170 | 1 main-session verdict (not live) | 0 |
+
+The 2026-09-22 wave spans judgments dated September 22 to 24. The 2026-09-29 wave's run_audit_claude.sh verdict is `082 payroll_tax`, and the 2026-09-22 wave's is `045 snap`. Both ran in a git worktree with Read, Grep and Glob enabled, and both made no tool call.
+
+### Affected: one published verdict
+
+**`us__scenario_086__federal_refundable_credits`** (2026-09-05 wave, Claude Opus 5 through run_audit_claude.sh, live in the seed and carried into GPT-6.1 Sol's release).
+
+The judge ran from the `policybench-wt/newmodels` git worktree. It launched a background Workflow (`verify-actc-diagnosis`, `wf_3ac730e3-7e7`), loaded TaskOutput through ToolSearch and read the workflow's output. The workflow's four agents made 28 calls between them:
+- Grep over the repo (patterns `refundable`, `12824`, `eitc`, `24150`, `scenario_086,federal_refundable_credits` and others).
+- Read of `annotations/.../us_case_reference_explanations.csv`, `paper/snapshot/20260501/us_scenarios.csv` and `.../reference_outputs.csv`.
+- Grep hits in `us_audit_row_annotations.csv` returned the earlier published diagnoses for **this same case**, for 9 of its models.
+- A grep of `us_case_notes.csv` returned this case's earlier published case note: `llm_error / credit_phaseout`, 10 wrong models.
+
+The published verdict repeats that class. It is not independent of the earlier verdict, and it must be re-judged.
+
+### Transcript missing: three published verdicts
+
+The published text of these three Codex verdicts appears in no transcript on this machine:
+- `us__scenario_014__federal_refundable_credits`
+- `us__scenario_015__federal_refundable_credits`
+- `us__scenario_015__head_medicaid_eligible`
+
+Each case's `codex.log` holds an answer with the same classes but different wording. The runner rewrites the log and the verdict together, so it cannot leave them out of step. Something after the logged runs replaced these three verdicts, and no record says what. Their sidecars say `backfilled_from: codex.log`, a claim that log does not support. The Codex runner passed `--ephemeral`, so no Codex session store holds them.
+
+The independent re-implementation traced why, in session `3c78d187`:
+- At 2026-08-18 01:25:58Z, a `pkill -f run_audit_codex` stopped in-flight Codex re-judges that had already overwritten these three logs.
+- At 01:27:48Z, the same session restored 381 `verdict.json` files from Time Machine snapshot `2026-08-17-194721`.
+
+The published verdicts' own logs existed only in that snapshot. The only local snapshot left is from 2026-09-30, and this session is not permitted to read the Time Machine volume. The restore is also why 469 Codex sidecars (in both trees) give 01:27:48Z as their `judged_at_utc`.
+
+Whether these judges used tools cannot be established. They are re-judged with the hardened runner so that the published text carries a bound transcript. None of the three has an adjudication record.
+
+### Exposed through context, without a tool call: one published verdict
+
+**`us__scenario_045__snap`** (2026-09-24, run_audit_claude.sh, Opus 5.5, live). The judge ran from the `r33-20260922c` worktree. Claude Code gave it the checkout's git status, as it does any session in a git repository:
+- branch `release-20260922c-child-support-fixed`;
+- `reference_audit/2026-09-22/fixes/r33_snap_child_support_treatment.py` listed as modified;
+- the latest commit, "Exclude the SNAP child support defect (r33) in release 20260922b (#177)".
+
+This household is the Michigan child-support case that r33 is about. So the judge was told, outside its prompt, that its own case had been excluded for an engine defect that was then being fixed.
+
+The judge called no tool. Its verdict (`llm_error / categorical_eligibility`, no reference flag) rests on facts its prompt states: "child support" appears 14 times there. No adjudication record covers the case today. It is still not independent of the decision history beside it, so it is re-judged too.
+
+Git status also reached three other judge groups; none of them mentions their cases:
+- 28 judges on 2026-09-05, whose context listed serving and provenance commits;
+- `082 payroll_tax`, whose context listed reference-regeneration commits;
+- one verdict that is no longer published.
+
+The full texts are in `session_contexts.json`.
+
+### Not an isolated judge, not published
+
+`us__scenario_020__federal_income_tax_before_refundable_credits` in the unified tree (2026-09-23) was written by the orchestrating main session itself, per its sidecar. The seed re-judged this case, so the release does not publish it.
+
+### Clean
+
+In every other bound transcript the judge used no tool at all, or, for workflow judges, made exactly one Read, of its own case's prompt:
+- 300 Codex, 131 from 2026-09-05, 17 from 2026-09-22 and 222 from 2026-09-29 in the seed;
+- the matching unified rows.
+
+Every Claude judge, in all three waves, saw the published `prompt.md` byte for byte.
+
+### Context each wave ran with
+
+| Wave | Working directory | Tools available | Injected context |
+|---|---|---|---|
+| Codex | the policybench repo, `--sandbox read-only` | shell (read-only) | Codex's skill list. No run executed a command. |
+| 2026-09-05 | `policybench-wt/newmodels` (git worktree, since removed) | all but Bash, Edit, Write, NotebookEdit, WebFetch, WebSearch, Agent, so Read, Grep, Glob, Workflow and ToolSearch were on | `CLAUDE_CODE_SAFE_MODE` suppressed CLAUDE.md. Every one of these judges had the `workflow-authoring` skill (ultracode: "author and run a workflow for every substantive task") injected as a hidden user message, which is how 086 came to launch a workflow. |
+| 2026-09-22 and 2026-09-29 workflow judges | a non-git scratch workspace (12 in the `opus55` worktree) | all, with an instruction to read only the case file | Global CLAUDE.md, AGENTS.md and an auto-memory index. The 12 also had PolicyEngine's and policybench's CLAUDE.md as nested memory when they read their prompt. None of the injected text, captured as injected, holds case facts, verdicts or decisions. |
+
+The hardened runner on `gpt61sol-driver` closes the gaps above:
+- It runs each judge from an empty non-git directory with `--tools ""`.
+- It denies the file, search, web and shell tools by name.
+- It passes `--disable-slash-commands`; its 17 re-judges carry no skill injection.
+- It rejects any verdict whose transcript shows a tool call.
+
+### Not contamination, but worth knowing
+
+For 230 of the 303 published Codex verdicts, the prompt the judge saw lacks one line of today's `prompt.md`: the definition of `budget_exhausted_at_ceiling`, which was added in `8b2f1956` (2026-08-11). The other 70 match byte for byte, ignoring Codex stderr lines. Whether that line should have changed any label is a separate question, filed as its own task.
+
+## Fix
+
+Five cases are re-judged with the isolated runner, on judge template v2:
+- `086 federal_refundable_credits`: its judge used tools;
+- `045 snap`: its judge saw decision history through git status;
+- `014 federal_refundable_credits`, `015 federal_refundable_credits` and `015 head_medicaid_eligible`: their transcripts are missing.
+
+Each judge runs from an empty directory outside the repo, with tools off, on a dedicated judge login that is never the desktop login. The new verdicts replace these cases' row annotations and case notes. No adjudication record covers any of the five, so no decision changes. If a re-judge flags the reference, or leaves a scored row outside the model-error classes (`llm_error`, `parse_contract_failure` and `budget_exhausted_at_ceiling`), that is a new reference question, and it goes to Max as a decision. None did: no re-judge flags the reference, every row and case keeps its failure source, and three model rows' failure subtypes change.
+
+The five verdicts stayed published, unchanged, through releases 20260930, 20261006, 20261010 and 20261013. The fix is release `dashboard-data-20261013b`, on top of 20261013: see [`docs/release_20261013b/design.md`](../release_20261013b/design.md).
+
+## Files
+
+- [`audit_judge_isolation.py`](audit_judge_isolation.py): the classifier, as run on this machine on 2026-09-30. It reads local transcript stores, so it is a record, not a CI check.
+- [`verdicts.csv`](verdicts.csv): one row per tree and case. It gives the bound transcript (`~` is the audit machine's home directory), the classification, whether the judge saw exactly the published prompt, and `context_exposure` for 045 snap.
+- [`tool_calls.csv`](tool_calls.csv): every tool call.
+- [`session_contexts.json`](session_contexts.json): every distinct session context (git status) a Claude judge was shown, with the judges it reached.
+- [`codex_prompt_identity.json`](codex_prompt_identity.json): each Codex judge's echoed prompt compared with the published one.
+- [`review_redteam.md`](review_redteam.md): the adversarial review.
+- [`review_independent.md`](review_independent.md) and [`independent/`](independent/): the independent re-implementation, with its scripts and CSV.
+
+The fix is release `dashboard-data-20261013b`, built by [`scripts/release_20261013b.py`](../../scripts/release_20261013b.py).
diff --git a/docs/judge_isolation_2026-09-30/audit_judge_isolation.py b/docs/judge_isolation_2026-09-30/audit_judge_isolation.py
new file mode 100644
index 00000000..3826aeb1
--- /dev/null
+++ b/docs/judge_isolation_2026-09-30/audit_judge_isolation.py
@@ -0,0 +1,671 @@
+#!/usr/bin/env python3
+"""Audit whether each published PolicyBench judge verdict came from an isolated judge.
+
+For every verdict in the audit trees below, bind the verdict to the transcript
+that produced it and list every tool the judge called. A binding counts only
+when the transcript's structured answer, serialised the way the writers
+serialise verdict.json (json.dumps(indent=2, sort_keys=True)), hashes to the
+verdict's own sha256. Nothing is inferred: a verdict without a bound transcript
+is reported as missing.
+
+Transcript sources, by judge runner:
+ scripts/run_audit_codex.sh the case's codex.log (the exec's full stdout)
+ scripts/run_audit_claude.sh /projects/*/.jsonl, in the
+ desktop config, each subfleet login's config,
+ and Logpile's copies
+ Workflow tool subagents //subagents/workflows//
+ agent-.jsonl, for every workflow whose
+ journal names a PolicyBench case
+ Claude Code main session the orchestrating session's own transcript
+
+Writes verdicts.csv (one row per tree and case), tool_calls.csv (one row per
+judge tool call) and summary.json beside this script.
+"""
+
+from __future__ import annotations
+
+import collections
+import csv
+import glob
+import hashlib
+import json
+import os
+import re
+import sys
+from pathlib import Path
+
+HOME = Path.home()
+OUT = Path(__file__).resolve().parent
+TREES = {
+ "seed": Path(
+ "~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-v3/audit/cases"
+ ),
+ "unified": Path("~/PolicyEngine/policybench/results/local/unified_audit/audit/cases"),
+}
+SESSION_ROOTS = [
+ HOME / ".claude/projects",
+ *sorted(Path(p) for p in glob.glob(str(HOME / ".subfleet/logins/*/projects"))),
+ HOME / "logpile/shared/maxghenis/claudecode",
+]
+CASE_RE = re.compile(r"us__scenario_\d{3}__[a-z0-9_]+")
+
+
+def canon_sha(obj) -> str:
+ return hashlib.sha256(json.dumps(obj, indent=2, sort_keys=True).encode("utf-8")).hexdigest()
+
+
+def file_sha(path: Path) -> str:
+ return hashlib.sha256(path.read_bytes()).hexdigest()
+
+
+def wave_of(meta: dict) -> str:
+ runner = meta.get("judge_runner", "")
+ day = (meta.get("judged_at_utc") or "")[:10]
+ if "run_audit_codex" in runner:
+ # Codex sidecars were backfilled from codex.log; judged_at_utc is the
+ # backfill time, so the wave is the runner, not a date.
+ return "codex (sidecars backfilled)"
+ if day == "2026-09-05":
+ return "2026-09-05"
+ if "2026-09-22" <= day <= "2026-09-24":
+ return "2026-09-22"
+ if "2026-09-28" <= day <= "2026-09-30":
+ return "2026-09-29"
+ return f"other ({day})"
+
+
+def runner_kind(meta: dict) -> str:
+ runner = meta.get("judge_runner", "")
+ if "run_audit_codex" in runner:
+ return "codex"
+ if "run_audit_claude" in runner:
+ return "claude_cli"
+ if runner.startswith("Claude Code Workflow"):
+ return "workflow_subagent"
+ if runner.startswith("Claude Code main session"):
+ return "main_session"
+ return "unknown"
+
+
+# ---------------------------------------------------------------- transcripts
+
+
+def structured_outputs(path: Path):
+ """Every StructuredOutput input in a Claude transcript, in order."""
+ out = []
+ with open(path, encoding="utf-8", errors="replace") as fh:
+ for line in fh:
+ if "StructuredOutput" not in line:
+ continue
+ try:
+ event = json.loads(line)
+ except ValueError:
+ continue
+ content = (event.get("message") or {}).get("content")
+ if not isinstance(content, list):
+ continue
+ for part in content:
+ if (
+ isinstance(part, dict)
+ and part.get("type") == "tool_use"
+ and part.get("name") == "StructuredOutput"
+ ):
+ out.append(part.get("input"))
+ return out
+
+
+def index_sessions() -> dict[str, list[Path]]:
+ found: dict[str, list[Path]] = collections.defaultdict(list)
+ for root in SESSION_ROOTS:
+ if not root.is_dir():
+ continue
+ for project in os.scandir(root):
+ if not project.is_dir():
+ continue
+ for entry in os.scandir(project.path):
+ if entry.name.endswith(".jsonl") and entry.is_file():
+ found[entry.name[:-6]].append(Path(entry.path))
+ return found
+
+
+def judge_workflow_dirs() -> list[Path]:
+ dirs = []
+ pat = re.compile(rb"us__scenario_\d{3}__")
+ for journal in glob.glob(str(HOME / ".claude/projects/*/*/subagents/workflows/*/journal.jsonl")):
+ if pat.search(Path(journal).read_bytes()):
+ dirs.append(Path(journal).parent)
+ return sorted(dirs)
+
+
+def index_workflow_agents(dirs: list[Path]):
+ """sha of each structured answer -> [(agent transcript, workflow, agent id, label)]."""
+ by_sha: dict[str, list[tuple]] = collections.defaultdict(list)
+ for wf in dirs:
+ labels = {}
+ for line in (wf / "journal.jsonl").read_text(errors="replace").splitlines():
+ try:
+ e = json.loads(line)
+ except ValueError:
+ continue
+ if e.get("type") == "started" and e.get("agentId"):
+ labels[e["agentId"]] = e.get("label", "")
+ for agent in sorted(wf.glob("agent-*.jsonl")):
+ agent_id = agent.stem[len("agent-") :]
+ for answer in structured_outputs(agent):
+ if isinstance(answer, dict) and "case_failure_source" in answer:
+ by_sha[canon_sha(answer)].append((agent, wf.name, agent_id, labels.get(agent_id, "")))
+ return by_sha
+
+
+# ---------------------------------------------------------------- classification
+
+READ_TOOLS = {"Read", "NotebookRead"}
+SEARCH_TOOLS = {"Grep", "Glob", "LS"}
+SHELL_TOOLS = {"Bash", "BashOutput", "KillShell", "PowerShell"}
+BROWSE_TOOLS = {"WebFetch", "WebSearch", "web_search", "web_fetch"}
+
+
+def path_class(path: str, case_id: str) -> str:
+ p = path or ""
+ if p.endswith(f"/{case_id}/prompt.md") and "/audit/cases/" in p:
+ return "own_prompt"
+ low = p.lower()
+ if "adjudicat" in low or "decision" in low:
+ return "adjudication_records"
+ # Case notes and row annotations are earlier judges' published verdicts.
+ if any(k in low for k in ("case_notes", "audit_row_annotations", "audit_case_annotations")):
+ return "prior_verdicts"
+ if "policyengine-us" in low or "policyengine_us" in low:
+ return "policyengine_us_checkout"
+ if "/audit/cases/" in p or low.endswith("verdict.json"):
+ return "other_audit_cases"
+ if "/annotations/" in p:
+ return "annotations"
+ if "/policybench" in p:
+ return "policybench_repo_other"
+ return "other_path"
+
+
+def tool_category(name: str) -> str:
+ if name in READ_TOOLS:
+ return "read"
+ if name in SEARCH_TOOLS:
+ return "search"
+ if name in SHELL_TOOLS:
+ return "shell"
+ if name in BROWSE_TOOLS or "browser" in name.lower() or "chrome" in name.lower():
+ return "browse"
+ if name == "ToolSearch":
+ return "tool_search"
+ if name in {"Agent", "Task"}:
+ return "subagent"
+ if name in {"Write", "Edit", "MultiEdit", "NotebookEdit"}:
+ return "write"
+ return "other_tool"
+
+
+def result_text(part: dict) -> str:
+ content = part.get("content")
+ if isinstance(content, str):
+ return content
+ if isinstance(content, list):
+ return " ".join(
+ (c.get("text") or "") if isinstance(c, dict) else str(c) for c in content
+ )
+ return ""
+
+
+SKILL_RE = re.compile(r"Base directory for this skill: \S*/skills/([A-Za-z0-9_:.-]+)|/?([A-Za-z0-9_:.-]+)")
+
+
+def message_text(content) -> str:
+ if isinstance(content, str):
+ return content
+ if isinstance(content, list):
+ return "".join(
+ (c.get("text") or "") for c in content if isinstance(c, dict) and c.get("type") == "text"
+ )
+ return ""
+
+
+def classify_claude(path: Path, case_id: str, stop_at_sha: str | None = None):
+ """Tool calls and context of one Claude transcript, up to the bound answer.
+
+ Besides the tool calls it returns what the judge was shown: the working
+ directory and whether it was a git checkout (the environment snapshot's
+ isGitRepo, or a gitBranch on any event), every instruction or nested
+ memory file with the exact content injected, any skill loaded into the
+ conversation, the first user message (the prompt a `claude -p` judge read
+ on stdin) and the full text of each Read of its own prompt.
+ """
+ calls, results, attachments = [], {}, collections.Counter()
+ instructions, cwds, git_repo = [], set(), set()
+ instruction_contents, skills, full_results = {}, set(), {}
+ first_user = None
+ with open(path, encoding="utf-8", errors="replace") as fh:
+ for line in fh:
+ try:
+ event = json.loads(line)
+ except ValueError:
+ continue
+ if event.get("cwd"):
+ cwds.add(event["cwd"])
+ # Claude Code writes gitBranch "HEAD" even outside a repository.
+ if event.get("gitBranch") not in (None, "", "HEAD"):
+ git_repo.add(True)
+ if event.get("type") == "attachment":
+ att = event.get("attachment") or {}
+ kind = att.get("type")
+ attachments[kind] += 1
+ if kind == "environment":
+ snap = att.get("snapshot") or {}
+ git_repo.add(bool(snap.get("isGitRepo")))
+ if snap.get("workingDirectory"):
+ cwds.add(snap["workingDirectory"])
+ if kind in ("instructions", "nested_memory", "memory", "claude_md"):
+ for f in att.get("files") or [att]:
+ if isinstance(f, dict):
+ fpath = f.get("path") or kind
+ instructions.append(fpath)
+ body = f.get("content")
+ if isinstance(body, dict):
+ body = body.get("content")
+ if isinstance(body, str):
+ instruction_contents[fpath] = body
+ if kind in ("skill", "invoked_skills", "skill_content"):
+ skills.add(str(att.get("name") or att.get("skillName") or kind))
+ msg = event.get("message") or {}
+ content = msg.get("content")
+ if event.get("type") == "user" and msg.get("role") == "user":
+ text = message_text(content)
+ if first_user is None and text and not event.get("isMeta"):
+ first_user = text
+ for m in SKILL_RE.finditer(text):
+ skills.add(m.group(1) or m.group(2))
+ if not isinstance(content, list):
+ continue
+ for part in content:
+ if not isinstance(part, dict):
+ continue
+ ptype = str(part.get("type", ""))
+ if ptype == "tool_result":
+ full = result_text(part)
+ results[part.get("tool_use_id")] = (bool(part.get("is_error")), full[:300])
+ full_results[part.get("tool_use_id")] = full
+ elif ptype.endswith("tool_use"):
+ name = part.get("name") or ptype
+ if name == "StructuredOutput":
+ continue
+ inp = part.get("input") or {}
+ calls.append({"id": part.get("id"), "name": name, "input": inp})
+ rows, own_prompt_reads = [], []
+ for c in calls:
+ name, inp = c["name"], c["input"]
+ cat = tool_category(name)
+ if cat == "read" and path_class(inp.get("file_path", ""), case_id) == "own_prompt":
+ own_prompt_reads.append(full_results.get(c["id"], ""))
+ target = (
+ inp.get("file_path")
+ or inp.get("path")
+ or inp.get("pattern")
+ or inp.get("command")
+ or inp.get("url")
+ or inp.get("query")
+ or ""
+ )
+ pclass = ""
+ if cat == "read":
+ pclass = path_class(inp.get("file_path", ""), case_id)
+ elif cat == "search":
+ pclass = path_class(inp.get("path", "") or "", case_id) + " | pattern=" + str(
+ inp.get("pattern", "")
+ )[:120]
+ is_err, preview = results.get(c["id"], (None, ""))
+ rows.append(
+ {
+ "tool": name,
+ "category": cat,
+ "target": str(target)[:400],
+ "path_class": pclass,
+ "result_is_error": is_err,
+ "result_preview": preview.replace("\n", " ")[:300],
+ }
+ )
+ return rows, {
+ "cwds": sorted(cwds),
+ "cwd_in_git_repo": sorted(git_repo),
+ "attachments": dict(attachments),
+ "instructions_files": sorted(set(instructions)),
+ "instruction_contents": instruction_contents,
+ "skills": sorted(skills),
+ "first_user": first_user,
+ "own_prompt_reads": own_prompt_reads,
+ }
+
+
+_GIT: dict[str, str] = {}
+
+
+def is_git_checkout(path: str) -> str:
+ """Whether a judge's working directory is inside a git checkout, checked now."""
+ if path not in _GIT:
+ if not path or not os.path.isdir(path):
+ _GIT[path] = "gone"
+ else:
+ import subprocess
+
+ r = subprocess.run(["git", "-C", path, "rev-parse", "--is-inside-work-tree"],
+ capture_output=True, text=True)
+ _GIT[path] = "yes" if r.stdout.strip() == "true" else "no"
+ return _GIT[path]
+
+
+READ_LINE = re.compile(r"^\s*(\d+)\t(.*)$")
+
+
+def prompt_seen_check(ctx: dict, kind: str, prompt: str, codex_prompt: str | None = None) -> str:
+ """Did the judge see exactly the published prompt.md?
+
+ claude -p judges read it on stdin, so it is their first user message.
+ Workflow judges read it with the Read tool, which returns numbered lines
+ (`Ntext`); every line of the published prompt must come back with
+ identical text. Codex echoes the prompt after its `user` header.
+ """
+ want = prompt.rstrip("\n")
+ if kind == "claude_cli":
+ got = ctx.get("first_user")
+ if got is None:
+ return "no prompt in transcript"
+ return "identical" if got.rstrip("\n") == want else "DIFFERS"
+ if kind == "workflow_subagent":
+ reads = ctx.get("own_prompt_reads") or []
+ if not reads:
+ return "no Read of its prompt"
+ seen = {}
+ for text in reads:
+ for line in text.split("\n"):
+ m = READ_LINE.match(line)
+ if m:
+ seen[int(m.group(1))] = m.group(2)
+ lines = want.split("\n")
+ missing = [i for i in range(1, len(lines) + 1) if i not in seen]
+ differ = [i for i in range(1, len(lines) + 1) if i in seen and seen[i] != lines[i - 1]]
+ extra = [i for i in seen if i > len(lines)]
+ if not missing and not differ and not extra:
+ return "identical"
+ return f"DIFFERS (lines missing {len(missing)}, differing {len(differ)}, extra {len(extra)}; first {(missing + differ + extra)[:5]})"
+ if kind == "codex":
+ if codex_prompt is None:
+ return "no prompt in log"
+ return "identical" if codex_prompt.strip("\n") == want.strip("\n") else "DIFFERS"
+ return ""
+
+
+def classify_with_delegates(path: Path, case_id: str):
+ """A transcript's own calls plus those of any agents it spawned.
+
+ A judge that launches an Agent, Task or Workflow hands work to subagents
+ whose transcripts live under //subagents/. Their calls
+ count as the judge's.
+ """
+ rows, ctx = classify_claude(path, case_id)
+ if any(r["tool"] in {"Agent", "Task", "Workflow"} for r in rows):
+ sub = path.with_suffix("") / "subagents"
+ for agent in sorted(sub.rglob("agent-*.jsonl")) if sub.is_dir() else []:
+ sub_rows, _ = classify_claude(agent, case_id)
+ for r in sub_rows:
+ r["tool"] = f"{r['tool']} (delegate {agent.stem})"
+ rows.extend(sub_rows)
+ return rows, ctx
+
+
+def codex_final_json(log: Path):
+ """The final agent message in a codex exec log, parsed as JSON."""
+ text = log.read_text(errors="replace")
+ sections = re.split(r"(?m)^(user|codex|thinking|exec|tokens used)$", text)
+ headers = collections.Counter(sections[1::2])
+ finals = [sections[i + 1] for i in range(1, len(sections), 2) if sections[i] == "codex"]
+ parsed = None
+ for body in reversed(finals):
+ body = body.strip()
+ try:
+ parsed = json.loads(body)
+ break
+ except ValueError:
+ m = re.search(r"\{.*\}", body, re.S)
+ if m:
+ try:
+ parsed = json.loads(m.group(0))
+ break
+ except ValueError:
+ pass
+ header = dict(re.findall(r"(?m)^(workdir|sandbox|model|session id): (.*)$", text))
+ users = [sections[i + 1] for i in range(1, len(sections), 2) if sections[i] == "user"]
+ header["prompt"] = users[0] if users else None
+ return parsed, headers, header
+
+
+def classify_codex(log: Path):
+ """Codex prints each command as an `exec` block; any other tool shows as a header."""
+ text = log.read_text(errors="replace")
+ rows = []
+ for m in re.finditer(r"(?m)^exec\n(.*)$", text):
+ rows.append(
+ {
+ "tool": "exec",
+ "category": "shell",
+ "target": m.group(1)[:400],
+ "path_class": "",
+ "result_is_error": None,
+ "result_preview": "",
+ }
+ )
+ odd = sorted(
+ set(re.findall(r"(?m)^([a-z_ ]+)$", text)) - {"user", "codex", "thinking", "tokens used"}
+ )
+ # Tool lines that carry a colon: `mcp: server/tool started`, `web search: ...`,
+ # `apply_patch ...`, `patch: ...`.
+ odd += sorted(set(re.findall(r"(?m)^(mcp:.*|web search:.*|apply_patch.*|patch:.*|tool .*)$", text)))
+ for h in odd:
+ rows.append(
+ {
+ "tool": h,
+ "category": "other_tool",
+ "target": "",
+ "path_class": "",
+ "result_is_error": None,
+ "result_preview": "",
+ }
+ )
+ return rows
+
+
+# ---------------------------------------------------------------- main
+
+
+def main() -> int:
+ # Validation runs: --tree name=cases_dir replaces the published trees and
+ # --out DIR writes the tables elsewhere.
+ global OUT, TREES
+ args = sys.argv[1:]
+ if "--out" in args:
+ OUT = Path(args[args.index("--out") + 1])
+ OUT.mkdir(parents=True, exist_ok=True)
+ extra = [a.split("=", 1) for a in args if "=" in a and not a.startswith("--")]
+ if extra:
+ TREES = {"seed": TREES["seed"], **{k: Path(v) for k, v in extra}}
+ sessions = index_sessions()
+ wf_dirs = judge_workflow_dirs()
+ wf_index = index_workflow_agents(wf_dirs)
+ print(f"indexed {len(sessions)} session transcripts, {len(wf_dirs)} judge workflows,"
+ f" {sum(len(v) for v in wf_index.values())} workflow structured answers", file=sys.stderr)
+
+ seed_shas = {}
+ for case in TREES["seed"].iterdir():
+ v = case / "verdict.json"
+ if v.is_file():
+ seed_shas[case.name] = file_sha(v)
+
+ verdict_rows, call_rows, injected = [], [], {}
+ for tree, root in TREES.items():
+ for case in sorted(root.iterdir()):
+ vpath, mpath = case / "verdict.json", case / "verdict.meta.json"
+ if not vpath.is_file():
+ continue
+ vsha = file_sha(vpath)
+ # Bind on the canonical serialisation: codex -o keeps the raw bytes.
+ vcanon = canon_sha(json.loads(vpath.read_text()))
+ meta = json.loads(mpath.read_text()) if mpath.is_file() else {}
+ kind = runner_kind(meta)
+ row = {
+ "tree": tree,
+ "case_id": case.name,
+ "wave": wave_of(meta),
+ "runner": kind,
+ "judge_runner": meta.get("judge_runner", ""),
+ "judged_at_utc": meta.get("judged_at_utc", ""),
+ "verdict_sha256": vsha,
+ "sidecar_binds_verdict": meta.get("verdict_sha256") == vsha,
+ "prompt_sha256_now": file_sha(case / "prompt.md") if (case / "prompt.md").is_file() else "",
+ "prompt_sha256_sidecar": meta.get("prompt_sha256", ""),
+ "live_in_published_release": tree == "seed" or seed_shas.get(case.name) == vsha,
+ "session_id": meta.get("session_id", ""),
+ "workflow": meta.get("judge_workflow", ""),
+ "agent_id": meta.get("judge_agent_id", ""),
+ }
+ transcript, status, candidates, calls, ctx = "", "missing", 0, [], {}
+ if kind == "codex":
+ log = case / "codex.log"
+ if log.is_file():
+ parsed, headers, header = codex_final_json(log)
+ row["codex_workdir"] = header.get("workdir", "")
+ row["codex_sandbox"] = header.get("sandbox", "")
+ if parsed is not None and canon_sha(parsed) == vcanon:
+ transcript, status, candidates = str(log), "bound", 1
+ calls = classify_codex(log)
+ ctx = {"cwds": [header.get("workdir", "")]}
+ row["prompt_seen"] = prompt_seen_check(
+ {}, "codex", (case / "prompt.md").read_text(), header.get("prompt"))
+ else:
+ status = "codex.log does not hold this verdict"
+ else:
+ status = "missing: no codex.log"
+ elif kind == "claude_cli":
+ paths = sessions.get(meta.get("session_id", ""), [])
+ bound = [p for p in paths if any(
+ isinstance(a, dict) and canon_sha(a) == vcanon for a in structured_outputs(p))]
+ candidates = len(paths)
+ if bound:
+ # Prefer the live config copy over Logpile's.
+ bound.sort(key=lambda p: "logpile" in str(p))
+ transcript, status = str(bound[0]), "bound"
+ calls, ctx = classify_with_delegates(bound[0], case.name)
+ elif paths:
+ status = "session transcript found but its answer does not hash to this verdict"
+ else:
+ status = "missing: no transcript for the session id"
+ elif kind == "workflow_subagent":
+ hits = wf_index.get(vcanon, [])
+ # Only an agent whose journal label names this case binds it.
+ named = [h for h in hits if case.name in h[3]] or hits
+ candidates = len(hits)
+ if named:
+ agent, wf, agent_id, label = named[0]
+ transcript, status = str(agent), "bound"
+ row["workflow"] = row["workflow"] or wf
+ row["agent_id"] = row["agent_id"] or agent_id
+ row["bound_label"] = label
+ calls, ctx = classify_with_delegates(agent, case.name)
+ row["bound_agents_same_answer"] = len({h[2] for h in hits})
+ else:
+ status = "missing: no workflow agent answer hashes to this verdict"
+ elif kind == "main_session":
+ status = "main session judged it itself (not an isolated judge)"
+ paths = sessions.get(meta.get("session_id", ""), [])
+ transcript = str(paths[0]) if paths else ""
+ row["transcript_status"] = status
+ row["transcript"] = transcript
+ row["transcript_candidates"] = candidates
+ row["judge_cwds"] = ";".join(ctx.get("cwds", []))
+ row["judge_cwd_in_git_repo"] = ";".join(str(x) for x in ctx.get("cwd_in_git_repo", []))
+ row["instructions_files"] = ";".join(ctx.get("instructions_files", []))
+ row["attachment_kinds"] = json.dumps(ctx.get("attachments", {}), sort_keys=True)
+ row["skills_loaded"] = ";".join(ctx.get("skills", []))
+ row["judge_cwd_is_git_checkout"] = ";".join(
+ f"{is_git_checkout(c)}" for c in ctx.get("cwds", []))
+ if kind in ("claude_cli", "workflow_subagent") and status == "bound":
+ row["prompt_seen"] = prompt_seen_check(ctx, kind, (case / "prompt.md").read_text())
+ for fpath, body in (ctx.get("instruction_contents") or {}).items():
+ injected.setdefault((fpath, hashlib.sha256(body.encode()).hexdigest()), [body, set()])[1].add(
+ f"{tree}|{row['wave']}")
+
+ cats = collections.Counter()
+ pclasses = collections.Counter()
+ for c in calls:
+ cats[c["category"]] += 1
+ if c["path_class"]:
+ pclasses[c["path_class"].split(" | ")[0]] += 1
+ call_rows.append({"tree": tree, "case_id": case.name, "wave": row["wave"], **c})
+ read_other = sum(n for k, n in pclasses.items() if k != "own_prompt" and k)
+ row["n_tool_calls"] = len(calls)
+ row["read_own_prompt"] = pclasses.get("own_prompt", 0)
+ row["read_other_files"] = sum(
+ 1 for c in calls if c["category"] == "read" and c["path_class"] != "own_prompt")
+ row["read_adjudication_records"] = sum(
+ 1 for c in calls if c["path_class"].startswith("adjudication_records"))
+ row["read_policyengine_us"] = sum(
+ 1 for c in calls if c["path_class"].startswith("policyengine_us_checkout"))
+ row["searched"] = cats.get("search", 0)
+ row["shell"] = cats.get("shell", 0)
+ row["browsed"] = cats.get("browse", 0)
+ row["other_tools"] = cats.get("other_tool", 0) + cats.get("subagent", 0) + cats.get("write", 0)
+ row["tool_search"] = cats.get("tool_search", 0)
+ row["path_classes"] = json.dumps(dict(pclasses), sort_keys=True)
+ row["affected"] = (
+ "yes" if (row["read_other_files"] or row["searched"] or row["shell"] or row["browsed"]
+ or row["other_tools"] or kind == "main_session")
+ else ("unknown" if status != "bound" else "no")
+ )
+ _ = read_other
+ verdict_rows.append(row)
+
+ fields = sorted({k for r in verdict_rows for k in r}, key=lambda k: (
+ list(verdict_rows[0].keys()).index(k) if k in verdict_rows[0] else 999, k))
+ with open(OUT / "verdicts.csv", "w", newline="") as fh:
+ w = csv.DictWriter(fh, fieldnames=fields)
+ w.writeheader()
+ w.writerows(verdict_rows)
+ cfields = ["tree", "case_id", "wave", "tool", "category", "target", "path_class",
+ "result_is_error", "result_preview"]
+ with open(OUT / "tool_calls.csv", "w", newline="") as fh:
+ w = csv.DictWriter(fh, fieldnames=cfields)
+ w.writeheader()
+ w.writerows(call_rows)
+
+ # Every distinct instruction or nested-memory text a judge was shown, as injected.
+ (OUT / "injected_instructions.json").write_text(json.dumps(
+ {f"{path}#{sha[:12]}": {"content": body, "seen_in": sorted(seen)}
+ for (path, sha), (body, seen) in sorted(injected.items())}, indent=1))
+
+ summary = collections.defaultdict(lambda: collections.Counter())
+ for r in verdict_rows:
+ key = f"{r['tree']} | {r['wave']}"
+ s = summary[key]
+ s["verdicts"] += 1
+ s[f"transcript:{r['transcript_status'] if r['transcript_status'] == 'bound' else 'not bound'}"] += 1
+ s[f"affected:{r['affected']}"] += 1
+ for k in ("read_other_files", "read_adjudication_records", "read_policyengine_us",
+ "searched", "shell", "browsed", "other_tools", "tool_search"):
+ if r[k]:
+ s[f"judges_{k}"] += 1
+ if r["live_in_published_release"]:
+ s["live_in_published_release"] += 1
+ if r["affected"] == "yes":
+ s["affected_and_live"] += 1
+ (OUT / "summary.json").write_text(json.dumps({k: dict(v) for k, v in sorted(summary.items())}, indent=2))
+ print(json.dumps({k: dict(v) for k, v in sorted(summary.items())}, indent=2))
+ return 0
+
+
+if __name__ == "__main__":
+ sys.exit(main())
diff --git a/docs/judge_isolation_2026-09-30/codex_prompt_identity.json b/docs/judge_isolation_2026-09-30/codex_prompt_identity.json
new file mode 100644
index 00000000..04e9c49f
--- /dev/null
+++ b/docs/judge_isolation_2026-09-30/codex_prompt_identity.json
@@ -0,0 +1,2446 @@
+{
+ "seed|us__scenario_000__head_medicaid_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_000__payroll_tax": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_001__payroll_tax": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_001__snap": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_001__spouse_medicare_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_002__payroll_tax": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_002__spouse_medicaid_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_003__head_medicare_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_003__payroll_tax": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_003__state_income_tax_before_refundable_credits": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_004__head_medicaid_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_004__head_medicare_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_004__payroll_tax": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_004__spouse_medicaid_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_007__payroll_tax": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_008__child1_medicaid_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_008__child1_wic_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_008__child2_medicaid_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_008__child2_wic_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_008__child3_medicaid_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_008__child3_wic_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_008__child4_head_start_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_008__child4_medicaid_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_008__child4_wic_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_008__child5_early_head_start_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_008__child5_medicaid_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_008__child6_early_head_start_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_008__child6_head_start_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_008__child6_medicaid_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_008__free_school_meals_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_008__head_wic_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_008__reduced_price_school_meals_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_008__self_employment_tax": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_008__spouse_wic_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_009__head_medicare_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_009__payroll_tax": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_009__spouse_medicare_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_012__child1_chip_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_012__child1_medicaid_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_012__child1_wic_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_012__head_medicaid_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_012__head_wic_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_012__reduced_price_school_meals_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_012__spouse_chip_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_012__spouse_medicaid_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_012__spouse_wic_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_013__state_income_tax_before_refundable_credits": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_014__head_medicaid_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_018__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_020__state_income_tax_before_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_021__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_021__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_021__snap": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_021__state_income_tax_before_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_022__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_023__federal_refundable_credits": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_023__free_school_meals_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_023__head_chip_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_023__head_medicare_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_023__ssi": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_025__head_medicare_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_026__free_school_meals_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_026__reduced_price_school_meals_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_027__federal_income_tax_before_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_027__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_028__child1_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_028__child1_wic_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_028__child2_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_028__child2_wic_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_028__child3_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_028__child3_wic_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_029__snap": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_030__federal_income_tax_before_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_030__federal_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_030__head_chip_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_030__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_030__tanf": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_031__federal_income_tax_before_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_031__state_income_tax_before_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_032__child1_head_start_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_032__child1_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_032__child1_medicare_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_032__child1_wic_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_032__federal_income_tax_before_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_032__head_wic_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_032__snap": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_032__spouse_chip_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_032__spouse_wic_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_033__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_033__self_employment_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_036__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_036__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_037__federal_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_037__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_038__child1_head_start_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_038__child1_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_038__child1_wic_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_038__child2_head_start_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_038__child2_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_038__child2_wic_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_038__federal_income_tax_before_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_038__free_school_meals_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_038__head_wic_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_038__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_038__reduced_price_school_meals_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_038__spouse_chip_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_038__spouse_wic_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_039__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_040__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_040__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_040__snap": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_040__spouse_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_040__spouse_medicare_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_040__state_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_042__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_042__state_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_043__head_medicaid_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_043__ssi": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_044__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_044__spouse_medicare_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_044__state_income_tax_before_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_045__federal_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_046__child1_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_046__child2_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_046__payroll_tax": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_048__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_048__head_medicare_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_048__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_048__snap": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_049__head_medicare_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_049__spouse_medicare_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_051__federal_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_051__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_051__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_052__head_medicare_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_052__spouse_medicare_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_053__federal_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_053__payroll_tax": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_054__child1_chip_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_054__child1_wic_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_054__child2_chip_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_054__child2_head_start_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_054__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_054__reduced_price_school_meals_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_054__self_employment_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_056__federal_income_tax_before_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_056__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_056__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_056__self_employment_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_057__spouse_chip_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_057__spouse_wic_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_059__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_060__federal_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_060__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_060__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_062__self_employment_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_066__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_067__federal_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_067__head_medicare_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_068__federal_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_068__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_068__state_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_070__federal_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_070__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_070__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_070__state_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_071__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_071__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_072__head_medicare_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_072__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_072__spouse_medicare_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_073__head_medicaid_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_073__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_074__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_075__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_075__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_076__child2_wic_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_076__payroll_tax": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_076__self_employment_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_077__federal_refundable_credits": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_077__head_medicaid_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_077__payroll_tax": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_077__snap": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_077__state_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_078__local_income_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_080__head_medicare_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_080__ssi": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_080__state_income_tax_before_refundable_credits": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_080__state_refundable_credits": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_082__child1_chip_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_082__child1_wic_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_082__local_income_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_083__federal_income_tax_before_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_083__federal_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_083__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_083__head_wic_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_083__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_083__self_employment_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_084__head_medicaid_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_085__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_086__child1_chip_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_086__child1_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_086__payroll_tax": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_086__state_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_088__federal_income_tax_before_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_088__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_089__federal_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_090__federal_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_090__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_090__head_wic_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_090__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_091__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_092__federal_income_tax_before_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_092__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_092__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_093__dependent1_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_095__federal_income_tax_before_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_095__federal_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_095__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_095__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_095__snap": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_098__federal_income_tax_before_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_098__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_098__snap": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_098__state_income_tax_before_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_099__child2_early_head_start_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_099__child2_head_start_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_099__child2_wic_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_100__child1_chip_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_100__child1_head_start_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_100__child1_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_100__child1_wic_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_100__child2_chip_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_100__child2_early_head_start_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_100__child2_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_100__child2_wic_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_100__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_100__head_medicare_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_100__head_wic_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_100__reduced_price_school_meals_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_100__ssi": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_101__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_101__state_income_tax_before_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_102__federal_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_102__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_102__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_102__self_employment_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_104__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_104__snap": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_107__federal_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_107__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_107__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_107__snap": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_108__federal_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_108__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_108__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_109__child1_chip_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_109__child2_chip_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_109__child2_head_start_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_109__child2_wic_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_109__child3_chip_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_109__child3_early_head_start_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_109__child3_head_start_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_109__child3_wic_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_109__federal_income_tax_before_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_109__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_109__head_wic_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_109__reduced_price_school_meals_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_109__spouse_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_109__spouse_wic_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_111__federal_income_tax_before_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_111__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_111__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_111__snap": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_111__spouse_medicaid_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_112__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_112__head_wic_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_112__payroll_tax": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_112__self_employment_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_114__federal_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_114__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_115__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_115__snap": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_116__snap": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_116__spouse_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_117__child3_early_head_start_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_117__child3_head_start_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_117__child3_wic_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_117__head_wic_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_117__spouse_wic_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_118__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_118__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_120__head_medicare_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_121__federal_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_121__payroll_tax": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "seed|us__scenario_122__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_122__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_123__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_123__local_income_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "seed|us__scenario_123__spouse_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_000__head_medicaid_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_000__payroll_tax": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_001__payroll_tax": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_001__snap": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_001__spouse_medicare_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_002__payroll_tax": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_002__spouse_medicaid_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_003__head_medicare_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_003__payroll_tax": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_003__state_income_tax_before_refundable_credits": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_004__head_medicaid_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_004__head_medicare_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_004__payroll_tax": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_004__spouse_medicaid_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_007__payroll_tax": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_008__child1_medicaid_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_008__child1_wic_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_008__child2_medicaid_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_008__child2_wic_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_008__child3_medicaid_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_008__child3_wic_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_008__child4_head_start_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_008__child4_medicaid_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_008__child4_wic_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_008__child5_early_head_start_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_008__child5_head_start_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_008__child5_medicaid_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_008__child6_early_head_start_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_008__child6_head_start_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_008__child6_medicaid_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_008__free_school_meals_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_008__head_wic_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_008__reduced_price_school_meals_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_008__self_employment_tax": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_008__spouse_wic_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_009__head_medicare_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_009__payroll_tax": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_009__spouse_medicare_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_012__child1_chip_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_012__child1_medicaid_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_012__child1_wic_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_012__free_school_meals_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_012__head_medicaid_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_012__head_wic_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_012__reduced_price_school_meals_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_012__spouse_chip_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_012__spouse_medicaid_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_012__spouse_wic_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_013__head_medicaid_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_013__state_income_tax_before_refundable_credits": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_014__head_medicaid_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_015__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_018__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_020__state_income_tax_before_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_021__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_021__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_021__snap": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_021__state_income_tax_before_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_022__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_023__federal_refundable_credits": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_023__free_school_meals_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_023__head_chip_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_023__head_medicare_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_023__ssi": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_025__head_medicare_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_026__child1_chip_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_026__child2_chip_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_026__child3_chip_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_026__free_school_meals_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_026__reduced_price_school_meals_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_027__federal_income_tax_before_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_027__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_027__spouse_medicaid_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_028__child1_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_028__child1_wic_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_028__child2_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_028__child2_wic_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_028__child3_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_028__child3_wic_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_029__snap": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_030__federal_income_tax_before_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_030__federal_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_030__head_chip_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_030__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_030__tanf": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_031__federal_income_tax_before_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_031__state_income_tax_before_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_032__child1_head_start_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_032__child1_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_032__child1_medicare_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_032__child1_wic_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_032__federal_income_tax_before_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_032__head_medicaid_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_032__head_wic_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_032__snap": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_032__spouse_chip_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_032__spouse_wic_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_033__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_033__self_employment_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_036__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_036__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_037__federal_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_037__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_038__child1_head_start_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_038__child1_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_038__child1_wic_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_038__child2_head_start_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_038__child2_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_038__child2_wic_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_038__federal_income_tax_before_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_038__free_school_meals_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_038__head_wic_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_038__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_038__reduced_price_school_meals_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_038__spouse_chip_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_038__spouse_wic_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_039__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_040__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_040__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_040__snap": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_040__spouse_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_040__spouse_medicare_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_040__state_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_042__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_042__state_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_043__head_medicaid_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_043__ssi": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_044__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_044__spouse_medicare_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_044__state_income_tax_before_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_044__state_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_045__federal_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_046__child1_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_046__child2_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_046__payroll_tax": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_048__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_048__head_medicare_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_048__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_048__snap": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_049__head_medicare_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_049__spouse_medicare_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_051__federal_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_051__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_051__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_052__head_medicare_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_052__spouse_medicare_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_053__federal_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_053__payroll_tax": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_054__child1_chip_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_054__child1_wic_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_054__child2_chip_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_054__child2_head_start_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_054__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_054__reduced_price_school_meals_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_054__self_employment_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_056__federal_income_tax_before_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_056__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_056__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_056__self_employment_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_057__spouse_chip_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_057__spouse_wic_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_059__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_060__federal_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_060__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_060__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_062__self_employment_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_066__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_067__federal_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_067__head_medicare_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_068__federal_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_068__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_068__state_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_070__federal_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_070__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_070__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_070__state_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_071__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_071__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_071__state_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_072__head_medicare_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_072__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_072__spouse_medicare_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_073__head_medicaid_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_073__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_074__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_075__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_075__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_076__child2_wic_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_076__payroll_tax": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_076__self_employment_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_077__federal_refundable_credits": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_077__head_medicaid_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_077__payroll_tax": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_077__snap": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_077__state_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_078__local_income_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_080__head_medicare_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_080__ssi": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_080__state_income_tax_before_refundable_credits": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_080__state_refundable_credits": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_082__child1_chip_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_082__child1_wic_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_082__local_income_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_083__federal_income_tax_before_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_083__federal_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_083__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_083__head_wic_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_083__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_083__self_employment_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_084__head_medicaid_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_085__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_086__child1_chip_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_086__child1_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_086__payroll_tax": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_086__state_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_088__federal_income_tax_before_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_088__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_089__federal_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_090__federal_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_090__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_090__head_wic_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_090__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_091__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_092__federal_income_tax_before_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_092__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_092__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_093__dependent1_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_095__federal_income_tax_before_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_095__federal_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_095__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_095__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_095__snap": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_098__federal_income_tax_before_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_098__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_098__snap": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_098__state_income_tax_before_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_099__child2_early_head_start_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_099__child2_head_start_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_099__child2_wic_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_100__child1_chip_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_100__child1_head_start_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_100__child1_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_100__child1_wic_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_100__child2_chip_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_100__child2_early_head_start_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_100__child2_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_100__child2_wic_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_100__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_100__head_medicare_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_100__head_wic_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_100__reduced_price_school_meals_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_100__ssi": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_101__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_101__state_income_tax_before_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_102__federal_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_102__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_102__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_102__self_employment_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_104__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_104__snap": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_107__federal_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_107__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_107__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_107__snap": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_108__federal_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_108__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_108__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_109__child1_chip_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_109__child2_chip_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_109__child2_head_start_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_109__child2_wic_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_109__child3_chip_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_109__child3_early_head_start_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_109__child3_head_start_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_109__child3_wic_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_109__federal_income_tax_before_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_109__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_109__head_wic_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_109__reduced_price_school_meals_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_109__spouse_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_109__spouse_wic_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_111__federal_income_tax_before_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_111__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_111__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_111__snap": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_111__spouse_medicaid_eligible": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_112__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_112__head_wic_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_112__payroll_tax": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_112__self_employment_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_114__federal_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_114__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_115__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_115__snap": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_116__snap": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_116__spouse_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_117__child3_early_head_start_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_117__child3_head_start_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_117__child3_wic_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_117__head_wic_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_117__spouse_wic_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_118__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_118__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_120__head_medicare_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_121__federal_refundable_credits": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_121__payroll_tax": {
+ "class": "identical",
+ "other_diff": []
+ },
+ "unified|us__scenario_122__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_122__payroll_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_123__head_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_123__local_income_tax": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ },
+ "unified|us__scenario_123__spouse_medicaid_eligible": {
+ "class": "only the budget_exhausted_at_ceiling definition added",
+ "other_diff": []
+ }
+}
\ No newline at end of file
diff --git a/docs/judge_isolation_2026-09-30/independent/audit_indep.py b/docs/judge_isolation_2026-09-30/independent/audit_indep.py
new file mode 100644
index 00000000..3b2e9ebc
--- /dev/null
+++ b/docs/judge_isolation_2026-09-30/independent/audit_indep.py
@@ -0,0 +1,522 @@
+"""Independent judge-isolation audit of the published PolicyBench verdicts.
+
+For every verdict in the seed (published 20260929) and unified audit trees:
+ 1. bind it by content to the transcript that produced it
+ codex runner -> the case's codex.log final message == verdict (parsed JSON)
+ Claude judges -> a StructuredOutput tool_use whose input == verdict (parsed JSON),
+ looked up in the index built by build_index.py
+ fallback -> a Bash heredoc / Write payload in a main-session transcript == verdict
+ 2. list every tool call the judge (and any delegate) made, except the StructuredOutput answer
+ 3. classify: read_other_files / searched / shell / browsed / other_tools -> affected
+
+Also checks sidecar hashes, sidecar ids vs the bound transcript, and whether the prompt the
+judge actually saw equals the published prompt.md.
+
+usage: python audit_indep.py
+Read-only with respect to both audit trees and the repos.
+"""
+from __future__ import annotations
+
+import csv
+import difflib
+import glob
+import hashlib
+import json
+import os
+import re
+import sys
+from collections import Counter, defaultdict
+from pathlib import Path
+
+HERE = Path(__file__).resolve().parent
+sys.path.insert(0, str(HERE))
+from transcripts import canon, parse_claude, parse_codex, reconstruct_read # noqa: E402
+
+TREES = {
+ "seed": Path("~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-v3/audit/cases"),
+ "unified": Path("~/PolicyEngine/policybench/results/local/unified_audit/audit/cases"),
+}
+MAIN_SESSIONS = [
+ Path("~/.claude/projects/-Users-maxghenis-Library-Application-Support-Claude-scratch-workspaces-ee3763f4-e7ea-4177-bcaf-1362266768c1-4457aa9d-2dc0-4bcf-a128-e50adae6be25-scratch-2026-09-22-c3da5e/3dd3d124-a1eb-44ed-ac89-ce3df9700101.jsonl"),
+ Path("~/.claude/projects/-Users-maxghenis/3c78d187-d2fd-48e8-bd4e-370d86004afd.jsonl"),
+]
+HOME = os.path.expanduser("~")
+
+SEARCH_TOOLS = {"Grep", "Glob", "LS"}
+SHELL_TOOLS = {"Bash", "BashOutput", "KillShell", "KillBash", "PowerShell", "Monitor"}
+BROWSE_TOOLS = {"WebFetch", "WebSearch", "web_search", "web_fetch"}
+READ_TOOLS = {"Read", "NotebookRead"}
+DELEGATE_TOOLS = {"Agent", "Task", "Workflow"}
+
+
+def short(p: str) -> str:
+ return p.replace(HOME, "~")
+
+
+def wave_of(meta: dict) -> str:
+ runner = meta.get("judge_runner", "")
+ day = (meta.get("judged_at_utc") or "")[:10]
+ if runner == "scripts/run_audit_codex.sh":
+ return "codex"
+ if day == "2026-09-05":
+ return "2026-09-05"
+ if "2026-09-22" <= day <= "2026-09-24":
+ return "2026-09-22"
+ if "2026-09-28" <= day <= "2026-09-30":
+ return "2026-09-29"
+ return f"unassigned({day})"
+
+
+def classify_call(call: dict, case_id: str) -> str:
+ name = call["name"] or ""
+ inp = call.get("input") or {}
+ if name == "StructuredOutput":
+ return "structured_output"
+ if name in READ_TOOLS:
+ fp = inp.get("file_path") or inp.get("notebook_path") or ""
+ if fp.endswith(f"/cases/{case_id}/prompt.md"):
+ return "own_prompt"
+ return "read_other"
+ if name in SEARCH_TOOLS:
+ return "search"
+ if name in SHELL_TOOLS:
+ return "shell"
+ low = name.lower()
+ if name in BROWSE_TOOLS or low.startswith("mcp__claude-in-chrome") or low.startswith("mcp__chrome") \
+ or "browser" in low or "playwright" in low or low.startswith("mcp__computer-use"):
+ return "browse"
+ return "other"
+
+
+def describe_call(call: dict) -> str:
+ inp = call.get("input") or {}
+ name = call["name"]
+ if name in READ_TOOLS:
+ s = f"Read {inp.get('file_path') or inp.get('notebook_path')}"
+ if inp.get("offset") or inp.get("limit"):
+ s += f" (offset={inp.get('offset')}, limit={inp.get('limit')})"
+ return s
+ if name == "Grep":
+ return f"Grep pattern={inp.get('pattern')!r} path={inp.get('path')} glob={inp.get('glob')}"
+ if name == "Glob":
+ return f"Glob pattern={inp.get('pattern')!r} path={inp.get('path')}"
+ if name == "LS":
+ return f"LS {inp.get('path')}"
+ if name in SHELL_TOOLS:
+ return f"{name}: {(inp.get('command') or json.dumps(inp))[:400]}"
+ if name in ("WebFetch", "WebSearch"):
+ return f"{name} {inp.get('url') or inp.get('query')}"
+ return f"{name} {json.dumps(inp)[:300]}"
+
+
+# ----------------------------------------------------------------- workflow journals
+
+_journal_cache: dict[str, dict] = {}
+
+
+def journal_info(agent_path: Path):
+ """label/phase/key for the agent from its workflow journal, if any."""
+ wf_dir = agent_path.parent
+ j = wf_dir / "journal.jsonl"
+ if not j.exists():
+ return None
+ key = str(j)
+ if key not in _journal_cache:
+ info = {}
+ results = {}
+ for ln in open(j, encoding="utf-8"):
+ ln = ln.strip()
+ if not ln:
+ continue
+ d = json.loads(ln)
+ if d.get("type") == "started" and d.get("agentId"):
+ info[d["agentId"]] = {"label": d.get("label"), "phase": d.get("phase"), "key": d.get("key")}
+ if d.get("type") == "result" and d.get("agentId"):
+ results[d["agentId"]] = d.get("result")
+ for aid, r in results.items():
+ info.setdefault(aid, {})["result_canon"] = canon(r) if r is not None else None
+ _journal_cache[key] = info
+ aid = agent_path.name[len("agent-"):-len(".jsonl")]
+ rec = dict(_journal_cache[key].get(aid, {}))
+ rec["workflow_id"] = wf_dir.name
+ rec["agent_id"] = aid
+ return rec
+
+
+# ----------------------------------------------------------------- delegates
+
+def find_delegates(parsed: dict, transcript: Path):
+ """Transcripts of Agent/Task/Workflow delegates launched by this judge."""
+ out = []
+ # session dir: ...///subagents/... for subagents, or ...//.jsonl for sessions
+ p = transcript
+ if "subagents" in p.parts:
+ sdir = Path(*p.parts[: p.parts.index("subagents")])
+ else:
+ sdir = p.with_suffix("")
+ for c in parsed["calls"]:
+ if c["name"] not in DELEGATE_TOOLS:
+ continue
+ res = parsed["results"].get(c["id"], {}).get("text", "")
+ ids = set(re.findall(r"agentId:\s*([a-z0-9]+)", res)) | set(re.findall(r"agent-([a-z0-9]+)", res))
+ wfs = set(re.findall(r"(wf_[0-9a-f]{8}-[0-9a-f]{3})", res))
+ found = []
+ for aid in ids:
+ found += glob.glob(str(sdir / "subagents" / "**" / f"agent-{aid}.jsonl"), recursive=True)
+ for wf in wfs:
+ found += glob.glob(str(sdir / "subagents" / "workflows" / wf / "agent-*.jsonl"))
+ out.append({"call": c["id"], "tool": c["name"], "agent_ids": sorted(ids), "workflows": sorted(wfs),
+ "transcripts": sorted(set(found))})
+ return out
+
+
+# ----------------------------------------------------------------- prompt fidelity
+
+def compare_text(seen: str, published: str) -> tuple[str, list[str]]:
+ a = seen.strip().split("\n")
+ b = published.strip().split("\n")
+ if a == b:
+ return "identical", []
+ diff = [ln for ln in difflib.unified_diff(a, b, lineterm="", n=0) if not ln.startswith(("---", "+++", "@@"))]
+ return f"differs({sum(1 for d in diff if d.startswith('-'))} lines only-seen, {sum(1 for d in diff if d.startswith('+'))} lines only-published)", diff[:12]
+
+
+def compare_read(lines_seen: dict, published: str):
+ pub = published.split("\n")
+ if pub and pub[-1] == "":
+ pub = pub[:-1]
+ n = len(pub)
+ covered = [i for i in range(1, n + 1) if i in lines_seen]
+ mism, trunc = [], 0
+ for i in covered:
+ s, p = lines_seen[i], pub[i - 1]
+ if s == p:
+ continue
+ # Read truncates very long lines; accept a strict prefix
+ if len(s) < len(p) and p.startswith(s.rstrip(".… ")[: max(0, len(s) - 40)]):
+ trunc += 1
+ continue
+ mism.append(i)
+ extra = [i for i in lines_seen if i > n]
+ if not covered:
+ return "no-content-returned", []
+ status = "identical"
+ if len(covered) < n:
+ status = f"partial-read({len(covered)}/{n} lines)"
+ if trunc:
+ status += f"+{trunc}-truncated-lines-prefix-match"
+ if mism or extra:
+ status = f"differs({len(mism)} changed, {len(extra)} extra lines)"
+ detail = [f"L{i}: seen={lines_seen[i][:160]!r} published={pub[i-1][:160]!r}" for i in mism[:4]]
+ return status, detail
+
+
+# ----------------------------------------------------------------- main
+
+def main():
+ index = json.load(open(sys.argv[1]))["index"]
+ out_dir = Path(sys.argv[2])
+ out_dir.mkdir(parents=True, exist_ok=True)
+
+ verdicts = []
+ for tree, root in TREES.items():
+ for d in sorted(p for p in root.iterdir() if p.is_dir()):
+ vb = (d / "verdict.json").read_bytes()
+ verdicts.append({
+ "tree": tree, "case_id": d.name, "dir": d,
+ "vbytes": vb, "v": json.loads(vb),
+ "meta": json.loads((d / "verdict.meta.json").read_text()),
+ "prompt": (d / "prompt.md").read_text(encoding="utf-8"),
+ "files": sorted(os.listdir(d)),
+ })
+ seed_bytes = {r["case_id"]: r["vbytes"] for r in verdicts if r["tree"] == "seed"}
+
+ main_parsed = {}
+ rows, details = [], []
+ for r in verdicts:
+ meta, v, case_id = r["meta"], r["v"], r["case_id"]
+ wave = wave_of(meta)
+ runner = meta.get("judge_runner", "")
+ notes, anomalies = [], []
+ rec = {
+ "tree": r["tree"], "case_id": case_id, "wave": wave, "runner": runner,
+ "transcript_path": "", "binding_method": "", "n_tool_calls": "",
+ "read_other_files": "", "searched": "", "shell": "", "browsed": "", "other_tools": "",
+ "affected": "unknown",
+ "live_in_published_release": "yes" if r["tree"] == "seed" else (
+ "yes" if seed_bytes.get(case_id) == r["vbytes"] else "no"),
+ }
+ det = {"tree": r["tree"], "case_id": case_id, "wave": wave, "runner": runner, "meta": meta,
+ "calls": [], "delegates": [], "anomalies": anomalies}
+
+ # sidecar integrity
+ vsha = hashlib.sha256(r["vbytes"]).hexdigest()
+ if meta.get("verdict_sha256") != vsha:
+ anomalies.append(f"sidecar verdict_sha256 {meta.get('verdict_sha256')} != sha256(verdict.json) {vsha}")
+ canonical_bytes = json.dumps(v, indent=2, sort_keys=True).encode()
+ # codex -o keeps the raw final message, so only Claude-written verdicts must be canonical
+ if canonical_bytes != r["vbytes"] and runner != "scripts/run_audit_codex.sh":
+ anomalies.append("verdict.json bytes are not json.dumps(v, indent=2, sort_keys=True)")
+ psha = hashlib.sha256(r["prompt"].encode("utf-8")).hexdigest()
+ if meta.get("prompt_sha256") and meta["prompt_sha256"] != psha:
+ anomalies.append(f"sidecar prompt_sha256 != sha256(published prompt.md)")
+ if "verdict.json.tmp" in r["files"]:
+ anomalies.append("stray verdict.json.tmp in case dir")
+ tmpb = (r["dir"] / "verdict.json.tmp").read_bytes()
+ try:
+ tv = json.loads(tmpb)
+ det["tmp_equals_verdict"] = tv == v
+ if tv != v:
+ anomalies.append("verdict.json.tmp differs from verdict.json")
+ except Exception:
+ anomalies.append("verdict.json.tmp unparseable")
+
+ calls = []
+ bound = False
+ if runner == "scripts/run_audit_codex.sh":
+ log = r["dir"] / "codex.log"
+ if not log.exists():
+ rec["binding_method"] = "missing"
+ notes.append("no codex.log in case dir")
+ else:
+ cx = parse_codex(log)
+ det["codex"] = {k: cx[k] for k in ("header", "blocks", "execs", "tool_markers", "stderr_noise_in_prompt")}
+ if cx["final_obj"] == v:
+ bound = True
+ rec["transcript_path"] = str(log)
+ rec["binding_method"] = "codex.log final message (after 'tokens used') == verdict.json as parsed JSON"
+ if cx["last_msg_obj"] is not None and cx["last_msg_obj"] != v:
+ anomalies.append("codex.log 'codex' block message differs from final stdout message")
+ for e in cx["execs"]:
+ calls.append({"name": "exec", "input": {"command": e}, "cls": "shell"})
+ for m in cx["tool_markers"]:
+ calls.append({"name": "codex-marker", "input": {"line": m}, "cls": "other"})
+ extra_blocks = [b for b in cx["blocks"] if b not in ("user", "codex", "tokens used", "exec")]
+ if extra_blocks:
+ anomalies.append(f"codex.log has unexpected blocks {extra_blocks}")
+ if cx["blocks"] != ["user", "codex", "tokens used"]:
+ notes.append(f"codex blocks: {cx['blocks']}")
+ st, diff = compare_text(cx["prompt"] or "", r["prompt"])
+ det["prompt_fidelity"] = st
+ det["prompt_diff"] = diff
+ wd = cx["header"].get("workdir")
+ det["workdir"] = wd
+ notes.append(f"workdir={wd}; sandbox={cx['header'].get('sandbox')}; model={cx['header'].get('model')}")
+ if st != "identical":
+ anomalies.append(f"prompt in codex.log vs published prompt.md: {st}")
+ else:
+ rec["binding_method"] = "missing"
+ notes.append(
+ "case codex.log holds a different run's answer (its final message != verdict.json; "
+ f"log session {cx['header'].get('session id')}); no other codex.log copy under "
+ "policybench*/results/**/audit/cases holds this verdict; codex ran --ephemeral so no rollout; "
+ "Aug 17-18 rollouts in ~/.subfleet/lanes/codex-*/sessions and Logpile codex hold no audit prompt")
+ else:
+ hits = [h for h in index.get(canon(v), []) if "/logpile/" not in h["path"]]
+ lp = [h for h in index.get(canon(v), []) if "/logpile/" in h["path"]]
+ paths = sorted({h["path"] for h in hits})
+ if len(paths) == 1:
+ bound = True
+ tpath = Path(paths[0])
+ h = hits[0]
+ rec["transcript_path"] = str(tpath)
+ rec["binding_method"] = ("StructuredOutput tool_use input == verdict.json as parsed JSON "
+ "(unique match among all indexed Claude transcripts)")
+ if lp:
+ notes.append(f"Logpile copy also holds it: {short(lp[0]['path'])}")
+ parsed = parse_claude(tpath)
+ det["transcript"] = {k: parsed[k] for k in ("session_ids", "agent_ids", "cwds", "models", "first_ts", "last_ts", "n_rows", "sidechain_rows")}
+ det["injected_attachments"] = Counter(parsed["injected"])
+ # context the harness put in front of the judge besides its prompt (not tool calls)
+ ctx = []
+ for row in __import__("transcripts").load_lines(tpath):
+ a = row.get("attachment") if row.get("type") == "attachment" else None
+ if a and a.get("type") == "nested_memory":
+ ctx.append(f"nested_memory {short(a.get('path', ''))}")
+ if a and a.get("type") == "session_context" and (a.get("context") or {}).get("gitStatus"):
+ gs = a["context"]["gitStatus"]
+ br = re.search(r"Current branch: (\S+)", gs)
+ commits = re.findall(r"^[0-9a-f]{7,} (.+)$", gs, re.M)
+ ctx.append(f"gitStatus of {parsed['cwds'][0] if parsed['cwds'] else '?'} (branch "
+ f"{br.group(1) if br else '?'}; recent commits: {' / '.join(c_[:70] for c_ in commits[:3])})")
+ if any("workflow-authoring" in s_ for _, s_ in parsed["user_strings"]):
+ ctx.append("workflow-authoring skill text injected as a user turn")
+ relay = [s_ for _, s_ in parsed["user_strings"] if s_.startswith("[Workflow harness — user request]")]
+ if relay:
+ rq = relay[0].split("this request wins:", 1)[-1].strip()
+ ctx.append(f"relayed parent user request: {rq[:120]!r}")
+ if parsed["injected"].count("instructions"):
+ ctx.append("CLAUDE.md instructions attachment")
+ det["context_injections"] = ctx
+ # identity checks
+ jinfo = journal_info(tpath) if "workflows" in tpath.parts else None
+ if jinfo:
+ det["journal"] = jinfo
+ lab = jinfo.get("label") or ""
+ notes.append(f"workflow {jinfo['workflow_id']} agent {jinfo['agent_id']} label {lab}")
+ if lab.split("#")[0].removeprefix("judge:") != case_id:
+ anomalies.append(f"journal label {lab!r} is not this case")
+ if jinfo.get("result_canon") != canon(v):
+ anomalies.append("journal result for this agent != verdict")
+ if meta.get("judge_agent_id") and meta["judge_agent_id"] != jinfo["agent_id"]:
+ anomalies.append(f"sidecar judge_agent_id {meta['judge_agent_id']} != bound agent {jinfo['agent_id']}")
+ if meta.get("judge_workflow") and meta["judge_workflow"] != jinfo["workflow_id"]:
+ anomalies.append(f"sidecar judge_workflow {meta['judge_workflow']} != bound workflow {jinfo['workflow_id']}")
+ sid = meta.get("session_id")
+ tsid = parsed["session_ids"][0] if parsed["session_ids"] else None
+ if sid and sid.startswith("wf_"):
+ if sid != jinfo["workflow_id"]:
+ anomalies.append(f"sidecar session_id (a workflow id) {sid} != bound workflow {jinfo['workflow_id']}")
+ else:
+ notes.append(f"sidecar session_id is the workflow id; parent session {tsid}")
+ elif sid and sid != tsid:
+ anomalies.append(f"sidecar session_id {sid} != transcript session {tsid}")
+ else:
+ sid = meta.get("session_id")
+ if sid and sid not in parsed["session_ids"]:
+ anomalies.append(f"sidecar session_id {sid} != transcript session {parsed['session_ids']}")
+ if tpath.stem != sid:
+ anomalies.append(f"transcript filename {tpath.stem} != sidecar session id {sid}")
+ notes.append(f"session {parsed['session_ids']} cwd={parsed['cwds']}")
+ sos = [c for c in parsed["calls"] if c["name"] == "StructuredOutput"]
+ matching = [c for c in sos if canon(c["input"]) == canon(v)]
+ if len(sos) > 1:
+ notes.append(f"{len(sos)} StructuredOutput calls ({len(matching)} equal to the verdict)")
+ if parsed["calls"] and parsed["calls"][-1]["name"] != "StructuredOutput":
+ anomalies.append("last tool call is not StructuredOutput")
+ if sos and matching and sos[-1] is not matching[-1]:
+ anomalies.append("verdict matches a non-final StructuredOutput call")
+ answer_id = matching[-1]["id"] if matching else None
+ for c in parsed["calls"]:
+ if c["id"] == answer_id:
+ continue
+ cc = dict(c)
+ cc["cls"] = classify_call(c, case_id)
+ res = parsed["results"].get(c["id"])
+ cc["is_error"] = bool(res and res["is_error"])
+ cc["result_head"] = (res["text"][:200] if res else None)
+ calls.append(cc)
+ # delegates
+ dels = find_delegates(parsed, tpath)
+ det["delegates"] = dels
+ for dl in dels:
+ for dt in dl["transcripts"]:
+ dp = parse_claude(Path(dt))
+ for c in dp["calls"]:
+ cc = dict(c)
+ cc["cls"] = classify_call(c, case_id)
+ cc["delegate"] = dt
+ calls.append(cc)
+ if not dl["transcripts"]:
+ anomalies.append(f"delegate {dl['tool']} launched but its transcript was not found")
+ # prompt fidelity
+ own_reads = [c for c in calls if c.get("cls") == "own_prompt"]
+ if own_reads:
+ texts = [parsed["results"].get(c["id"], {}).get("text", "") for c in own_reads]
+ lines_seen = reconstruct_read(texts)
+ st, dd = compare_read(lines_seen, r["prompt"])
+ det["prompt_fidelity"] = st
+ det["prompt_diff"] = dd
+ roots = sorted({str(Path(c["input"]["file_path"]).parent.parent.parent) for c in own_reads})
+ det["prompt_read_from"] = roots
+ if str(TREES[r["tree"]].parent) not in roots:
+ notes.append(f"judge read its prompt from {', '.join(short(x) for x in roots)} (not this tree)")
+ if not st.startswith("identical"):
+ anomalies.append(f"prompt the judge read vs published prompt.md: {st}")
+ # also the on-disk copy it read, today
+ for x in roots:
+ fp = Path(x) / "cases" / case_id / "prompt.md"
+ if fp.exists() and fp.read_bytes() != r["prompt"].encode("utf-8"):
+ det.setdefault("disk_prompt_differs", []).append(str(fp))
+ else:
+ # prompt arrived as the first user message (claude -p < prompt.md) or in the task text
+ first = parsed["user_strings"][0][1] if parsed["user_strings"] else ""
+ if "Workflow harness" in first or any("Workflow harness" in s for _, s in parsed["user_strings"][:2]):
+ det["prompt_fidelity"] = "prompt-not-read"
+ anomalies.append("workflow judge never read its prompt.md")
+ else:
+ st, dd = compare_text(first, r["prompt"])
+ det["prompt_fidelity"] = st
+ det["prompt_diff"] = dd
+ if st != "identical":
+ anomalies.append(f"first user message vs published prompt.md: {st}")
+ extra_user = [s[:120] for _, s in parsed["user_strings"][1:]]
+ if extra_user:
+ det["extra_user_messages"] = extra_user
+ if len(sos) == 0:
+ anomalies.append("no StructuredOutput in bound transcript (?)")
+ elif len(paths) > 1:
+ rec["binding_method"] = "ambiguous"
+ notes.append(f"verdict equals StructuredOutput in {len(paths)} transcripts: " + "; ".join(short(p) for p in paths))
+ else:
+ # fallback: a main session wrote it with Bash/Write
+ found = None
+ needle = (v.get("rationale") or "")[:80]
+ for ms in MAIN_SESSIONS:
+ if not needle:
+ break
+ if ms not in main_parsed:
+ main_parsed[ms] = parse_claude(ms)
+ mp = main_parsed[ms]
+ for c in mp["calls"]:
+ blob = json.dumps(c["input"], ensure_ascii=False)
+ if needle not in blob and json.dumps(needle)[1:-1] not in blob:
+ continue
+ text = (c["input"].get("command") or c["input"].get("content") or "")
+ for m in re.finditer(r"<<'?EOF'?\n(.*?)\nEOF", text, re.S):
+ try:
+ if json.loads(m.group(1)) == v:
+ found = (ms, c)
+ except Exception:
+ pass
+ if c["name"] == "Write":
+ try:
+ if json.loads(text) == v:
+ found = (ms, c)
+ except Exception:
+ pass
+ if found:
+ ms, c = found
+ bound = True
+ rec["transcript_path"] = str(ms)
+ rec["binding_method"] = (f"{c['name']} tool_use in the main session writes a verdict.json whose content == "
+ "verdict.json as parsed JSON (no StructuredOutput: the main session judged it itself)")
+ det["main_session_answer_call"] = {"id": c["id"], "row": c["row"], "ts": c["ts"]}
+ else:
+ rec["binding_method"] = "missing"
+ notes.append("no indexed StructuredOutput and no main-session write equals this verdict")
+
+ if bound and not det.get("main_session_answer_call"):
+ det["calls"] = [{k: c.get(k) for k in ("name", "cls", "input", "is_error", "delegate", "ts")} for c in calls]
+ cls = Counter(c["cls"] for c in calls)
+ rec["n_tool_calls"] = len(calls)
+ rec["read_other_files"] = "yes" if cls["read_other"] else "no"
+ rec["searched"] = "yes" if cls["search"] else "no"
+ rec["shell"] = "yes" if cls["shell"] else "no"
+ rec["browsed"] = "yes" if cls["browse"] else "no"
+ rec["other_tools"] = "yes" if cls["other"] else "no"
+ rec["affected"] = "yes" if any(cls[k] for k in ("read_other", "search", "shell", "browse", "other")) else "no"
+ touched = [describe_call(c) + (" [error]" if c.get("is_error") else "") for c in calls if c["cls"] != "own_prompt"]
+ det["touched"] = touched
+ own = cls["own_prompt"]
+ if own:
+ notes.append(f"{own} Read(s) of its own case prompt.md")
+ if touched:
+ notes.append("TOUCHED: " + " | ".join(touched[:12]) + (f" | (+{len(touched)-12} more)" if len(touched) > 12 else ""))
+ rec["notes"] = "; ".join(notes + [f"ANOMALY: {a}" for a in anomalies])
+ rows.append(rec)
+ details.append(det)
+
+ # main-session judged verdicts get their segment analysed separately (see main_session_segment.py)
+ with open(out_dir / "verdicts_indep_auto.csv", "w", newline="") as fh:
+ w = csv.DictWriter(fh, fieldnames=list(rows[0].keys()))
+ w.writeheader()
+ w.writerows(rows)
+ json.dump(details, open(out_dir / "details_auto.json", "w"), indent=1, default=str)
+ c = Counter((r["tree"], r["wave"], r["binding_method"].split(" ")[0], r["affected"]) for r in rows)
+ for k, n in sorted(c.items()):
+ print(n, k)
+
+
+if __name__ == "__main__":
+ main()
diff --git a/docs/judge_isolation_2026-09-30/independent/build_index.py b/docs/judge_isolation_2026-09-30/independent/build_index.py
new file mode 100644
index 00000000..fb76f594
--- /dev/null
+++ b/docs/judge_isolation_2026-09-30/independent/build_index.py
@@ -0,0 +1,87 @@
+"""Index every StructuredOutput answer in the candidate Claude transcripts.
+
+Output: a JSON map canonical-verdict -> list of {path, agent_ids, session_ids, row, ts}.
+Candidate transcripts:
+ * each sidecar session id's .jsonl in ~/.claude/projects/*, ~/.subfleet/logins/*/projects/*,
+ and the Logpile copy (~/logpile/shared/maxghenis/claudecode/*)
+ * every agent-*.jsonl under /subagents/ (recursively) for every session that owns a
+ subagents dir among those, plus the two Workflow parent sessions found by glob.
+Files are prefiltered on the bytes '"StructuredOutput"' before JSON parsing.
+
+usage: python build_index.py [extra transcript paths or dirs ...]
+"""
+from __future__ import annotations
+
+import json
+import os
+import sys
+from pathlib import Path
+
+sys.path.insert(0, str(Path(__file__).resolve().parent))
+from transcripts import canon, load_lines # noqa: E402
+
+TOOL_TYPES = {"tool_use", "server_tool_use", "mcp_tool_use"}
+
+
+def so_entries(path: Path):
+ b = open(path, "rb").read()
+ if b'"StructuredOutput"' not in b:
+ return []
+ out = []
+ seen = set()
+ for i, d in enumerate(load_lines(path)):
+ msg = d.get("message") if isinstance(d.get("message"), dict) else None
+ if not msg or d.get("type") != "assistant" or not isinstance(msg.get("content"), list):
+ continue
+ for p in msg["content"]:
+ if isinstance(p, dict) and p.get("type") in TOOL_TYPES and p.get("name") == "StructuredOutput":
+ if p.get("id") in seen:
+ continue
+ seen.add(p.get("id"))
+ out.append({
+ "canon": canon(p.get("input")),
+ "row": i,
+ "ts": d.get("timestamp"),
+ "agent_id": d.get("agentId"),
+ "session_id": d.get("sessionId"),
+ "tool_use_id": p.get("id"),
+ })
+ return out
+
+
+def main():
+ hits = json.load(open(sys.argv[1]))
+ out_path = Path(sys.argv[2])
+ files = set()
+ session_dirs = set()
+ for k, v in hits.items():
+ for p in v:
+ if k.endswith("/dir"):
+ session_dirs.add(p)
+ else:
+ files.add(p)
+ d = p[: -len(".jsonl")]
+ if os.path.isdir(d):
+ session_dirs.add(d)
+ for extra in sys.argv[3:]:
+ if os.path.isdir(extra):
+ session_dirs.add(extra)
+ else:
+ files.add(extra)
+ for sd in sorted(session_dirs):
+ sub = Path(sd) / "subagents"
+ if sub.is_dir():
+ for p in sub.rglob("agent-*.jsonl"):
+ files.add(str(p))
+ index = {}
+ n_so = 0
+ for f in sorted(files):
+ for e in so_entries(Path(f)):
+ n_so += 1
+ index.setdefault(e.pop("canon"), []).append({"path": f, **e})
+ json.dump({"files_scanned": sorted(files), "index": index}, open(out_path, "w"))
+ print(f"scanned {len(files)} files, {n_so} StructuredOutput calls, {len(index)} distinct answers")
+
+
+if __name__ == "__main__":
+ main()
diff --git a/docs/judge_isolation_2026-09-30/independent/crosscheck_walk.py b/docs/judge_isolation_2026-09-30/independent/crosscheck_walk.py
new file mode 100644
index 00000000..027f5b7f
--- /dev/null
+++ b/docs/judge_isolation_2026-09-30/independent/crosscheck_walk.py
@@ -0,0 +1,47 @@
+"""Cross-check: recursively walk every row of each bound Claude transcript for tool_use parts
+anywhere in the JSON (not only assistant message content) and compare with the audit's call lists.
+usage: python crosscheck_walk.py verdicts_indep.csv verdicts_indep_details.json"""
+import csv, json, sys, collections
+
+def walk(o, out):
+ if isinstance(o, dict):
+ if o.get("type") in ("tool_use", "server_tool_use", "mcp_tool_use") and "name" in o:
+ out.append((o.get("id"), o["name"]))
+ for v in o.values():
+ walk(v, out)
+ elif isinstance(o, list):
+ for v in o:
+ walk(v, out)
+
+rows = list(csv.DictReader(open(sys.argv[1])))
+det = {(d["tree"], d["case_id"]): d for d in json.load(open(sys.argv[2]))}
+cache = {}
+res = collections.Counter(); bad = []
+for r in rows:
+ p = r["transcript_path"]
+ if not p.endswith(".jsonl") or "3dd3d124-a1eb-44ed-ac89-ce3df9700101.jsonl" in p:
+ continue
+ if p not in cache:
+ found = []
+ for ln in open(p, "rb"):
+ ln = ln.strip()
+ if ln:
+ walk(json.loads(ln), found)
+ ids = {}
+ for i, n in found:
+ ids.setdefault(i, n)
+ cache[p] = ids
+ ids = cache[p]
+ d = det[(r["tree"], r["case_id"])]
+ judge_calls = [c for c in d["calls"] if not c.get("delegate")]
+ names_walk = collections.Counter(n for n in ids.values())
+ # audit excludes exactly one answer StructuredOutput from the judge's own file
+ names_audit = collections.Counter(c["name"] for c in judge_calls)
+ names_audit["StructuredOutput"] += 1
+ ok = names_walk == names_audit
+ res[(r["wave"], ok)] += 1
+ if not ok:
+ bad.append((r["tree"], r["case_id"], dict(names_walk), dict(names_audit)))
+print(res)
+for b in bad[:10]:
+ print(b)
diff --git a/docs/judge_isolation_2026-09-30/independent/finalize.py b/docs/judge_isolation_2026-09-30/independent/finalize.py
new file mode 100644
index 00000000..a406a97d
--- /dev/null
+++ b/docs/judge_isolation_2026-09-30/independent/finalize.py
@@ -0,0 +1,165 @@
+"""Finish the independent audit: score the main-session judge, write the final CSV and summaries.
+
+The one verdict a main session wrote itself (no StructuredOutput) is bound by audit_indep.py to
+the Bash heredoc that wrote it. Its "judge" is that session; this script lists the tool calls in
+the judging segment (from the first read of the case prompt for judging to the verdict write),
+classifies them, and records the earlier case-specific calls still in the session's context.
+
+usage: python finalize.py
+"""
+from __future__ import annotations
+
+import csv
+import json
+import re
+import sys
+from collections import Counter, defaultdict
+from pathlib import Path
+
+HERE = Path(__file__).resolve().parent
+sys.path.insert(0, str(HERE))
+from transcripts import parse_claude # noqa: E402
+
+MAIN = Path("~/.claude/projects/-Users-maxghenis-Library-Application-Support-Claude-scratch-workspaces-ee3763f4-e7ea-4177-bcaf-1362266768c1-4457aa9d-2dc0-4bcf-a128-e50adae6be25-scratch-2026-09-22-c3da5e/3dd3d124-a1eb-44ed-ac89-ce3df9700101.jsonl")
+MAIN_CASE = ("unified", "us__scenario_020__federal_income_tax_before_refundable_credits")
+PROMPT = "unified_audit/audit/cases/us__scenario_020__federal_income_tax_before_refundable_credits/prompt.md"
+
+
+def main_session_row(rec: dict, det: dict):
+ ans = det["main_session_answer_call"]
+ parsed = parse_claude(MAIN)
+ calls = parsed["calls"]
+ ans_i = next(i for i, c in enumerate(calls) if c["id"] == ans["id"])
+ # segment start: the first call after the answer's predecessors that reads the case prompt to judge it
+ start_i = ans_i
+ while start_i > 0:
+ c = calls[start_i - 1]
+ cmd = (c["input"] or {}).get("command", "") if isinstance(c["input"], dict) else ""
+ desc = (c["input"] or {}).get("description", "") if isinstance(c["input"], dict) else ""
+ start_i -= 1
+ if PROMPT in cmd and "to judge it" in desc:
+ break
+ seg = calls[start_i:ans_i + 1]
+ prior = [c for c in calls[:start_i]
+ if "scenario_020" in json.dumps(c["input"]) or "pb-judge-020" in json.dumps(c["input"])]
+ touched = []
+ for c in seg:
+ inp = c["input"] or {}
+ touched.append({"row": c["row"], "ts": c["ts"], "name": c["name"],
+ "description": inp.get("description"), "command": inp.get("command", "")[:600],
+ "is_answer_write": c["id"] == ans["id"]})
+ det["calls"] = touched
+ det["prior_case_calls_in_context"] = [
+ {"row": c["row"], "ts": c["ts"], "name": c["name"], "description": (c["input"] or {}).get("description"),
+ "command": (c["input"] or {}).get("command", "")[:300]} for c in prior]
+ names = Counter(c["name"] for c in seg)
+ assert set(names) == {"Bash"}, names
+ rec["n_tool_calls"] = len(seg)
+ rec["read_other_files"] = "yes"
+ rec["searched"] = "no"
+ rec["shell"] = "yes"
+ rec["browsed"] = "no"
+ rec["other_tools"] = "no"
+ rec["affected"] = "yes"
+ rec["notes"] = (
+ f"Judge = orchestrating main session 3dd3d124 (no StructuredOutput). Judging segment = {len(seg)} Bash calls, "
+ f"rows {seg[0]['row']}-{seg[-1]['row']} ({seg[0]['ts']} to {seg[-1]['ts']}): read its prompt with sed/awk; "
+ "ran PolicyEngine on the case (triage/pe_case.py scenario_020 ... --calc adjusted_gross_income taxable_income "
+ "salt_deduction net_investment_income_tax ...); rewrote the case's reference explanation in "
+ "adds202609/reference_v12/us_case_reference_explanations.csv and the opus55 worktree's annotations CSV; read the "
+ "previous verdict for this case from adds202609/verdicts-board42-b.json ('Read the previous 020 verdict to adapt'); "
+ "then wrote verdict.json by heredoc and ran scripts/validate_verdict.py on it. "
+ f"Earlier in the same context: {len(prior)} case-020 calls, incl. regen_references.py (grep scenario_020), "
+ "restoring 020's reference explanation from _pre_conventions, and two aborted Subfleet judge lanes (pb-judge-020, 020b). "
+ "Session context also held the repo work of the whole session (compaction at row 3211)."
+ )
+ return rec, det
+
+
+def main():
+ auto, out = Path(sys.argv[1]), Path(sys.argv[2])
+ rows = list(csv.DictReader(open(auto / "verdicts_indep_auto.csv")))
+ details = json.load(open(auto / "details_auto.json"))
+ dmap = {(d["tree"], d["case_id"]): d for d in details}
+ final = []
+ for r in rows:
+ d = dmap[(r["tree"], r["case_id"])]
+ if (r["tree"], r["case_id"]) == MAIN_CASE:
+ r, d = main_session_row(r, d)
+ dmap[(r["tree"], r["case_id"])] = d
+ if r["runner"] == "scripts/run_audit_codex.sh" and d["meta"].get("judged_at_utc", "").startswith("2026-08-18T01:27:48"):
+ r["notes"] += ("; sidecar judged_at_utc is the 2026-08-18T01:27:48Z restore time: session 3c78d187 (line 19580) "
+ "copied this verdict.json back from Time Machine snapshot 2026-08-17-194721 after #151's prompt "
+ "change invalidated banked verdicts; the verdict was judged before 19:47 local 2026-08-17")
+ if r["binding_method"] == "missing" and r["runner"] == "scripts/run_audit_codex.sh":
+ r["notes"] += ("; WHY MISSING: at 2026-08-18T01:25:58Z session 3c78d187 (~/.claude/projects/-Users-maxghenis/"
+ "3c78d187-d2fd-48e8-bd4e-370d86004afd.jsonl line 19542) ran pkill -f run_audit_codex, killing an in-flight "
+ "re-judge of this case that had already overwritten codex.log; at 01:27:48Z (line 19580) it restored "
+ "verdict.json from Time Machine snapshot 2026-08-17-194721. The published verdict's own codex.log "
+ "existed only in that snapshot; today the only local snapshot is 2026-09-30 and /Volumes/TimeMachine "
+ "is not readable from this session. The sidecar's backfilled_from=codex.log and model point at the "
+ "killed re-run's log (its answer, which the killed run never published, shows no exec block)")
+ if (Path("~/PolicyEngine/policybench/results/local/unified_audit/audit/cases") / r["case_id"] / "verdict.json.tmp").exists():
+ r["notes"] += "; the killed re-run's -o output survives as unified//verdict.json.tmp (equal to codex.log's answer)"
+ if (r["tree"], r["case_id"]) in (("seed", "us__scenario_086__federal_refundable_credits"),
+ ("unified", "us__scenario_086__federal_refundable_credits")):
+ r["notes"] = ("LEAK DETAIL: Grep content output (not only Read) put prior-audit text in front of the delegates: "
+ "annotations/.../us_audit_row_annotations.csv rows 5559 (scenario_086 federal_income_tax row) and 5581 "
+ "(scenario_086 federal_refundable_credits claude-opus-4.7 diagnosis), us_case_notes.csv, "
+ "us_case_reference_explanations.csv, paper/snapshot/20260501/runs/.../reference_outputs.csv and data.json; "
+ "the TaskOutput result the judge read cites us_audit_row_annotations.csv line 5559 and PolicyEngine's "
+ "trace. Runner --disallowedTools blocked Bash/Edit/Write/NotebookEdit/WebFetch/WebSearch/Agent only, so "
+ "Workflow, ToolSearch, TaskOutput, Read, Grep, Glob stayed available; delegates' ToolSearch select:Bash "
+ "found nothing. " + r["notes"])
+ ctx = d.get("context_injections") or []
+ if ctx:
+ r["notes"] += "; CONTEXT (not a tool call): " + ", ".join(sorted(set(ctx)))
+ final.append(r)
+
+ fields = ["tree", "case_id", "wave", "runner", "transcript_path", "binding_method", "n_tool_calls",
+ "read_other_files", "searched", "shell", "browsed", "other_tools", "affected",
+ "live_in_published_release", "notes"]
+ with open(out / "verdicts_indep.csv", "w", newline="") as fh:
+ w = csv.DictWriter(fh, fieldnames=fields)
+ w.writeheader()
+ for r in final:
+ w.writerow({k: r[k] for k in fields})
+ json.dump([dmap[(r["tree"], r["case_id"])] for r in final], open(out / "verdicts_indep_details.json", "w"),
+ indent=1, default=str)
+
+ # summaries
+ tab = defaultdict(Counter)
+ for r in final:
+ k = (r["tree"], r["wave"])
+ tab[k]["verdicts"] += 1
+ tab[k]["bound"] += r["binding_method"] not in ("missing", "ambiguous")
+ tab[k]["missing"] += r["binding_method"] == "missing"
+ tab[k]["affected"] += r["affected"] == "yes"
+ tab[k]["unknown"] += r["affected"] == "unknown"
+ tab[k]["live"] += r["live_in_published_release"] == "yes"
+ tab[k]["live_affected"] += r["live_in_published_release"] == "yes" and r["affected"] == "yes"
+ tab[k]["live_missing"] += r["live_in_published_release"] == "yes" and r["binding_method"] == "missing"
+ lines = ["| tree | wave | verdicts | bound | missing | affected | live | live & affected | live & missing |",
+ "|---|---|---|---|---|---|---|---|---|"]
+ order = ["codex", "2026-09-05", "2026-09-22", "2026-09-29"]
+ for tree in ("seed", "unified"):
+ for wv in order:
+ c = tab.get((tree, wv))
+ if not c:
+ lines.append(f"| {tree} | {wv} | 0 | 0 | 0 | 0 | 0 | 0 | 0 |")
+ continue
+ lines.append(f"| {tree} | {wv} | {c['verdicts']} | {c['bound']} | {c['missing']} | {c['affected']} | "
+ f"{c['live']} | {c['live_affected']} | {c['live_missing']} |")
+ (out / "summary_table.md").write_text("\n".join(lines) + "\n")
+ print("\n".join(lines))
+ anomalies = Counter()
+ for d in dmap.values():
+ for a in d.get("anomalies", []):
+ anomalies[(d["tree"], d["wave"], re.sub(r"\d+", "#", a)[:140])] += 1
+ print()
+ for k, v in sorted(anomalies.items()):
+ print(v, k)
+
+
+if __name__ == "__main__":
+ main()
diff --git a/docs/judge_isolation_2026-09-30/independent/summary_table.md b/docs/judge_isolation_2026-09-30/independent/summary_table.md
new file mode 100644
index 00000000..d7883809
--- /dev/null
+++ b/docs/judge_isolation_2026-09-30/independent/summary_table.md
@@ -0,0 +1,10 @@
+| tree | wave | verdicts | bound | missing | affected | live | live & affected | live & missing |
+|---|---|---|---|---|---|---|---|---|
+| seed | codex | 303 | 300 | 3 | 0 | 303 | 0 | 3 |
+| seed | 2026-09-05 | 132 | 132 | 0 | 1 | 132 | 1 | 0 |
+| seed | 2026-09-22 | 17 | 17 | 0 | 0 | 17 | 0 | 0 |
+| seed | 2026-09-29 | 222 | 222 | 0 | 0 | 222 | 0 | 0 |
+| unified | codex | 314 | 311 | 3 | 0 | 303 | 0 | 3 |
+| unified | 2026-09-05 | 183 | 183 | 0 | 1 | 132 | 1 | 0 |
+| unified | 2026-09-22 | 171 | 171 | 0 | 1 | 17 | 0 | 0 |
+| unified | 2026-09-29 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
diff --git a/docs/judge_isolation_2026-09-30/independent/transcripts.py b/docs/judge_isolation_2026-09-30/independent/transcripts.py
new file mode 100644
index 00000000..a0102a87
--- /dev/null
+++ b/docs/judge_isolation_2026-09-30/independent/transcripts.py
@@ -0,0 +1,239 @@
+"""Transcript parsing helpers for the independent judge-isolation audit.
+
+Reads Claude Code session/subagent JSONL transcripts and Codex text logs.
+Read-only: never writes outside the caller's chosen output paths.
+"""
+from __future__ import annotations
+
+import json
+import re
+from pathlib import Path
+
+TOOL_PART_TYPES = {"tool_use", "server_tool_use", "mcp_tool_use"}
+CASE_RE = re.compile(r"us__scenario_\d{3}__[a-z0-9_]+")
+
+
+def canon(obj) -> str:
+ """Canonical form used for content binding (parsed-JSON equality)."""
+ return json.dumps(obj, sort_keys=True, ensure_ascii=False, separators=(",", ":"))
+
+
+def load_lines(path: Path):
+ out = []
+ with open(path, "rb") as fh:
+ for raw in fh:
+ raw = raw.strip()
+ if not raw:
+ continue
+ try:
+ out.append(json.loads(raw))
+ except Exception:
+ out.append({"_unparseable": raw[:200].decode("utf-8", "replace")})
+ return out
+
+
+def _text_of(content) -> str:
+ if content is None:
+ return ""
+ if isinstance(content, str):
+ return content
+ if isinstance(content, list):
+ parts = []
+ for p in content:
+ if isinstance(p, dict):
+ if p.get("type") == "text":
+ parts.append(p.get("text", ""))
+ elif p.get("type") == "tool_reference":
+ parts.append(f"[tool_reference {p.get('tool_name')}]")
+ else:
+ parts.append(json.dumps(p)[:2000])
+ else:
+ parts.append(str(p))
+ return "\n".join(parts)
+ return json.dumps(content)
+
+
+def parse_claude(path: Path) -> dict:
+ """Summarise one Claude transcript: tool calls, results, prompts, ids."""
+ rows = load_lines(path)
+ calls, seen = [], set()
+ results = {}
+ user_strings = [] # (index, text) of plain user prompts, in order
+ session_ids, agent_ids, cwds = set(), set(), set()
+ models = set()
+ first_ts = last_ts = None
+ sidechain_rows = 0
+ injected = []
+ final_texts = []
+ for i, d in enumerate(rows):
+ if "sessionId" in d:
+ session_ids.add(d["sessionId"])
+ if d.get("agentId"):
+ agent_ids.add(d["agentId"])
+ if d.get("cwd"):
+ cwds.add(d["cwd"])
+ ts = d.get("timestamp")
+ if ts:
+ first_ts = first_ts or ts
+ last_ts = ts
+ if d.get("isSidechain"):
+ sidechain_rows += 1
+ msg = d.get("message") if isinstance(d.get("message"), dict) else None
+ typ = d.get("type")
+ if typ == "attachment":
+ att = d.get("attachment") or {}
+ injected.append(att.get("type"))
+ if not msg:
+ continue
+ content = msg.get("content")
+ if typ == "assistant":
+ if msg.get("model"):
+ models.add(msg["model"])
+ if isinstance(content, list):
+ for p in content:
+ if not isinstance(p, dict):
+ continue
+ if p.get("type") in TOOL_PART_TYPES:
+ tid = p.get("id") or f"{i}:{p.get('name')}"
+ if tid in seen:
+ continue
+ seen.add(tid)
+ calls.append({
+ "id": tid,
+ "name": p.get("name"),
+ "input": p.get("input"),
+ "row": i,
+ "ts": ts,
+ "part_type": p.get("type"),
+ "sidechain": bool(d.get("isSidechain")),
+ })
+ elif p.get("type") == "text":
+ final_texts.append((i, p.get("text", "")))
+ elif typ == "user":
+ if isinstance(content, str):
+ user_strings.append((i, content))
+ elif isinstance(content, list):
+ for p in content:
+ if not isinstance(p, dict):
+ continue
+ if p.get("type") == "tool_result":
+ results[p.get("tool_use_id")] = {
+ "is_error": bool(p.get("is_error")),
+ "text": _text_of(p.get("content")),
+ "row": i,
+ }
+ elif p.get("type") == "text":
+ user_strings.append((i, p.get("text", "")))
+ return {
+ "path": str(path),
+ "calls": calls,
+ "results": results,
+ "user_strings": user_strings,
+ "session_ids": sorted(session_ids),
+ "agent_ids": sorted(agent_ids),
+ "cwds": sorted(cwds),
+ "models": sorted(models),
+ "first_ts": first_ts,
+ "last_ts": last_ts,
+ "sidechain_rows": sidechain_rows,
+ "n_rows": len(rows),
+ "injected": injected,
+ "final_texts": final_texts,
+ }
+
+
+def structured_outputs(parsed: dict):
+ return [c for c in parsed["calls"] if c["name"] == "StructuredOutput"]
+
+
+# ---------------------------------------------------------------- codex logs
+
+STDERR_NOISE = re.compile(
+ r"^(\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}\.\d+Z\s+(ERROR|WARN|INFO|DEBUG|TRACE)\b.*"
+ r"|warning: .*"
+ r"|codex-shim: .*"
+ r"|Reading prompt from stdin\.\.\.)$"
+)
+
+
+def parse_codex(path: Path) -> dict:
+ txt = path.read_text(encoding="utf-8", errors="replace")
+ lines = txt.split("\n")
+ header = {}
+ for ln in lines[:20]:
+ m = re.match(r"^(workdir|model|provider|approval|sandbox|reasoning effort|reasoning summaries|session id): (.*)$", ln)
+ if m:
+ header[m.group(1)] = m.group(2)
+ blocks = [] # (index, header word)
+ block_words = {"user", "codex", "exec", "thinking", "tokens used", "mcp", "tool", "apply_patch",
+ "file update", "web search", "web_search", "plan update", "turn diff"}
+ for i, ln in enumerate(lines):
+ if ln in block_words:
+ blocks.append((i, ln))
+ execs = []
+ for bi, (i, w) in enumerate(blocks):
+ if w == "exec":
+ end = blocks[bi + 1][0] if bi + 1 < len(blocks) else len(lines)
+ execs.append("\n".join(lines[i + 1:end]).strip())
+ # other tool-ish markers codex prints inline
+ tool_markers = [ln for ln in lines if re.match(r"^(🌐|🔎|✓|✗|mcp: |tool |web search|Searched|apply_patch)", ln)]
+ user_idx = [i for i, w in blocks if w == "user"]
+ codex_idx = [i for i, w in blocks if w == "codex"]
+ tok_idx = [i for i, w in blocks if w == "tokens used"]
+ prompt = None
+ noise = []
+ if user_idx:
+ end = min([i for i, _ in blocks if i > user_idx[0]] or [len(lines)])
+ raw = lines[user_idx[0] + 1:end]
+ kept = []
+ for ln in raw:
+ if STDERR_NOISE.match(ln):
+ noise.append(ln)
+ else:
+ kept.append(ln)
+ prompt = "\n".join(kept)
+ final = None
+ final_obj = None
+ if tok_idx:
+ final = "\n".join(lines[tok_idx[-1] + 2:]).strip()
+ try:
+ final_obj = json.loads(final)
+ except Exception:
+ final_obj = None
+ last_msg_obj = None
+ if codex_idx:
+ s = codex_idx[-1] + 1
+ e = tok_idx[-1] if tok_idx and tok_idx[-1] > s else len(lines)
+ body = "\n".join(lines[s:e]).strip()
+ try:
+ last_msg_obj = json.loads(body)
+ except Exception:
+ last_msg_obj = None
+ return {
+ "path": str(path),
+ "header": header,
+ "blocks": [w for _, w in blocks],
+ "execs": execs,
+ "tool_markers": tool_markers,
+ "prompt": prompt,
+ "stderr_noise_in_prompt": noise,
+ "final_obj": final_obj,
+ "last_msg_obj": last_msg_obj,
+ }
+
+
+# ------------------------------------------------------------- read content
+
+_LINE_PREFIX = re.compile(r"^\s*(\d+)(?:\t|→)(.*)$")
+
+
+def reconstruct_read(texts):
+ """Rebuild file lines from one or more Read tool results (cat -n format)."""
+ got = {}
+ for t in texts:
+ t = re.sub(r".*?", "", t, flags=re.S)
+ for ln in t.split("\n"):
+ m = _LINE_PREFIX.match(ln)
+ if m:
+ got[int(m.group(1))] = m.group(2)
+ return got
diff --git a/docs/judge_isolation_2026-09-30/independent/verdicts_indep.csv.gz b/docs/judge_isolation_2026-09-30/independent/verdicts_indep.csv.gz
new file mode 100644
index 00000000..4f2da4d9
Binary files /dev/null and b/docs/judge_isolation_2026-09-30/independent/verdicts_indep.csv.gz differ
diff --git a/docs/judge_isolation_2026-09-30/review_independent.md b/docs/judge_isolation_2026-09-30/review_independent.md
new file mode 100644
index 00000000..6c54fb5f
--- /dev/null
+++ b/docs/judge_isolation_2026-09-30/review_independent.md
@@ -0,0 +1,76 @@
+I found three affected rows, which come from two distinct judges, and six verdicts I can't bind. Only one of the affected judges is behind a verdict in the published release. Every other verdict in both trees binds by content to a transcript in which the judge used no tool except reading its own `prompt.md`.
+
+**Where the output is.** The CSV is `verdicts_indep.csv` in the job workspace (`~/.subfleet/worktrees/20260930-071142-pb-judge-indep/`). The job rules forbid writing under `~/.subfleet-scratch/pb-judge-isolation-indep`, so it sits at the same relative path in the workspace, committed at `4993247`. Subfleet keeps it under `refs/subfleet-salvage/` in that repo. The helper scripts are beside it: `transcripts.py`, `build_index.py`, `audit_indep.py`, `finalize.py` and `crosscheck_walk.py`. So are `verdicts_indep_details.json` (every tool call, sidecar and prompt check per row) and `summary_table.md`. I did not read the other agent's audit directory, and nothing in either audit tree or the repo was modified.
+
+## How verdicts were bound
+- **Codex (611):** the case's `codex.log` final message after `tokens used` equals `verdict.json` as parsed JSON.
+- **Claude (724):** a `StructuredOutput` tool_use input equals `verdict.json` as parsed JSON. It was looked up in an index of 1,534 such calls across 1,807 transcripts. Each verdict matched exactly one transcript, not counting the Logpile copies, which agree in all 186 run_audit_claude.sh sessions they cover.
+- **Main session (1):** a Bash heredoc in the main session whose JSON equals the verdict.
+- **Cross-checks:**
+ - A second method walked every JSON row of each Claude transcript; it agreed with the tool-call lists for all 724.
+ - The 184 unified `claude.json` envelopes agree on both session id and answer.
+ - Sidecar timestamps fall 0.1–2.1 s after each CLI transcript ends.
+ - A grep of every codex log for any command, tool or search trace found nothing.
+- **Independent review:** a separate Opus reviewer re-checked all 1,333 `affected=no` rows. It refuted no classification. I verified its two corrections to my notes and applied them.
+
+## Counts by tree and wave
+
+| tree | wave | verdicts | bound | missing | affected | live | live and affected | live and missing |
+|---|---|---|---|---|---|---|---|---|
+| seed | codex | 303 | 300 | 3 | 0 | 303 | 0 | 3 |
+| seed | 2026-09-05 | 132 | 132 | 0 | 1 | 132 | 1 | 0 |
+| seed | 2026-09-22 | 17 | 17 | 0 | 0 | 17 | 0 | 0 |
+| seed | 2026-09-29 | 222 | 222 | 0 | 0 | 222 | 0 | 0 |
+| unified | codex | 314 | 311 | 3 | 0 | 303 | 0 | 3 |
+| unified | 2026-09-05 | 183 | 183 | 0 | 1 | 132 | 1 | 0 |
+| unified | 2026-09-22 | 171 | 171 | 0 | 1 | 17 | 0 | 0 |
+
+What the judges did, by wave:
+- **Codex:** no `exec` block and no other tool trace in any of the 611 bound logs.
+- **2026-09-05 CLI judges:** 314 of 315 made no call besides the answer. Some of these (51 verdict rows) include one earlier `StructuredOutput` that the schema rejected, followed by a valid retry. I list those retries but don't count them as other tools.
+- **2026-09-22 and 2026-09-29 Workflow judges:** all 405 made exactly one call, a Read of their own case `prompt.md`.
+- **Later CLI judges (2026-09-22/24/29):** the three sessions made no tool calls.
+
+## Affected verdicts
+1. **`us__scenario_086__federal_refundable_credits`, seed and unified: byte-identical and live.**
+ - **Judge:** `claude -p` session `aed1cb53` (2026-09-05, `~/.claude/projects/-Users-maxghenis-PolicyEngine-policybench-wt-newmodels/aed1cb53-….jsonl`).
+ - **Judge's own calls:** it ran the Workflow tool (`wf_3ac730e3-7e7`, "verify-actc-diagnosis", 4 agents), then `ToolSearch select:TaskOutput`, then `TaskOutput`. It made 35 calls besides its answer.
+ - **Delegates' calls, all rooted in `~/PolicyEngine/policybench-wt/newmodels`:**
+ - About 25 Grep calls, for patterns such as `scenario_086`, `^scenario_086`, `12824|12,824`, `eitc`, `refundable_ctc|ctc_refundable|additional child tax`.
+ - 4 Reads: `us_case_reference_explanations.csv` line 50, `paper/snapshot/20260501/us_scenarios.csv` lines 1 and 72, and `runs/…/reference_outputs.csv`.
+ - 2 Globs.
+ - `ToolSearch select:Bash`, which found nothing.
+ - **What leaked:** Grep output put prior-audit text for this case in front of the delegates: `us_audit_row_annotations.csv` rows 5559 and 5581, plus `us_case_notes.csv`. The `TaskOutput` text the judge read back cites row 5559 and PolicyEngine's trace.
+ - **Why it could:** the runner's `--disallowedTools` blocked Bash, Edit, Write, NotebookEdit, WebFetch, WebSearch and Agent. It never blocked Read, Grep, Glob, Workflow, ToolSearch or TaskOutput.
+2. **`us__scenario_020__federal_income_tax_before_refundable_credits`, unified: not live.** The seed holds a different verdict for this case, from a 2026-09-29 Workflow judge that read only its prompt.
+ - **Judge:** the orchestrating main session `3dd3d124` wrote the verdict itself with a Bash heredoc (2026-09-23 01:36:36Z).
+ - **What it did in the 8-call judging window:**
+ - read its prompt with `sed` and `awk`;
+ - ran PolicyEngine on the case with `triage/pe_case.py scenario_020 … --calc …`;
+ - rewrote the case's reference explanation in two CSVs;
+ - read the previous verdict from `adds202609/verdicts-board42-b.json`, a call it labelled "Read the previous 020 verdict to adapt";
+ - wrote the verdict and validated it.
+ - **Earlier in the same context:** 29 more calls about this case, including regenerating references and two aborted judge lanes.
+
+## Missing transcripts
+The same three cases are missing in both trees, and all six verdicts are live: `us__scenario_014__federal_refundable_credits`, `us__scenario_015__federal_refundable_credits` and `us__scenario_015__head_medicaid_eligible`.
+- **What happened:** at 2026-08-18 01:25:58Z, session `3c78d187` (line 19542) ran `pkill -f run_audit_codex`, killing in-flight re-judges that had already overwritten these three `codex.log` files. At 01:27:48Z (line 19580) it restored 381 `verdict.json` files from Time Machine snapshot `2026-08-17-194721`.
+- **Why they can't be bound:** the published verdicts' own logs existed only in that snapshot. The codex runs were `--ephemeral`, so no rollouts were kept.
+- **Where I looked, with no match:** every `codex.log` copy under the PolicyBench results trees, the Aug 17–18 lane rollouts, and Logpile's codex copies. The only local snapshot left is from 2026-09-30, and `/Volumes/TimeMachine` returns "Operation not permitted" to this session.
+- **Possible recovery:** an external Time Machine backup may still hold the original logs. Checking it would need access this session didn't have.
+
+## Anomalies
+- **Stale codex sidecars:** 469 codex sidecars (233 seed, 236 unified) give the 01:27:48Z restore time as `judged_at_utc`, not the judging time. For the three missing cases, `backfilled_from: codex.log` and the reported model point at the killed re-run.
+- **Stray temp files:** three `verdict.json.tmp` files in unified hold the killed re-runs' answers.
+- **Codex prompt drift:** 463 codex verdicts were judged on an older prompt. It lacks one line the published `prompt.md` now has: "- budget_exhausted_at_ceiling: …". Before comparing, I stripped the codex error and warning lines that `2>&1` interleaves into the log; otherwise the prompts are identical.
+- **Claude prompts match:** all 724 Claude judges saw text identical to the published prompt. 237 seed Workflow judges read it from another tree (adds0928-provisional 201, v2 13, final 7, unified 16), with identical content.
+- **Sidecar integrity:** all 1,342 `verdict_sha256` values match. All 221 `prompt_sha256` values and all agent and workflow ids match.
+- **Weak sidecar ids:** 184 Workflow sidecars from 2026-09-22/23 carry no workflow or agent id; 12 of them instead carry a workflow id as `session_id`, and their parent session `3c78d187` isn't named anywhere. I found all 184 agents by content.
+- **Context that reached judges without a tool call:** none of these mentions the case except one, and I did not mark any of them as affected.
+ - The workflow-authoring skill text was injected as a user turn into all 318 CLI sessions (319 rows). The one judge that delegated used the Workflow tool that text describes.
+ - The git status went into 32 CLI rows. For `scenario_045 snap` (live) it lists SNAP commits: "Exclude the SNAP child support defect (r33)" and "Add a note on the five SNAP BBCE households…".
+ - `~/PolicyEngine/CLAUDE.md` and the repo's `CLAUDE.md` were auto-loaded into 12 Workflow judges, 4 of them live. Neither file mentions the case, the audit or verdicts.
+ - The parent session's user request was relayed to Workflow judges. For 9 unified income-tax judges (not live), that request was about SNAP and BBCE.
+- **Isolation was by instruction only for Workflow judges:** the sampled `wf_d0fdd77d` judge had Bash, Edit, Write and Skill defined and didn't use them.
+
+DONE
\ No newline at end of file
diff --git a/docs/judge_isolation_2026-09-30/review_redteam.md b/docs/judge_isolation_2026-09-30/review_redteam.md
new file mode 100644
index 00000000..71371a06
--- /dev/null
+++ b/docs/judge_isolation_2026-09-30/review_redteam.md
@@ -0,0 +1,81 @@
+# Red-team of the PolicyBench judge-isolation audit
+
+I found no second live verdict that used tools. But the audit claims more than its evidence supports in several places. Two of the six conclusions are misstated, and one hides a real provenance gap. I modified no files; everything below comes from reads and greps.
+
+## Confirmed problems
+
+**1. The counts in conclusion 1 don't match the audit's own `verdicts.csv`.** *Changes 1.*
+- The file binds 611 Codex, 319 run_audit_claude.sh and 405 Workflow verdicts, not 611 / 315 / 390.
+- That totals 1,335 bound rows, plus 7 unbound, for 1,342 rows (matching `summary.json`).
+- The 4 extra run_audit_claude.sh verdicts are:
+ - `us__scenario_045__snap` (seed and unified, judged 2026-09-24; `verdicts.csv:272`, `:944`)
+ - `us__scenario_015__federal_income_tax_before_refundable_credits` (unified; `:770`)
+ - `us__scenario_082__payroll_tax` (seed, judged 2026-09-29; `:456`)
+
+**2. Conclusion 6 assigns waves to runners by date alone.** *Changes 6.*
+- `wave_of()` (`audit_judge_isolation.py:66-71`) puts those run_audit_claude.sh judges into the "2026-09-22" and "2026-09-29" waves, which conclusion 6 calls Workflow-subagent waves.
+- Two of them are in the release: 045 snap and 082 payroll.
+- They had tools available. `run_audit_claude.sh:130` blocks only Bash, Edit, Write, NotebookEdit, WebFetch, WebSearch and Agent, which leaves Read, Grep, Glob, Workflow, ToolSearch and TaskOutput.
+- They ran from git worktrees. 082 ran in the release worktree itself (transcript `9b0255fa…jsonl` shows `"gitBranch":"adds-0928-stage2"`).
+- Both made zero tool calls, so their verdicts stay clean.
+
+**3. The 2026-09-05 judges were pushed toward tool use, and the classifier can't see how.** *Doesn't change 2, but the context was not benign.*
+- Every judge transcript contains a hidden user message that loads the `workflow-authoring` skill. It says: "When a system-reminder confirms ultracode is on … author and run a workflow for every substantive task by default" (`-Users-maxghenis-PolicyEngine-policybench-wt-newmodels/795387a7…jsonl` lines 8-9). An `ultra_effort_enter` attachment comes with it. The same injection is in 082's transcript (`9b0255fa…jsonl` lines 7-11, 23).
+- `classify_claude` (lines 225-237) records only attachment events, so this never appears in `instructions_files` or `attachment_kinds`.
+- `judge_cwd_in_git_repo` is blank for all 315 of these verdicts. The events show `cwd` `policybench-wt/newmodels` and `"gitBranch":"add-new-models-2026-09"`, so they ran in a git worktree with Read, Grep, Glob and Workflow on. That is the mechanism behind 086.
+- I checked independently. Among all transcripts in that project, the only judge that called anything besides StructuredOutput is `aed1cb53` (086) and its 4 workflow agents. The other four sessions with tool calls (`5df551ff`, `bd624e7b`, `4ad7006d`, `461fa671`) are orchestrator sessions using Bash, and none of them appears in `verdicts.csv`.
+
+**4. Conclusion 3's "earlier answer" framing is unsupported.** *Changes 3; these three live verdicts have unknown provenance.*
+- The runner rewrites `codex.log` on every exec (`run_audit_codex.sh:86`). It only runs a case that has no valid verdict (line 70), and it writes the verdict and the log together (lines 87-91). So the runner cannot leave a verdict that differs from its own log.
+- `codex_run.log` (636 `[ok]` lines, "636/636 verdicts present") and `codex_run2.log` never list 014 or 015 `federal_refundable_credits`. Those verdicts existed before any logged run.
+- `015__head_medicaid_eligible` is `[ok]` in both runs (`codex_run.log:96`, `codex_run2.log:85`). Its `codex.log` is most likely run 2's, the latest, not an earlier answer. Something after run 2 replaced the verdict.
+- The verdict writes "Indiana’s" with a curly apostrophe; the log writes "Indiana's".
+- All three sidecars say `"backfilled_from": "codex.log"`. Their runner and model (`gpt-5.6-sol`) were assigned after the fact, from a log that does not hold the verdict.
+- No codex session store exists for those accounts (`~/.codex-3/sessions` and `~/.codex-4/sessions` are absent; the runner used `--ephemeral`).
+
+**5. All 303 Codex sidecars in the release are backfilled.** *Weakens 1 and 5.*
+- Each has `"backfilled_from": "codex.log"`. `judged_at_utc` is the backfill time, not the judging time: dozens share `2026-08-18T01:27:48.1…`. So the "2026-08-18 to 2026-09-02" date range is not evidence.
+- None records `prompt_sha256`, so the audit never checked that Codex verdicts were judged on the published prompt. The log echoes the prompt. I compared one by eye (`us__scenario_000__payroll_tax`), and it matched.
+
+**6. The Codex classifier can't detect MCP or web-search calls.** *Latent bug; 5 still holds on direct evidence.*
+- The catch-all regex `^([a-z_ ]+)$` (line 353) can't match lines with a colon, such as `mcp: codex_apps/github.create_pull_request started` or `web search: …`.
+- Codex 0.144.0 does print those lines (`~/m6-sol-lanes/sol-ce-purpose-prod-r1-a.out.err.log:21116-21129`, version on line 2; `remarr-r2.log:39886`).
+- I grepped every `codex.log` in both trees for `mcp:`, `web search:`, `apply patch`, `patch:`, `tool ` and a bare `exec`: zero hits. Every log has exactly three lone-word lines (`user`, `codex`, `tokens used`): 1,275 in 425 files (seed) and 1,464 in 488 files (unified).
+
+**7. 086's adjudication reads aren't counted as adjudication.** *Conclusion 2 names the files, but `summary.json` understates it.*
+- `path_class` flags only paths containing "adjudicat" or "decision" (lines 171-172). So the 086 row (`:475`) has `read_adjudication_records=0`.
+- Yet its delegates read `us_case_reference_explanations.csv`, and conclusion 2 says they also consumed `us_case_notes.csv`. That file holds earlier judges' case verdicts: its columns include `case_failure_sources`, `reference_suspect` and `case_annotation`.
+
+**8. The context claim in conclusion 6 isn't backed by captured content.** *Weakens 6.*
+- Twelve Workflow verdicts had `PolicyEngine/CLAUDE.md` and `policybench/CLAUDE.md` injected as nested memory (`verdicts.csv` rows 259, 542, 827, 830, 931, 1026, 1031, 1047, 1124, 1210, 1221, 1322).
+- `injected_instructions.json` holds neither file. Its 7 entries are 4 versions of the global CLAUDE.md, the global AGENTS.md and two MEMORY.md files.
+- I read the current versions of both: no case facts. The versions in effect at judging time were never captured.
+
+**9. Workflow judges read prompts from other trees.** *Residual risk; doesn't change any conclusion.*
+- Their Read targets are under `adds0928-provisional`, `adds0928-v2` or `unified_audit`, never the published `adds0928-v3`. `path_class` (line 168) counts any `/audit/cases//prompt.md` as the judge's own prompt.
+- For the 2026-09-29 wave, `write_verdicts.py:68` compared the prompt bytes only at write time. For the 2026-09-22 wave, `judge_stages.py` `stage_write` does no prompt check at all.
+- The audit could have compared the Read result stored in each transcript, but didn't. One spot check (`us__scenario_014__payroll_tax`) shows the same prompt hash in both trees today.
+
+**10. The git-repo flag is wrong for Workflow agents.** *Minor.*
+- They show `judge_cwd_in_git_repo=False` while running in git worktrees: row 259 (`opus55`, False) against row 770 (same directory, True). The agent transcripts record `"gitBranch":"HEAD"`.
+
+## Checked and found sound
+- **Sidecar hashes:** every sidecar hashes to its verdict. Where a prompt hash was recorded, none differs from the current `prompt.md` (tested on the first hex character, which catches 15 of 16 mismatches).
+- **Workflow binding:**
+ - Every `bound_agents_same_answer` is 1.
+ - Every agent id matches its transcript path, and the Workflow column matches the path.
+ - The one re-judge (`067__dependent1_medicare_eligible#r1`) is bound to the re-judge agent. Its extra instruction only names the hedge ("rationale: 'may be'").
+- **Live copy against the Logpile copy for 086:** both hold the same 4 tool calls (Workflow, ToolSearch, TaskOutput, StructuredOutput). Its 4 workflow agents are present.
+- **Tool-call shapes:** the classifier catches any content type ending in `tool_use` (server and MCP tools included). Any unknown tool name, including TaskOutput, Monitor and ToolSearch, marks the verdict affected.
+- **Workflow agent task text:** in the judge workflows, none contains adjudication, decisions, `reference_suspect`, `us_case_`, `annotations/`, `policyengine-us` or `verdict.json`. Other workflows in that session do contain such terms (e.g. `wf_7fdf90ed`, `wf_0d2f95b5`), but none is bound to a published verdict.
+- **Published `prompt.md` files (674):** "adjudicated" appears only in the shared boilerplate on line 3. Nothing else carries decisions, notes or rulings. The "AUTHORITATIVE ENGINE FACTS" sections are engine facts, not decisions. 182 prompts and 182 verdicts include `ox-alpha`.
+- **Injected global CLAUDE.md, AGENTS.md and MEMORY.md:** none mentions PolicyBench case content.
+- **Conclusion 4:** the main-session verdict is not in the release (row 784, `live_in_published_release=False`).
+- **Codex context:** there is no `AGENTS.md` in the repo, in `~/PolicyEngine`, or in `~/.codex-3`. Codex did load a skills list (a "Skill descriptions were shortened" warning appears in the logs), which I did not inspect.
+
+## Not established
+- Whether the Workflow judges saw the published prompt bytes (item 9).
+- What produced the three unbound verdicts (item 4).
+- The exact CLAUDE.md contents at judging time (item 8).
+
+I couldn't write the plan file or exit plan mode because those tools weren't available in this session.
\ No newline at end of file
diff --git a/docs/judge_isolation_2026-09-30/session_contexts.json b/docs/judge_isolation_2026-09-30/session_contexts.json
new file mode 100644
index 00000000..f081ec41
--- /dev/null
+++ b/docs/judge_isolation_2026-09-30/session_contexts.json
@@ -0,0 +1,2667 @@
+{
+ "78fe4bcaf299": {
+ "context": {},
+ "judges": [
+ [
+ "seed",
+ "us__scenario_000__federal_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_001__federal_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_003__federal_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_004__state_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_005__federal_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_005__payroll_tax",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_005__state_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_007__federal_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_007__state_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_007__state_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_008__child5_head_start_eligible",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_008__federal_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_008__payroll_tax",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_008__snap",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_008__state_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_008__state_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_009__federal_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_009__state_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_012__federal_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_012__free_school_meals_eligible",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_012__snap",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_012__state_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_013__head_medicaid_eligible",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_013__snap",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_013__state_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_014__federal_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_014__state_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_015__federal_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_015__payroll_tax",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_015__state_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_018__federal_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_018__state_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_020__federal_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_022__federal_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_022__payroll_tax",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_022__state_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_023__federal_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_023__head_medicaid_eligible",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_023__payroll_tax",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_023__snap",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_023__state_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_023__state_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_025__federal_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_025__state_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_026__child1_chip_eligible",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_026__child1_medicaid_eligible",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_026__child2_chip_eligible",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_026__child2_medicaid_eligible",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_026__child3_chip_eligible",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_026__child3_medicaid_eligible",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_026__federal_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_026__state_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_027__snap",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_027__spouse_medicaid_eligible",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_028__child1_chip_eligible",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_028__child2_chip_eligible",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_028__child3_chip_eligible",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_028__federal_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_028__payroll_tax",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_028__reduced_price_school_meals_eligible",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_028__state_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_029__state_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_030__snap",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_031__head_medicaid_eligible",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_032__federal_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_032__free_school_meals_eligible",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_032__head_medicaid_eligible",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_032__payroll_tax",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_032__reduced_price_school_meals_eligible",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_032__spouse_medicaid_eligible",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_032__state_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_033__federal_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_036__federal_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_036__state_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_037__federal_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_037__state_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_038__federal_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_038__snap",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_038__state_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_039__federal_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_039__head_medicare_eligible",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_039__state_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_042__federal_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_042__state_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_043__snap",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_043__state_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_044__state_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_045__federal_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_045__state_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_045__state_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_046__child1_chip_eligible",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_046__child2_chip_eligible",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_046__federal_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_046__federal_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_046__state_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_049__federal_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_049__state_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_051__federal_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_051__state_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_052__federal_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_053__federal_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_053__state_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_053__state_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_054__federal_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_054__snap",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_055__federal_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_056__snap",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_056__state_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_057__federal_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_057__head_medicare_eligible",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_057__snap",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_057__spouse_medicare_eligible",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_057__ssi",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_057__state_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_059__federal_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_062__federal_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_064__child1_chip_eligible",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_064__child1_medicaid_eligible",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_064__dependent1_medicaid_eligible",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_064__dependent2_chip_eligible",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_064__dependent2_medicaid_eligible",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_064__federal_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_064__ssi",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_064__state_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_066__state_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_067__dependent1_medicaid_eligible",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_067__dependent1_medicare_eligible",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_067__federal_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_067__ssi",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_067__state_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_068__federal_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_068__state_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_070__federal_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_070__state_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_071__state_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_072__snap",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_072__state_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_073__snap",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_074__head_medicare_eligible",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_075__federal_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_076__federal_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_076__state_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_076__state_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_077__federal_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_077__state_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_078__federal_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_078__state_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_079__head_medicare_eligible",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_079__snap",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_079__ssi",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_079__state_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_080__head_chip_eligible",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_080__snap",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_081__federal_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_081__payroll_tax",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_081__state_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_082__federal_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_082__state_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_082__state_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_083__snap",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_084__head_medicare_eligible",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_085__federal_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_085__state_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_086__federal_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_086__state_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_089__federal_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_090__snap",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_090__state_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_091__federal_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_091__state_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_092__state_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_093__federal_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_093__payroll_tax",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_093__state_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_095__state_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_099__federal_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_099__free_school_meals_eligible",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_099__payroll_tax",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_099__state_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_100__snap",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_100__state_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_100__tanf",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_101__federal_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_102__federal_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_102__head_medicare_eligible",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_102__spouse_medicare_eligible",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_108__federal_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_108__snap",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_108__state_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_109__federal_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_109__snap",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_110__federal_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_110__state_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_111__spouse_medicare_eligible",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_112__snap",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_114__federal_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_114__state_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_115__state_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_117__federal_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_117__federal_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_117__state_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_118__snap",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_118__ssi",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_118__state_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_119__child1_chip_eligible",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_119__child2_chip_eligible",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_119__federal_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_119__federal_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_119__state_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_119__state_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_120__federal_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_120__payroll_tax",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_120__state_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_121__head_medicare_eligible",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_121__snap",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_122__federal_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_122__state_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_122__state_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_123__federal_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_123__payroll_tax",
+ "2026-09-29",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_123__state_income_tax_before_refundable_credits",
+ "2026-09-29",
+ "True"
+ ]
+ ]
+ },
+ "7645978697b6": {
+ "context": {},
+ "judges": [
+ [
+ "seed",
+ "us__scenario_007__head_medicare_eligible",
+ "2026-09-22",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_014__payroll_tax",
+ "2026-09-22",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_038__state_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_043__payroll_tax",
+ "2026-09-22",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_044__federal_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_054__head_wic_eligible",
+ "2026-09-22",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_066__snap",
+ "2026-09-22",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_073__head_medicare_eligible",
+ "2026-09-22",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_075__head_medicare_eligible",
+ "2026-09-22",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_088__snap",
+ "2026-09-22",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_100__federal_refundable_credits",
+ "2026-09-22",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_104__state_refundable_credits",
+ "2026-09-22",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_107__federal_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_108__state_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_114__self_employment_tax",
+ "2026-09-22",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_123__child1_chip_eligible",
+ "2026-09-22",
+ "True"
+ ],
+ [
+ "unified",
+ "us__scenario_000__federal_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_003__federal_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_005__federal_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_005__payroll_tax",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_005__state_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_007__federal_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_007__head_medicare_eligible",
+ "2026-09-22",
+ "True"
+ ],
+ [
+ "unified",
+ "us__scenario_007__state_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_008__federal_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_008__payroll_tax",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_008__snap",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_008__state_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_008__state_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_012__snap",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_013__state_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_014__payroll_tax",
+ "2026-09-22",
+ "True"
+ ],
+ [
+ "unified",
+ "us__scenario_014__state_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_018__federal_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_018__state_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_022__federal_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_022__payroll_tax",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_022__state_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_023__federal_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_023__head_medicaid_eligible",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_023__payroll_tax",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_023__snap",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_023__state_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_023__state_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_025__state_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_026__child1_medicaid_eligible",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_026__child2_medicaid_eligible",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_026__child3_medicaid_eligible",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_026__federal_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_026__state_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_027__snap",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_028__child1_chip_eligible",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_028__child2_chip_eligible",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_028__child3_chip_eligible",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_028__federal_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_028__payroll_tax",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_028__reduced_price_school_meals_eligible",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_028__state_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_029__state_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_030__snap",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_031__head_medicaid_eligible",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_032__free_school_meals_eligible",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_032__payroll_tax",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_032__reduced_price_school_meals_eligible",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_032__spouse_medicaid_eligible",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_032__state_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_033__federal_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_036__state_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_038__federal_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_038__snap",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_038__state_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "True"
+ ],
+ [
+ "unified",
+ "us__scenario_038__state_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_039__federal_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_039__head_medicare_eligible",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_039__state_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_042__federal_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_042__state_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_043__payroll_tax",
+ "2026-09-22",
+ "True"
+ ],
+ [
+ "unified",
+ "us__scenario_043__snap",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_043__state_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_044__federal_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "True"
+ ],
+ [
+ "unified",
+ "us__scenario_045__state_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_045__state_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_046__state_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_049__federal_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_051__federal_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_051__state_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_052__federal_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_053__state_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_054__head_wic_eligible",
+ "2026-09-22",
+ "True"
+ ],
+ [
+ "unified",
+ "us__scenario_054__snap",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_055__federal_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_056__snap",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_056__state_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_057__snap",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_057__ssi",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_062__federal_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_064__child1_chip_eligible",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_064__dependent2_chip_eligible",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_064__federal_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_064__ssi",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_064__state_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_066__snap",
+ "2026-09-22",
+ "True"
+ ],
+ [
+ "unified",
+ "us__scenario_066__state_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_067__dependent1_medicaid_eligible",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_067__federal_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_067__ssi",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_067__state_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_068__state_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_070__federal_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_073__head_medicare_eligible",
+ "2026-09-22",
+ "True"
+ ],
+ [
+ "unified",
+ "us__scenario_073__snap",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_075__head_medicare_eligible",
+ "2026-09-22",
+ "True"
+ ],
+ [
+ "unified",
+ "us__scenario_076__federal_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_076__state_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_077__state_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_078__federal_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_078__state_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_079__head_medicare_eligible",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_079__snap",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_079__state_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_080__snap",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_081__federal_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_081__payroll_tax",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_081__state_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_082__federal_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_082__payroll_tax",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_082__state_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_082__state_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_083__snap",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_084__head_medicare_eligible",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_085__state_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_086__federal_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_086__state_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_088__snap",
+ "2026-09-22",
+ "True"
+ ],
+ [
+ "unified",
+ "us__scenario_091__federal_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_092__state_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_093__federal_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_093__state_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_095__state_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_099__federal_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_099__free_school_meals_eligible",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_099__state_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_100__federal_refundable_credits",
+ "2026-09-22",
+ "True"
+ ],
+ [
+ "unified",
+ "us__scenario_100__snap",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_100__state_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_100__tanf",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_101__federal_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_104__state_refundable_credits",
+ "2026-09-22",
+ "True"
+ ],
+ [
+ "unified",
+ "us__scenario_107__federal_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "True"
+ ],
+ [
+ "unified",
+ "us__scenario_108__snap",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_108__state_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "True"
+ ],
+ [
+ "unified",
+ "us__scenario_108__state_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_109__federal_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_109__snap",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_110__federal_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_110__state_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_112__snap",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_114__federal_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_114__self_employment_tax",
+ "2026-09-22",
+ "True"
+ ],
+ [
+ "unified",
+ "us__scenario_114__state_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_115__state_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_117__federal_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_117__state_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_118__snap",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_118__ssi",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_118__state_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_119__child1_chip_eligible",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_119__child2_chip_eligible",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_119__federal_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_119__state_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_119__state_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_120__federal_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_120__payroll_tax",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_120__state_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_121__head_medicare_eligible",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_121__snap",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_122__federal_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_122__state_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_123__child1_chip_eligible",
+ "2026-09-22",
+ "True"
+ ],
+ [
+ "unified",
+ "us__scenario_123__federal_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_123__payroll_tax",
+ "2026-09-22",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_123__state_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ]
+ ]
+ },
+ "34d824030817": {
+ "context": {
+ "gitStatus": "This is the git status at the start of the conversation. Note that this status is a snapshot in time, and will not update during the conversation.\n\nCurrent branch: add-new-models-2026-09\n\nMain branch (you will usually use this for PRs): main\n\nGit user: Max Ghenis\n\nStatus:\nM app/src/modelMeta.ts\n M policybench/config.py\n M policybench/eval_no_tools.py\n M policybench/model_cards.py\n?? out.md\n?? scripts/run_audit_claude.sh\n\nRecent commits:\n5dfe535 Render the model-runs caption from frozen serving evidence\nae9dbaf Remove lane progress files from the branch\n8f928a8 Address peer review round 5: fail-closed provenance, run-state serving evidence, version-scoped app copy\n8d6b318 Regenerate serving snapshot and paper artifacts\n4a3db0e Implement peer review fixes before refreeze"
+ },
+ "judges": [
+ [
+ "seed",
+ "us__scenario_008__child3_chip_eligible",
+ "2026-09-05",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_008__spouse_medicaid_eligible",
+ "2026-09-05",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_008__spouse_medicare_eligible",
+ "2026-09-05",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_029__federal_income_tax_before_refundable_credits",
+ "2026-09-05",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_029__head_medicaid_eligible",
+ "2026-09-05",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_029__payroll_tax",
+ "2026-09-05",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_048__state_income_tax_before_refundable_credits",
+ "2026-09-05",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_049__payroll_tax",
+ "2026-09-05",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_067__payroll_tax",
+ "2026-09-05",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_068__payroll_tax",
+ "2026-09-05",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_079__spouse_medicaid_eligible",
+ "2026-09-05",
+ "True"
+ ],
+ [
+ "seed",
+ "us__scenario_084__snap",
+ "2026-09-05",
+ "True"
+ ],
+ [
+ "unified",
+ "us__scenario_008__child3_chip_eligible",
+ "2026-09-05",
+ "True"
+ ],
+ [
+ "unified",
+ "us__scenario_008__spouse_medicaid_eligible",
+ "2026-09-05",
+ "True"
+ ],
+ [
+ "unified",
+ "us__scenario_008__spouse_medicare_eligible",
+ "2026-09-05",
+ "True"
+ ],
+ [
+ "unified",
+ "us__scenario_029__federal_income_tax_before_refundable_credits",
+ "2026-09-05",
+ "True"
+ ],
+ [
+ "unified",
+ "us__scenario_029__head_medicaid_eligible",
+ "2026-09-05",
+ "True"
+ ],
+ [
+ "unified",
+ "us__scenario_029__payroll_tax",
+ "2026-09-05",
+ "True"
+ ],
+ [
+ "unified",
+ "us__scenario_045__federal_income_tax_before_refundable_credits",
+ "2026-09-05",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_048__state_income_tax_before_refundable_credits",
+ "2026-09-05",
+ "True"
+ ],
+ [
+ "unified",
+ "us__scenario_049__payroll_tax",
+ "2026-09-05",
+ "True"
+ ],
+ [
+ "unified",
+ "us__scenario_059__federal_income_tax_before_refundable_credits",
+ "2026-09-05",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_067__dependent1_medicare_eligible",
+ "2026-09-05",
+ "False"
+ ],
+ [
+ "unified",
+ "us__scenario_067__payroll_tax",
+ "2026-09-05",
+ "True"
+ ],
+ [
+ "unified",
+ "us__scenario_068__payroll_tax",
+ "2026-09-05",
+ "True"
+ ],
+ [
+ "unified",
+ "us__scenario_079__spouse_medicaid_eligible",
+ "2026-09-05",
+ "True"
+ ],
+ [
+ "unified",
+ "us__scenario_084__snap",
+ "2026-09-05",
+ "True"
+ ],
+ [
+ "unified",
+ "us__scenario_085__federal_income_tax_before_refundable_credits",
+ "2026-09-05",
+ "False"
+ ]
+ ]
+ },
+ "b828093347b0": {
+ "context": {
+ "gitStatus": "This is the git status at the start of the conversation. Note that this status is a snapshot in time, and will not update during the conversation.\n\nCurrent branch: release-20260922c-child-support-fixed\n\nMain branch (you will usually use this for PRs): main\n\nGit user: Max Ghenis\n\nStatus:\nM annotations/us_full_run_20260612_policyengine_4_16_1_populace/us_case_reference_explanations.csv\n M reference_audit/2026-09-22/README.md\n M reference_audit/2026-09-22/fixes/c13v3_upstream_plus_r33.py\n M reference_audit/2026-09-22/fixes/r33_snap_child_support_treatment.py\n M reference_audit/2026-09-22/root_causes.json\n M reference_audit/2026-09-22/scripts/build_records.py\n M reference_audit/2026-09-22/scripts/make_on_convention.py\n M reference_audit/2026-09-22/scripts/package_audit.py\n M reference_audit/2026-09-22/scripts/regen_references.py\n M reference_audit/2026-09-22/scripts/run_one.sh\n\nRecent commits:\nba886b4 Exclude the SNAP child support defect (r33) in release 20260922b (#177)\na637921 Add a note on the five SNAP BBCE households for the September 22 board (#175)\n56844e2 Add Claude Opus 5.5, GPT-6 Sol and GPT-6 Luna; publish the September 22 reference audit (#174)\nc7aaffe Chart every program's exact-match rate on the model page (#171)\n80113a3 Mark the serving-sensitivity re-runs on the Claude rows instead of a banner (#167)"
+ },
+ "judges": [
+ [
+ "seed",
+ "us__scenario_045__snap",
+ "2026-09-22",
+ "True"
+ ],
+ [
+ "unified",
+ "us__scenario_045__snap",
+ "2026-09-22",
+ "True"
+ ]
+ ]
+ },
+ "9670b577b0f9": {
+ "context": {
+ "gitStatus": "This is the git status at the start of the conversation. Note that this status is a snapshot in time, and will not update during the conversation.\n\nCurrent branch: adds-0928-stage2\n\nMain branch (you will usually use this for PRs): main\n\nGit user: Max Ghenis\n\nStatus:\n(clean)\n\nRecent commits:\n3def82d9 Derive the stage-2 exclusion count from the reference revision\nf4859663 Rewrite the derivation narratives of the changed references\nec22fc2d Regenerate the US references on policyengine-us 2.15.17\n81e74401 Let the stage-2 driver release a reviewed reference revision\nbe90e543 Pin policyengine.py 6.1.2 and policyengine-us 2.15.17"
+ },
+ "judges": [
+ [
+ "seed",
+ "us__scenario_082__payroll_tax",
+ "2026-09-29",
+ "True"
+ ]
+ ]
+ },
+ "514951795453": {
+ "context": {
+ "gitStatus": "This is the git status at the start of the conversation. Note that this status is a snapshot in time, and will not update during the conversation.\n\nCurrent branch: add-opus-5.5\n\nMain branch (you will usually use this for PRs): main\n\nGit user: Max Ghenis\n\nStatus:\nM scripts/freeze_snapshot.py\n\nRecent commits:\n80a718d Prepare the 40-model board copy, note, and freezer paths for Opus 5.5\n87707b1 Add the Claude Opus 5.5 model card and metadata\nc7aaffe Chart every program's exact-match rate on the model page (#171)\n80113a3 Mark the serving-sensitivity re-runs on the Claude rows instead of a banner (#167)\n269c22f Name the row GLM-5.3-Flash (preview) and footnote what it was queried as (#170)"
+ },
+ "judges": [
+ [
+ "unified",
+ "us__scenario_015__federal_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ]
+ ]
+ },
+ "1115b76893c0": {
+ "context": {},
+ "judges": [
+ [
+ "unified",
+ "us__scenario_091__state_income_tax_before_refundable_credits",
+ "2026-09-22",
+ "False"
+ ]
+ ]
+ }
+}
\ No newline at end of file
diff --git a/docs/judge_isolation_2026-09-30/tool_calls.csv b/docs/judge_isolation_2026-09-30/tool_calls.csv
new file mode 100644
index 00000000..aaf0be24
--- /dev/null
+++ b/docs/judge_isolation_2026-09-30/tool_calls.csv
@@ -0,0 +1,468 @@
+tree,case_id,wave,tool,category,target,path_class,result_is_error,result_preview
+seed,us__scenario_000__federal_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_000__federal_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_001__federal_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_001__federal_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_003__federal_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_003__federal_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_004__state_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_004__state_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_005__federal_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_005__federal_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_005__payroll_tax,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_005__payroll_tax/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_005__state_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_005__state_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_007__federal_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_007__federal_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_007__head_medicare_eligible,2026-09-22,Read,read,~/PolicyEngine/policybench/results/local/unified_audit/audit/cases/us__scenario_007__head_medicare_eligible/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_007__state_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_007__state_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_007__state_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_007__state_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_008__child5_head_start_eligible,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_008__child5_head_start_eligible/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_008__federal_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_008__federal_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_008__payroll_tax,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-v2/audit/cases/us__scenario_008__payroll_tax/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_008__snap,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_008__snap/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_008__state_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_008__state_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_008__state_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-v2/audit/cases/us__scenario_008__state_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_009__federal_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_009__federal_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_009__state_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_009__state_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_012__federal_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_012__federal_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_012__free_school_meals_eligible,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_012__free_school_meals_eligible/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_012__snap,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_012__snap/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_012__state_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_012__state_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_013__head_medicaid_eligible,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_013__head_medicaid_eligible/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_013__snap,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-v2/audit/cases/us__scenario_013__snap/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_013__state_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_013__state_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_014__federal_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_014__federal_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_014__payroll_tax,2026-09-22,Read,read,~/PolicyEngine/policybench/results/local/unified_audit/audit/cases/us__scenario_014__payroll_tax/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_014__state_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_014__state_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_015__federal_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_015__federal_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_015__payroll_tax,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_015__payroll_tax/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_015__state_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_015__state_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_018__federal_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_018__federal_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_018__state_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_018__state_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_020__federal_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_020__federal_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_022__federal_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_022__federal_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_022__payroll_tax,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_022__payroll_tax/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_022__state_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_022__state_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_023__federal_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_023__federal_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_023__head_medicaid_eligible,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_023__head_medicaid_eligible/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_023__payroll_tax,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_023__payroll_tax/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_023__snap,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_023__snap/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_023__state_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_023__state_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_023__state_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_023__state_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_025__federal_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_025__federal_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_025__state_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_025__state_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_026__child1_chip_eligible,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_026__child1_chip_eligible/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_026__child1_medicaid_eligible,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_026__child1_medicaid_eligible/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_026__child2_chip_eligible,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_026__child2_chip_eligible/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_026__child2_medicaid_eligible,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_026__child2_medicaid_eligible/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_026__child3_chip_eligible,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_026__child3_chip_eligible/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_026__child3_medicaid_eligible,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_026__child3_medicaid_eligible/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_026__federal_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_026__federal_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_026__state_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_026__state_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_027__snap,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_027__snap/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_027__spouse_medicaid_eligible,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_027__spouse_medicaid_eligible/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_028__child1_chip_eligible,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_028__child1_chip_eligible/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_028__child2_chip_eligible,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_028__child2_chip_eligible/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_028__child3_chip_eligible,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_028__child3_chip_eligible/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_028__federal_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_028__federal_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_028__payroll_tax,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_028__payroll_tax/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_028__reduced_price_school_meals_eligible,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-v2/audit/cases/us__scenario_028__reduced_price_school_meals_eligible/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_028__state_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_028__state_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_029__state_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_029__state_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_030__snap,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_030__snap/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_031__head_medicaid_eligible,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_031__head_medicaid_eligible/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_032__federal_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_032__federal_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_032__free_school_meals_eligible,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_032__free_school_meals_eligible/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_032__head_medicaid_eligible,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_032__head_medicaid_eligible/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_032__payroll_tax,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_032__payroll_tax/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_032__reduced_price_school_meals_eligible,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_032__reduced_price_school_meals_eligible/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_032__spouse_medicaid_eligible,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_032__spouse_medicaid_eligible/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_032__state_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_032__state_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_033__federal_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-v2/audit/cases/us__scenario_033__federal_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_036__federal_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_036__federal_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_036__state_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_036__state_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_037__federal_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_037__federal_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_037__state_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_037__state_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_038__federal_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_038__federal_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_038__snap,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_038__snap/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_038__state_income_tax_before_refundable_credits,2026-09-22,Read,read,~/PolicyEngine/policybench/results/local/unified_audit/audit/cases/us__scenario_038__state_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_038__state_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_038__state_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_039__federal_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_039__federal_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_039__head_medicare_eligible,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_039__head_medicare_eligible/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_039__state_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_039__state_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_042__federal_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_042__federal_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_042__state_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_042__state_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_043__payroll_tax,2026-09-22,Read,read,~/PolicyEngine/policybench/results/local/unified_audit/audit/cases/us__scenario_043__payroll_tax/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_043__snap,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_043__snap/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_043__state_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_043__state_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_044__federal_income_tax_before_refundable_credits,2026-09-22,Read,read,~/PolicyEngine/policybench/results/local/unified_audit/audit/cases/us__scenario_044__federal_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_044__state_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_044__state_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_045__federal_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_045__federal_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_045__state_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_045__state_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_045__state_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_045__state_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_046__child1_chip_eligible,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_046__child1_chip_eligible/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_046__child2_chip_eligible,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_046__child2_chip_eligible/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_046__federal_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_046__federal_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_046__federal_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_046__federal_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_046__state_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_046__state_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_049__federal_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_049__federal_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_049__state_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_049__state_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_051__federal_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_051__federal_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_051__state_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_051__state_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_052__federal_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_052__federal_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_053__federal_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_053__federal_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_053__state_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_053__state_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_053__state_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_053__state_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_054__federal_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_054__federal_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_054__head_wic_eligible,2026-09-22,Read,read,~/PolicyEngine/policybench/results/local/unified_audit/audit/cases/us__scenario_054__head_wic_eligible/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_054__snap,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_054__snap/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_055__federal_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_055__federal_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_056__snap,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_056__snap/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_056__state_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_056__state_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_057__federal_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_057__federal_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_057__head_medicare_eligible,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_057__head_medicare_eligible/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_057__snap,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_057__snap/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_057__spouse_medicare_eligible,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_057__spouse_medicare_eligible/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_057__ssi,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_057__ssi/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_057__state_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_057__state_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_059__federal_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_059__federal_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_062__federal_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_062__federal_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_064__child1_chip_eligible,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_064__child1_chip_eligible/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_064__child1_medicaid_eligible,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_064__child1_medicaid_eligible/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_064__dependent1_medicaid_eligible,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_064__dependent1_medicaid_eligible/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_064__dependent2_chip_eligible,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-v2/audit/cases/us__scenario_064__dependent2_chip_eligible/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_064__dependent2_medicaid_eligible,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_064__dependent2_medicaid_eligible/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_064__federal_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_064__federal_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_064__ssi,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_064__ssi/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_064__state_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_064__state_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_066__snap,2026-09-22,Read,read,~/PolicyEngine/policybench/results/local/unified_audit/audit/cases/us__scenario_066__snap/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_066__state_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_066__state_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_067__dependent1_medicaid_eligible,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_067__dependent1_medicaid_eligible/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_067__dependent1_medicare_eligible,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_067__dependent1_medicare_eligible/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_067__federal_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_067__federal_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_067__ssi,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_067__ssi/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_067__state_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_067__state_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_068__federal_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_068__federal_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_068__state_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_068__state_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_070__federal_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_070__federal_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_070__state_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_070__state_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_071__state_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_071__state_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_072__snap,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_072__snap/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_072__state_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_072__state_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_073__head_medicare_eligible,2026-09-22,Read,read,~/PolicyEngine/policybench/results/local/unified_audit/audit/cases/us__scenario_073__head_medicare_eligible/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_073__snap,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_073__snap/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_074__head_medicare_eligible,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_074__head_medicare_eligible/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_075__federal_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_075__federal_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_075__head_medicare_eligible,2026-09-22,Read,read,~/PolicyEngine/policybench/results/local/unified_audit/audit/cases/us__scenario_075__head_medicare_eligible/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_076__federal_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_076__federal_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_076__state_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_076__state_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_076__state_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_076__state_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_077__federal_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_077__federal_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_077__state_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_077__state_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_078__federal_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-v2/audit/cases/us__scenario_078__federal_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_078__state_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-v2/audit/cases/us__scenario_078__state_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_079__head_medicare_eligible,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_079__head_medicare_eligible/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_079__snap,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_079__snap/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_079__ssi,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_079__ssi/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_079__state_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_079__state_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_080__head_chip_eligible,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_080__head_chip_eligible/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_080__snap,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_080__snap/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_081__federal_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_081__federal_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_081__payroll_tax,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_081__payroll_tax/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_081__state_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_081__state_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_082__federal_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_082__federal_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_082__state_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_082__state_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_082__state_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-v2/audit/cases/us__scenario_082__state_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_083__snap,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_083__snap/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_084__head_medicare_eligible,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_084__head_medicare_eligible/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_085__federal_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_085__federal_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_085__state_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-v2/audit/cases/us__scenario_085__state_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_086__federal_income_tax_before_refundable_credits,2026-09-29,Read,read,~/PolicyEngine/policybench-wt/adds0928-stage2/results/local/adds0928-provisional/audit/cases/us__scenario_086__federal_income_tax_before_refundable_credits/prompt.md,own_prompt,False,1 You are diagnosing why AI models missed a PolicyEngine reference value on a US/UK tax-and-benefit estimation benchmark. The models answered from parametric knowledge with no tools; PolicyEngine's microsimulation is the reference. 2 3 The reference value and its derivation are generated directly f
+seed,us__scenario_086__federal_refundable_credits,2026-09-05,Workflow,other_tool,,,False,Workflow launched in background. Task ID: wl5w5c17g Summary: Adversarially verify the 2026 CTC/ACTC and EITC claims behind a $0 refundable-credits diagnosis Transcript dir: ~/.claude/projects/-Users-maxghenis-PolicyEngine-policybench-wt-newmodels/aed1cb53-45c4-40e5-be7b-fdc78f9f0d07/s
+seed,us__scenario_086__federal_refundable_credits,2026-09-05,ToolSearch,tool_search,select:TaskOutput,,False,
+seed,us__scenario_086__federal_refundable_credits,2026-09-05,TaskOutput,other_tool,,,False,"successwl5w5c17glocal_workflowcompleted