Skip to main content

Clergy Housing rules: resolution of the 2026-09-25 adversarial reviews

  • Editor: Claude Opus 5.5 (rules editor)
  • Date: 2026-09-25
  • Reviews resolved:
    • clergy-housing-2026-09-25-opus.md: 23 findings
    • clergy-housing-2026-09-25-fable.md: 19 findings
    • clergy-housing-2026-09-25-codex.md: 3 findings
  • Files changed:
    • sources/clergy-housing.yaml: 29 rules (23 computed, 6 refer)
    • sources/clergy-housing-test-cases.yaml: 45 cases (22 CA, 23 US; 4 refer, 5 invariant)
    • sources/clergy-housing-open-questions.md

Totals: 36 FIXED · 0 REJECTED · 9 REFER (45 findings).

Primary sources opened in this pass​

SourceURLWhat it established
CRA T1223 form pagehttps://www.canada.ca/en/revenue-agency/services/forms-publications/forms/t1223.htmlCurrent version is T1223 (25), updated 2026-01-20. Opus said (24); Fable's (25) is correct.
T1223 E (25) PDFhttps://www.canada.ca/content/dam/cra-arc/formspubs/pbg/t1223/t1223-25e.pdfText extracted in full. Part C(B) has 10 lines. The file also gives Notes 1–4, Part C(C), and the keep-not-send instruction.
ITA s.8https://laws-lois.justice.gc.ca/eng/acts/I-3.3/section-8.htmlFull text of 8(1)(c) and 8(10).
CRA payroll page on clergy residence (modified 2026-01-16)https://www.canada.ca/en/revenue-agency/services/tax/businesses/topics/payroll/benefits-allowances/boarding-lodging/housing-utilities/clergy-residence.htmlThe two payroll scenarios, T1213 and the CRA letter of authority, EI treatment, and box 14.
CRA line 23100 page (modified 2026-01-20)https://www.canada.ca/en/revenue-agency/services/tax/individuals/topics/about-your-tax-return/tax-return/completing-a-tax-return/deductions-credits-expenses/line-23100-clergy-residence-deduction.htmlEligibility summary; "Keep all your documents".
Revenu Québec TP-76-V product page (HTTP 200 with a browser UA)https://www.revenuquebec.ca/en/online-services/forms-and-publications/current-details/tp-76-v/"TP-76-V / 2016-10 version" is current; "(Line 207)".
TP-76-V (2016-10), English PDFhttps://www.revenuquebec.ca/documents/en/formulaires/tp/tp-76-v(2016-10).pdfText of the required-use condition, per-employer filing, and lines 1–13.
26 U.S.C. §107 and §1402https://www.law.cornell.edu/uscode/text/26/107 · https://www.law.cornell.edu/uscode/text/26/1402Verbatim text.
Treas. Reg. §1.107-1https://www.law.cornell.edu/cfr/text/26/1.107-1(a) the duties test; (b) the designation requirement; (c) the same-year rule, food and servants excluded, farm/business property excluded.
IRS Pub 517 (2025)https://www.irs.gov/publications/p517Smallest-of test, excess allowance (line 1h), utilities, retired ministers, "substantially all", allocation rule, and the Baker and Adams examples.
IRS Pub 1828 (Rev. 8-2015)https://www.irs.gov/pub/irs-pdf/p1828.pdfCorroborates the expense list, designation rules, and SECA treatment.
Gaylor v. Mnuchin, 7th Cir. slip opinionhttps://media.ca7.uscourts.gov/cgi-bin/rssExec.pl?Submit=Display&Path=Y2019/D03-15/C:18-1280:J:Brennan:aut:T:fnOp:N:2309033:S:0"We conclude § 107(2) is constitutional. The judgment of the district court is REVERSED." Decided March 15, 2019.
CourtListener recordhttps://www.courtlistener.com/opinion/4600327/annie-gaylor-v-steven-mnuchin/Reporter cite 919 F.3d 420, filed 2019-03-15, Nos. 18-1277 & 18-1280.
IT-141R (Consolidated)canada.ca404, as for both reviewers. No IT-141R wording is relied on any more.

