Repository navigation
Add a questions section below the results - #92
Merged
Merged
Conversation
Nine questions with answers whose figures come from production API runs (frontend/src/lib/faqNumbers.json, written by bun run faq-numbers) and whose rules tests/test_faq_numbers.py checks against the pinned models. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
At 375 px the link ran into the PolicyEngine badge. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Federal itemizing governs federal savings only; California itemizes on its own return, so a larger gift can still lower state tax (new ,000 case, against ). - Name the local income taxes the model covers, measure the 2/37 limit on income before itemized deductions, and bound Gift Aid relief to the higher-rate part of the gift, with Scottish relief from 21%. - Move the donor-advised fund caveat out of the rules GiveCalc applies. - The server keeps households, not only results, in memory; its log records each request's type without the household. - Share of income counts any losses; new-tab links say so. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…from The Scottish rule test now asks policyengine-uk which band it extends first, instead of assuming index 2. The California $8,000 case now checks that its extra saving over the $5,000 case fits within California's top rate on the extra $3,000, so it can be state tax alone. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
MaxGhenis
marked this pull request as ready for review
October 24, 2026 11:28
Contributor
Author
|
Merge audit: head 3483ab3, base 540ce9a. |
This branch was successfully deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds a "Questions" section below the results, written for general visitors, with a "Questions" link in the header. It has nine questions, each a native
<details>/<summary>disclosure inside a labelled region:The copy follows Max's d1646 ruling: general audiences first, with no "pledge" in the copy. It also follows the PolicyEngine message house: active voice, sentence case, no emoji, and boundaries stated flat.
Where the numbers come from
Results come from production API runs of the households in
frontend/src/lib/faqCases.ts. Each household is one the calculator's links open: a single 30-year-old with wages only.bun run faq-numberssends each request the way the calculator does and writesfrontend/src/lib/faqNumbers.json. The run was against production on 2026-10-22.Rules come from
frontend/src/lib/faqRules.json:tests/test_faq_numbers.pychecks each against the policyengine-us 2.49.2 and policyengine-uk 2.134.6 parameters.Each US example links to the calculator while the calculator offers its year. In the browser, the links give $780 and $78,522 in cost, and "Saved on the next $1: 35.0%" for Texas.
Invariants (tested)
tests/test_faq_numbers.py.toCalculateRequest/ukApiRequestbuilds for its case today;modal_app.pydeploys.exampleHrefis tested with explicit year lists.How the claims were verified
Every mechanism claim was traced to code in this session:
charitable_deduction_for_non_itemizers;deductions_if_not_itemizing.yaml;charitable_deductionfloor;itemized_taxable_income_deductions_reduction;tax_unit_itemizes;ca_deductions;gift_aid_grossed_up;calc_income_tax_with_gift_aid;adjusted_net_income, which feeds the personal allowance taper and HICBC.household_for_year;/api/savings;useBunching;householdIncome;ukApiRequest;syncUrl/isShareable.api/orgivecalc/writes files or databases, or logs request bodies;modal app logs givecalclines carry only method, path, status and timing;Checks
test_faq_numbers.py(12 passed at 3483ab3).next build: passes.<img>inHeader.tsx.~/reviews/givecalc-2026-10-16/review-pr92/.Follow-up
The older "How GiveCalc calculates" explainer in
Results.tsxoverlaps this section, and one of its lines is incomplete (state itemizing). It should be reconciled or removed separately.axiom: n/a: UI copy only
🤖 Generated with Claude Code