Mechanical check: a script implements the revised formulas and recomputes all 64 numeric expectations in the test file. The result is 0 mismatches. A deliberately wrong expectation was flagged, so the checker is proven able to fail. The script asserts 0 ≤ deduction ≤ L1, deduction ≤ L6, and exclusion + excess = ALLOW on every computed case.

Resolutions: Opus review​

FindingResolutionWhat changed / whySource
O F-01 (crit) mixed-year baseFIXEDCA-06: mixed year is now computed, because the T1223 E (25) text is unambiguous. In Part (B), line 1 is full-year remuneration (Note 1: "remuneration for the year"). Line 3 is months in qualifying employment. Only line 6 is limited to the owned/rented period. CA-07: rewritten. CA-TC-12: intermediates corrected (L2 18,333.33, L4 10,000); total unchanged at 13,600. CA-TC-13: added. It expects 19,000.00 and has a regression guard against the old 16,166.67.T1223 E (25) lines 1, 3, 6 and Part C(C); ITA 8(1)(c)(iv)(A)(I)
O F-02 (crit) clergy coupleREFERCA-12 added with handling: refer. The calculator detects a spouse who is also clergy and claiming. It explains Notes 2 and 4 and computes nothing. CA-TC-16 added as a refer case.T1223 E (25) Notes 2 and 4; ITA 8(1)(c)(iv)(B)(II)
O F-03 (crit) QC required-useREFERAll of Québec is refer. CA-QC-01 quotes "you must be required to use the residence …" and the employer-does-not-sign rule. CA-TC-09: federal 12,000 is computed; the Québec amount is refer, and the refer reason names the required-use test.TP-76-V (2016-10) p.1 and Part 2
O F-04 (crit) principal residenceFIXEDCA-13 added as a computed gate: principal residence, ordinarily occupied, owned by the taxpayer or their spouse. CA-TC-17 tests a blocked cottage. CA-TC-15 tests a home owned by the spouse.ITA 8(1)(c)(iv)
O F-05 (crit) licensed/commissioned + dutiesFIXEDUS-07 now carries the "substantially all" test and the "ordinarily the duties of a minister" test as an eligibility gate. "Unsure" is sent to refer. US-TC-18 added. Note: the Pub 517 sentence Opus quoted ends "…to be treated as a minister for social security purposes". The housing-specific sentence also exists: "…aren't authorized to perform substantially all of the religious duties of an ordained minister … the housing exclusion doesn't apply to you". Reg. 1.107-1(a) also imports the §1.1402(c)-5 rules.Pub 517 (2025); Reg. 1.107-1(a)
O F-06 (maj) CPP reversed, EIFIXEDCA-11 rewritten. If the employer provides the home, the employee gives written notice. If the employee owns or rents, they file T1213 and T1223 with CRA, and the employer may reduce tax and CPP withholding only by the amount on CRA's letter of authority. No EI reduction; a cash allowance is EI-insurable; a non-cash benefit is subject to EI only if cash is also paid in the pay period.CRA payroll page, Step 4
O F-07 (maj) stale mirror, 11 linesFIXEDEvery CA rule is re-cited to canada.ca T1223 E (25). CA-05 is now L1–L10, and the redundant MIN(RENT, L9) is dropped. All user text says "line 10". Correction to the finding: the current form is (25), not (24).T1223 form page; T1223 E (25)
O F-08 (maj) excess vs designatedFIXEDUS-02/US-06: ALLOW = MIN(PAID, DESIGNATED); exclusion = MIN(ALLOW, USED, FRV); excess = ALLOW − exclusion. Pay above the designation is ordinary salary. US-TC-13 (paid < designated → excess 0) and US-TC-14 (paid > designated) added. The reasonable-salary term is a warning only (US-09).Pub 517 "Excess rental allowance"; Reg. 1.107-1(b)
O F-09 (maj) double-benefit wordingFIXEDUS-10 now covers only mortgage interest and real estate tax: itemizable, and only on Schedule A. The NESE sentence is deleted. US-12 (ministry-expense allocation; income tax only, not SE) added as refer. The SALT-cap caveat is not added because it was not verified from a primary source this session; it is listed as an open question.Pub 517 "Home ownership" and "Expenses Allocable to Tax-Free Income"; Pub 1828 p.23
O F-10 (maj) Gaylor cert claimFIXEDWikipedia and "140 S. Ct. 56" are removed. US-08 cites Gaylor v. Mnuchin, 919 F.3d 420 (7th Cir. 2019), quotes the holding verbatim from the court's slip opinion, and makes no claim about the Supreme Court.ca7 slip opinion; CourtListener
O F-11 (maj) QC line-11 capREFERCA-QC-02 text now matches the form: line 9 includes line 2; line 11 = greater of line 9 and line 10, with no cap; section 1.2.3 (L12 = L1 + L11, L13 = MIN(L2, L12)) is added as documentation. No Québec number is computed.TP-76-V (2016-10) lines 9–13
O F-12 (maj) QC per-employerREFERCA-QC-01 and the CA-TC-09 refer reason now say one TP-76-V per employer, enclosed with the return.TP-76-V (2016-10) p.1
O F-13 (maj) cost list over-claimedFIXEDUS-02 notes quote Reg. 1.107-1(c) and the Pub 1828 list verbatim. Property tax, insurance and furnishings are labelled "directly related (not itemized in source)". The US-TC-10 derivation is reworded.Reg. 1.107-1(c); Pub 1828 p.22
O F-14 (maj) QC currencyFIXEDRe-fetched today: 2016-10 is current, and the deduction goes on line 207. The "older numbering" claim is withdrawn. CA-QC confidence is high. Open question 3 is closed.RQ product page
O F-15 (min) negative line 8FIXEDL8 = MAX(0, L6 − L7); all inputs and lines are clamped; the final figure is ≥ 0. CA-TC-14 added.ITA 8(1)(c)(iv)(B) "the amount, if any, by which"
O F-16 (min) 8(10) vs keepFIXEDCA-09 quotes 8(10) ("filed with") alongside CRA's "Do not send … Keep it", and tells users to keep the signed T1223.ITA 8(10); T1223 E (25)
O F-17 (min) IT-141R "operative"FIXEDThe "operative" wording and all unverifiable IT-141R quotations are removed (404). The rules now say only that T1223 refers readers to the archived bulletin.T1223 E (25): "consolidated and archived Interpretation Bulletin IT-141R"
O F-18 (min) cash allowance in line 1FIXEDCA-08 confidence raised to high: a cash housing allowance is box 14 employment income and is in line 1. Open question 2 is closed.CRA payroll page table; T1223 Part C(A)
O F-19 (min) US-03 utilitiesFIXEDUS-03: utilities the church furnishes are part of the parsonage FRV. A designated utility allowance, where the minister pays the utilities, is excludable up to actual cost. US-TC-15 reproduces the IRS Rev. Baker example (31,000 / 60,000 / 91,000).Pub 517 "Fair rental value of parsonage"
O F-20 (min) retired ministersREFERUS-11 added with handling: refer. US-TC-17 added.Pub 517 "Retired ministers"; §1402(a)(8)
O F-21 (min) Pub 1828 oldFIXEDPub 517 (2025) is the primary citation for US-02, US-03 and US-05. Pub 1828 (Rev. 8-2015) is corroboration only.Pub 517 (2025)
O F-22 (min) roundingFIXEDGlobal convention: exact arithmetic, and only the final figure is rounded half-up to the cent. It is stated in both YAML headers.— (house convention)
O F-23 (min) Schedule AFIXEDUS-TC-10 splits mortgage principal from interest. The output says itemizable "only if you itemize"; principal is not itemizable.Pub 517 "Home ownership"

Resolutions: Fable review​

FindingResolutionWhat changed / whySource
F F-01 (crit) mixed-year baseFIXEDSame fix as O F-01 (CA-06, CA-07, CA-TC-12, CA-TC-13).T1223 E (25); ITA 8(1)(c)(iv)(A)(I)
F F-02 (crit) CPP reversed + T1213FIXEDSame fix as O F-06. The user-facing text says "line 10", because the payroll page's "line 11" is out of date.CRA payroll page
F F-03 (maj) mirror / 10 linesFIXEDRe-cited to T1223 E (25). The formula is L1–L10, and every CA derivation is renumbered. The CA-09 excerpt now uses the (25) wording.T1223 E (25)
F F-04 (maj) clergy coupleREFERSame as O F-02 (CA-12, CA-TC-16).T1223 E (25) Notes 2 and 4
F F-05 (maj) ITA 8(10)FIXEDCA-09 is now a statutory gate: no certified Part B means no deduction. CA-TC-18 added.ITA 8(10)
F F-06 (maj) fabricated cert citeFIXEDSame as O F-10. Fable's proposed sentence "the plaintiffs did not seek Supreme Court review" is not adopted, because it could not be verified from a primary source. The rules say nothing about the Supreme Court.ca7 slip opinion; CourtListener
F F-07 (maj) retired ministersREFERSame as O F-20 (US-11, US-TC-17).Pub 517
F F-08 (maj) "substantially all"FIXEDSame as O F-05 (US-07, US-TC-18).Pub 517; Reg. 1.107-1(a)
F F-09 (maj) same-year rule, farm/businessFIXEDThe US-02 definition of USED now includes the same-year rule and the farm/business exclusion, quoted verbatim. US-TC-19 (a roof paid next January does not count → excess 4,000) and US-TC-20 (farm portion → excess 2,000) added.Reg. 1.107-1(c)
F F-10 (maj) QC line 207 / per-employer / required useREFERThe unsupported "older numbering" claim is removed. Line 207 is confirmed current by the live RQ page. Per-employer filing and the required-use condition are stated in CA-QC-01. The Québec computation is refer. The human check Fable asked for was done by fetching the page (HTTP 200).RQ product page; TP-76-V (2016-10)
F F-11 (min) US-06 comment, line 1hFIXEDThe wrong comment is removed. Excess = ALLOW − exclusion. The reporting line is Form 1040/1040-SR line 1h, "Excess allowance".Pub 517
F F-12 (min) IT-141R unverifiedFIXEDAll IT-141R quotations are removed from CA-01, CA-02 and CA-08, because the bulletin is still 404. No rule depends on IT-141R.T1223 E (25) (reference to the archived bulletin only)
F F-13 (min) REM period-slicedFIXEDREM is redefined as "full-year remuneration from the qualifying office(s), all eligible employers" (CA-05, CA-08).T1223 E (25) Note 1
F F-14 (min) principal residenceFIXEDSame as O F-04 (CA-13, CA-TC-17).ITA 8(1)(c)(iv)
F F-15 (min) EI affirmativeFIXEDCA-11 states the EI treatment affirmatively. Open question 4 is closed.CRA payroll page
F F-16 (min) box 30 vs code 30FIXEDCA-04 says "box 30 of the T4 (code 30, Housing, board and lodging, in the Other information area)".T1223 E (25) Part C(A); CRA payroll page
F F-17 (min) quote Pub 517 on utilitiesFIXEDUS-03 quotes "If you pay for the utilities, you can exclude any allowance designated for utility costs, up to your actual cost."Pub 517
F F-18 (min) Pub 1828 listFIXEDThe US-02 notes cite the Pub 1828 list and Reg. 1.107-1(c) verbatim. Open question 7 is closed with a category list plus a "directly related" bucket.Pub 1828 p.22; Reg. 1.107-1(c)
F F-19 (min) US-TC-06 labelFIXEDRenamed to housing_spent_jan_to_mar_with_no_exclusion.—

Resolutions: Codex review​

FindingResolutionWhat changed / whySource
CX-01 (crit) negative deductionFIXEDClamps apply to every input, every line and the result. CA-14 and US-13 state the invariants. CA-TC-14, CA-TC-21, CA-TC-22, US-TC-21 and US-TC-22 are invariant or clamp cases.ITA 8(1)(c)(iv)(B) "the amount, if any"
CX-02 (maj) reasonable pay unaddressedREFERUS-09 is handling: refer. Every US result shows the reasonable-pay warning line (reasonable_pay_warning_shown: true on every computed US case). No computed cap.Pub 517 "Rental allowances" and "Fair rental value of parsonage"
CX-03 (maj) part-year overstatedFIXEDResolved from the T1223 E (25) text, as in O F-01. Line 1 = remuneration for the year; line 3 = months of qualifying status; only line 6 is period-limited.T1223 E (25); ITA 8(1)(c)(iv)(A)(I)

Things deliberately NOT adopted (not counted as REJECTED)​

  • Fable F-06, "FFRF did not seek Supreme Court review". Unverified, so the rules are silent on the Supreme Court.
  • Opus F-09, SALT-cap caveat. Not verified from a primary source this session. The calculator says "ask your tax adviser whether itemizing helps you". Listed in open questions.
  • Opus F-06, "report the reduced amount in box 26". The payroll page shows this only in a worked example, so the calculator does not state its own box-26 figure.

Final-pass resolutions (2026-09-25) — Codex final review (FAIL) + Fable final review (PASS)​

Two more independent adversarial passes ran after the resolutions above shipped: clergy-housing-2026-09-25-final-codex.md (verdict FAIL: F-01 critical, F-02 important, F-03 minor, F-04 info) and clergy-housing-2026-09-25-final-fable.md (verdict PASS, six minor wording nits N-1..N-6). The founder approved a resolution for the Codex findings on 2026-09-25 (recorded at the bottom of the Codex final review): the US reasonable-pay ceiling becomes a REQUIRED screening question, not a warning line. Both reviews' findings are dispositioned below.

FindingResolutionWhat changedSource
F-01 (critical) — US-02/03/06/09/13 never enforced the reasonable-pay ceiling; a numeric exclusion could exceed reasonable pay entirelyFIXEDUS-09 rewritten as a screening GATE: "Is your total pay (salary plus housing) reasonable for the work you do?" (Yes/No/Not sure). "No" or "Not sure" → handling: refer, no number computed. "Yes" → compute and label "Assuming your total pay is reasonable for your work (IRS Pub 517)". This is now the stated precondition for US-02/US-03/US-06.Founder decision 2026-09-25; Pub 517 "reasonable pay" has no numeric test, so a screening question is the only computable proxy
F-02 (important) — US-TC-22's invariant omitted reasonable pay, so no test exercised itFIXEDUS-TC-22 invariant extended: "NO number is ever displayed unless reasonable_pay_answer == 'yes'", and now references the two new refer cases (US-TC-24, US-TC-25) as the negative proof.US-13 (updated)
F-03 (minor) — US-13 / US-TC-18 lacked reasonable_pay_warning_shown: trueFIXEDAdded reasonable_pay_warning_shown: true to US-TC-18's expected output, with a derivation note that the US-07 minister-eligibility gate is independent of, and evaluated before, the US-09 reasonable-pay screen.US-07, US-09
F-04 (info) — no other arithmetic or invariant defect foundAcknowledged, no action.Clamps, month validation and monotonicity all still hold; nothing to change.—
N-1 (minor, apply before help text) — a CASH housing allowance is ALSO reported at T4 code 30, so code 30 is not proof of employer-provided housingFIXEDCA-08 notes: added "Code 30 - Housing or utilities" to the cash-allowance reporting list. CA-04 notes: added an explicit warning that a code-30 amount does not by itself mean the employer provided the residence, and that Case (A) vs. Case (B) must be gated on residence_type, never on the presence of a code-30 amount.CRA payroll page (clergy residence, modified 2026-01-16); T1223 E (25) Part C(A)
N-2 (minor) — CA-11 scenario 1 precondition was incomplete (written notice alone)FIXEDCA-11 rule text now requires BOTH: completing Parts A and C and asking the employer to complete Part B, AND giving written notice. Stated as a paraphrase in the rule/notes, not added to the verbatim excerpt, because the exact "completes Parts A and C" page wording was not re-quoted this pass — flagged for re-verification before it is ever cited as a direct quote.CRA payroll page (per Fable's finding); paraphrase, not re-verified verbatim this session
N-3 (minor) — CA-13 said "ONE principal residence" without addressing a move between two principal residencesFIXEDCA-13 rule text now says "ONE principal residence AT A TIME" and states the sequential-move case (enter the total for both periods on line 6) directly in the rule, not just in notes.ITA 8(1)(c)(iv); T1223 E (25)
N-4 (minor) — CA-14's invariant "For Case B: deduction ≤ L6" is wrong in a mixed year, where (A)+(B) can exceed L6FIXEDCA-14 rule and formula restated: the L6 bound applies to the Case (B) COMPONENT only; a mixed year's total legitimately exceeds L6 (CA-TC-13: 19,000 > 12,000), because (A) is capped by BOX30, not L6.CA-06; CA-TC-13
N-5 (minor) — US-09's handling: refer was really "always warn, never gate" (computed a number and warned, rather than referring)SUPERSEDED by the founder's F-01 resolution.US-09 is no longer "always warn" — it is now a genuine gate that computes nothing on "no"/"not sure". handling: refer is accurate again. No third handling value was needed.—
N-6 (minor) — CA-TC-19's message paraphrased the statute ("appointed to full-time administrative service") instead of using its exact, load-bearing wordingFIXEDCA-TC-19 message reworded to "engaged exclusively in full-time administrative service by appointment of a religious order or denomination", matching ITA 8(1)(c)(ii)(C) verbatim (the word "exclusively" is load-bearing).ITA 8(1)(c)(ii)(C)

Files touched this pass: sources/clergy-housing.yaml (US-09 rewritten, US-13 updated, CA-04/CA-08/CA-11/CA-13/CA-14 notes and rule text amended for N-1..N-4); sources/clergy-housing-test-cases.yaml (reasonable_pay_answer added to every US case that expects a number; US-TC-18 gets reasonable_pay_warning_shown: true; US-TC-22 invariant extended; two new refer cases US-TC-24 "no" and US-TC-25 "not sure"; CA-TC-19 message reworded for N-6). 29 rules, 47 test cases (was 45).

Codex re-check resolutions (2026-09-25) — clergy-housing-2026-09-25-recheck-codex.md​

A fourth adversarial pass re-checked the F-01/F-02/F-03 fixes above. Verdict: FAIL — F-02 and F-03 were confirmed resolved, but F-01 (the reasonable-pay gate) was not: the UI preselected "yes", so a visitor could see a dollar figure without ever answering the screening question, and the calculation module still let a non-computed result carry dollar fields. Nine findings (F-01 plus N-01..N-08) were fixed in churchwiseai-web (worktree cw-churchwise, branch feat/churchwise-site) and are dispositioned below; the app's rule/test-case files are synced copies of this repo's, re-synced via node scripts/churchwise-sync-rules.mjs after this session's sources/ edits.

FindingResolutionWhat changedSource
F-01 (critical) — Calculator.tsx:149, reasonable-pay preselected "yes"FIXEDreasonablePay state now starts null (no radio preselected). screen()'s US-09 branch and calculateUS()'s gate both treat null identically to 'no'/'not_sure' — blocking, no number — so an unanswered question can never render a result.Founder decision 2026-09-25 (US-09 REQUIRED gate)
N-01 (critical) — clergy-housing.ts ~440, minister-ineligible return preceded the US-09 gate and carried numeric fieldsFIXEDClergyHousingCanadaResult and ClergyHousingUsResult are now discriminated unions on resultKind: 'blocked'/'not_eligible' variants have NO deduction/exclusion/excessAllowance/etc. fields in the TYPE (not merely zeroed), so the compiler forbids reading a dollar amount off a non-computed result. The US-07 minister-eligibility check still runs before US-09 (unchanged order, matching the prior F-03/N-6 decision that US-07 is independent of and evaluated before US-09), but since neither non-computed branch can carry a dollar field any more, that ordering no longer matters for this defect class — every numeric-return path is still reachable only after reasonablePay === 'yes' has been confirmed.Codex re-check finding N-01
N-02 (major) — clergy-housing.ts ~565, screen()'s reasonablePay was optionalFIXEDScreeningAnswers split into CanadaScreeningAnswers | UsScreeningAnswers; on the US branch reasonablePay: 'yes' | 'no' | 'not_sure' | null is REQUIRED (not optional), and screen() treats anything other than 'yes' (including null) as a blocking US-09 refer — never a silent pass-through.Codex re-check finding N-02
N-03 (major) — Calculator.tsx ~653, the amount rendered regardless of resultKindFIXEDBoth the Canada and US result blocks now render the dollar amount only inside a resultKind === 'computed' (US: canShowUsAmount(usResult, reasonablePay)) branch; the non-computed branch renders only message.Codex re-check finding N-03
N-04 (major) — test-cases.yaml US-TC-18 expected exclusion: 0.00 without a "yes" answerFIXEDexclusion: 0.00 removed from US-TC-18's expected_output (a not_eligible case shows the reason, not a number). Same principle applied to the Canadian blocked/not-eligible cases: deduction_line_23100: 0.00 removed from CA-TC-17, CA-TC-18, and CA-TC-19.Codex re-check finding N-04
N-05 (major) — clergy-housing.test.ts ~84, the yaml-input helper defaulted a missing reasonable_pay_answer to "yes"FIXEDreasonablePayOf() now throws if the field is missing, instead of defaulting. Every US test case in the yaml that expects a computed number already carried reasonable_pay_answer explicitly (verified case by case) except US-TC-18, which — after the N-04 fix — no longer expects a number; its test mapping passes reasonablePay: null directly rather than through the helper, since the US-07 minister gate makes the answer moot.Codex re-check finding N-05
N-06 (minor) — US-03/US-06 notes and four test-case notes said the reasonable-pay limit was "shown as a warning only"FIXEDclergy-housing.yaml US-03 notes and US-06 rule text rewritten to describe the REQUIRED screening gate (founder decision 2026-09-25) rather than a warning-only line. clergy-housing-test-cases.yaml: the US section banner, US-TC-05's derivation, the reasonableness_warning_disproportionate_allowance edge-case tag (renamed reasonable_pay_gate_passed_disproportionate_allowance), and US-TC-11's derivation all rewritten to the same effect.Codex re-check finding N-06
N-07 (minor) — clergy-housing.ts ~219, Canadian Case A (employer-provided) skipped months validationFIXEDassertValidMonths() now runs immediately after the CA-09 employer-certificate gate, before the residenceType === 'employer_provided' branch — so a typo'd 13 or 6.5 months is rejected for Case A exactly as it already was for Case B/mixed, instead of silently passing through unused.Codex re-check finding N-07
N-08 (minor) — no test asserted the exact reasonablePayLabel textFIXEDNew describe('N-08 — reasonablePayLabel exact text on every computed US result') asserts US_REASONABLE_PAY_LABEL verbatim on a cash-allowance result (US-TC-01 inputs) and a parsonage result (US-TC-05 inputs).Codex re-check finding N-08
Bonus (found while fixing N-04) — CA_NOT_ELIGIBLE_MESSAGE in clergy-housing.ts still read "...who are appointed to full-time administrative service...", the wording the N-6 (prior pass) fix corrected in the yaml/test-case but never propagated to the actual product-code constantFIXEDCA_NOT_ELIGIBLE_MESSAGE reworded to match: "...who are engaged exclusively in full-time administrative service by appointment of a religious order or denomination...", matching ITA 8(1)(c)(ii)(C) and the CA-TC-19 expected message exactly. Caught because this pass added an exact-message assertion to CA-TC-19 (previously only deduction === 0 was checked); a stale message was invisible to a number-only test.ITA 8(1)(c)(ii)(C)

Also (not a numbered finding): added a pure UI guard, canShowUsAmount(result, answer), exported from clergy-housing.ts and used by Calculator.tsx to gate the US dollar amount — the repo has no component-test convention (no React Testing Library / jsdom setup for this app), so this pure helper is the testable seam; it has its own describe block in clergy-housing.test.ts.

Verification this pass: node --env-file=.env.local --import tsx --test src/lib/churchwise/__tests__/clergy-housing.test.ts src/test/unit/churchwise-host-mapping.test.ts — 73/73 pass (was 61 before the type/gate fixes were wired through the test file). Positive control for N-01: temporarily short-circuited the US-09 gate in calculateUS() (if (/* disabled */ false && input.reasonablePay !== 'yes')) — 5 tests failed across 3 suites (US-TC-24, US-TC-25, the new N-02 unanswered-null case, the canShowUsAmount blocked-result case, and the US-TC-22 invariant), confirming the gate is load-bearing for those tests; reverted, 73/73 green again. Typecheck: node node_modules/typescript/bin/tsc --noEmit -p tsconfig.json clean. Lint: eslint clean on clergy-housing.ts, clergy-housing.test.ts, Calculator.tsx. RULES_REVIEW_STATUS left at 'pending' — this pass fixed defects the accuracy gate exists to catch; it does not itself certify the rules for launch.