diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md index 3570b4744a9..34eddc4ca85 100644 --- a/.github/PULL_REQUEST_TEMPLATE.md +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -5,6 +5,7 @@ Fixes # ## Test plan - [ ] For policy changes: YAML tests whose expected values come from an external source (statute, official form or worksheet, official calculator); otherwise mark not applicable. +- [ ] If this PR takes a reading where a statute and a regulation, form, instructions, manual or agency practice disagree: a source-conflict register entry and a `# Source conflict :` marker (CONTRIBUTING.md#source-conflicts); otherwise mark not applicable. - [ ] `make format` - [ ] Changelog fragment in `changelog.d/` diff --git a/AGENTS.md b/AGENTS.md index 17e09636af7..969189e9768 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -6,6 +6,10 @@ Follow the repository guidance in `CLAUDE.md` for commands, style, changelog ent Follow [Test design and CI cost](CLAUDE.md#test-design-and-ci-cost) before adding or expanding tests. Use variable-named YAML tests for policy calculations; reserve Python tests for behavior YAML cannot exercise. Preserve Core/data compatibility and isolation coverage, avoid repeated full-model construction, and do not add CI runners or parallel heavy processes without explicit authorization. Document the purpose and measured cost of new simulation-heavy Python tests in the PR. +## Statutes against forms, instructions and agency practice + +When a statute conflicts with a regulation, form, instructions, manual or stated agency practice, follow the statute; forms and instructions fill gaps where the statute is silent. Register the choice and mark the code as [CONTRIBUTING.md](CONTRIBUTING.md#source-conflicts) describes. Never leave it only in a comment or a PR body. + ## Partner API contract tests Files under `policyengine_us/tests/policy/baseline/partners/**` are API partner contract tests. diff --git a/CLAUDE.md b/CLAUDE.md index 99e4bbe5c7a..39ea5e031d6 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -145,6 +145,7 @@ changelog.d/medicaid-ce-exclusions.md - Follow the exact order of operations specified in regulations - Verify behavior at edge cases (income just below/above thresholds, exact boundary conditions) - Consider real-world examples to validate implementation, including official calculators +- **Statute governs (ruled 2026-10-19).** Where a statute conflicts with a regulation, form, instructions, manual or stated agency practice, follow the statute; forms and instructions fill gaps where the statute is silent. Record every such choice in the shared source-conflict register (rulespec-us `known-source-conflicts.yaml`) and mark the deciding line `# Source conflict :`; see CONTRIBUTING.md#source-conflicts. `policyengine_us/tests/code_health/test_source_conflicts.py` enforces it. ## Parameter and variable references - One `reference` entry per source document; URLs that differ only by `#page=` are one source. Do not split a multi-page table into per-page entries. diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index b929048a687..69befde63f5 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -77,6 +77,30 @@ Every policy change here must also be correct in [rulespec-us](https://github.co - An `encoded-correct` claim names the module and a companion case in its `.test.yaml` that exercises the same situation as your YAML test. - Use `queued` only when the signed encoder is blocked; record the blocker in the issue. Each billed encoder run requires separate approval. Label `queued` issues `pe-parity`. Reuse your YAML test's external expected values as the companion tests; don't copy values computed by policyengine-us. +## Source conflicts + +When a statute conflicts with a regulation, form, instructions, manual or stated agency practice, PolicyEngine US's rule is to follow the statute. Forms and instructions fill gaps where the statute is silent. Every such conflict is recorded in the register that PolicyEngine shares with Axiom: `known-source-conflicts.yaml` in [rulespec-us](https://github.com/TheAxiomFoundation/rulespec-us). Its fields are defined in that repository's `tools/README.md`, under "Source-conflict register". A PR that takes such a reading, or finds one already in the code, does three things: + +1. **Add or update the entry in rulespec-us.** + - Give each source's text and its kind (statute, regulation, form, instructions, manual, guidance, agency practice, ...). + - Give the alternatives, each with an id, and the years. + - Add an implementation for each file here: `repo: PolicyEngine/policyengine-us`, a commit, the path, `follows` (what the code does), and `adopts` with a `basis` (the reading it intends, and why). + - Add the YAML test cases that pin each reading, by commit, path and case name. Pin only commits on `main`: the register records shipped code. An open PR goes under `proposed` until it merges. + - Describe correspondence with an agency in `unpublished_sources`. Never quote it or name the person. +2. **Mark the deciding line** in the variable or parameter file: `# Source conflict :`, for example `# Source conflict us-hi:claim-of-right-deduction-floor`. +3. **Refresh the pinned copy** once the entry is on rulespec-us `main`: `python scripts/update_source_conflicts.py --commit `. Delete the item from `source_conflicts/candidates.yaml` if it was there. + +`policyengine_us/tests/code_health/test_source_conflicts.py` checks structure, not whether the code follows a statute. It fails when: + +- the vendored register (`source_conflicts/known-source-conflicts.yaml`) differs from its pin (`source_conflicts/pin.yaml`: rulespec-us commit and sha256); +- a comment that starts like a marker is not exactly `# Source conflict :` alone on its own line. A comment starts like one when it has one or more `#`, then "source conflict" in any case, with any separator or none between the words (a space, hyphen, underscore, dash, dot or zero-width space), followed either by something shaped like a global id (after an optional colon, or after "conflicts") or by no word character and no colon. A file whose comments cannot be read (it doesn't tokenize or parse) fails too; +- a marker names an entry that isn't in the pinned copy, or whose entry doesn't list the file; +- an implementation the register marks `cites_entry: true` is missing here or has lost its marker; +- the count of comments that read like a conflict between sources ("the instructions say", "in practice", "discrepancy", "Source conflict:", ...) changes in a file without a marker. A new file or a higher count means register and mark the conflict, or reword the comment; a lower count means lower `KNOWN_UNMARKED`. A file with any valid marker is exempt, so the count doesn't prove every conflict in it is marked; +- a backlog item (`source_conflicts/candidates.yaml`) is malformed, already registered, cites a code path that isn't a file git tracks here (absolute, with `..`, or under a hidden directory such as `.github`), or contains a decision-queue id, a session id, a local path or an email address anywhere in the file: in its raw text, comments and keys included, and in every parsed value and key (escapes, `!!binary`, sets). Homoglyphs, such as a Cyrillic letter in "Source", are not caught; review catches those. + +A model that departs from the statute with no official source behind it is a bug, not a source conflict. Fix it, or open an issue. + ## Repo-specific anti-patterns - Branching on upstream (`git push upstream `) is preferred when you have write access, but fork PRs are fine here: PR CI needs no repository secrets (the only one, `CODECOV_TOKEN`, uploads with `fail_ci_if_error: false`, and codecov passes tokenless) and downloads no gated data, so fork PRs run the full suite green. diff --git a/README.md b/README.md index ccf75ffe445..e23aa43a1da 100644 --- a/README.md +++ b/README.md @@ -27,3 +27,17 @@ bundle installer published by `policyengine`, for example: ```bash uvx --from policyengine policyengine bundle install --country us --venv .venv ``` + +## Statutes, forms and agency practice + +When a statute conflicts with a regulation, form, instructions, manual or +stated agency practice, PolicyEngine US's rule is to follow the statute. +Forms and instructions fill gaps where the statute is silent. Each such +conflict is recorded in the source-conflict register that PolicyEngine shares +with the Axiom Foundation, including any code that does not follow the rule +yet: `known-source-conflicts.yaml` in +[TheAxiomFoundation/rulespec-us](https://github.com/TheAxiomFoundation/rulespec-us). +For each conflict it gives what each source says, a worked example, the +reading this model takes and why, and the code and tests that implement it. +The code marks the deciding line with `# Source conflict :`. See +[CONTRIBUTING.md](CONTRIBUTING.md#source-conflicts). diff --git a/changelog.d/source-conflict-markers.added.md b/changelog.d/source-conflict-markers.added.md new file mode 100644 index 00000000000..a4beb043830 --- /dev/null +++ b/changelog.d/source-conflict-markers.added.md @@ -0,0 +1 @@ +Add a code-health guard tying source-conflict markers to the source-conflict register shared with Axiom (statute governs; forms fill gaps). diff --git a/policyengine_us/tests/code_health/test_known_dead_reference_urls.py b/policyengine_us/tests/code_health/test_known_dead_reference_urls.py index aa2483f3ab5..51fdc337f43 100644 --- a/policyengine_us/tests/code_health/test_known_dead_reference_urls.py +++ b/policyengine_us/tests/code_health/test_known_dead_reference_urls.py @@ -100,9 +100,15 @@ def load_known_dead_url_prefixes(data_dir: Path = DATA_DIR) -> tuple: # (dead URL prefix, date verified dead, where its content lives now) KNOWN_DEAD_URL_PREFIXES = load_known_dead_url_prefixes() -SCANNED_ROOTS = (REPO, REPO.parent / "docs") +# source_conflicts/ holds the shared register, its backlog and source captures. +SCANNED_ROOTS = (REPO, REPO.parent / "docs", REPO.parent / "source_conflicts") SCANNED_SUFFIXES = {".ipynb", ".md", ".py", ".yaml", ".yml"} THIS_FILE = Path(__file__).resolve() +# A byte-pinned copy of rulespec-us's register: a dead link in it can only be +# fixed upstream, then re-vendored, so it is not scanned here. +VENDORED = { + (REPO.parent / "source_conflicts" / "known-source-conflicts.yaml").resolve() +} def url_host(prefix: str) -> str: @@ -407,12 +413,20 @@ def scanned_files(): path.suffix.lower() not in SCANNED_SUFFIXES or not path.is_file() or path.resolve() == THIS_FILE + or path.resolve() in VENDORED or DATA_DIR in path.resolve().parents ): continue yield path +def test_the_vendored_register_is_not_scanned(): + # It is a byte-pinned copy; a dead link in it is fixed in rulespec-us. + (vendored,) = VENDORED + assert vendored.is_file() + assert vendored not in {path.resolve() for path in scanned_files()} + + def test_package_and_docs_have_no_known_dead_reference_urls(): violations = [] for path in scanned_files(): diff --git a/policyengine_us/tests/code_health/test_source_conflicts.py b/policyengine_us/tests/code_health/test_source_conflicts.py new file mode 100644 index 00000000000..8512cb59e88 --- /dev/null +++ b/policyengine_us/tests/code_health/test_source_conflicts.py @@ -0,0 +1,984 @@ +"""Tie PolicyEngine-US code to the shared source-conflict register. + +When a statute conflicts with a regulation, form, instructions, manual or +stated agency practice, PolicyEngine-US follows the statute; forms and +instructions fill gaps where the statute is silent. Each such choice is an +entry in the register PolicyEngine-US shares with Axiom +(``known-source-conflicts.yaml`` in TheAxiomFoundation/rulespec-us; field +reference in that repository's tools/README.md). The code that makes the +choice says so at the deciding line: + + # Source conflict us-hi:claim-of-right-deduction-floor + +This test reads a vendored copy of the register, pinned by commit and sha256 +(``source_conflicts/pin.yaml`` at the repository root; refresh it with +``scripts/update_source_conflicts.py``), so CI never depends on a moving +branch. Comments are read syntax-aware: Python comment tokens, and YAML +comments exactly as PyYAML's own scanner skips them. A file whose comments +cannot be read (it doesn't tokenize or parse) fails the guard. Invariants, +checked on every run: + +1. The vendored copy is byte-identical to what its pin names (sha256), and + the pin names rulespec-us at a full commit. +2. Every comment in policyengine_us/{variables,parameters,reforms} that + starts like a marker ("# Source conflict ...", in any case, with any + number of #s and any separator or none between the words) is a + well-formed marker on its own comment line, names a registered entry, and + that entry lists the marker's file as a PolicyEngine/policyengine-us + implementation. +3. Every PolicyEngine/policyengine-us implementation that the register says + cites its entry (``cites_entry: true``) exists here and still carries its + marker. +4. Ratchet: comments that read like a source conflict ("the instructions + say", "in practice", "discrepancy", ...) in files with no marker may not + change in number, file by file. A file with any valid marker is exempt, so + the ratchet does not prove every conflict or deciding line in it is marked. +5. Backlog: ``source_conflicts/candidates.yaml`` lists every known conflict + not yet registered. Each candidate has a well-formed, unique global id that + is not yet in the register (registering one removes it from the backlog), + valid kinds, states and years, https links, and code paths that are files + git tracks here (no absolute path, no `..`, no hidden component such as + .git or .github). The file is public: its raw text (comments and keys + included) and every parsed value and key (escapes, binary, sets) carry no + decision-queue ids, session ids, local paths or email addresses. + +These are structural checks: they tie markers, the register and the backlog +together; they do not judge whether code follows a statute. rulespec-us's own +``verify`` checks the other half at pinned commits: that each listed file and +test exists and that ``cites_entry`` is true. +""" + +from __future__ import annotations + +import functools +import hashlib +import io +import re +import subprocess +import tokenize +from collections import Counter +from pathlib import Path + +import pytest +import yaml + +REPO_ROOT = Path(__file__).resolve().parents[3] +FOLDER = REPO_ROOT / "source_conflicts" +REGISTER = FOLDER / "known-source-conflicts.yaml" +PIN = FOLDER / "pin.yaml" +CANDIDATES = FOLDER / "candidates.yaml" +THIS_REPO = "PolicyEngine/policyengine-us" +SCANNED = ( + "policyengine_us/variables", + "policyengine_us/parameters", + "policyengine_us/reforms", +) + +GLOBAL_ID = r"[a-z]{2}(?:-[a-z0-9]+)*:[a-z0-9]+(?:-[a-z0-9]+)*" +# The one spelling of a marker, alone on its comment line. +MARKER_RE = re.compile(rf"# Source conflict ({GLOBAL_ID})") +# A comment that starts like a marker: "source conflict" in any case, with +# any number of #s, and any separator (space, hyphen, underscore, dash, dot, +# zero-width space) or none between the words; either followed by something +# shaped like a global id (after an +# optional colon, and with "conflicts" too) or not followed by a colon or a +# letter. Prose such as "Source conflict: the plan says ..." or "Source +# conflicts are registered ..." is not one, and counts toward the ratchet. +ATTEMPT_RE = re.compile( + r"""(?ix) + \#+\s*source[\W_]*conflict + (?: s?\s*:?\s*[a-z]{2}(?:-[a-z0-9]+)*:[a-z0-9] # an id, however introduced + | (?![\w:])(?!\s*:) # or no prose after it + ) + """ +) + +# Comment lines that read like a disagreement between sources. +CONFLICT_COMMENT_RE = re.compile( + r"""(?ix) + discrepanc + | \bsource[\s_-]*conflict + | \bcontrary\ to\b + | \bdepart(s|ed|ing)?\ from\b + | \b(law|statute|statutory\ text|code|regulation|rule)\s+(says|said|states|provides)\b.{0,80}\b(but|while|whereas|however)\b + | \b(form|instructions?|worksheet|booklet|manual|guidance|calculator)\s+(says|say|said|states|state|uses|use|tells?)\b + | \bin\ practice\b + | \bconflicts?\ with\b + | \binconsistent\ with\b + | \bwe\ (apply|follow|use)\s+(the\ )?(form|instructions?|worksheet|booklet|manual)\b + | \brather\ than\ the\ (statute|law|form|instructions?)\b + | \b(statute|law)\s+is\s+silent\b + """ +) + +# Files with conflict-sounding comments and no marker, and how many such +# lines each has. A file may only go down: register and mark the conflict, +# or reword a comment that is not one, then lower or delete its count here. +# A new file or a higher count fails. +KNOWN_UNMARKED: dict[str, int] = { + "policyengine_us/parameters/gov/irs/credits/residential_clean_energy/fuel_cell_cap_per_kw.yaml": 1, + "policyengine_us/parameters/gov/irs/income/exemption/overtime/hce_salary_threshold.yaml": 1, + "policyengine_us/parameters/gov/irs/income/exemption/overtime/salary_basis_threshold.yaml": 1, + "policyengine_us/parameters/gov/ssa/ssi/income/ism/food_counts.yaml": 1, + "policyengine_us/parameters/gov/states/ar/ade/oec/sra/rates/no_copay_smi_threshold.yaml": 1, + "policyengine_us/parameters/gov/states/ca/cpuc/income_sources.yaml": 1, + "policyengine_us/parameters/gov/states/co/doi/premium_assistance/amount/additional_member.yaml": 1, + "policyengine_us/parameters/gov/states/co/doi/premium_assistance/amount/first_member.yaml": 1, + "policyengine_us/parameters/gov/states/hi/bessd/ccap/income/countable_income/sources.yaml": 1, + "policyengine_us/parameters/gov/states/ma/hic/connector_care/fpl_floor.yaml": 1, + "policyengine_us/parameters/gov/states/mo/tax/income/deductions/federal_income_tax/ignored_credits.yaml": 1, + "policyengine_us/parameters/gov/states/mt/tax/income/subtractions/disability_income/cap.yaml": 1, + "policyengine_us/parameters/gov/states/or/ohcs/liheap/payment/income_band.yaml": 1, + "policyengine_us/parameters/gov/states/ut/dwf/ccap/copay/income_limits.yaml": 1, + "policyengine_us/parameters/gov/states/wi/tax/income/credits/homestead/income/disqualified_loss_sources.yaml": 1, + "policyengine_us/parameters/gov/territories/pr/tax/income/credits/earned_income/eligibility/min.yaml": 1, + "policyengine_us/parameters/gov/territories/pr/tax/income/credits/earned_income/eligibility/separate_filer.yaml": 1, + "policyengine_us/parameters/gov/territories/pr/tax/income/credits/earned_income/max_amount.yaml": 1, + "policyengine_us/parameters/gov/territories/pr/tax/income/credits/earned_income/phase_in_rate.yaml": 1, + "policyengine_us/parameters/gov/territories/pr/tax/income/credits/earned_income/phase_out/rate.yaml": 1, + "policyengine_us/parameters/gov/territories/pr/tax/income/credits/earned_income/phase_out/threshold/joint.yaml": 1, + "policyengine_us/parameters/gov/territories/pr/tax/income/credits/earned_income/phase_out/threshold/single.yaml": 1, + "policyengine_us/parameters/gov/territories/pr/tax/income/credits/earned_income/unearned_income/limit.yaml": 1, + "policyengine_us/parameters/gov/territories/pr/tax/income/gradual_adjustment/exemption_rate.yaml": 1, + "policyengine_us/parameters/gov/territories/pr/tax/income/gradual_adjustment/threshold.yaml": 1, + "policyengine_us/parameters/gov/usda/snap/eligibility/waiting_period/subject_immigration_statuses.yaml": 1, + "policyengine_us/reforms/states/az/dependent_credit/az_dependent_credit_reform.py": 1, + "policyengine_us/reforms/states/mn/walz/mn_walz_hf1938.py": 1, + "policyengine_us/variables/gov/irs/income/taxable_income/deductions/qualified_business_income_deduction/section_199a_net_capital_gain.py": 2, + "policyengine_us/variables/gov/local/ca/cc/ga/ca_cc_general_assistance_maximum_grant.py": 1, + "policyengine_us/variables/gov/local/ca/cc/ga/eligibility/ca_cc_general_assistance_eligible.py": 1, + "policyengine_us/variables/gov/local/tax/sales/local_sales_tax.py": 1, + "policyengine_us/variables/gov/states/ar/ade/oec/sra/rates/ar_sra_daily_copay.py": 1, + "policyengine_us/variables/gov/states/ct/tax/income/rebate/ct_child_tax_rebate.py": 1, + "policyengine_us/variables/gov/states/hi/tax/income/credits/cdcc/hi_cdcc_qualifying_individuals.py": 1, + "policyengine_us/variables/gov/states/hi/tax/income/subtractions/hi_student_loan_interest_adjustment.py": 1, + "policyengine_us/variables/gov/states/ks/tax/income/deductions/ks_itemized_deductions.py": 1, + "policyengine_us/variables/gov/states/ky/dcbs/liheap/ky_liheap.py": 1, + "policyengine_us/variables/gov/states/mn/dcyf/mfip/income/earned/mn_mfip_dependent_care_deduction.py": 1, + "policyengine_us/variables/gov/states/mn/tax/income/deductions/mn_itemized_deductions.py": 1, + "policyengine_us/variables/gov/states/mn/tax/income/subtractions/mn_k12_education_subtraction.py": 1, + "policyengine_us/variables/gov/states/mo/dese/ccs/eligibility/mo_ccs_income_eligible.py": 1, + "policyengine_us/variables/gov/states/vt/tax/income/credits/cdcc/vt_low_income_cdcc_eligible.py": 1, + "policyengine_us/variables/gov/states/wa/dor/property_tax_exemption/senior_disabled/wa_pte_categorical_eligible.py": 1, + "policyengine_us/variables/gov/territories/pr/tax/income/pr_agi.py": 1, +} + + +def _code_files(): + for root in SCANNED: + for path in sorted((REPO_ROOT / root).rglob("*")): + if path.suffix in (".py", ".yaml") and path.is_file(): + yield path + + +def _relative(path: Path) -> str: + return path.relative_to(REPO_ROOT).as_posix() + + +class Unscannable(Exception): + """A scanned file whose comments cannot be read; the guard fails closed.""" + + +def _python_comments(text: str): + """(line, comment, inline) for each comment token; inline means code + precedes it on its line. Strings that look like comments are not tokens.""" + + found = [] + try: + for token in tokenize.generate_tokens(io.StringIO(text).readline): + if token.type == tokenize.COMMENT: + row, col = token.start + # The token's own physical line: str.splitlines() would also + # break on form feeds and Unicode separators and shift rows. + found.append( + (row, token.string.strip(), bool(token.line[:col].strip())) + ) + except (tokenize.TokenError, SyntaxError, IndentationError) as error: + raise Unscannable(f"cannot tokenize: {error}") from error + return found + + +# PyYAML's line breaks (YAML 1.1), as its reader counts lines. +YAML_LINE_BREAK_RE = re.compile("\r\n|[\r\n\x85\u2028\u2029]") + + +class _CommentRecorder(yaml.BaseLoader): + """PyYAML's own scanner, noting where it skips each comment, so the guard + sees exactly the comments YAML does. The overrides repeat PyYAML 6's + methods with one added `_note()`.""" + + def __init__(self, stream): + super().__init__(stream) + self.comment_starts = [] + + def _note(self): + if self.peek() == "#": + # The absolute index, not the column: the reader does not advance + # its column over U+FEFF, so columns drift after an embedded BOM. + self.comment_starts.append((self.line, self.index)) + + def scan_to_next_token(self): + if self.index == 0 and self.peek() == "\ufeff": + self.forward() + found = False + while not found: + while self.peek() == " ": + self.forward() + self._note() + if self.peek() == "#": + while self.peek() not in "\0\r\n\x85\u2028\u2029": + self.forward() + if self.scan_line_break(): + if not self.flow_level: + self.allow_simple_key = True + else: + found = True + + def scan_block_scalar_ignored_line(self, start_mark): + while self.peek() == " ": + self.forward() + self._note() + return super().scan_block_scalar_ignored_line(start_mark) + + def scan_directive_ignored_line(self, start_mark): + while self.peek() == " ": + self.forward() + self._note() + return super().scan_directive_ignored_line(start_mark) + + +def _yaml_comments(text: str): + """(line, comment, inline) for each comment PyYAML's scanner skips.""" + + text = text.removeprefix("\ufeff") + loader = _CommentRecorder(text) + try: + while loader.check_event(): # the parser, so malformed YAML fails closed + loader.get_event() + except yaml.YAMLError as error: + raise Unscannable(f"cannot scan YAML: {error}") from error + finally: + loader.dispose() + found = [] + for row, index in loader.comment_starts: + start = max( + (m.end() for m in YAML_LINE_BREAK_RE.finditer(text, 0, index)), default=0 + ) + end = YAML_LINE_BREAK_RE.search(text, index) + comment = text[index : end.start() if end else len(text)].strip() + found.append((row + 1, comment, bool(text[start:index].strip("\ufeff \t")))) + return found + + +@functools.lru_cache(maxsize=None) +def _cached_comments(path: Path): + """The file's comments, or the Unscannable error (scanned once a run).""" + + text = path.read_text(encoding="utf-8-sig", errors="replace") + try: + return list( + _python_comments(text) if path.suffix == ".py" else _yaml_comments(text) + ) + except Unscannable as error: + return error + + +def _comments(path: Path): + found = _cached_comments(path) + if isinstance(found, Unscannable): + raise found + return found + + +def _load(): + payload = yaml.safe_load(REGISTER.read_text(encoding="utf-8")) + entries = {} + for entry in payload["entries"]: + entries[f"{entry['jurisdiction']}:{entry['id']}"] = entry + return payload, entries + + +def _our_implementations(entry): + return [ + item + for item in entry.get("implementations") or [] + if item.get("repo") == THIS_REPO + ] + + +def _classify(comment: str, inline: bool): + """The global id of a well-formed marker, "malformed" for anything that + starts like one but isn't exactly one alone on its line, else None.""" + + if not ATTEMPT_RE.match(comment): + return None + match = MARKER_RE.fullmatch(comment) + if match is None or inline: + return "malformed" + return match.group(1) + + +def _markers(): + found = [] # (global id, relative path, line number) + malformed = [] + for path in _code_files(): + try: + comments = _comments(path) + except Unscannable as error: + malformed.append(f"{_relative(path)}: {error}") + continue + for number, comment, inline in comments: + kind = _classify(comment, inline) + if kind == "malformed": + malformed.append(f"{_relative(path)}:{number}: {comment}") + elif kind is not None: + found.append((kind, _relative(path), number)) + return found, malformed + + +def test_vendored_register_matches_its_pin(): + pin = yaml.safe_load(PIN.read_text(encoding="utf-8")) + assert pin["repo"] == "TheAxiomFoundation/rulespec-us" + assert pin["path"] == "known-source-conflicts.yaml" + assert re.fullmatch(r"[0-9a-f]{40}", pin["commit"]) + assert hashlib.sha256(REGISTER.read_bytes()).hexdigest() == pin["sha256"], ( + "The vendored register differs from its pin. Refresh both with " + "`python scripts/update_source_conflicts.py --commit `; " + "never edit the copy by hand." + ) + + +def test_vendored_register_has_unique_global_ids(): + payload, entries = _load() + assert payload["version"] == 1 + assert len(entries) == len(payload["entries"]) + + +def test_markers_are_well_formed(): + _, malformed = _markers() + assert not malformed, ( + "Write a source-conflict marker exactly as `# Source conflict :`, " + "with single spaces, alone on its own comment line (not after code):\n" + + "\n".join(malformed) + ) + + +def test_every_marker_names_a_registered_entry_that_lists_its_file(): + _, entries = _load() + markers, _ = _markers() + problems = [] + for global_id, path, number in markers: + entry = entries.get(global_id) + if entry is None: + problems.append( + f"{path}:{number}: {global_id} is not in the vendored register. Add the entry to " + "rulespec-us known-source-conflicts.yaml first, then bump the pin." + ) + elif path not in {item.get("path") for item in _our_implementations(entry)}: + problems.append( + f"{path}:{number}: {global_id} does not list {path} as a {THIS_REPO} implementation." + ) + assert not problems, "\n".join(problems) + + +def test_registered_implementations_carry_their_marker(): + _, entries = _load() + markers, _ = _markers() + marked = {(global_id, path) for global_id, path, _ in markers} + problems = [] + for global_id, entry in entries.items(): + for item in _our_implementations(entry): + if not item.get("cites_entry"): + continue # not merged here yet, or not marked yet: verify reports it upstream + path = item["path"] + if not (REPO_ROOT / path).is_file(): + problems.append( + f"{global_id}: {path} no longer exists; update the register's implementation." + ) + elif (global_id, path) not in marked: + problems.append( + f"{global_id}: {path} has lost its `# Source conflict {global_id}` marker." + ) + assert not problems, "\n".join(problems) + + +def _unmarked_conflict_comments() -> Counter: + counts: Counter = Counter() + for path in _code_files(): + try: + comments = _comments(path) + except Unscannable: + continue # test_markers_are_well_formed reports it + if any( + MARKER_RE.fullmatch(comment) and not inline + for _, comment, inline in comments + ): + continue + for _, comment, _ in comments: + if CONFLICT_COMMENT_RE.search(comment): + counts[_relative(path)] += 1 + return counts + + +def test_conflict_sounding_comments_do_not_grow(): + counts = _unmarked_conflict_comments() + grown = { + path: count + for path, count in counts.items() + if count > KNOWN_UNMARKED.get(path, 0) + } + shrunk = { + path: count + for path, count in KNOWN_UNMARKED.items() + if counts.get(path, 0) < count + } + assert not grown, ( + "These files gained comments that read like a conflict between sources, with no " + "`# Source conflict :` marker. If a statute and a form, instructions, manual or " + "agency practice disagree, register it (rulespec-us known-source-conflicts.yaml) and " + f"mark the deciding line; otherwise reword the comment. Files and counts: {grown}" + ) + assert not shrunk, ( + "These files now have fewer unmarked conflict-sounding comments; lower or delete " + f"their KNOWN_UNMARKED counts to: { {path: counts.get(path, 0) for path in shrunk} }" + ) + + +@pytest.mark.parametrize( + ("comment", "matches"), + [ + ( + '# Law says "less than" but tax form says "$x or less". We apply form rules.', + True, + ), + ("# The line 11j instructions say to consider each business", True), + ("# In practice the change takes effect in 2025, not October 2024.", True), + ("# discrepancy: legal statute doesn't include minimum age", True), + ("# Hawaii's count departs from the federal one", True), + ("# Source conflict: CCDF State Plan 2.3.1(b) describes a waiver", True), + ("# Source-conflict: the plan and the manual differ", True), + ("# Sum the head's and spouse's wages.", False), + ("# See 26 USC 32(c)(2).", False), + ], +) +def test_conflict_comment_pattern(comment, matches): + assert bool(CONFLICT_COMMENT_RE.search(comment)) == matches + + +def test_marker_pattern(): + assert MARKER_RE.fullmatch("# Source conflict us-hi:claim-of-right-deduction-floor") + assert not ATTEMPT_RE.match("# Source conflict: the plan and the manual disagree") + assert not ATTEMPT_RE.match("# Source conflicts are registered in rulespec-us") + assert not ATTEMPT_RE.match( + "# Source conflict: NY: the plan and the statute differ" + ) + for bad in ( + "# Source conflict us-hi", + "# Source conflict US-HI:x", + "# Source conflict us-hi:Bad_Id", + "# Source conflict us-hi:x see the register", + "# Source conflict us-hi:missing", + "# Source\tconflict us-hi:missing", + "#Source conflict us-hi:missing", + "# source conflict us-hi:missing", + # Review of 371dd6ce: these escaped every check. + "# Source-conflict us-hi:missing", + "# Sourceconflict us-hi:missing", + "# Source_conflict us-hi:missing", + "# Source conflict: us-hi:missing", + "# Source conflicts us-hi:missing", + "## Source conflict us-hi:missing", + "# Source conflict: us-hi:missing", + # Review of 1b816488 (P3-7): any separator between the words. + "# Source\u2014conflict us-hi:missing", + "# Source.conflict us-hi:missing", + "# Source\u200bconflict us-hi:missing", + ): + assert ATTEMPT_RE.match(bad) and not MARKER_RE.fullmatch(bad), bad + + +@pytest.mark.parametrize( + ("comment", "inline", "kind"), + [ + ( + "# Source conflict us-hi:claim-of-right-deduction-floor", + False, + "us-hi:claim-of-right-deduction-floor", + ), + ("# Source conflict us-hi:claim-of-right-deduction-floor", True, "malformed"), + ("# Source conflict us-hi:x", False, "malformed"), + ("# Source conflict: the plan says otherwise", False, None), + ("# Sum the wages.", True, None), + ], +) +def test_marker_classification(comment, inline, kind): + assert _classify(comment, inline) == kind + + +def test_comments_are_read_syntax_aware(): + python = ( + 'DOC = """\n# Source conflict us-hi:inside-a-string\n"""\n' + "x = 1 # Source conflict us-hi:inline\n" + "# Source conflict us-hi:own-line\n" + ) + assert [(n, c, i) for n, c, i in _python_comments(python)] == [ + (4, "# Source conflict us-hi:inline", True), + (5, "# Source conflict us-hi:own-line", False), + ] + yaml_text = ( + "description: |\n" + " # Source conflict us-hi:inside-a-block-scalar\n" + " more text\n" + "values:\n" + " 2024-01-01: 1 # Source conflict us-hi:inline\n" + " title: 'a # not a comment'\n" + "# Source conflict us-hi:own-line\n" + ) + assert [(n, c, i) for n, c, i in _yaml_comments(yaml_text)] == [ + (5, "# Source conflict us-hi:inline", True), + (7, "# Source conflict us-hi:own-line", False), + ] + + +@pytest.mark.parametrize( + ("text", "comments"), + [ + # Review of 371dd6ce: a quote inside a plain scalar opens nothing. + ( + "description: The '90s rule # Source conflict us-hi:x\n", + [(1, "# Source conflict us-hi:x", True)], + ), + ( + "- don't # Source conflict us-hi:x\n", + [(1, "# Source conflict us-hi:x", True)], + ), + # Escaped quotes do not close a quoted scalar. + ("title: 'Hawaii''s # Source conflict us-hi:x'\n", []), + ('note: "a \\"b\\" # Source conflict us-hi:x"\n', []), + # A quoted scalar that spans lines hides a # at the start of the next. + ( + 'note: "first line\n # still the string"\nother: 1 # real\n', + [(3, "# real", True)], + ), + # Flow collections and sequence items open quotes. + ("values: ['a # b', \"c # d\"] # real\n", [(1, "# real", True)]), + ("- 'a # b' # real\n", [(1, "# real", True)]), + ("key: 'a' # real\n", [(1, "# real", True)]), + # A comma or bracket in a plain scalar opens nothing (seen in a real title). + ( + 'title: Text (strikes "and before January 1, 2031,") # real\n', + [(1, "# real", True)], + ), + # A bracket inside a plain scalar opens no flow collection either. + ("title: see [a, 'b # c'] # real\n", [(1, "# c'] # real", True)]), + ("values: [\n 'a # b',\n c] # real\n", [(3, "# real", True)]), + # Review of 1b816488 (P3-1): comments a hand-written scanner missed. + ( + "key: 'a'# Source conflict us-hi:x\n", + [(1, "# Source conflict us-hi:x", True)], + ), + ( + 'key: "a"# Source conflict us-hi:x\n', + [(1, "# Source conflict us-hi:x", True)], + ), + ( + "key: [1]# Source conflict us-hi:x\n", + [(1, "# Source conflict us-hi:x", True)], + ), + ( + "key: {a: 1}# Source conflict us-hi:x\n", + [(1, "# Source conflict us-hi:x", True)], + ), + ( + "key: [1,# Source conflict us-hi:x\n 2]\n", + [(1, "# Source conflict us-hi:x", True)], + ), + ( + "key: [# Source conflict us-hi:x\n 1]\n", + [(1, "# Source conflict us-hi:x", True)], + ), + ( + "key: |\n text\n # Source conflict us-hi:x\nother: 1\n", + [(3, "# Source conflict us-hi:x", False)], + ), + ( + "key: !!str |\n 'tis\nother: 1 # Source conflict us-hi:x\nz: it's\n", + [(3, "# Source conflict us-hi:x", True)], + ), + ( + "description: The rule\n 'tis odd # Source conflict us-hi:x\nlabel: Hawaii's rule\n", + [(2, "# Source conflict us-hi:x", True)], + ), + ( + "\ufeff# Source conflict us-hi:x\nkey: 1\n", + [(1, "# Source conflict us-hi:x", False)], + ), + # Review of c5b524bd (R4-1): BOMs inside the text do not shift the comment. + ( + '# Source conflict us-hi:registered\nkey: "a\ufeff\ufeffb" # Source conflict us-hi:missing\n', + [ + (1, "# Source conflict us-hi:registered", False), + (2, "# Source conflict us-hi:missing", True), + ], + ), + # A comment on a block scalar's header line. + ( + "key: | # Source conflict us-hi:x\n text\n", + [(1, "# Source conflict us-hi:x", True)], + ), + # Quoted text after a tag, an anchor or a complex key is not a comment. + ("key: !!str 'a # Source conflict us-hi:x'\n", []), + ('key: &a "a # Source conflict us-hi:x"\n', []), + ("? 'a # Source conflict us-hi:x'\n: 1\n", []), + ], +) +def test_yaml_quotes(text, comments): + assert _yaml_comments(text) == comments + # Each found comment is one YAML ignores: cutting it leaves the same value. + lines = text.split("\n") + for number, comment, _ in comments: + lines[number - 1] = lines[number - 1][: lines[number - 1].rindex(comment)] + load = lambda text: yaml.load(text.removeprefix("\ufeff"), Loader=yaml.BaseLoader) # noqa: E731 + assert load("\n".join(lines)) == load(text) + + +def test_an_unscannable_file_is_reported_as_malformed(monkeypatch): + path = REPO_ROOT / "policyengine_us" / "variables" / "example.py" + monkeypatch.setitem(globals(), "_code_files", lambda: iter([path])) + + def unreadable(_): + raise Unscannable("cannot tokenize: example") + + monkeypatch.setitem(globals(), "_comments", unreadable) + assert _markers()[1] == [ + "policyengine_us/variables/example.py: cannot tokenize: example" + ] + + +def test_an_unscannable_real_file_fails_the_guard(tmp_path, monkeypatch): + # Review of c5b524bd (R4-2): the real read, cache and error hand-off, + # _cached_comments -> _comments -> _markers, on an actual file. + broken = tmp_path / "policyengine_us" / "parameters" / "broken.yaml" + broken.parent.mkdir(parents=True) + broken.write_text('note: "never closed\n') + monkeypatch.setitem(globals(), "REPO_ROOT", tmp_path) + monkeypatch.setitem(globals(), "_code_files", lambda: iter([broken])) + try: + malformed = _markers()[1] + finally: + _cached_comments.cache_clear() + assert len(malformed) == 1 + assert malformed[0].startswith( + "policyengine_us/parameters/broken.yaml: cannot scan YAML" + ) + + +def test_unscannable_files_fail_closed(): + # Review of 1b816488 (P3-2): a file whose comments cannot be read must + # fail the guard, not pass with no comments. + for text in ('note: "never closed\n', "key: [1, 2\n", "a: b: c\n"): + with pytest.raises(Unscannable): + _yaml_comments(text) + for text in ( + 'NOTE = "a\x0bb"\n\x0b\nx = 1 # Source conflict us-hi:probe\n', + "def f(:\n pass\n", + ): + with pytest.raises(Unscannable): + _python_comments(text) + + +def test_python_rows_survive_unusual_line_separators(): + # Review of 371dd6ce: str.splitlines() also splits on \f and \u2028, which + # shifted rows and made an inline marker read as an own-line one. + text = 'NOTE = "a\u2028b"\n\x0c\nx = 1 # Source conflict us-hi:inline\n' + assert list(_python_comments(text)) == [(3, "# Source conflict us-hi:inline", True)] + + +@pytest.mark.parametrize( + ("years", "ok"), + [ + ({"from": 2022, "to": 2025, "type": "tax"}, True), + ({"from": 2024, "type": "calendar"}, True), + ({"type": "tax"}, False), + ({"from": "2022", "type": "tax"}, False), + ({"from": 2022, "to": "2025", "type": "tax"}, False), + ({"from": 2025, "to": 2022, "type": "tax"}, False), + ({"from": 2025, "type": "program"}, False), + ({"from": 2025, "type": "tax", "until": 2026}, False), + ("2022-2025", False), + ], +) +def test_year_rules(years, ok): + assert (_year_problems(years) == []) == ok + + +@pytest.mark.parametrize( + ("path", "ok"), + [ + ("policyengine_us/tests/code_health/test_source_conflicts.py", True), + ("/etc/passwd", False), + ("../outside.py", False), + ("policyengine_us/../../outside.py", False), + ("policyengine_us/no_such_file.py", False), + (".git/HEAD", False), + (".github/PULL_REQUEST_TEMPLATE.md", False), + ("", False), + (None, False), + ], +) +def test_code_paths_must_be_files_in_this_repository(path, ok): + assert _inside_repository(path) == ok + + +def test_code_paths_must_be_tracked(monkeypatch): + # Review of 371dd6ce: an untracked or ignored file passes locally and fails in CI. + path = "policyengine_us/tests/code_health/test_source_conflicts.py" + assert _inside_repository(path) + monkeypatch.setitem(globals(), "_tracked_files", lambda: frozenset()) + assert not _inside_repository(path) + + +# --------------------------------------------------------------------------- +# The backlog of known conflicts not yet registered + +SOURCE_KINDS = { + "statute", + "regulation", + "rulemaking", + "form", + "instructions", + "worksheet", + "manual", + "guidance", + "policy", + "plan", + "calculator", + "agency-practice", +} +FOLLOWS = {"statute", "conflicting-source", "gap-fill", "not-modelled", "unknown"} +STATES = {"ruled", "open", "unreviewed"} +YEAR_TYPES = {"calendar", "tax", "federal-fiscal", "state-fiscal", "program"} +PRIVATE = ( + # Not inside a longer token of letters or digits; an underscore join + # (queue_d1234, d1234_ruling) still counts. + ( + re.compile(r"(?/x.pdf) is public. + re.compile( + r"(? 1 + ) + assert not duplicated, duplicated + + +def test_candidates_are_not_yet_registered(): + _, entries = _load() + registered = sorted(set(entries) & {item["id"] for item in _candidates()}) + assert not registered, ( + f"These are registered now; delete them from candidates.yaml: {registered}" + ) + + +def test_candidate_fields(): + problems = [] + for item in _candidates(): + label = item.get("id") + for key in ("id", "program", "question", "sources", "pe_us", "state"): + if key not in item: + problems.append(f"{label}: {key} is required") + if item.get("state") not in STATES: + problems.append(f"{label}: state must be one of {sorted(STATES)}") + pe_us = item.get("pe_us") or {} + if pe_us.get("follows") not in FOLLOWS: + problems.append(f"{label}: pe_us.follows must be one of {sorted(FOLLOWS)}") + years = item.get("years") + if years is not None: + problems.extend(f"{label}: {problem}" for problem in _year_problems(years)) + sources = item.get("sources") or [] + if len(sources) < 2: + problems.append(f"{label}: a conflict needs at least two sources") + for source in sources: + if source.get("kind") not in SOURCE_KINDS: + problems.append( + f"{label}: source kind {source.get('kind')!r} is not one of {sorted(SOURCE_KINDS)}" + ) + url = source.get("url") + if url is not None and not str(url).startswith("https://"): + problems.append(f"{label}: source url must be https or null: {url}") + for path in pe_us.get("code") or []: + if not _inside_repository(path): + problems.append( + f"{label}: code path {path!r} must be a relative path to a file in this repository" + ) + for pr in pe_us.get("prs") or []: + if not re.fullmatch( + r"https://github\.com/PolicyEngine/policyengine-us/pull/[0-9]+", pr + ): + problems.append( + f"{label}: prs must be PolicyEngine/policyengine-us pull request URLs: {pr}" + ) + assert not problems, "\n".join(problems) + + +def _year_problems(years) -> list[str]: + if not isinstance(years, dict): + return [ + "years must be a mapping of from, optional to, type and (for program) note" + ] + problems = [] + start, end = years.get("from"), years.get("to") + if type(start) is not int: + problems.append("years.from must be a whole year") + if "to" in years and type(end) is not int: + problems.append("years.to must be a whole year") + if type(start) is int and type(end) is int and end < start: + problems.append(f"years.to ({end}) is before years.from ({start})") + if years.get("type") not in YEAR_TYPES: + problems.append(f"years.type must be one of {sorted(YEAR_TYPES)}") + if years.get("type") == "program" and not years.get("note"): + problems.append("years.note must say what the program year is") + unknown = set(years) - {"from", "to", "type", "note"} + if unknown: + problems.append(f"years has unknown keys {sorted(unknown)}") + return problems + + +@functools.lru_cache(maxsize=1) +def _tracked_files() -> frozenset[str] | None: + """Files git tracks here, or None outside a git checkout.""" + + try: + listing = subprocess.run( + ["git", "ls-files", "-z"], cwd=REPO_ROOT, capture_output=True, check=True + ).stdout + except (OSError, subprocess.CalledProcessError): + return None + return frozenset(listing.decode("utf-8", "surrogateescape").split("\0")) - {""} + + +def _inside_repository(path) -> bool: + """A relative path to a file git tracks here: not absolute, no `..`, no + hidden component (.git, .venv), nothing untracked or ignored.""" + + if ( + not isinstance(path, str) + or not path + or Path(path).is_absolute() + or any(part == ".." or part.startswith(".") for part in Path(path).parts) + ): + return False + target = (REPO_ROOT / path).resolve() + if not (target.is_relative_to(REPO_ROOT) and target.is_file()): + return False + tracked = _tracked_files() + return tracked is None or Path(path).as_posix() in tracked + + +def _privacy_problems(raw: str, name: str) -> list[str]: + """Private tokens in the raw text (comments and keys included) and in the + parsed values, which YAML escapes such as "\\x641234" hide from the raw text.""" + + problems = [ + f"{name}:{number} contains {what}" + for number, line in enumerate(raw.splitlines(), 1) + for pattern, what in PRIVATE + if pattern.search(line) + ] + problems += [ + f"{label} contains {what}" + for label, value in _strings(yaml.safe_load(raw), name) + for pattern, what in PRIVATE + if pattern.search(value) + ] + return problems + + +def test_candidates_are_public(): + problems = _privacy_problems( + CANDIDATES.read_text(encoding="utf-8"), "candidates.yaml" + ) + assert not problems, "\n".join(problems) + + +@pytest.mark.parametrize( + ("raw", "private"), + [ + ("note: see d1234\n", True), + ("note: see D1234\n", True), + ("note: see d123456\n", True), + ("# d1234\nnote: x\n", True), + ("d1234: x\n", True), + ('note: "\\x641234"\n', True), + ("note: from local_1a2b3c4d\n", True), + ("note: /Users/someone/file\n", True), + ("note: ~/reviews/file\n", True), + ("note: write to someone@example.org\n", True), + # Review of 1b816488 (P3-3). + ("note: queue_d1234\n", True), + ("note: d1234_ruling\n", True), + ("example: !!binary ZDEyMzQ=\n", True), + ('example: !!set {"\\x641234": null}\n', True), + ('example: !!pairs [{"\\x641234": x}]\n', True), + ('example: !!omap [{a: "\\x641234"}]\n', True), + ("note: /tmp/review/x\n", True), + ("note: /var/folders/ab/x\n", True), + ("note: /private/var/x\n", True), + ("note: $HOME/reviews/x\n", True), + ("note: 3f2a9c1e-1b2c-4d5e-8f90-123456789abc\n", True), + ('note: {"\\x641234": x}\n', True), + ('note: ["\\x641234"]\n', True), + ( + "url: https://example.gov/files/0558a902-6362-47ca-8e3b-7cca3bc69b9d/a.pdf\n", + False, + ), + ("note: commit 3fd12345 and d12\n", False), + ("note: Form D-400 and section 1d1234a\n", False), + ("url: https://example.org/d1234567\n", False), + ("note: Form D-400\n", False), + ], +) +def test_privacy_scan(raw, private): + assert bool(_privacy_problems(raw, "x.yaml")) == private diff --git a/scripts/update_source_conflicts.py b/scripts/update_source_conflicts.py new file mode 100644 index 00000000000..d6ab223c7b2 --- /dev/null +++ b/scripts/update_source_conflicts.py @@ -0,0 +1,92 @@ +"""Vendor the shared source-conflict register at a pinned rulespec-us commit. + +PolicyEngine-US and Axiom keep one register of places where a statute +conflicts with a regulation, form, instructions, manual or agency practice: +``known-source-conflicts.yaml`` in TheAxiomFoundation/rulespec-us. This +script copies it, byte for byte, from one commit into +``source_conflicts/`` (at the repository root) and records that +commit and the file's sha256 in ``pin.yaml``. The code-health test +``test_source_conflicts.py`` reads only the vendored copy, so CI never +depends on a moving branch. + + python scripts/update_source_conflicts.py --commit <40-hex rulespec-us commit> + python scripts/update_source_conflicts.py --check # pin matches upstream? + +Bump the pin the way other pins are bumped: to a rulespec-us commit that +holds the entries your markers cite (normally a merge commit on main). +""" + +from __future__ import annotations + +import argparse +import hashlib +import re +import sys +import urllib.request +from pathlib import Path + +import yaml + +REPO = "TheAxiomFoundation/rulespec-us" +REGISTER = "known-source-conflicts.yaml" +FOLDER = Path(__file__).resolve().parent.parent / "source_conflicts" +VENDORED = FOLDER / REGISTER +PIN = FOLDER / "pin.yaml" +COMMIT_RE = re.compile(r"[0-9a-f]{40}") + + +def fetch(commit: str) -> bytes: + url = f"https://raw.githubusercontent.com/{REPO}/{commit}/{REGISTER}" + with urllib.request.urlopen(url, timeout=60) as response: + return response.read() + + +def write_pin(commit: str, data: bytes) -> None: + PIN.write_text( + "# The rulespec-us commit known-source-conflicts.yaml is vendored from.\n" + "# Written by scripts/update_source_conflicts.py; do not edit by hand.\n" + + yaml.safe_dump( + { + "repo": REPO, + "commit": commit, + "path": REGISTER, + "sha256": hashlib.sha256(data).hexdigest(), + }, + sort_keys=False, + ) + ) + + +def main(argv: list[str] | None = None) -> int: + parser = argparse.ArgumentParser(description=__doc__.split("\n\n")[0]) + group = parser.add_mutually_exclusive_group(required=True) + group.add_argument("--commit", help="full rulespec-us commit SHA to vendor") + group.add_argument( + "--check", + action="store_true", + help="compare the vendored copy with its pinned commit", + ) + args = parser.parse_args(argv) + if args.check: + pin = yaml.safe_load(PIN.read_text()) + upstream = fetch(pin["commit"]) + local = VENDORED.read_bytes() + if upstream != local or hashlib.sha256(upstream).hexdigest() != pin["sha256"]: + print( + f"{VENDORED} differs from {REPO}@{pin['commit']}:{REGISTER}", + file=sys.stderr, + ) + return 1 + print(f"{VENDORED.name} matches {REPO}@{pin['commit'][:12]}.") + return 0 + if not COMMIT_RE.fullmatch(args.commit): + parser.error("--commit must be a full lowercase 40-character SHA") + data = fetch(args.commit) + VENDORED.write_bytes(data) + write_pin(args.commit, data) + print(f"Vendored {REGISTER} from {REPO}@{args.commit[:12]} ({len(data)} bytes).") + return 0 + + +if __name__ == "__main__": + raise SystemExit(main()) diff --git a/source_conflicts/candidates.yaml b/source_conflicts/candidates.yaml new file mode 100644 index 00000000000..7d8c41658c6 --- /dev/null +++ b/source_conflicts/candidates.yaml @@ -0,0 +1,6274 @@ +# Known conflicts between a statute and a regulation, form, instructions, +# manual, guidance, calculator or agency practice that are not yet entries in +# the shared register (rulespec-us known-source-conflicts.yaml). Each moves to +# the register once its sources are captured and its excerpts verified; delete +# it here in the same change. test_source_conflicts.py checks this file. +# +# pe_us.follows: statute | conflicting-source (against the statute; the +# 2026-10-19 rule calls for a model change) | gap-fill (the statute is silent +# and the code follows the form) | not-modelled | unknown. +# state: ruled (PolicyEngine has picked) | open (asked, not yet decided) | +# unreviewed. +version: 1 +candidates: +- id: us-ak:snap-abawd-implementation-date + program: snap + years: + from: 2025 + to: 2025 + type: calendar + question: Do the amended SNAP ABAWD rules apply in Alaska from July 4, 2025 or the agency's November 1, 2025 implementation + date? + sources: + - kind: statute + citation: P.L. 119-21 (OBBBA) SNAP ABAWD amendments; 7 U.S.C. 2015(o) + url: null + - kind: agency-practice + citation: Alaska Department of Health "H.R. 1 - AK Impacts" + url: https://health.alaska.gov/en/education/hr-1-ak-impacts/ + readings: + statute: The federal effective date is 2025-07-04. + other: Alaska applies the changes from 2025-11-01. + example: In August 2025, the model applies the changes in Texas but not Alaska. + pe_us: + follows: conflicting-source + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/8861 + state: unreviewed + note: 'The statute-first rule requires changing the delayed model date unless waiver authority permits the delay; + verify that authority. Code not yet on main: is_snap_abawd_hr1_in_effect, gov.states.ak.dpa.snap.work_requirements.abawd.hr1_in_effect.' +- id: us-al:federal-tax-deduction-credit-list + program: income-tax + years: + from: 2018 + to: 2025 + type: tax + question: Do all federal credits shown as payments reduce Alabama's federal income tax deduction, including net + premium tax and section 1341 credits omitted from its worksheet? + sources: + - kind: statute + citation: Ala. Code §40-18-15(c) + url: https://alison.legislature.state.al.us/code-of-alabama?section=40-18-15 + - kind: regulation + citation: Ala. Admin. Code r. 810-3-15-.20(1)(d)2 + url: https://admincode.legislature.state.al.us/api/chapter/810-3-15#page=16 + - kind: worksheet + citation: 2018-2025 Form 40 federal income tax deduction worksheets; 2025 worksheet identifies Schedule 3 line + 13a, not line 13b + url: https://www.revenue.alabama.gov/wp-content/uploads/2026/01/25f40bk.pdf#page=31 + readings: + statute: Deduct federal tax paid or accrued, reducing it by all credits shown as federal payments, including + net premium tax and section 1341 credits, with a zero floor. + other: Subtract only the enumerated refundable credits, omitting net premium tax and section 1341 credits. + pe_us: + follows: conflicting-source + code: + - policyengine_us/parameters/gov/states/al/tax/income/deductions/federal_tax/credits.yaml + - policyengine_us/variables/gov/states/al/tax/income/deductions/federal_income_tax/al_federal_income_tax_deduction.py + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10038 + state: open + note: A decision was requested; the statute-first rule requires correcting the worksheet-based model where it + conflicts with the statutory reading, after checking each year's list. +- id: us-al:irrevocable-trust-loss-deduction + program: income-tax + years: + from: 2022 + type: tax + question: May an irrevocable-trust beneficiary deduct a Schedule E loss under current law despite the booklet's + prohibition citing a pre-2005 rule? + sources: + - kind: statute + citation: Code of Ala. §40-18-25(b) + url: null + - kind: regulation + citation: Ala. Admin. Code r. 810-3-25-.11 + url: null + - kind: instructions + citation: 2025 Alabama Form 40 booklet p.24, citing r. 810-3-25-.05(8)(b) + url: https://www.revenue.alabama.gov/wp-content/uploads/2026/01/25f40bk.pdf#page=24 + readings: + statute: Current law follows federal Subchapter J for beneficiaries' income and deductions, disabling only IRC + §642(h), so losses pass through. + other: The booklet prohibits an irrevocable-trust loss on Schedule E part II using a rule for years before January + 1, 2005. + pe_us: + follows: statute + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10060 + state: unreviewed + note: 'Obtain direct statutory and current-rule citations and identify booklet editions repeating the obsolete + restriction. Code not yet on main: gov.states.al.tax.income.agi.gross_income_sources.' +- id: us-al:liheap-insurance-payments + program: liheap + years: + from: 2026 + to: 2026 + type: federal-fiscal + question: Do regular insurance and annuity payments count for Alabama LIHEAP despite the plan leaving direct insurance + payments unchecked? + sources: + - kind: manual + citation: FY2026 Alabama LIHEAP Manual §5.5.1 + url: https://adeca.alabama.gov/wp-content/uploads/FY-2026-LIHEAP-Manual-1.pdf#page=18 + - kind: guidance + citation: FY2026 LIHEAP State Plan §1.9 + url: https://liheapch.acf.gov/docs/2026/state-plans/AL_Plan_2026.pdf#page=4 + readings: + statute: No statute is supplied; the manual counts regular insurance and annuity payments. + other: The plan leaves insurance payments made directly to the insured unchecked. + pe_us: + follows: unknown + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9967 + state: unreviewed + note: 'PE-US follows the manual; verify which modeled payments fall within the plan''s category. Code not yet + on main: al_liheap.' +- id: us-al:liheap-lump-sums-and-refunds + program: liheap + years: + from: 2026 + to: 2026 + type: federal-fiscal + question: Are rebates, refunds and lottery winnings counted as lump sums or are refunds excluded and gambling + winnings counted net? + sources: + - kind: manual + citation: FY2026 Alabama LIHEAP Manual §§5.5.1-5.5.2 + url: https://adeca.alabama.gov/wp-content/uploads/FY-2026-LIHEAP-Manual-1.pdf#page=18 + - kind: guidance + citation: FY2026 LIHEAP State Plan §1.9, page 6 + url: https://liheapch.acf.gov/docs/2026/state-plans/AL_Plan_2026.pdf#page=4 + readings: + statute: No statute is supplied; the manual excludes refunds and rebates and counts net gambling winnings. + other: The plan lists one-time lump sums including rebates, credits, lottery winnings and refund deposits. + pe_us: + follows: unknown + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9967 + state: unreviewed + note: 'PE-US follows the manual; verify the lump-sum categories and gross-versus-net treatment. Code not yet on + main: al_liheap.' +- id: us-al:medicaid-parent-dependent-child-age + program: medicaid + years: + from: 2023 + type: calendar + question: Is a dependent child under 19 for Alabama parent and caretaker Medicaid or under 18 as the approved + plan indicates? + sources: + - kind: regulation + citation: Ala. Admin. Code r. 560-X-25-.15(1)(c) + url: https://admincode.legislature.state.al.us/api/chapter/560-X-25#page=40 + - kind: plan + citation: Alabama approved state plan S25, AL-13-0021-MM1 + url: https://www.medicaid.gov/State-resource-center/Medicaid-State-Plan-Amendments/Downloads/AL/AL-13-0021-MM1.pdf#page=12 + readings: + statute: No statute is supplied; the administrative code defines a dependent child as under 19. + other: S25 uses an under-18 base with the student option unchecked. + pe_us: + follows: unknown + code: + - policyengine_us/parameters/gov/hhs/medicaid/eligibility/categories/parent/dependent_child/age_limit.yaml + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9213 + state: unreviewed + note: 'PE-US follows the administrative code; verify overlapping effective dates and any conflict before the cited + 2023 code. Code not yet on main: dependent_child/age_limit.yaml.' +- id: us-ar:casualty-loss-aggregate-agi-floor + program: income-tax + years: + from: 2018 + to: 2025 + type: tax + question: Does Arkansas apply the casualty-loss 10% AGI floor once to aggregate losses or separately to each loss + as the booklet states? + sources: + - kind: statute + citation: Ark. Code 26-51-424(b), adopting 26 U.S.C. 165(h)(2)(A), 2008 edition + url: https://www.govinfo.gov/content/pkg/USCODE-2008-title26/html/USCODE-2008-title26-subtitleA-chap1-subchapB-partVI-sec165.htm + - kind: form + citation: AR4684 + url: null + - kind: instructions + citation: Arkansas AR1000F booklet, AR3 line 18 + url: null + readings: + statute: Apply one 10% AGI floor to aggregate losses, as AR4684 also does. + other: The booklet says each loss must exceed 10% of AGI. + pe_us: + follows: statute + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9625 + state: unreviewed + note: 'The merged PR follows the statute and form; obtain the booklet citation and verify editions. Code not yet + on main: ar_casualty_loss_deduction_joint, ar_casualty_loss_deduction_indiv.' +- id: us-ar:casualty-loss-status-four-spouse-floors + program: income-tax + years: + from: 2017 + to: 2025 + type: tax + question: For spouses filing separately on the same Arkansas return, do casualty-loss reductions and AGI floors + apply separately or once to the return? + sources: + - kind: statute + citation: Ark. Code 26-51-424(b), adopting 26 U.S.C. 165(h) as of January 1, 2009 + url: https://www.arkleg.state.ar.us/Acts/FTPDocument?path=%2FACTS%2F2009R%2FPublic%2F&file=372.pdf&ddBienniumSession=2009%2F2009R#page=5 + - kind: regulation + citation: Treas. Reg. 1.165-7(b)(4)(iii) + url: null + - kind: form + citation: Form AR4684 and AR3, 2017-2025 + url: https://www.dfa.arkansas.gov/wp-content/uploads/2025_AR4684_Casualties_and_Thefts.pdf#page=1 + readings: + statute: Apply the $100 reduction and 10% AGI floor separately to each spouse. + other: Apply one $100 reduction per event and one 10% floor per return. + example: The supplied statutory calculation is ($12,000 − $100 − $3,000) + ($8,000 − $100 − $2,000) = $14,800. + pe_us: + follows: conflicting-source + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9944 + state: open + note: 'A decision was requested; the statute-first rule requires separate spouse reductions and floors after confirming + the adopted rule''s scope. Code not yet on main: ar_casualty_loss_deduction_indiv, ar_casualty_loss_deduction_joint.' +- id: us-ar:claim-of-right-deduction-floor + program: income-tax + years: + from: 2013 + type: tax + question: Does Arkansas's deduction for restoring more than $3,000 held under a claim of right (Ark. Code 26-51-457) + count toward the 2% floor on miscellaneous itemized deductions, whose list of exceptions does not name it, or + sit outside the floor as the Department of Finance and Administration treats the volunteer firefighter deduction + enacted in the same session? + sources: + - kind: statute + citation: Act 1284 of 2013, section 1 (Ark. Code 26-51-457(a)) + url: https://www.arkleg.state.ar.us/Acts/FTPDocument?path=%2FACTS%2F2013R%2FPublic%2F&file=1284.pdf&ddBienniumSession=2013%2F2013R + - kind: statute + citation: Act 382 of 1987, section 28(a) (now Ark. Code 26-51-437) + url: https://www.arkleg.state.ar.us/Acts/FTPDocument?path=%2FACTS%2F1987R%2FPublic%2F&file=382.pdf&ddBienniumSession=1987%2F1987R#page=9 + - kind: form + citation: 2014 Form AR3, lines 26 and 28 + url: https://www.dfa.arkansas.gov/wp-content/uploads/AR3_2014_RE.pdf#page=1 + readings: + statute: Count the claim of right deduction among miscellaneous itemized deductions, so only the part above + 2% of Arkansas AGI is deducted. + other: Deduct it in full outside the floor, as the department's forms treat the volunteer firefighter deduction + (AR3 line 26, totaled with lines not subject to the 2% limitation), which the same 2013 session enacted without + an express exception either. + example: 'A filer with $60,000 of wages repays $10,000: the statute reading deducts $8,800 (above 2% of AGI), + the firefighter analogy $10,000, about $47 of Arkansas tax at 3.9%.' + pe_us: + follows: statute + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10203 + state: ruled + note: Verified entry drafted in TheAxiomFoundation/rulespec-us#1825; it registers once its source captures are + on main. +- id: us-ar:claim-of-right-itemizer-requirement + program: income-tax + years: + from: 2013 + to: 2025 + type: tax + question: Does the statutory claim-of-right deduction require itemization because the adjustment form prohibits + unlisted categories? + sources: + - kind: statute + citation: Ark. Code §26-51-457(b)(2)(A) + url: https://www.arkleg.state.ar.us/Acts/FTPDocument?path=%2FACTS%2F2013R%2FPublic%2F&file=1284.pdf&ddBienniumSession=2013%2F2013R#page=2 + - kind: form + citation: 2025 Form AR1000ADJ, same note 2012-2025 + url: https://www.dfa.arkansas.gov/wp-content/uploads/2025_AR1000ADJ_AdjustmentsSchedule.pdf#page=1 + readings: + statute: The statute allows a repayment-year deduction without specifying adjustment or itemized placement. + other: AR1000ADJ prohibits unlisted categories; treating the deduction as an AR3 itemized deduction confines + relief to itemizers. + example: With $60,000 wages and a $3,001 repayment, the PR allows $1,801 of miscellaneous deductions, below the + $2,470 standard deduction, so the repayment gives no benefit. + pe_us: + follows: gap-fill + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10203 + state: unreviewed + note: 'The itemizer restriction is a legally unverified form inference; establish whether it is DFA''s intended + gap-fill. Code not yet on main: ar_claim_of_right_deduction.py.' +- id: us-ar:claim-of-right-small-repayment-remedy + program: income-tax + years: + from: 2013 + type: tax + question: Where the claim-of-right statute does not cover repayments of $3,000 or less, do those repayments receive + a current-year deduction or require an amended return? + sources: + - kind: statute + citation: Ark. Code §26-51-457(a), Act 1284 of 2013 + url: https://www.arkleg.state.ar.us/Acts/FTPDocument?path=%2FACTS%2F2013R%2FPublic%2F&file=1284.pdf&ddBienniumSession=2013%2F2013R#page=1 + - kind: guidance + citation: DFA fiscal impact statement HB1866-DFA2, as engrossed 3/20/2013 + url: https://www.arkleg.state.ar.us/Home/FTPDocument?path=%2FAssembly%2F2013%2F2013R%2FFiscal+Impacts%2FHB1866-DFA2.pdf#page=1 + - kind: guidance + citation: DFA fiscal impact statement HB1866-DFA1, 3/18/2013 + url: https://www.arkleg.state.ar.us/Home/FTPDocument?path=%2FAssembly%2F2013%2F2013R%2FFiscal+Impacts%2FHB1866-DFA1.pdf#page=1 + readings: + statute: Section 26-51-457 reaches only repayments over $3,000 and leaves smaller repayments unspecified. + other: DFA2 describes amending the earlier return; DFA1 describes a deduction in the repayment year. + pe_us: + follows: not-modelled + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10203 + state: ruled + note: 'The October 2026 ruling leaves small repayments unmodelled; verify whether the fiscal notes establish a + post-2013 remedy. Code not yet on main: ar_claim_of_right_deduction.py.' +- id: us-ar:gambling-loss-deduction-before-2015 + program: income-tax + years: + from: 2014 + to: 2014 + type: tax + question: Was Arkansas's gambling-loss deduction available before its statutory 2015 effective date as DFA's earlier + guidance indicates? + sources: + - kind: statute + citation: Ark. Code §26-51-424(a)(2)(B); Act 155 of 2017 §25 + url: https://www.arkleg.state.ar.us/Acts/FTPDocument?path=%2FACTS%2F2017R%2FPublic%2F&file=155.pdf&ddBienniumSession=2017%2F2017R#page=10 + - kind: guidance + citation: DFA Subject 208, 2009 version; DFA impact statement on Act 155 + url: null + readings: + statute: The act makes the deduction effective for tax years beginning on or after January 1, 2015. + other: The 2009 guidance provides the same cap and floor exemption, and the impact statement describes the act + as clarifying existing law. + pe_us: + follows: conflicting-source + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9636 + state: ruled + note: 'The earlier ruling is undated and followed guidance; the October 2026 statute-first rule requires changing + the pre-2015 model treatment. Code not yet on main: ar_gambling_loss_deduction.' +- id: us-ar:income-tax-above-table-formula + program: income-tax + years: + from: 2014 + to: 2025 + type: tax + question: Above the regular tax table, does Arkansas use the Indexed Tax Brackets formula or the lower booklet + shortcut anchored to the last row? + sources: + - kind: guidance + citation: DFA Indexed Tax Brackets card, 2021 file p.1 and 2024 file p.2 + url: https://www.dfa.arkansas.gov/wp-content/uploads/2024_TaxBrackets.pdf#page=2 + - kind: guidance + citation: 2025 Indexed Tax Brackets card p.1 + url: https://www.dfa.arkansas.gov/wp-content/uploads/2025_TaxBrackets.pdf#page=1 + - kind: instructions + citation: 2024 AR1000F and AR1000NR Instructions, Regular Income Tax Table note, file p.34 + url: https://www.dfa.arkansas.gov/wp-content/uploads/2024_AR1000F_and_AR1000NR_Instructions.pdf#page=34 + - kind: instructions + citation: 2025 AR1000F booklet shortcut p.34 + url: https://www.dfa.arkansas.gov/wp-content/uploads/2025_AR1000F_and_AR1000NR_Instructions.pdf#page=34 + - kind: instructions + citation: AR1000F booklet note above the table, 2024 and 2025 + url: https://www.dfa.arkansas.gov/wp-content/uploads/2025_AR1000F_and_AR1000NR_Instructions.pdf#page=30 + readings: + statute: 'Recorded as silent: no statutory formula above the table has been identified.' + other: The bracket card applies its formula to exact income; the booklet adds the top rate to the last row's + tax, producing less tax. + example: The booklet shortcut is $1.60 below the card formula in 2024 and $1.70 below it in 2025. + pe_us: + follows: gap-fill + code: + - policyengine_us/parameters/gov/states/ar/tax/income/rates/main/tax_table/threshold.yaml + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9611 + - https://github.com/PolicyEngine/policyengine-us/pull/9624 + - https://github.com/PolicyEngine/policyengine-us/pull/9696 + state: unreviewed + note: 'PE-US follows the bracket card''s gap-fill; verify each year''s publications and resolve the differing + supplied 2025 page references. Code not yet on main: ar_regular_income_tax, ar_main_income_tax, gov.states.ar.tax.income.rates.main.tax_table.threshold.' +- id: us-ar:liheap-fy2025-benefit-matrix + program: liheap + years: + from: 2025 + to: 2025 + type: federal-fiscal + question: Does FY2025 Arkansas LIHEAP use AEO's increased matrix or the clearinghouse matrix repeating FY2024 + base amounts? + sources: + - kind: guidance + citation: AEO FY2025 Benefit Matrices, October 7, 2024 + url: https://web.archive.org/web/20241206194455/https://www.adeq.state.ar.us/energy/assistance/pdfs/liheap_benefit-matix_2025_electric.pdf#page=1 + - kind: guidance + citation: ACF LIHEAP Clearinghouse 2025 Arkansas matrix + url: https://liheapch.acf.gov/docs/2025/benefits-matricies/AR_BenefitMatrix_2025.pdf#page=1 + readings: + statute: No statute is supplied; AEO's FY2025 electric matrix uses $242, $288 and $344 at the lowest income + band. + other: The clearinghouse matrix uses $202, $240 and $287. + example: Electric heating, household size 1-2 and income $0-$69 yields $242 under AEO's matrix versus $202 under + the clearinghouse matrix. + pe_us: + follows: unknown + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9973 + state: unreviewed + note: 'PE-US follows AEO''s matrix; verify the clearinghouse document''s effective year and possible mislabeling. + Code not yet on main: ar_liheap benefit parameters.' +- id: us-ar:liheap-gambling-and-capital-gains + program: liheap + years: + from: 2025 + to: 2026 + type: federal-fiscal + question: Does Arkansas LIHEAP count all gambling winnings and positive capital gains or exclude nonrecurring + lump sums other than lottery winnings? + sources: + - kind: guidance + citation: FY2026 LIHEAP State Plan §1.9, page 7 + url: https://liheapch.acf.gov/docs/2026/state-plans/AR_Plan_2026.pdf#page=5 + - kind: manual + citation: Arkansas LIHEAP manual page 138 + url: null + - kind: manual + citation: Draft manual Appendix F pp.132 and 135 + url: https://liheapch.acf.gov/sites/default/files/webfiles/docs/2025/manuals/AR_Manual%5Bdraft%5D_2025.pdf#page=36 + readings: + statute: No statute is supplied; the plan counts lottery winnings as the only one-time lump sum and the manual + excludes nonrecurring lump sums. + other: Appendix F counts all gaming and gambling winnings and positive capital gains. + pe_us: + follows: unknown + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9973 + state: unreviewed + note: 'PE-US follows Appendix F; verify final operative text and whether specific inclusions override the general + exclusion. Code not yet on main: ar_liheap countable income.' +- id: us-ar:liheap-minor-and-student-earnings + program: liheap + years: + from: 2025 + to: 2026 + type: federal-fiscal + question: Are all minors' and full-time students' earnings excluded or only the narrower student categories specified + by the manuals? + sources: + - kind: form + citation: AEO 9495 application §III, R 01/FY2025 and R 11/2025 + url: https://www.adeq.state.ar.us/energy/assistance/pdfs/fillable_aeo-9495_liheap-long-application.pdf#page=2 + - kind: manual + citation: FY2025 draft and FFY2025 LIHEAP manuals; draft pp.133-134 and final pp.56, 141, 158-159 + url: https://liheapch.acf.gov/docs/2025/manuals/AR_Manual_2025.pdf#page=12 + readings: + statute: No statute is supplied; the application requests work income only from adults who are not full-time + students. + other: The manuals condition exclusions on attendance, dependency, age and other student circumstances. + example: A 35-year-old full-time graduate student with $40,000 wages has $0 countable income and a $308 gas grant + in FY2026; the same nonstudent receives $0. + pe_us: + follows: unknown + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9973 + state: unreviewed + note: 'PE-US follows the forms; verify that omitted questions constitute an exclusion rather than a separate reporting + process. Code not yet on main: ar_liheap countable income.' +- id: us-ar:liheap-workers-compensation-and-tea + program: liheap + years: + from: 2026 + to: 2026 + type: federal-fiscal + question: Does Arkansas LIHEAP count workers' compensation and TEA despite the plan leaving corresponding income + categories unchecked? + sources: + - kind: guidance + citation: FY2026 LIHEAP State Plan §1.9 + url: https://liheapch.acf.gov/docs/2026/state-plans/AR_Plan_2026.pdf#page=5 + - kind: manual + citation: Draft manual Appendices E-F pp.130 and 144 + url: null + - kind: form + citation: AEO 9495 application R 11/2025, page 2 + url: https://www.adeq.state.ar.us/energy/assistance/pdfs/fillable_aeo-9495_liheap-long-application.pdf#page=2 + readings: + statute: No statute is supplied; the plan leaves direct insurance payments and TANF unchecked. + other: The manual and application count workers' compensation and TEA. + example: A five-person household with fuel-oil heat receives $570 with no income versus $497 with $286 monthly + TEA in FY2026. + pe_us: + follows: unknown + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9973 + state: unreviewed + note: 'PE-US counts both sources; verify final manual adoption and the plan''s categories. Code not yet on main: + ar_liheap countable income.' +- id: us-ar:snap-child-support-deduction + program: snap + years: + from: 2010 + to: 2010 + type: calendar + question: Did Arkansas deduct child support paid for SNAP or exclude it from gross income as historical federal + reports indicate? + sources: + - kind: manual + citation: Arkansas DHS SNAP Certification Manual §§6550 and 7524 + url: https://humanservices.arkansas.gov/wp-content/uploads/Complete_SNAP_Manual.pdf + - kind: guidance + citation: SNAP State Options Report, 6th-8th Editions + url: https://fns-prod.azureedge.us/sites/default/files/snap/8-State_Options.pdf#page=18 + readings: + statute: No statute is supplied; the manual treats child support paid as a deduction. + other: The historical report editions list an exclusion. + pe_us: + follows: unknown + code: + - policyengine_us/parameters/gov/usda/snap/income/deductions/child_support.yaml + prs: [] + state: unreviewed + note: PE-US follows the manual; obtain its version effective on 2010-01-01 to confirm historical overlap. +- id: us-ar:sra-no-copay-threshold + program: child-care-assistance + years: + from: 2025 + type: calendar + question: Does Arkansas School Readiness Assistance waive copays through 75% SMI or only through 40% SMI? + sources: + - kind: plan + citation: Arkansas CCDF State Plan §2.3.1(b) + url: null + - kind: guidance + citation: SRA Sliding Fee Scale with Rates and Copays, Statewide Full Time, November 1, 2025 + url: https://dese.ade.arkansas.gov/Files/SRA_Sliding_Fee_Scale_with_Rates_&_Copays--Statewide_Full_Time_20251101_OEC.pdf + readings: + statute: No statute is supplied; the plan waives cost of care at or below 75% SMI. + other: The operational sheet zeroes copays only at or below 40% SMI. + pe_us: + follows: unknown + code: + - policyengine_us/parameters/gov/states/ar/ade/oec/sra/rates/no_copay_smi_threshold.yaml + - policyengine_us/variables/gov/states/ar/ade/oec/sra/rates/ar_sra_daily_copay.py + prs: [] + state: unreviewed + note: PE-US follows the sheet from 2025-11-01; obtain the plan URL and verify dates and waiver conditions. +- id: us-az:claim-of-right-addback-condition + program: income-tax + years: + from: 2025 + to: 2025 + type: tax + question: Is the federal claim-of-right deduction added back whenever taken federally or only when it reduced + Arizona taxable income? + sources: + - kind: statute + citation: A.R.S. §43-1021(9) + url: https://www.azleg.gov/ars/43/01021.htm + - kind: instructions + citation: 2025 Form 140 instructions, PDF p.9 + url: https://azdor.gov/sites/default/files/document/FORMS_INDIVIDUAL_2025_140i.pdf#page=9 + readings: + statute: The addition names the federal section 1341(a)(4) deduction without requiring that it reduced Arizona + taxable income. + other: The addition applies only when the federal deduction is reflected in Arizona taxable income. + pe_us: + follows: not-modelled + code: + - policyengine_us/variables/gov/states/az/tax/income/az_additions.py + - policyengine_us/variables/gov/states/az/tax/income/az_agi.py + prs: [] + state: unreviewed + note: Verify the statutory reading and the instruction's limitation when Arizona uses its standard deduction. +- id: us-az:claim-of-right-small-repayment-amendment + program: income-tax + years: + from: 2025 + to: 2025 + type: tax + question: May instructions direct repayments below the statute's $3,000 threshold to an amended return while leaving + exactly $3,000 unaddressed? + sources: + - kind: statute + citation: A.R.S. §43-1029(A)(3) + url: https://www.azleg.gov/ars/43/01029.htm + - kind: instructions + citation: 2025 Arizona Claim of Right (Individual) instructions, PDF p.1 + url: https://azdor.gov/sites/default/files/document/FORMS_INDIVIDUAL_2025_CLAIMOFRIGHT-INDIVIDUALi.pdf#page=1 + readings: + statute: The provision requires a deduction exceeding $3,000 and is silent on smaller repayments. + other: The instructions send repayments below $3,000 to an amended inclusion-year return without addressing + exactly $3,000. + pe_us: + follows: not-modelled + code: [] + prs: [] + state: unreviewed + note: Verify the legal basis for the amended-return remedy and treatment of exactly $3,000. +- id: us-ca:care-fera-housing-subsidies + program: care-fera + years: + from: 2026 + type: calendar + question: Are housing subsidies excluded from CARE and FERA income or counted as the application and filed tariff + sheet state? + sources: + - kind: guidance + citation: CPUC D.14-08-030 §6.2 and Ordering Paragraph 40(3) + url: https://liob.cpuc.ca.gov/wp-content/uploads/sites/14/2020/12/ACF22B3.pdf#page=124 + - kind: manual + citation: CPUC ESA P&P Manual §2.2.2 + url: null + - kind: form + citation: PG&E Form 01-9077, CARE/FERA Program Application, Rev. 6.26 + url: https://www.pge.com/assets/pge/localized/en/docs/account/billing-and-assistance/care-fera-application.pdf + - kind: form + citation: Revised Cal. P.U.C. Sheet No. 61313-E, Advice 7905-E, effective June 1, 2026 + url: https://www.pge.com/tariffs/assets/pdf/tariffbook/ELEC_FORMS_79-1055.pdf#page=3 + - kind: agency-practice + citation: PG&E reply brief, 2026-06-05 + url: null + readings: + statute: No statute is supplied; the Commission decision excludes housing subsidies, as does stated utility + practice. + other: The application and tariff sheet list housing subsidies as income. + example: An LA renter with $40,700 earnings and housing assistance changed CARE eligibility under national versus + county SPM selection in the earlier capped-subsidy example. + pe_us: + follows: unknown + code: + - policyengine_us/parameters/gov/states/ca/cpuc/income_sources.yaml + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9464 + - https://github.com/PolicyEngine/policyengine-us/pull/9467 + state: unreviewed + note: 'Current PE-US evidence excludes housing subsidies; the decision''s exclusion starts 2014-08-14, while FERA + coverage and earlier conflicting form editions need verification. Code not yet on main: gov.states.ca.cpuc.income_sources, + ca_care_eligible, CPUC countable income sources parameter.' +- id: us-ca:itemized-limit-casualty-exclusion + program: income-tax + years: + from: 2018 + type: tax + question: Does California's itemized-deduction limitation exclude its own casualty deduction or the federal Schedule + A line 15 amount referenced by the worksheet? + sources: + - kind: statute + citation: R&TC §17077, adopting 26 U.S.C. 68(c)(3) + url: https://leginfo.legislature.ca.gov/faces/codes_displaySection.xhtml?lawCode=RTC§ionNum=17077 + - kind: worksheet + citation: 2024 Schedule CA line 29 worksheet, line 2, Form 540 booklet PDF p.68 + url: https://www.ftb.ca.gov/forms/2024/2024-540-booklet.pdf#page=68 + readings: + statute: Exclude California's own casualty deduction from the limitation. + other: The literal worksheet reference excludes the federal casualty amount, recorded as zero from 2018. + pe_us: + follows: statute + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10068 + state: unreviewed + note: 'The merged PR follows the statute; verify worksheet editions and affected years. Code not yet on main: + gov.states.ca.tax.income.deductions.itemized.limit.excluded_deductions, ca_casualty_loss_deduction.' +- id: us-ca:itemized-limit-investment-interest-exclusion + program: income-tax + question: Does the itemized-deduction limitation exclude California investment interest or the federal Schedule + A line 9 amount? + sources: + - kind: statute + citation: R&TC 17077, incorporating IRC 68(c)(2) + url: null + - kind: worksheet + citation: 540 Schedule CA itemized limitation worksheet, FTB Line 29 worksheet + url: null + readings: + statute: Exclude California's investment-interest deduction from FTB 3526 line 10. + other: Exclude federal Schedule A line 9. + pe_us: + follows: conflicting-source + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9977 + state: ruled + note: An October 2026 ruling followed the worksheet; the later statute-first rule requires changing to the California + deduction, with years and citations verified. +- id: us-ca:joint-childless-eitc-claimable-spouse + program: income-tax + years: + from: 2025 + to: 2025 + type: tax + question: Does the statutory federal dependency rule bar a joint childless CalEITC claim despite instructions + that skip the dependency question for joint filers? + sources: + - kind: statute + citation: RTC 17052 adopting IRC 32(c)(1)(A)(ii)(III) + url: null + - kind: instructions + citation: 2025 FTB 3514 booklet, Step 4(d), p.6 + url: https://www.ftb.ca.gov/forms/2025/2025-3514-booklet.pdf#page=6 + readings: + statute: The either-spouse dependency bar denies the childless credit when one spouse is claimable. + other: Applying the instruction flow literally skips the dependency question and allows the credit. + example: In 2025, spouses aged 25 with $500 wages each and one claimable spouse receive $0 under the statute versus + $65.025 under the model's continuous formula if the instruction flow permits eligibility. + pe_us: + follows: statute + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10053 + state: ruled + note: 'The October 2026 statute-first ruling retains the bar; obtain the statutory URL and verify the instruction + flow''s joint-return effect. Code not yet on main: ca_eitc_eligible.' +- id: us-ca:renter-credit-2025-joint-income-limit + program: income-tax + years: + from: 2025 + to: 2025 + type: tax + question: Is the joint, head-of-household and surviving-spouse renter-credit income limit $107,988 under the statute + and booklet or $107,987 on the agency website? + sources: + - kind: statute + citation: RTC 17053.5(j)(4) + url: null + - kind: form + citation: 2025 renter's credit qualification record question 2 + url: https://www.ftb.ca.gov/forms/2025/2025-540-booklet.pdf#page=25 + - kind: guidance + citation: FTB nonrefundable renter's credit web page + url: https://www.ftb.ca.gov/file/personal/credits/nonrefundable-renters-credit.html + readings: + statute: Twice the $53,994 single amount is $107,988, also used by the qualification record. + other: The agency website gives $107,987. + example: The published limits differ by $1. + pe_us: + follows: statute + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10053 + state: unreviewed + note: 'Verify the statutory indexing calculation and preserve dated evidence of the website discrepancy. Code + not yet on main: ca_renter_credit.' +- id: us-ca:renter-credit-one-excluded-joint-spouse + program: income-tax + years: + from: 2025 + to: 2025 + type: tax + question: Does an eligible spouse retain the joint renter credit despite the form's stopping rule when the other + spouse meets an individual statutory exclusion? + sources: + - kind: statute + citation: RTC 17053.5(a)(1)(A), (d)(2)-(3), SB 1005 + url: https://www.leginfo.ca.gov/pub/15-16/bill/sen/sb_1001-1050/sb_1005_bill_20160701_chaptered.pdf#page=88 + - kind: form + citation: 2025 Form 540 booklet, renter's credit qualification record questions 4-5, p.25 + url: https://www.ftb.ca.gov/forms/2025/2025-540-booklet.pdf#page=25 + readings: + statute: The individual exclusion leaves the qualified spouse eligible for the $120 joint credit. + other: The qualification record ends eligibility for the entire joint return when either spouse answers yes. + example: With $2,000 joint AGI and $6,000 rent, the statutory reading gives $120 versus $0 under the form reading. + pe_us: + follows: statute + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10053 + state: ruled + note: 'The October 2026 statute-first ruling retains $120; verify the procedural inference from the form and the + spouse exclusions. Code not yet on main: ca_renter_credit.' +- id: us-ca:santa-clara-ga-vehicle-boundary + program: general-assistance-santa-clara + years: + from: 2016 + type: calendar + question: Is a Santa Clara County General Assistance vehicle worth exactly $4,650 exempt or countable? + sources: + - kind: manual + citation: SCC General Assistance Handbook, Motor Vehicle chapter + url: https://stgenssa.sccgov.org/debs/program_handbooks/general_assistance/assets/08Property/Motor_Vehicle.htm + - kind: form + citation: SCC GA-62 summary sheet + url: https://stgenssa.sccgov.org/debs/Forms/GA_62_en.pdf#page=2 + readings: + statute: No statute is supplied; the handbook exempts vehicles worth up to $4,650. + other: GA-62 exempts vehicles worth less than $4,650. + example: A vehicle worth exactly $4,650 is exempt under the handbook and countable under the form. + pe_us: + follows: unknown + code: + - policyengine_us/variables/gov/local/ca/scc/ga/eligibility/ca_scc_general_assistance_countable_vehicle_value.py + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9072 + state: unreviewed + note: 'PE-US follows the handbook; verify the form revision and overlapping effective period. Code not yet on + main: ca_scc_general_assistance_countable_vehicle_value.' +- id: us-ca:snap-child-support-exclusion + program: snap + years: + from: 2023 + to: 2023 + type: federal-fiscal + question: Does California exclude child support paid from SNAP gross income or treat it as a deduction? + sources: + - kind: guidance + citation: CDSS ACL 06-31 + url: https://www.cdss.ca.gov/getinfo/acl06/pdf/06-31.pdf + - kind: manual + citation: MPP 63-502.2(p) + url: null + - kind: guidance + citation: SNAP State Options Report, 15th Edition, page 15 + url: https://fns-prod.azureedge.us/sites/default/files/resource-files/snap-15th-state-options-report-october23.pdf#page=17 + readings: + statute: No statute is supplied; California's rules exclude child support paid from gross income. + other: The federal report lists a deduction. + pe_us: + follows: unknown + code: + - policyengine_us/parameters/gov/usda/snap/income/deductions/child_support.yaml + prs: [] + state: unreviewed + note: PE-US follows state rules; verify the report's period of 2022-10-01 through 2023-09-30. +- id: us-ca:snap-sua-elderly-disabled-implementation-timing + program: snap + years: + from: 2025 + to: 2026 + type: calendar + question: Does the statutory elderly-or-disabled restriction on deemed SNAP utility allowances apply immediately + or under California's staged implementation? + sources: + - kind: statute + citation: P.L. 119-21 §10103(a), amending 7 U.S.C. 2014(e)(6)(C)(iv)(I) + url: null + - kind: agency-practice + citation: CDSS ACL 25-68, PDF pages 7-8 + url: null + readings: + statute: The restriction applies according to statutory timing without California's staged implementation. + other: New applicants receive the restriction after automation; ongoing households retain the allowance until + recertification. + pe_us: + follows: conflicting-source + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9610 + state: unreviewed + note: 'The rule requires statutory timing rather than the model''s 2025-11-01 proxy; verify commencement and authorized + transitions before changing it. Code not yet on main: is_snap_sua_hr1_in_effect, snap_utility_allowance_type.' +- id: us-ca:ssp-nmohc-couple-standard + program: ssi-ssp + years: + from: 2026 + to: 2026 + type: calendar + question: Is California's couple nonmedical out-of-home care standard $3,252.14 or the $3,239.14 printed in agency + summaries? + sources: + - kind: statute + citation: Cal. WIC §12200(g) + url: https://leginfo.legislature.ca.gov/faces/codes_displaySection.xhtml?lawCode=WIC§ionNum=12200 + - kind: manual + citation: SSA POMS SI 01415.058 §B + url: null + - kind: guidance + citation: CDSS 2026 May Revision + url: null + - kind: guidance + citation: CDSS ACIN I-59-25 + url: https://cdss.ca.gov/Portals/9/Additional-Resources/Letters-and-Notices/ACINs/2025/I-59_25.pdf + - kind: guidance + citation: CDSS SSI Total Monthly Payment Amounts 2026 + url: https://cdss.ca.gov/Portals/13/SHD/ParaRegIndex/SSI%20Monthly%20Payment%20Amounts%202026.pdf + - kind: guidance + citation: SSA pamphlet EN-05-11125 + url: null + readings: + statute: The per-recipient amount gives twice the $1,626.07 individual rate, or $3,252.14 for a couple. + other: The CDSS monthly table and SSA pamphlet print $3,239.14. + example: The monthly allowance is $3,252.14 − $2,098.83 = $1,153.31 versus $1,140.31 under the lower standard. + pe_us: + follows: statute + code: + - policyengine_us/parameters/gov/states/ca/cdss/state_supplement/payment_standard/allowance/out_of_home_care.yaml + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9709 + state: unreviewed + note: 'Verify the per-recipient calculation and document the inconsistent 2026 summary tables. Code not yet on + main: gov.states.ca.cdss.state_supplement.payment_standard.allowance.out_of_home_care.' +- id: us-co:claim-of-right-subtraction-practice + program: income-tax + years: + from: 2016 + to: 2019 + type: tax + question: Does Colorado's previously-taxed-income subtraction permit relief for a repayment receiving a federal + section 1341 credit as earlier DOR practice allowed? + sources: + - kind: statute + citation: C.R.S. §39-22-104(4)(c) + url: https://olls.info/crs/crs2025-title-39.pdf#page=386 + - kind: agency-practice + citation: Colorado DOR 2018 Tax Expenditure Report, PDF p.86 + url: https://spl.cde.state.co.us/artemis/revserials/rev13016internet/rev130162018internet.pdf#page=86 + - kind: guidance + citation: August 2021 State Auditor report, PDF p.11 + url: https://leg.colorado.gov/sites/default/files/images/committees/2017/osa_policy_considerations_for_tax_policy_committee_8.2021.pdf#page=11 + readings: + statute: The text does not expressly address repayments; DOR later concluded it did not authorize this subtraction. + other: Earlier DOR administration allowed a subtraction equal to the credit-related repayment when Colorado + had previously taxed the income. + pe_us: + follows: not-modelled + code: [] + prs: [] + state: unreviewed + note: Historical gap-fill candidate; verify contemporaneous law, the practice transition, eligible years, amount + and refundability. +- id: us-co:claimable-filer-child-and-family-credits + program: income-tax + years: + from: 2024 + to: 2025 + type: tax + question: Does the statutory qualifying-child definition permit a claimable filer to receive the child tax and + family affordability credits despite guidance requiring federal child tax credit eligibility? + sources: + - kind: statute + citation: C.R.S. 39-22-129, HB23-1112 + url: https://leg.colorado.gov/sites/default/files/2023a_1112_signed.pdf#page=4 + - kind: statute + citation: C.R.S. 39-22-130, HB24-1311 + url: https://leg.colorado.gov/sites/default/files/2024a_1311_signed.pdf#page=3 + - kind: guidance + citation: Colorado DOR January 2026 CTC guidance p.2; FATC guidance p.1 + url: https://tax.colorado.gov/sites/tax/files/documents/ITT_Child_Tax_Credit_Jan_2026.pdf#page=2 + readings: + statute: The IRC 152(c) definition permits the credits despite the filer's claimability. + other: Federal dependency requirements bar both credits for a claimable filer. + example: In 2025, $10,000 AGI and one age-4 child give $1,200 CTC and $3,273 family credit under the statutory + reading, versus $0 for both. + pe_us: + follows: conflicting-source + code: + - policyengine_us/variables/gov/states/co/tax/income/credits/ctc/co_ctc_eligible_child.py + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10049 + state: ruled + note: 'The October 2026 statute-first ruling requires changing the exclusion if the statutory inference is confirmed; + verify the incorporation and guidance scope. Code not yet on main: co_family_affordability_credit.' +- id: us-co:claimable-filer-disabled-child-care-credit + program: income-tax + years: + from: 2025 + to: 2025 + type: tax + question: Does the statutory dependent requirement bar a claimable filer's disabled child, or does the form's + Section 21 reference preserve eligibility? + sources: + - kind: statute + citation: C.R.S. 39-22-119.5(2)(b), (3)(a)(III) + url: https://olls.info/crs/crs2025-title-39.pdf#page=411 + - kind: instructions + citation: 2025 DR 0347, Book 104 p.81 + url: https://tax.colorado.gov/sites/tax/files/documents/Book104_2025.pdf#page=81 + readings: + statute: A complete-dependent reading incorporates IRC 152(b)(1) and denies the credit. + other: The Section 21 reference disregards IRC 152(b)(1) for an incapable child and permits the credit. + example: In 2025, $10,000 AGI, $1,000 care expenses and zero federal liability give min(0.25 × $1,000, $500) = + $250 under the form reading, versus $0. + pe_us: + follows: conflicting-source + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10049 + state: ruled + note: 'The October 2026 statute-first ruling requires changing the $250 result if the complete-dependent reading + is confirmed; resolve whether the statute itself permits the exception. Code not yet on main: co_low_income_cdcc.' +- id: us-co:deduction-addback-agi-boundary + program: income-tax + years: + from: 2022 + to: 2026 + type: tax + question: Does Colorado's high-income deduction addback apply when federal AGI equals the threshold? + sources: + - kind: statute + citation: C.R.S. §39-22-104(3)(p)-(p.7) + url: https://olls.info/crs/crs2025-title-39.pdf#page=382 + - kind: guidance + citation: Colorado Individual Income Tax Guide, January 2026, PDF p.8 + url: https://tax.colorado.gov/sites/tax/files/documents/Individual_Income_Tax_Guide_January_2026.pdf#page=8 + readings: + statute: The addback applies when AGI equals or exceeds $400,000 in 2022 or $300,000 from 2023. + other: The guide says AGI exceeds the threshold, excluding equality. + pe_us: + follows: unknown + code: + - policyengine_us/parameters/gov/states/co/tax/income/additions/federal_deductions/agi_threshold.yaml + - policyengine_us/variables/gov/states/co/tax/income/additions/federal_deductions/co_federal_deduction_addback.py + prs: [] + state: unreviewed + note: Verify the guide's year coverage and the model's comparison operator. +- id: us-co:joint-childless-eitc-dependent-question + program: income-tax + years: + from: 2025 + to: 2025 + type: tax + question: Does the form's disjunctive dependency question permit a joint childless EITC claim with one claimable + spouse despite the incorporated federal either-spouse bar? + sources: + - kind: statute + citation: C.R.S. 39-22-123.5, HB21-1311, incorporating IRC 32(c)(1)(A)(ii)(III) + url: https://leg.colorado.gov/sites/default/files/2021a_1311_signed.pdf#page=9 + - kind: form + citation: 2025 DR 0104TN, Part 4(a), p.5 + url: https://tax.colorado.gov/sites/tax/files/documents/DR0104TN_2025.pdf#page=5 + readings: + statute: Neither spouse may be claimable outside the filing exception. + other: A literal disjunctive reading permits the return when one spouse cannot be claimed and an expansion route + applies. + example: The research's TY2024 illustration uses a childless age-30 filer with $1,000 wages and gives $0 versus + $39, half the $78 table EITC; the cited form is for 2025. + pe_us: + follows: statute + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10049 + state: ruled + note: The October 2026 ruling retains the statutory bar; verify the weak literal joint-return interpretation and + obtain a corresponding 2025 example. +- id: us-co:oap-initial-application-income-test + program: old-age-pension + years: + from: 2025 + type: calendar + question: Does Colorado OAP test initial applicants' gross income or countable income after disregards? + sources: + - kind: regulation + citation: 9 CCR 2503-5 §§3.533 and 3.520.781(A) + url: https://www.sos.state.co.us/CCR/GenerateRulePdf.do?fileName=9+CCR+2503-5&ruleVersionId=12428#page=74 + - kind: manual + citation: CDHS Adult Financial Reference Guide, December 2025 + url: null + readings: + statute: No statute is supplied; the regulation applies disregards before testing total countable income. + other: The guide requires gross income below the maximum grant standard at initial application. + pe_us: + follows: unknown + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10176 + state: open + note: 'PE-US follows the regulation; verify the guide''s applicability, earlier coverage from 2020, and the requested + source choice. Code not yet on main: co_oap, co_oap_countable_income.' +- id: us-co:oap-interest-and-dividends + program: old-age-pension + years: + from: 2026 + type: calendar + question: For Colorado's Old Age Pension, are interest and dividends countable unearned income under 3.520.785(B)(10), + or exempt under 3.520.786(K), which exempts the unearned income SSA excludes, including interest and dividends + on countable resources? + sources: + - kind: regulation + citation: us-co/regulation/9-ccr-2503-5/3.520.785 + url: null + - kind: regulation + citation: us-co/regulation/9-ccr-2503-5/3.520.786 + url: null + - kind: regulation + citation: us-co/regulation/9-ccr-2503-5/3.520.781 + url: null + readings: + statute: Exempt interest and dividends on countable resources, because 3.520.781(C) makes the 3.520.786 exemptions + govern countable income and 3.520.786(K) incorporates SSA's exclusions (20 CFR 416.1124). + other: Count interest and dividends as unearned income under 3.520.785(B)(10). + example: A 2026 client with $360 of interest and $240 of dividends a year ($50 a month) has no countable income + from them under the exempt reading; under 3.520.785(B)(10) the $50 a month is countable unearned income before + the unearned income disregard. + pe_us: + follows: statute + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10176 + state: ruled + note: Verified entry drafted in TheAxiomFoundation/rulespec-us#1825; it registers once its source captures are + on main. +- id: us-co:premium-assistance-ptc-recipients + program: health-insurance-premium-assistance + years: + from: 2026 + type: calendar + question: Does Colorado Premium Assistance cover only premium-tax-credit recipients or every qualifying exchange + enrollee? + sources: + - kind: statute + citation: C.R.S. 10-16-1205(1)(b)(II) + url: null + - kind: regulation + citation: Colorado Reg 4-2-78 §4C + url: null + readings: + statute: A claimable spouse who does not receive the premium tax credit is excluded. + other: A claimable spouse remains in the eligible-enrollee count and subsidy cap. + example: A joint couple aged 30 with one claimable spouse and 2026 MAGI of $23,475 receives $960 under the statute + versus $1,308 under the regulation. + pe_us: + follows: statute + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10041 + state: ruled + note: 'Ruled in October 2026 to follow the statute; verify the applicable regulation version. Code not yet on + main: co premium assistance formula, aca_ptc_slcsp.' +- id: us-dc:eitc-no-tin-child-schedule-before-2023 + program: income-tax + years: + from: 2021 + to: 2022 + type: tax + question: Does a filer whose qualifying child has no SSN or ITIN use the federal-match route under the DC-law + reading or the childless schedule described by ARPA and the booklet? + sources: + - kind: statute + citation: D.C. Code §47-1806.04(f)(4), (f)(1)(C) + url: https://code.dccouncil.gov/us/dc/council/code/sections/47-1806.04#(f)(1)(D)(ii) + - kind: statute + citation: ARPA §9622 heading + url: null + - kind: instructions + citation: 2021 D-40 booklet, New for 2021 note, PDF p.3 + url: null + readings: + statute: The DC provision read alone retains qualifying-child classification and matches the self-only federal + credit actually allowed. + other: ARPA and the booklet support the DC childless schedule when the child's identification requirements fail. + example: With $20,000 wages and a disabled adult child without a TIN, the readings give $0 versus $560 in 2022 + and $87.33 versus $1,480.21 in 2021. + pe_us: + follows: unknown + code: + - policyengine_us/variables/gov/states/dc/tax/income/credits/eitc/dc_eitc_has_qualifying_child.py + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9643 + state: ruled + note: 'The October 2026 ruling chose the childless schedule; verify ARPA''s effect before identifying a statutory + departure and establish any pre-2021 conflict separately. Code not yet on main: gov.states.dc.tax.income.credits.eitc.qualifying_child_tin_required.' +- id: us-dc:schedule-h-claimable-unclaimed-claimant + program: property-tax-credit + question: Does the statutory dependent-claimant bar apply to a claimable but unclaimed filer or only to a filer + actually claimed under the instructions? + sources: + - kind: statute + citation: D.C. Code 47-1806.06(k) + url: https://code.dccouncil.gov/us/dc/council/code/sections/47-1806.06 + - kind: instructions + citation: DC Schedule H instructions + url: null + readings: + statute: The PR interprets dependent as claimable and applies the statutory age exception. + other: Only an actual dependency claim triggers the bar. + pe_us: + follows: statute + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10050 + state: ruled + note: 'The October 2026 statute-first ruling requires rechecking dependent; establish years and instruction text, + separately from the rent-pooling issue. Code not yet on main: dc_ptc, dc_ptc_has_eligible_claimant.' +- id: us-de:529-subtraction-exact-agi-limit + program: income-tax + years: + from: 2024 + to: 2024 + type: tax + question: Does the 529 subtraction remain available exactly at the statutory AGI limit despite instructions requiring + AGI below it? + sources: + - kind: statute + citation: 30 Del. C. §1106(b)(11) + url: https://delcode.delaware.gov/title30/c011/sc02/index.html + - kind: instructions + citation: 2024 PIT-RES instructions line 8b + url: https://revenuefiles.delaware.gov/2024/PIT_2024_Forms/PIT_Instructions/PIT-RES_TY24_2024-01_Instructions.pdf#page=7 + readings: + statute: A filer exactly at $100,000 AGI or $200,000 joint AGI qualifies because only amounts above the limits + are excluded. + other: AGI must be strictly below the relevant limit. + pe_us: + follows: statute + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9878 + state: unreviewed + note: 'Verify instruction coverage from 2022 onward and the statutory anchor; the supplied variable name is inferred + from a test filename. Code not yet on main: de_529_plan_subtraction.' +- id: us-de:eitc-combined-separate-spouse-routing + program: income-tax + years: + from: 2022 + to: 2025 + type: tax + question: Does the nonrefundable EITC go to the spouse with greater remaining tax under the statute and worksheet + or higher taxable income under the instructions? + sources: + - kind: statute + citation: 30 Del. C. §1117(b) + url: https://delcode.delaware.gov/title30/c011/sc02/index.html#1117 + - kind: instructions + citation: 2025 PIT-RES instructions p.10; same prose in 2022-2024 and 2011/2013 booklets + url: https://revenuefiles.delaware.gov/2025/PITForms_Instructions/Instructions/PIT-RES_Instructions_2025-01.pdf#page=10 + - kind: worksheet + citation: 2025 PIT-RSS Schedule II line 12 + url: https://revenuefiles.delaware.gov/2025/PITForms_Instructions/PIT-RSS_2025-01_PaperInteractiveIPM.pdf#page=1 + readings: + statute: Route the credit to the spouse with greater remaining tax before EITC. + other: Route the credit to the spouse with higher taxable income. + example: In 2025, spouses aged 60 and 45 with $12,000 and $11,000 wages have $0 and $64 remaining tax; household + tax is $15.20 under statutory routing versus $53.02 under instruction routing. + pe_us: + follows: conflicting-source + code: + - policyengine_us/variables/gov/states/de/tax/income/de_income_tax_before_refundable_credits_separate.py + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9981 + state: ruled + note: The October 2026 ruling requires switching to remaining-tax routing; verify implementation and historical + coverage, including the recorded 2011 and 2013 examples. +- id: us-de:elderly-disabled-exclusion-age-sixty + program: income-tax + years: + from: 2022 + to: 2025 + type: tax + question: Does an exactly 60-year-old spouse satisfy the exclusion's age test under the worksheet despite the + statute requiring an age over 60? + sources: + - kind: statute + citation: 30 Del. C. §1106(b)(2) + url: https://delcode.delaware.gov/title30/c011/sc02/index.html#1106 + - kind: worksheet + citation: PIT-RES instructions line 11 worksheet p.7, 2022, 2024 and 2025 + url: https://revenuefiles.delaware.gov/2025/PITForms_Instructions/Instructions/PIT-RES_Instructions_2025-01.pdf#page=7 + readings: + statute: The quoted joint-return provision requires spouses to be over 60 or totally and permanently disabled. + other: The worksheet accepts spouses aged at least 60 or totally and permanently disabled. + pe_us: + follows: conflicting-source + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9858 + state: unreviewed + note: 'The statute-first rule requires replacing age-60 eligibility if the literal boundary is confirmed; verify + individual-return scope and intervening editions. Code not yet on main: de_elderly_or_disabled_income_exclusion_joint, + de_elderly_or_disabled_income_exclusion_indiv.' +- id: us-de:snap-child-support-exclusion + program: snap + years: + from: 2023 + to: 2024 + type: federal-fiscal + question: Does Delaware exclude child support paid from SNAP gross income or treat it as a deduction? + sources: + - kind: regulation + citation: DSSM 9059(26) + url: https://www.law.cornell.edu/regulations/delaware/16-Del-Admin-Code-SS-9000-9059 + - kind: guidance + citation: SNAP State Options Report, 15th and 16th Editions + url: https://fns-prod.azureedge.us/sites/default/files/resource-files/snap-16th-state-options-report-june24.pdf#page=17 + readings: + statute: No statute is supplied; Delaware's rule excludes child support paid. + other: Both federal report editions list a deduction. + pe_us: + follows: unknown + code: + - policyengine_us/parameters/gov/usda/snap/income/deductions/child_support.yaml + prs: [] + state: unreviewed + note: PE-US follows the state rule; verify report periods from 2022-10-01 through 2024-09-30. +- id: us-fl:liheap-energy-in-unsubsidized-rent + program: liheap + years: + from: 2025 + to: 2026 + type: federal-fiscal + question: Does including energy costs in unsubsidized rent permit Florida LIHEAP eligibility or prevent the required + landlord certification? + sources: + - kind: manual + citation: Florida LIHEAP manual parts 900.01A p.39 and 100.01 p.4 + url: https://liheapch.acf.gov/sites/default/files/webfiles/docs/2023/manuals/FL_PolicyManual_2023.pdf#page=4 + - kind: manual + citation: Florida LIHEAP manual part 1100.04B(1), p.47 + url: null + readings: + statute: No statute is supplied; parts 900.01A and 100.01 allow utilities in unsubsidized rent and payment to + the landlord. + other: Part 1100.04B(1) requests a statement that home energy costs are not included in rent. + pe_us: + follows: unknown + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9969 + state: unreviewed + note: 'PE-US follows the eligibility provisions; verify whether the statement applies to a narrower payment situation. + Code not yet on main: fl_liheap eligibility.' +- id: us-fl:liheap-large-household-contract-limit + program: liheap + years: + from: 2026 + to: 2026 + type: federal-fiscal + question: Is Florida LIHEAP's income limit for households of nine or more 60% SMI or 150% of the poverty guideline? + sources: + - kind: guidance + citation: FY2026 LIHEAP State Plan item 2.1 and payment-matrix footnote + url: https://liheapch.acf.gov/docs/2026/state-plans/FL_Plan_2026.pdf#page=4 + - kind: guidance + citation: Executed October 2025 LIHEAP amendment, Attachment A-2 §G8c + url: https://www.pbcgov.com/pubInf/Agenda/20260106/3E2.pdf#page=9 + readings: + statute: No statute is supplied; the plan and operating materials use 60% SMI. + other: The executed amendment specifies 150% poverty for household sizes nine and above. + pe_us: + follows: unknown + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9969 + state: open + note: 'PE-US follows the represented operational rule of 60% SMI; resolve the grant-agreement contradiction. Code + not yet on main: fl_liheap income limit.' +- id: us-fl:liheap-size-13-income-limit + program: liheap + years: + from: 2026 + to: 2026 + type: federal-fiscal + question: Can Florida LIHEAP use the printed $157,686 size-13 income limit despite the federal ceiling and the + plan's 60%-of-SMI policy? + sources: + - kind: statute + citation: 42 U.S.C. 8624(b)(2)(B) + url: https://www.law.cornell.edu/uscode/text/42/8624 + - kind: guidance + citation: FY2026 LIHEAP State Plan item 2.1 + url: https://liheapch.acf.gov/docs/2026/state-plans/FL_Plan_2026.pdf#page=4 + - kind: form + citation: FY2026 LIHEAP Payment Matrix size-13 row and footnote + url: https://liheapch.acf.gov/docs/2026/benefits-matricies/FL_BenefitMatrix_Heat-Cool_2026.pdf + - kind: guidance + citation: Florida LIHEAP portal FAQ size-13 income limit + url: null + readings: + statute: The federal ceiling is the greater of 150% poverty, $122,475 for 13, and 60% SMI; the state plan and + footnote choose 60% SMI, $94,610. + other: The printed row uses $157,686, and the portal states $13,141 monthly. + example: The plan and footnote give $94,610 versus the printed $157,686; corrected bands are $47,305, $66,227 + and $80,419. + pe_us: + follows: statute + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9969 + state: unreviewed + note: 'Distinguish the federal maximum from Florida''s chosen limit and verify the apparently erroneous row. Code + not yet on main: fl_liheap income limit, liheap_smi_limit.' +- id: us-ga:liheap-income-floor-vs-smi-limit + program: liheap + years: + from: 2025 + to: 2027 + type: federal-fiscal + question: Can Georgia's printed 60% SMI limit exclude a large household whose income is below the federal 110% + poverty-guideline floor? + sources: + - kind: statute + citation: 42 U.S.C. 8624(b)(2)(B) + url: https://www.law.cornell.edu/uscode/text/42/8624 + - kind: guidance + citation: Georgia FY2026/FY2025 benefit matrices, 60% SMI table + url: https://liheapch.acf.gov/docs/2026/benefits-matricies/GA_BenefitMatrix_Heat-Cool_2026.pdf + readings: + statute: Income below 110% of the poverty guideline cannot by itself exclude the household. + other: The printed Georgia limits fall below that floor starting at household size 16. + example: A 17-person household earning $111,980 exceeds the $109,627 state limit but is below the $114,015 floor + and receives a $560 natural-gas benefit in the PR. + pe_us: + follows: statute + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9968 + state: unreviewed + note: 'The open PR applies the federal floor; verify each fiscal-year table and the worked benefit. Code not yet + on main: ga_liheap_income_limit, gov.hhs.liheap.fpg_floor.' +- id: us-ga:liheap-lawful-noncitizen-household-members + program: liheap + years: + from: 2025 + to: 2026 + type: federal-fiscal + question: Do lawful noncitizens count as eligible Georgia LIHEAP household members despite contrary language elsewhere + in the manual? + sources: + - kind: manual + citation: Georgia LIHEAP Policy Manual eligibility sections + url: https://liheapch.acf.gov/sites/default/files/webfiles/docs/2023/manuals/GA_PolicyManual_2023.pdf#page=3 + - kind: manual + citation: Georgia LIHEAP Policy Manual page 57 and glossary page 76 + url: https://liheapch.acf.gov/sites/default/files/webfiles/docs/2023/manuals/GA_PolicyManual_2023.pdf#page=3 + readings: + statute: No statute is supplied; the eligibility sections include qualifying lawful immigrants. + other: Page 57 and the glossary leave noncitizens out. + pe_us: + follows: unknown + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9968 + state: unreviewed + note: 'PE-US follows the eligibility sections; identify immigration categories and distinguish applicant eligibility + from household-size counting. Code not yet on main: ga_liheap.' +- id: us-ga:liheap-plan-manual-income-inclusions + program: liheap + years: + from: 2025 + to: 2026 + type: federal-fiscal + question: Does Georgia LIHEAP count lottery winnings, cash gifts, disability payments and workers' compensation + despite the plan leaving those categories unchecked? + sources: + - kind: manual + citation: Georgia LIHEAP Policy Manual, January 2022, §1200.7, page 66 + url: null + - kind: guidance + citation: FY2026 LIHEAP State Plan §1.9, page 6 + url: https://liheapch.acf.gov/docs/2026/state-plans/GA_Plan_2026.pdf#page=5 + readings: + statute: No statute is supplied; the manual counts these income sources. + other: The plan leaves these income categories unchecked. + pe_us: + follows: unknown + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9968 + state: unreviewed + note: 'PE-US follows the manual; obtain the complete plan questions and manual provisions to verify categories + and years. Code not yet on main: ga_liheap_countable_income.' +- id: us-ga:liheap-subsidized-renter-energy-burden + program: liheap + years: + from: 2025 + to: 2026 + type: federal-fiscal + question: Must subsidized renters whose fuel costs are included in rent verify an energy burden despite the plan + reporting no differing eligibility policies? + sources: + - kind: manual + citation: Georgia LIHEAP Policy Manual + url: https://liheapch.acf.gov/sites/default/files/webfiles/docs/2023/manuals/GA_PolicyManual_2023.pdf#page=3 + - kind: guidance + citation: FY2026 LIHEAP State Plan §2.3, page 8 + url: null + readings: + statute: No statute is supplied; the manual requires verification of an energy burden when fuel costs are included + in subsidized rent. + other: The plan reports no additional or differing policies for subsidized renters. + pe_us: + follows: unknown + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9968 + state: unreviewed + note: 'PE-US follows the manual; verify that the plan addresses the same circumstances; the bundled benefit comparison + lacks competing matrix amounts. Code not yet on main: ga_liheap.' +- id: us-hi:care-credit-claimable-unclaimed-filer + program: income-tax + years: + from: 2025 + to: 2025 + type: tax + question: Does the statute's disjunctive eligibility language permit a claimable but unclaimed filer to receive + the care credit despite instructions barring every claimable filer? + sources: + - kind: statute + citation: HRS 235-55.6(a)(1) + url: https://data.capitol.hawaii.gov/hrscurrent/Vol04_Ch0201-0257/HRS0235/HRS_0235-0055_0006.htm + - kind: instructions + citation: 2025 Form N-11 instructions p.21 + url: https://files.hawaii.gov/tax/forms/2025/n11ins.pdf#page=21 + readings: + statute: A literal reading of or permits a filer who can be claimed but is not actually claimed. + other: Every filer who is claimed or eligible to be claimed is barred. + pe_us: + follows: conflicting-source + code: + - policyengine_us/variables/gov/states/hi/tax/income/credits/cdcc/hi_cdcc_qualifying_individual.py + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10089 + state: ruled + note: 'An October 2026 ruling confirmed the instructions; the later statute-first rule requires changing the bar + if the literal statutory reading is confirmed, with earlier instruction years still to verify. Code not yet + on main: hi_cdcc_eligible.' +- id: us-hi:claim-of-right-credit-agi-addback + program: income-tax + years: + from: 2025 + to: 2025 + type: tax + question: Must a repayment deducted below federal AGI be added to Hawaii AGI when claiming the Hawaii claim-of-right + credit? + sources: + - kind: statute + citation: HRS §235-2.3(b)(40), as amended by Act 56, SLH 2023, incorporating IRC §1341; HRS §235-3(c) + url: https://data.capitol.hawaii.gov/sessions/sessionlaws/Years/SLH2023/SLH2023_Act56.pdf#page=3 + - kind: instructions + citation: 2025 Form N-364, line 2 instructions, PDF p.1 + url: https://files.hawaii.gov/tax/forms/current/n364_i.pdf#page=1 + - kind: form + citation: 2025 Form N-364, line 2 + url: https://files.hawaii.gov/tax/forms/2025/n364_i.pdf + - kind: instructions + citation: 2025 N-11 instructions, line 7 + url: https://files.hawaii.gov/tax/forms/2025/n11ins.pdf#page=11 + readings: + statute: The credit method omits the repayment deduction; a federal Schedule A deduction never reduced federal + AGI, so no AGI addition is needed. + other: N-364 requires adding the repayment to Hawaii AGI when the federal deduction was taken, as well as omitting + the Hawaii itemized deduction. + example: For a $10,000 repayment deducted on federal Schedule A, N-364 line 2 would add $10,000 on N-11 line 10 + and raise Hawaii AGI before the credit. + pe_us: + follows: statute + code: + - policyengine_us/parameters/gov/states/hi/tax/income/additions/additions.yaml + - policyengine_us/variables/gov/states/hi/tax/income/hi_additions.py + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10200 + state: ruled + note: 'Ruled in October 2026 under the statute-first rule; N-364 first exists for 2025, so earlier claiming procedures + need separate verification. Code not yet on main: gov/states/hi/tax/income/claim_of_right/hi_claim_of_right.yaml, + hi_claim_of_right_deduction.' +- id: us-hi:claim-of-right-deduction-floor + program: income-tax + years: + from: 2022 + to: 2025 + type: tax + question: From 2022 through 2025, which claim of right repayments fall under Hawaii's 2% floor on miscellaneous + itemized deductions? The statute keeps a section 1341 repayment over $3,000 outside the floor and one of $3,000 + or less inside it. The Form N-11 instructions list them the other way round. + sources: + - kind: statute + citation: us-hi/statute/235-2.4 + url: null + - kind: statute + citation: us/statute/26/67/b/9 + url: null + - kind: instructions + citation: 2025 Form N-11 instructions, p. 19 (Worksheet A-6, Other Expenses and Expenses NOT Subject to the + 2% Limit) + url: https://files.hawaii.gov/tax/forms/2025/n11ins.pdf#page=19 + - kind: instructions + citation: 2025 Form N-11 instructions, p. 19 (Expenses NOT Subject to the 2% Limit) + url: https://files.hawaii.gov/tax/forms/2025/n11ins.pdf#page=19 + - kind: instructions + citation: 2022 Form N-11 instructions, p. 19 + url: https://files.hawaii.gov/tax/forms/2022/n11ins.pdf#page=19 + readings: + statute: Section 67(b)(9), operative through HRS 235-2.4(b), keeps a section 1341 deduction (a repayment over + $3,000) outside the 2% floor; a repayment of $3,000 or less is a miscellaneous itemized deduction above 2% + of Hawaii AGI. + other: Follow the 2022-2025 N-11 lists, which put the over-$3,000 repayment among expenses subject to the 2% + floor and the $3,000-or-less repayment among expenses not subject to it. + example: 'A 2025 single filer with $50,000 of wages (Hawaii AGI $50,000) repays $10,000 and takes the deduction + method: the statute reading deducts $10,000, the N-11 lists $9,000. This is the difference in deduction, not + tax; the tax difference is that times the filer''s Hawaii marginal rate.' + pe_us: + follows: statute + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10200 + state: ruled + note: Verified entry drafted in TheAxiomFoundation/rulespec-us#1825; it registers once its source captures are + on main. +- id: us-hi:joint-return-claimable-spouse-exemption + program: income-tax + years: + from: 2023 + type: tax + question: Does the non-claimable spouse retain a personal exemption under the per-individual statute despite instructions + to leave both exemption ovals blank? + sources: + - kind: statute + citation: HRS 235-54(a) + url: https://files.hawaii.gov/tax/legal/hrs/hrs_235.pdf#page=45 + - kind: instructions + citation: Form N-11 instructions line 6a from 2023 + url: null + readings: + statute: Only the claimable individual's exemption becomes zero; the other spouse retains $1,144. + other: Leaving both ovals blank gives no exemption for the joint return. + example: The other spouse retains $1,144 under the statute versus $0 under the joint-return instruction reading. + pe_us: + follows: statute + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10087 + - https://github.com/PolicyEngine/policyengine-us/pull/10089 + state: ruled + note: 'The October 2026 ruling confirmed the per-individual reading; obtain the instruction URL and confirm the + joint-return application. Code not yet on main: exemptions_count, hi_regular_exemptions.' +- id: us-hi:joint-return-one-disabled-spouse-exemptions + program: income-tax + years: + from: 2022 + type: tax + question: Do the regulation and N-11 instructions preserve the non-disabled spouse's regular and age exemptions, + or does revised guidance cap the joint deduction at $7,000? + sources: + - kind: statute + citation: HRS 235-54(c) + url: null + - kind: regulation + citation: HAR 18-235-54(c) + url: null + - kind: instructions + citation: Form N-11 instructions + url: null + - kind: guidance + citation: Revised TIR 2022-01 p.1 + url: https://files.hawaii.gov/tax/legal/tir/tir22-01_rev.pdf#page=1 + readings: + statute: The additive reading is attributed to the regulation and instructions; no separate statutory-text analysis + is supplied. + other: Revised TIR 2022-01 describes the deduction for one disabled joint spouse as $7,000. + example: The test household receives $9,288 under the regulation and instructions versus $7,000 under the guidance + reading. + pe_us: + follows: unknown + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10087 + - https://github.com/PolicyEngine/policyengine-us/pull/10089 + state: ruled + note: 'The October 2026 ruling retained the regulation and instruction reading; verify the statute and whether + the guidance describes only the disabled spouse''s exemption. Code not yet on main: hi_disabled_exemptions, + hi_regular_exemptions.' +- id: us-hi:snap-abawd-implementation-date + program: snap + years: + from: 2025 + to: 2025 + type: calendar + question: Do the amended SNAP ABAWD rules apply in Hawaii from July 4, 2025 or the agency's November 1, 2025 implementation + date? + sources: + - kind: statute + citation: P.L. 119-21 (OBBBA) SNAP ABAWD amendments; 7 U.S.C. 2015(o) + url: null + - kind: agency-practice + citation: Hawaii DHS news release (Oct 17, 2025) + url: https://humanservices.hawaii.gov/federal-snap-work-requirement-changes-to-begin-department-of-human-services-offers-guidance-and-resources/ + readings: + statute: The federal effective date is 2025-07-04. + other: Hawaii applies the changes from 2025-11-01. + example: In August 2025, the model applies the changes in Texas but not Hawaii. + pe_us: + follows: conflicting-source + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/8861 + state: unreviewed + note: 'The statute-first rule requires changing the delayed model date unless waiver authority permits the delay; + verify that authority. Code not yet on main: is_snap_abawd_hr1_in_effect, gov.states.hi.dhs.snap.work_requirements.abawd.hr1_in_effect.' +- id: us-hi:snap-child-support-deduction + program: snap + years: + from: 2013 + to: 2016 + type: calendar + question: Did Hawaii deduct child support paid for SNAP or exclude it from gross income as federal reports indicate? + sources: + - kind: regulation + citation: HAR 17-676-56(f) and 17-676-72(6) + url: https://humanservices.hawaii.gov/wp-content/uploads/2014/01/17-676.pdf + - kind: guidance + citation: SNAP State Options Report, 11th and 12th Editions + url: https://fns-prod.azureedge.us/sites/default/files/snap/12-State_Options.pdf#page=16 + readings: + statute: No statute is supplied; Hawaii's rules treat child support paid as a deduction. + other: The federal report editions list an exclusion. + pe_us: + follows: unknown + code: + - policyengine_us/parameters/gov/usda/snap/income/deductions/child_support.yaml + prs: [] + state: unreviewed + note: PE-US follows state rules; verify their effective text throughout the historical periods. +- id: us-ia:alternate-tax-claimed-spouse + program: income-tax + years: + from: 2024 + to: 2024 + type: tax + question: Does the statutory dependent exclusion bar alternate tax on a joint return with a claimed spouse, or + does the worksheet's omission permit it? + sources: + - kind: statute + citation: Iowa Code 422.5(2)(a)-(b) (2024) + url: https://www.legis.iowa.gov/docs/code/2024/422.pdf#page=7 + - kind: worksheet + citation: 2024 Iowa alternate tax worksheet + url: https://revenue.iowa.gov/media/4098/download?inline#page=1 + readings: + statute: The exclusion applies throughout the subsection, preventing alternate tax. + other: Alternate tax remains available because the worksheet repeats no dependent bar. + example: A joint return with one claimed spouse, modified income $20,000 and ordinary tax $500 pays $500 versus + min($500, ($20,000 − $13,500) × 5.7%) = $370.50. + pe_us: + follows: conflicting-source + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10045 + state: ruled + note: Ruled statute-first in October 2026; the rule requires a model change after confirming that the exclusion + reaches alternate tax. +- id: us-ia:low-income-exemption-claimant-income + program: income-tax + years: + from: 2021 + to: 2025 + type: tax + question: Does a claimed filer's low-income exemption depend on the claimant's income, or on the instructions' + $5,000 dependent test and Iowa-return claim? + sources: + - kind: statute + citation: Iowa Code 422.5(2)(a) + url: https://www.legis.iowa.gov/docs/code/2026/422.pdf#page=7 + - kind: instructions + citation: 2022 IA 1040 instructions, p.37 + url: https://revenue.iowa.gov/media/2721/download?inline#page=37 + readings: + statute: A claimant below the statutory income limit does not trigger the dependent exclusion. + other: The dependent test denies exemption when the filer's income reaches $5,000. + example: In 2022, a claimed single filer with $6,000 net income and a claimant with $8,000 income is exempt, with + tax $0, versus not exempt. + pe_us: + follows: conflicting-source + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10045 + state: ruled + note: 'Ruled statute-first in October 2026; the rule requires replacing the approximation using claimant inputs, + with annual verification because the supplied statutory URL is for 2026. Code not yet on main: ia_is_tax_exempt.' +- id: us-id:grocery-credit-claimable-spouse + program: income-tax + years: + from: 2025 + to: 2025 + type: tax + question: Does the grocery credit preserve an unclaimable spouse's per-person amount, or does Form 40 line 12(c) + require zero for the whole joint return? + sources: + - kind: statute + citation: Idaho Code 63-3024A(1), (4) + url: https://legislature.idaho.gov/statutesrules/idstat/Title63/T63CH30/SECT63-3024A/ + - kind: worksheet + citation: Idaho grocery credit statute (with the per-person worksheet) + url: https://tax.idaho.gov/wp-content/uploads/forms/EIN00046/EIN00046_03-02-2026.pdf#page=14 + - kind: form + citation: Form 40 line 12(c) + url: https://tax.idaho.gov/wp-content/uploads/forms/EFO00089/EFO00089_03-02-2026.pdf#page=2 + readings: + statute: Preserve the remaining spouse's per-person credit and any restored dependent's amount. + other: Read the zero-credit instruction as barring the entire joint return. + example: For 2025, the remaining spouse receives $155 versus $0; a restored dependent child brings the statutory + amount to $310. + pe_us: + follows: statute + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10050 + state: ruled + note: 'Ruled statute-first in October 2026; confirm line 12(c)''s scope against the per-person statute and worksheet. + Code not yet on main: id_grocery_credit.' +- id: us-il:2022-rebate-claimed-vs-claimable + program: income-tax + years: + from: 2021 + to: 2021 + type: tax + question: Does the 2022 income tax rebate use the statute's actual-claim exclusion or the 2021 return checkbox's + claimability test? + sources: + - kind: statute + citation: 35 ILCS 5/212.1(a) (P.A. 102-0700) + url: https://www.ilga.gov/Legislation/PublicActs/PrinterFriendly/102-0700 + - kind: form + citation: 2021 IL-1040 dependency checkbox (line C) + url: https://tax.illinois.gov/content/dam/soi/en/web/tax/forms/incometax/documents/2021/individual/il-1040-instr.pdf#page=6 + readings: + statute: The exclusion turns on whether the filer was actually claimed. + other: On the return, it turns on whether another taxpayer can claim the filer or spouse. + example: The 2021 joint-return case with AGI $0 and one claimed spouse reports $100, $50 or $0 under alternative + mixed-spouse readings; no official guidance establishes those allocation alternatives. + pe_us: + follows: unknown + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10049 + state: ruled + note: 'Ruled statute-first in October 2026; establish the rebate''s dependency input and resolve mixed-spouse + allocation separately. Code not yet on main: il_income_tax_rebate_eligible.' +- id: us-il:ctc-qualifying-child-of-a-claimable-filer + program: income-tax + years: + from: 2024 + to: 2025 + type: tax + question: For 2024 and 2025, may a filer who can be claimed as a dependent take Illinois's child tax credit for + their own qualifying child? The statute uses the IRC section 152 qualifying child; the Schedule IL-E/EITC instructions + require a child that is the filer's dependent. + sources: + - kind: statute + citation: us-il/statute/35/5/244-current/block-1 + url: null + - kind: instructions + citation: 2025 Schedule IL-E/EITC instructions, p. 1 + url: https://tax.illinois.gov/content/dam/soi/en/web/tax/forms/incometax/documents/currentyear/individual/il-1040-schedule-il-e-eic-instr.pdf#page=1 + readings: + statute: Use the section 152 qualifying child, so a filer who can be claimed as a dependent keeps the credit + for their own qualifying child. + other: Require a child that is the filer's dependent, so a filer who can be claimed as a dependent, who can + have no dependents of their own (IRC 152(b)(1)), gets no credit. + pe_us: + follows: statute + code: + - policyengine_us/variables/gov/states/il/tax/income/credits/il_ctc.py + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10049 + state: ruled + note: Statute text is in the Axiom corpus; registering needs a pdftotext capture of the official instructions + page. +- id: us-il:joint-childless-eitc-dependency-skip + program: income-tax + years: + from: 2023 + to: 2026 + type: tax + question: Can a joint return retain the state-only childless EITC by skipping dependency questions despite the + incorporated federal dependency bar? + sources: + - kind: statute + citation: 35 ILCS 5/212 (incorporating IRC 32(c)(1)(A)(ii)(III)) + url: https://ilga.gov/documents/legislation/ilcs/documents/003500050K212.htm + - kind: worksheet + citation: Schedule IL-E/EITC instructions questionnaire, 2023-2025 p.5 and 2026 draft p.6 + url: https://tax.illinois.gov/content/dam/soi/en/web/tax/forms/incometax/documents/currentyear/individual/il-1040-schedule-il-e-eic-instr.pdf#page=5 + readings: + statute: Either claimable spouse bars the childless credit outside the filing exception. + other: Joint filers skip dependency questions and retain the credit where a state-only age or ITIN route applies. + example: The 2025 childless joint-return case with $1,000 earned income gives $0 versus $16. + pe_us: + follows: statute + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10049 + state: ruled + note: Ruled statute-first in October 2026; verify the incorporated dependency bar and annual questionnaire routing, + including the 2026 draft. +- id: us-il:personal-exemption-claimed-vs-claimable + program: income-tax + years: + from: 2021 + to: 2025 + type: tax + question: Is the basic exemption lost only when actually claimed on another return, or whenever another taxpayer + can claim the filer? + sources: + - kind: statute + citation: 35 ILCS 5/204(b) (reproduced in 86 Ill. Adm. Code 100.2055) + url: https://www.ilga.gov/Documents/legislation/ilcs/documents/003500050K204.htm + - kind: instructions + citation: IL-1040 instructions, line C (2021 p.6; 2025 p.6) + url: https://tax.illinois.gov/content/dam/soi/en/web/tax/forms/incometax/documents/currentyear/individual/il-1040-instr.pdf#page=6 + readings: + statute: A claimable but unclaimed filer retains the exemption. + other: Claimability alone denies the exemption. + example: A 2025 single filer with $10,000 employment income who is claimable but unclaimed receives a $2,850 exemption + versus $0. + pe_us: + follows: conflicting-source + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10049 + state: ruled + note: 'Ruled statute-first in October 2026; the rule requires changing claimability to actual claim, after confirming + the statutory text reproduced in the administrative rule. Code not yet on main: il_personal_exemption.' +- id: us-il:snap-child-support-exclusion + program: snap + years: + from: 2023 + to: 2023 + type: federal-fiscal + question: Does Illinois exclude child support paid from gross income under its manual release or deduct it afterward + as the federal report states? + sources: + - kind: manual + citation: IDHS Manual Release 23.22 + url: https://www.dhs.state.il.us/page.aspx?item=149614 + - kind: guidance + citation: SNAP State Options Report, 15th Edition + url: https://fns-prod.azureedge.us/sites/default/files/resource-files/snap-15th-state-options-report-october23.pdf#page=17 + readings: + statute: The state release excludes child support paid from gross income. + other: The federal report lists a deduction. + pe_us: + follows: unknown + code: + - policyengine_us/parameters/gov/usda/snap/income/deductions/child_support.yaml + prs: [] + state: unreviewed + note: PE-US follows the state release; verify concurrent applicability during October 2022-September 2023. +- id: us-in:claim-of-right-federal-deduction-eligibility + program: income-tax + years: + from: 2018 + type: tax + question: Does Indiana allow small repayments without an allowable federal deduction, as its instructions illustrate, + despite the statutory section 1341(a)(2) reference? + sources: + - kind: statute + citation: IC 6-3-1-3.5(a)(22), added as (a)(23) by SEA 515 of 2017, § 11 + url: https://www.in.gov/sba/files/HB1001-Final.pdf#page=117 + - kind: instructions + citation: 2018-2025 IT-40 instructions, code 630; 2025 Example 1 footnote + url: https://forms.in.gov/Download.aspx?id=16915#page=23 + readings: + statute: The cross-reference can require an allowable federal deduction, excluding small nonbusiness repayments + disallowed federally from 2018. + other: Allow any repayment amount independently of the federal method, limited to previously taxed income and + adjusted for lost unemployment deductions. + example: The 2025 instructions deduct $345 less $15 of lost unemployment deduction, giving $330; a $3,400 credit-method + repayment gives a $3,400 state deduction. + pe_us: + follows: conflicting-source + code: + - policyengine_us/parameters/gov/states/in/tax/income/deductions/deductions.yaml + - policyengine_us/variables/gov/states/in/tax/income/deductions/in_other_deductions.py + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10196 + state: unreviewed + note: 'The statute-first rule requires changing the instructions-based scope if the federal-eligibility reading + is verified; the 2026 statutory text remains unverified. Code not yet on main: gov/states/in/tax/income/deductions/in_claim_of_right_deduction.yaml.' +- id: us-in:eitc-current-versus-frozen-federal-base + program: income-tax + years: + from: 2023 + type: tax + question: Is Indiana's EITC based on the current federal credit transferred by Schedule IN-EIC or the credit under + its January 1, 2023 conformity date? + sources: + - kind: statute + citation: IC 6-3-1-11; IC 6-3.1-21 + url: null + - kind: form + citation: 2025 Schedule IN-EIC (State Form 49469), Section A, Line A-1 + url: null + readings: + statute: Use the frozen 2023 federal base. + other: Use the current-year federal EITC. + example: A 2025 childless filer aged 30 with $8,000 wages receives $60.00 under the frozen base versus $61.20 + under the current base. + pe_us: + follows: conflicting-source + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/8902 + state: unreviewed + note: 'The statute-first rule requires changing the amount base if frozen conformity is verified; eligibility + already uses the frozen snapshot. Code not yet on main: in_eitc, in_eitc_eligible.' +- id: us-in:rcap-unlicensed-facility-per-diem + program: ssi-state-supplement + years: + from: 2026 + to: 2026 + type: program + note: program year as the program defines it + question: Is RCAP's unlicensed-facility per diem $27 under the in-force rule or $37 under FSSA's guide? + sources: + - kind: regulation + citation: Indiana RCAP rule (in-force text) + url: null + - kind: manual + citation: FSSA guide (2017) + url: null + readings: + statute: The rule gives $27 daily. + other: The guide gives $37 daily. + example: $27 versus $37 daily. + pe_us: + follows: unknown + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9709 + state: unreviewed + note: 'PE-US uses $37; obtain exact citations and establish concurrent applicability in 2026, which is unconfirmed. + Code not yet on main: IN RCAP parameters.' +- id: us-ks:2021-2023-exemptions-dependent-filer + program: income-tax + years: + from: 2021 + to: 2023 + type: tax + question: Are Kansas exemptions tested per person using claimability, or does an actual dependent claim zero the + entire return's exemption count? + sources: + - kind: statute + citation: K.S.A. 79-32,121(a) (2023), IRC 151(d)(2) + url: https://kslegislature.gov/li_2024s/b2023_24/statute/079_000_0000_chapter/079_032_0000_article/079_032_0121_section/079_032_0121_k/ + - kind: instructions + citation: K-40 instructions 2021-2023, p.6 + url: https://www.ksrevenue.gov/pdf/ip22.pdf#page=6 + readings: + statute: Test each person's claimability, preserving an unclaimable spouse's exemption and denying a claimable + but unclaimed filer's exemption. + other: An actual claim zeros the whole return, while a claimable but unclaimed filer retains an exemption. + example: A 2023 joint return with one claimed spouse receives $2,250 versus $0; a claimable but unclaimed single + filer receives $0 versus $2,250. + pe_us: + follows: unknown + code: + - policyengine_us/variables/gov/states/ks/tax/income/exemptions/ks_count_exemptions.py + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10045 + state: ruled + note: 'Current behaviour unresolved: at this head ks_count_exemptions returns adults plus dependents and ks_exemptions + adds no dependency gate, so a joint return with one claimed spouse keeps two exemptions; check against the statute + and the K-40 rule before classifying.' +- id: us-ks:dependent-exemption-of-a-claimed-filer + program: income-tax + years: + from: 2024 + type: tax + question: From 2024, does a filer who is claimed on another return keep Kansas's dependent exemption for a dependent + they are entitled to deduct federally (as when the claimant files only for a refund), or must they enter zero + dependents as the K-40 instructions say? + sources: + - kind: statute + citation: us-ks/statute/79-32-121b + url: null + - kind: instructions + citation: 2024 Form K-40 instructions, p. 6 + url: https://www.ksrevenue.gov/pdf/ip24.pdf#page=6 + readings: + statute: Allow the exemption for each dependent the filer is entitled to deduct federally, which includes a + filer whose claimant files only to claim a refund. + other: A filer claimed on another return enters zero dependents. + example: A 2024 single filer, actually claimed by someone who files only for a refund, with one eligible child, + has exemptions of $11,480 under the statute reading and $9,160 under the instructions. + pe_us: + follows: statute + code: + - policyengine_us/variables/gov/states/ks/tax/income/exemptions/ks_exemptions.py + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10045 + state: ruled + note: Statute text is in the Axiom corpus; registering needs a pdftotext capture of the official instructions + page. +- id: us-ks:food-sales-credit-exemption-count + program: income-tax + years: + from: 2021 + to: 2024 + type: tax + question: Does the food sales tax credit count federal exemptions or K-40 Line E exemptions, including the 2024 + filing-status allowance? + sources: + - kind: statute + citation: K.S.A. 79-32,271(d) + url: https://kslegislature.gov/b2025_26/laws/079_000_0000_chapter/079_032_0000_article/079_032_0271_section/079_032_0271_k/ + - kind: form + citation: K-40 Line E (2024 instructions, Exemptions and Dependents, Lines E through H) + url: https://www.ksrevenue.gov/incomebook24.html + readings: + statute: Use federal exemptions, excluding a claimable filer. + other: Use Line E, including the 2024 filing-status allowance. + example: Before the liability cap, a 2024 joint return with one claimable spouse and no dependents receives $125 + versus $250; a claimable single filer receives $0 versus $125. + pe_us: + follows: conflicting-source + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10045 + state: ruled + note: 'Ruled statute-first in October 2026; the rule requires replacing the Line E count with the statutory federal + count, subject to annual-source verification. Code not yet on main: ks_fstc.' +- id: us-ks:medicaid-parent-dependent-child-age + program: medicaid + years: + from: 2014 + type: program + note: program year as the program defines it + question: Does Kansas parent/caretaker Medicaid require a child under 18 or an 18-year-old student under its state + plan, or any child under 19 under its manual? + sources: + - kind: plan + citation: SPA KS 14-0002-MM1, S25 student-option election + url: null + - kind: manual + citation: KFMAM § 02100 + url: https://khap.kdhe.ks.gov/kfmam/main.asp?tier1=02000&tier2=02100 + readings: + statute: The state plan covers children under 18 and 18-year-old students. + other: The manual covers all children under 19. + pe_us: + follows: unknown + code: + - policyengine_us/parameters/gov/hhs/medicaid/eligibility/categories/parent/dependent_child/age_limit.yaml + - policyengine_us/parameters/gov/hhs/medicaid/eligibility/categories/parent/dependent_child/student_option.yaml + - policyengine_us/variables/gov/hhs/medicaid/eligibility/categories/parent/is_parent_for_medicaid_nfc.py + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9213 + state: unreviewed + note: 'PE-US follows the manual; verify applicable versions of the state-plan/manual conflict, for which no statute + is supplied. Code not yet on main: dependent_child/age_limit.yaml.' +- id: us-ks:snap-crop-share-farm-rent-classification + program: snap + years: + from: 2026 + to: 2026 + type: calendar + question: Does crop-share farm rent require 20 hours of property management to be earned income, or does Kansas + treat sharing expenses and profits or losses as sufficient? + sources: + - kind: regulation + citation: 7 CFR 273.9(b)(1)(ii), (b)(2)(ii) + url: https://www.law.cornell.edu/cfr/text/7/273.9 + - kind: manual + citation: Kansas EES policy memo 99-10-05 + url: null + readings: + statute: The regulatory reading treats the rent as unearned income without the required management hours, with + losses floored at zero. + other: Kansas treats it as earned self-employment income with the 20% deduction and loss offset. + example: For $6,000 farm rent alone, SNAP is reported as $298 on main versus $210 in the PR (not re-computed here). + pe_us: + follows: unknown + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9671 + state: unreviewed + note: 'The described implementation follows the federal regulation; verify the Kansas memo and its reported federal + clearance, and identify the underlying statutory rule. Code not yet on main: snap_farm_rent_income, gov.usda.snap.income.sources.unearned.' +- id: us-ky:claim-of-right-deduction-under-federal-credit + program: income-tax + years: + from: 2018 + to: 2025 + type: tax + question: May Kentucky deduct a repayment over $3,000 when federal tax uses the section 1341 credit, despite the + incorporated restriction on taking that deduction into account? + sources: + - kind: statute + citation: KRS 141.019(2), incorporating IRC Chapter 1 including 26 U.S.C. § 1341(b)(3) + url: https://apps.legislature.ky.gov/law/statutes/statute.aspx?id=57914#page=3 + - kind: form + citation: 2025 Kentucky Schedule A (Form 740), line 13 Other Miscellaneous Deductions (same text 2018-2025) + url: https://revenue.ky.gov/Forms/740%20Schedule%20A%20%282025%29.pdf#page=4 + - kind: instructions + citation: 2025 Form 740 instructions, Schedule A + url: https://revenue.ky.gov/Forms/740%20Packet%20Instructions.pdf#page=31 + - kind: guidance + citation: 2019 Form 740 instructions (and 2018 DOR training decks) + url: https://revenue.ky.gov/Forms/2019%20740%20Instruction%20Packet.pdf#page=4 + readings: + statute: Section 1341(b)(3) prevents the credit-method deduction from being allowed under the incorporated federal + provisions. + other: Kentucky lists the deduction without a federal-method condition and permits independent state itemizing. + example: A qualifying repayment over $3,000 produces a deduction under the form reading and $0 in the current + model when federal tax uses the credit. + pe_us: + follows: statute + code: + - policyengine_us/variables/gov/states/ky/tax/income/deductions/ky_itemized_deductions_unit.py + prs: [] + state: open + note: A source-choice decision was requested; resolve the incorporated restriction and verify applicability beyond + 2025. +- id: us-ky:ktap-payment-maximum-2025 + program: tanf + years: + from: 2025 + type: program + note: program year as the program defines it + question: Does K-TAP use the reduced manual payment scale effective November 1, 2025 or the unchanged 2023 regulatory + schedule? + sources: + - kind: regulation + citation: 921 KAR 2:016 + url: null + - kind: manual + citation: DCBS Operation Manual Volume III, MS 2820, OMTL-682, revised 11/1/25 + url: https://chfs.ky.gov/agencies/dcbs/dfs/Documents/OMVOLIII.pdf + readings: + statute: The regulation retains the 2023 schedule of $372-$964. + other: The manual pays $242, $293, $341, $426, $498, $562 and $627 for sizes 1 through 7 or more. + example: A household of one receives $242 under the manual rather than the regulation's 2023 schedule. + pe_us: + follows: unknown + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/8942 + state: unreviewed + note: PE-US follows the manual from November 1, 2025; determine the governing source in this regulation/manual + conflict. +- id: us-ky:liheap-subsidized-income-points + program: liheap + years: + from: 2025 + to: 2026 + type: program + note: program year as the program defines it + question: Should subsidized-household LIHEAP benefits decrease with income under the regulation or increase under + the workbooks' reversed income points? + sources: + - kind: regulation + citation: 921 KAR 4:116 Section 4(1)(c) + url: https://apps.legislature.ky.gov/law/kar/titles/921/004/116/ + - kind: calculator + citation: Kentucky FY2026 benefit workbook, rev benefit income range worksheet, cells E52-E55; FY2025 subsidy + benefits worksheet, cells E45-E48 + url: https://liheapch.acf.gov/docs/2026/benefits-matricies/KY_BenefitMatrix_Heat-Cool_2026.xlsx + readings: + statute: The lowest-income household receives the highest benefit. + other: Subsidized income points rise as 1, 2, 3 and 4 with income. + pe_us: + follows: unknown + code: + - policyengine_us/parameters/gov/states/ky/dcbs/liheap/payment/income_points/subsidized.yaml + - policyengine_us/variables/gov/states/ky/dcbs/liheap/ky_liheap.py + prs: [] + state: unreviewed + note: PE-US follows the workbooks; verify actual agency payments and reconcile FY2025-FY2026 ordering with the + regulation. +- id: us-la:blind-deaf-disabled-additional-exemption + program: income-tax + years: + from: 2022 + to: 2022 + type: tax + question: Does Louisiana's additional exemption include deaf and totally disabled filers under the legal code + or only blind filers under the form? + sources: + - kind: statute + citation: Louisiana legal code (section not cited in file) + url: null + - kind: form + citation: 2022 IT-540i instructions, lines 6a-6b; Form 6935 + url: https://dam.ldr.la.gov/taxforms/IT540iWEB(2022)D1.pdf#page=2 + readings: + statute: Deaf and totally disabled filers also qualify. + other: Only a blind head or spouse qualifies. + pe_us: + follows: conflicting-source + code: + - policyengine_us/variables/gov/states/la/tax/income/exemptions/personal/blind/la_blind_exemption.py + - policyengine_us/variables/gov/states/la/tax/income/exemptions/personal/blind/la_blind_exemption_person.py + prs: [] + state: unreviewed + note: The statute-first rule requires adding the statutory qualifying conditions; first identify the section and + verify the 2022 form treatment. +- id: us-la:claim-of-right-schedule-e-subtraction + program: income-tax + years: + from: 2017 + to: 2026 + type: tax + question: May a revenue ruling grant a Schedule E subtraction for federal credit-method repayments when the statutory + federal-AGI starting point contains none? + sources: + - kind: statute + citation: La. R.S. 47:293(1) + url: https://www.legis.la.gov/legis/Law.aspx?d=101760 + - kind: guidance + citation: Louisiana Revenue Ruling 04-002 (March 18, 2004), PDF p.1 + url: https://dam.ldr.la.gov/lawspolicies/RR04002.pdf#page=1 + readings: + statute: Start from federal AGI without an express credit-method repayment subtraction. + other: Deduct repayments over $3,000 on Schedule E in the year of the federal credit. + pe_us: + follows: not-modelled + code: + - policyengine_us/variables/gov/states/la/tax/income/exempt_income/la_agi_exempt_income.py + - policyengine_us/variables/gov/states/la/tax/income/la_agi.py + prs: [] + state: unreviewed + note: Verify the ruling's authority and continuing application in 2022-2026 after itemized deductions were restricted. +- id: us-la:cpi-u-indexing-method + program: income-tax + years: + from: 2026 + type: tax + question: Does Louisiana CPI-U indexing use the bulletin's rounded December-over-December measure and doubled + rounded single amount, or another annual measure and separate joint rounding? + sources: + - kind: statute + citation: R.S. 47:294(B); R.S. 47:44.1(A) + url: null + - kind: guidance + citation: LDR Revenue Information Bulletin 26-019 (September 28, 2026) + url: https://dam.ldr.la.gov/lawspolicies/RIB%2026-019.pdf + readings: + statute: The statute leaves the annual measure, precision and joint rounding unspecified. + other: Use the published one-decimal 2.7% increase and double the rounded single deduction for joint filers. + example: The 2026 single deduction is $12,838 under the bulletin, $12,835 using the unrounded change, or $12,825 + using annual averages; separate joint adjustment gives $25,675 versus $25,676. + pe_us: + follows: gap-fill + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9791 + state: unreviewed + note: 'Verify that the bulletin permissibly fills the indexing and rounding gaps for both provisions. Code not + yet on main: extend_la_cpi_u_indexed_amounts, la_standard_deduction, la_retirement_exemption_person.' +- id: us-la:school-readiness-incapable-child + program: income-tax + years: + from: 2021 + to: 2024 + type: tax + question: Does the school readiness credit preserve the incorporated IRC 21 qualifying-person route for an incapable + child, or impose a separate qualified-dependent gate? + sources: + - kind: statute + citation: R.S. 47:297.4(A), 47:6104(A); IRC 21(b)(1)(B) + url: https://www.legis.la.gov/legis/Law.aspx?d=453233 + - kind: instructions + citation: 2023 IT-540 instructions, p.16 + url: https://dam.ldr.la.gov/taxforms/IT540i%20WEB(2023)%20INSTRUCTIONS.pdf#page=16 + readings: + statute: The statutory care-credit route preserves the incapable child's qualifying-person status. + other: A separate qualified-dependent requirement bars the claimable filer's credit. + example: The 2023 case gives $175 × 200% = $350 under the statute and $0 under the instructions. + pe_us: + follows: statute + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10045 + state: ruled + note: 'Ruled statute-first in October 2026; verify annual instructions because the supplied opposing instruction + is from 2023. Code not yet on main: la_refundable_cdcc.' +- id: us-la:snap-child-support-exclusion + program: snap + years: + from: 2024 + type: federal-fiscal + question: Does Louisiana exclude child support paid from gross income under its regulation or deduct it afterward + as the federal reports state? + sources: + - kind: regulation + citation: LAC 67:III.1980(A)(3) + url: https://www.doa.la.gov/media/oq1j3hys/67.docx + - kind: guidance + citation: SNAP State Options Report, 16th and 17th Editions + url: https://fns-prod.azureedge.us/sites/default/files/resource-files/snap-stateOptionsReport-17edition-120925.pdf#page=23 + readings: + statute: The regulation excludes child support paid from gross income. + other: The reports list a deduction. + pe_us: + follows: unknown + code: + - policyengine_us/parameters/gov/usda/snap/income/deductions/child_support.yaml + prs: [] + state: unreviewed + note: PE-US follows the regulation from October 1, 2023; verify contemporaneous source versions. +- id: us-ma:circuit-breaker-snap-income + program: income-tax + years: + from: 2001 + type: tax + question: Does Massachusetts exclude SNAP as in-kind public assistance from Circuit Breaker income under the statute + or include food stamps under DOR guidance? + sources: + - kind: statute + citation: M.G.L. c.62 § 6(k)(1), items 2 and 8 + url: https://malegislature.gov/Laws/GeneralLaws/PartI/TitleIX/Chapter62/Section6 + - kind: guidance + citation: DOR Senior Circuit Breaker page + url: https://www.mass.gov/info-details/massachusetts-senior-circuit-breaker-tax-credit#calculate-your-total-income- + readings: + statute: Item 2 excludes in-kind public assistance, including SNAP and WIC. + other: DOR includes food stamps and does not mention WIC. + pe_us: + follows: statute + code: + - policyengine_us/parameters/gov/states/ma/tax/income/credits/senior_circuit_breaker/income/disallowed_deductions.yaml + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9250 + state: unreviewed + note: 'Verify the guidance''s years; the earliest year comes from the parameter, and the demonstrated opposing + guidance concerns SNAP. Code not yet on main: ma_scb_total_income.' +- id: us-ma:claim-of-right-federal-deduction-eligibility + program: income-tax + years: + from: 2018 + type: tax + question: Does Massachusetts allow small repayments without an allowable federal deduction under DOR guidance + despite its statutory section 1341(a)(2) reference? + sources: + - kind: statute + citation: M.G.L. c. 62, § 3(B)(a)(14) (Acts 2005, c. 163, § 5) + url: https://malegislature.gov/Laws/GeneralLaws/PartI/TitleIX/Chapter62/Section3 + - kind: guidance + citation: DOR, Differences Between MA and Federal Tax Law for Personal Income (official page archived Feb 11, + 2026) + url: https://web.archive.org/web/20260211211815/https://www.mass.gov/info-details/differences-between-ma-and-federal-tax-law-for-personal-income + readings: + statute: The cross-reference can require an allowable federal deduction, excluding small repayments disallowed + federally from 2018. + other: Allow any amount previously included in Massachusetts taxable income unless otherwise deductible, independently + of the federal method. + example: With $60,000 wages and a $2,000 repayment, Massachusetts tax falls from $2,680 to $2,580. + pe_us: + follows: conflicting-source + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10196 + state: unreviewed + note: 'The statute-first rule requires changing the guidance-based scope if the cross-reference imports federal + deduction eligibility; verify that interpretation first. Code not yet on main: gov/states/ma/tax/income/deductions/ma_claim_of_right_deduction.yaml.' +- id: us-ma:connectorcare-income-bands-2026 + program: connectorcare + years: + from: 2026 + to: 2026 + type: program + note: program year as the program defines it + question: Does ConnectorCare cover the regulation's below-100% and 400.1-500% FPL plan types or only the Overview's + 100-400% range? + sources: + - kind: regulation + citation: 956 CMR 12.04(3), including 12.04(3)(b)2 + url: https://www.mahealthconnector.org/wp-content/uploads/amended-956CMR12.00.pdf#page=6 + - kind: guidance + citation: ConnectorCare Overview 2026, Table 2 income bands + url: https://www.mahealthconnector.org/wp-content/uploads/ConnectorCare-Overview-2026.pdf#page=1 + readings: + statute: The regulation covers up to 500% FPL, including Plan Type 1 below 100% and Type 3D at 400.1-500%. + other: The Overview covers 100-400% FPL and Types 2A-3C. + pe_us: + follows: unknown + code: + - policyengine_us/parameters/gov/states/ma/hic/connector_care/fpl_floor.yaml + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9240 + state: unreviewed + note: 'PE-US follows the Overview and leaves the sub-100% band unmodelled; reconcile the narrower coverage with + the regulation. Code not yet on main: ma_connector_care_eligible, gov.states.ma.hic.connector_care.fpl_limit.' +- id: us-ma:pfml-cap-swap-effective-date + program: paid-family-medical-leave + years: + from: 2026 + to: 2027 + type: calendar + question: Does the PFML contribution-cap swap apply from January 2026 under the applicability clause or January + 2027 under another statutory provision and agency practice? + sources: + - kind: statute + citation: Acts 2026 c. 101 §45 + url: null + - kind: statute + citation: Acts 2026 c. 101 §43(a) + url: null + - kind: agency-practice + citation: DFML contribution rates page (updated 2026-10-01) + url: null + readings: + statute: Applying §45 literally swaps caps in 2026, producing a 0.772% employee maximum. + other: Section 43(a) and DFML apply the swap in 2027, preserving the 0.46% employee and 0.42% employer shares. + example: At $100,000 of 2026 wages, literal §45 gives a $772 employee contribution versus $460. + pe_us: + follows: conflicting-source + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10285 + state: open + note: 'A rule-required model change depends on resolving the two statutes; the open PR follows the 2027 reading, + while main has no cap swap. Code not yet on main: policyengine_us/variables/.../employee_state_payroll_tax, + ma_employee_paid_leave_contribution (YAML).' +- id: us-ma:snap-child-support-exclusion + program: snap + years: + from: 2017 + to: 2024 + type: federal-fiscal + question: Does Massachusetts exclude child support paid from gross income under its regulation or deduct it afterward + as the federal reports state? + sources: + - kind: regulation + citation: 106 CMR 363.230(O) + url: https://www.law.cornell.edu/regulations/massachusetts/106-CMR-363-230 + - kind: guidance + citation: SNAP State Options Report, 13th-16th Editions + url: https://fns-prod.azureedge.us/sites/default/files/snap/13-State_Options-revised.pdf#page=17 + readings: + statute: The regulation excludes child support paid from gross income. + other: The reports list a deduction. + pe_us: + follows: unknown + code: + - policyengine_us/parameters/gov/usda/snap/income/deductions/child_support.yaml + prs: [] + state: unreviewed + note: PE-US follows the regulation; the October 2016-September 2024 span is approximate and needs contemporaneous-source + verification. +- id: us-md:capital-gains-surtax-short-term-gains + program: income-tax + years: + from: 2025 + type: tax + question: Does Maryland's surtax exclude net short-term gains under the statutory IRC definition or include them + through Form 502CG's federal-line transfer? + sources: + - kind: statute + citation: Md. Code, Tax-General § 10-105(a)(3)(i) + url: https://mgaleg.maryland.gov/mgawebsite/Laws/StatuteText?article=gtg§ion=10-105&enactments=false + - kind: guidance + citation: TB-58 + url: null + - kind: form + citation: 2025 Form 502CG line 1 → Form 502 line 1c (resident instructions p. 13) + url: https://www.marylandcomptroller.gov/content/dam/mdcomp/tax/instructions/2025/resident-booklet.pdf#page=13 + readings: + statute: Net short-term gain adds nothing to the surtax base. + other: The form transfer includes net short-term gains. + example: Long-term gains $100,000 and short-term gains $50,000 give $2,000 versus $3,000; short-term gains $80,000 + alone give $0 versus $1,600. + pe_us: + follows: conflicting-source + code: + - policyengine_us/variables/gov/states/md/tax/income/capital_gains/md_capital_gains_surtax_applies.py + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9898 + state: unreviewed + note: 'The statute-first rule requires changing main''s form-based treatment; the open PR proposes following the + statute and TB-58. Code not yet on main: md_net_capital_gain, md_capital_gains_surtax.' +- id: us-md:dependent-exemption-chart-10a + program: income-tax + years: + from: 2025 + to: 2025 + type: tax + question: Does a claimable filer retain an eligible dependent's exemption under the claimant filing exception, + or does Chart 10A deny every exemption? + sources: + - kind: statute + citation: Md. Code, Tax-General 10-211(a)(3), (b)(1) + url: https://mgaleg.maryland.gov/mgawebsite/Laws/StatuteText?article=gtg§ion=10-211&enactments=false + - kind: instructions + citation: 2025 Maryland resident booklet, Chart 10A, p.12 + url: https://www.marylandcomptroller.gov/content/dam/mdcomp/tax/instructions/2025/resident-booklet.pdf#page=12 + readings: + statute: An actual IRC 152 dependent retains an exemption under the filing exception although the filer's own + exemption is denied. + other: The dependent-taxpayer Each Exemption column makes all exemptions $0. + example: The 2025 case with one eligible child gives 1 × $3,200 = $3,200 versus $0. + pe_us: + follows: statute + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10045 + state: ruled + note: 'Ruled statute-first in October 2026; verify whether the chart''s zero column applies to dependent exemptions + or only the filer''s own exemption. Code not yet on main: md_personal_exemptions_count.' +- id: us-md:meap-garrett-oil-level-four + program: liheap + years: + from: 2027 + to: 2027 + type: program + note: program year as the program defines it + question: Does Garrett County's oil Level 4 payment follow the plan multiplier's $1,078 or the FY27 matrix's printed + $1,210? + sources: + - kind: plan + citation: LIHEAP State Plan (Garrett 1.1 multiplier) + url: https://liheapch.acf.gov/docs/2026/state-plans/MD_Plan_2026.pdf#page=5 + - kind: form + citation: FY27 MEAP Benefit Matrices, Garrett County table + url: https://dhs.maryland.gov/documents/OHEP/FY27-MEAP-Benefit-Matrices.pdf#page=1 + readings: + statute: Apply 1.1 to $980, giving $1,078. + other: Pay the printed $1,210. + example: $1,078 under the multiplier versus $1,210 under the matrix. + pe_us: + follows: unknown + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9746 + state: unreviewed + note: 'PE-US follows the multiplier; verify its FY27 applicability and clarify the printed cell. Code not yet + on main: md_meap Garrett supplement.' +- id: us-md:meap-interest-dividends + program: liheap + years: + from: 2026 + to: 2026 + type: program + note: program year as the program defines it + question: Does MEAP count interest and dividends under COMAR and the manual or exclude them under the unchecked + FY2026 plan category? + sources: + - kind: regulation + citation: COMAR 07.03.21.04D(5)-(7) + url: https://regs.maryland.gov/us/md/exec/comar/07.03.21.04 + - kind: manual + citation: OHEP Operations Manual, Attachment A + url: null + - kind: plan + citation: FY2026 LIHEAP State Plan 1.9 + url: https://liheapch.acf.gov/docs/2026/state-plans/MD_Plan_2026.pdf#page=5 + readings: + statute: COMAR and the manual count the income. + other: The plan leaves interest, dividends or royalties unchecked. + pe_us: + follows: unknown + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9746 + state: unreviewed + note: 'PE-US follows COMAR and the manual; verify the unchecked category''s meaning and reconcile the plan. Code + not yet on main: md_meap countable income.' +- id: us-md:meap-lump-sums-americorps + program: liheap + years: + from: 2025 + to: 2027 + type: program + note: program year as the program defines it + question: Does MEAP exclude lump sums and AmeriCorps/VISTA payments under COMAR or count them under manual and + plan checklists? + sources: + - kind: regulation + citation: COMAR 07.03.21.04E + url: https://regs.maryland.gov/us/md/exec/comar/07.03.21.04 + - kind: manual + citation: OHEP manual checklists + url: null + - kind: plan + citation: FY2026 plan checklists + url: null + readings: + statute: COMAR excludes the payments. + other: The manual and plan checklists count them. + pe_us: + follows: unknown + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9746 + state: unreviewed + note: 'PE-US follows COMAR; obtain exact checklist provisions and applicable versions. Code not yet on main: md_meap + countable income.' +- id: us-md:meap-nonqualified-child-household-size + program: liheap + years: + from: 2025 + to: 2027 + type: program + note: program year as the program defines it + question: Does a nonqualified child under 18 count toward MEAP household size under the manual or remain excluded + under COMAR? + sources: + - kind: regulation + citation: COMAR 07.03.21.04C(1) + url: https://regs.maryland.gov/us/md/exec/comar/07.03.21.04 + - kind: manual + citation: OHEP Operations Manual (May 2025), page 108 + url: https://dhs.maryland.gov/documents/OHEP/OHEP-Operations-Manual.pdf#page=11 + readings: + statute: A nonqualified member's income counts, but the member does not count in household size. + other: Children under 18 count regardless of citizenship status. + example: A citizen parent and nonqualified child have household size one under COMAR versus two under the manual + and PE-US. + pe_us: + follows: unknown + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9746 + state: unreviewed + note: 'PE-US follows the manual; determine the governing source and verify the supplied page anchor. Code not + yet on main: md_meap household size.' +- id: us-md:meap-strike-pay + program: liheap + years: + from: 2025 + to: 2027 + type: program + note: program year as the program defines it + question: Does MEAP count strike funds without employee contributions under COMAR and the plan or exclude them + under the manual? + sources: + - kind: regulation + citation: COMAR 07.03.21.04D(24) + url: https://regs.maryland.gov/us/md/exec/comar/07.03.21.04 + - kind: plan + citation: LIHEAP state plan 1.9, Strike Pay + url: null + - kind: manual + citation: OHEP Operations Manual, Attachment B + url: null + readings: + statute: COMAR counts funds without employee contributions, and the plan checks strike pay. + other: The manual excludes those funds. + pe_us: + follows: unknown + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9746 + state: unreviewed + note: 'PE-US follows COMAR; verify the conflicting manual provision and applicable versions. Code not yet on main: + md_meap countable income.' +- id: us-md:pension-exclusion-maximum + program: income-tax + years: + from: 2021 + type: tax + question: Is Maryland's maximum pension subtraction determined from the tax year's maximum Social Security benefit + or the Comptroller's differing worksheet amounts? + sources: + - kind: statute + citation: Md. Tax-Gen. § 10-209 + url: https://law.justia.com/codes/maryland/tax-general/title-10/subtitle-2/part-ii/section-10-209/ + - kind: worksheet + citation: Maryland Resident Booklet pension exclusion worksheet 13A (2021-2025) + url: https://www.marylandcomptroller.gov/content/dam/mdcomp/tax/instructions/2025/resident-booklet.pdf#page=14 + readings: + statute: Compute the maximum from the tax year's maximum Social Security benefit. + other: Use the Comptroller's published figures. + pe_us: + follows: conflicting-source + code: + - policyengine_us/parameters/gov/states/md/tax/income/agi/subtractions/pension/max_amount.yaml + prs: [] + state: unreviewed + note: The statute-first rule requires changing worksheet-based amounts after verifying the statutory benefit definition + and annual comparisons. +- id: us-md:poverty-credit-claimed-vs-claimable + program: income-tax + years: + from: 2025 + to: 2025 + type: tax + question: Does the poverty line credit exclude only actually claimed dependents, or all claimable filers through + the booklet's filing-status-6 rule? + sources: + - kind: statute + citation: Md. Code, Tax-General 10-709(a)(3)(iii) + url: https://mgaleg.maryland.gov/mgawebsite/Laws/StatuteText?article=gtg§ion=10-709&enactments=false + - kind: instructions + citation: 2025 Maryland resident booklet, pp.12 and 23 (filing status 6) + url: https://www.marylandcomptroller.gov/content/dam/mdcomp/tax/instructions/2025/resident-booklet.pdf#page=23 + readings: + statute: A claimable but unclaimed filer passes the exclusion. + other: Filing status 6 excludes a claimable filer without an actual claim. + example: With $10,000 earned income, a claimable but unclaimed filer passes the statutory exclusion for an uncapped + $500 versus $0 under the instructions. + pe_us: + follows: conflicting-source + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10045 + state: ruled + note: 'Ruled statute-first in October 2026; the rule requires replacing claimability with the statutory actual-claim + exclusion. Code not yet on main: is_eligible_md_poverty_line_credit.' +- id: us-md:poverty-credit-earned-income-losses + program: income-tax + years: + from: 2025 + type: tax + question: Does Maryland's state poverty level credit (5% of earned income) take earned income as IRC 32(c)(2) + defines it, net of a self-employment or farm loss, or as Form 502 Worksheet 18B line 2 computes it, leaving + the loss out? + sources: + - kind: statute + citation: us/statute/26/32/c/2 + url: null + - kind: worksheet + citation: 2025 Maryland resident tax booklet, State Poverty Level Credit Worksheet (18B), line 2, p. 23 + url: https://www.marylandcomptroller.gov/content/dam/mdcomp/tax/instructions/2025/resident-booklet.pdf#page=23 + readings: + statute: Use IRC 32(c)(2) earned income, which nets a self-employment or farm loss against wages and is figured + after the section 164(f) deduction; the credit is floored at zero. + other: Add wages and self-employment profit, leaving out any farm or business loss, as Worksheet 18B line 2 + instructs. + example: 'A 2024 single filer with $5,000 of wages, a $10,000 farm loss and $20,000 of interest: the statute reading + gives no poverty level credit; Worksheet 18B line 2 counts the $5,000 of wages alone, for a $250 credit.' + pe_us: + follows: statute + code: + - policyengine_us/variables/gov/states/md/tax/income/credits/poverty_line/md_poverty_line_credit_potential.py + prs: [] + state: ruled + note: Verified entry drafted in TheAxiomFoundation/rulespec-us#1825; it registers once its source captures are + on main. +- id: us-md:poverty-threshold-exemption-count + program: income-tax + years: + from: 2025 + to: 2025 + type: tax + question: Does the poverty line credit threshold use allowed-and-claimed exemptions or the worksheet's federal-return + person count? + sources: + - kind: statute + citation: Md. Code, Tax-General 10-709(a)(2) + url: https://mgaleg.maryland.gov/mgawebsite/Laws/StatuteText?article=gtg§ion=10-709&enactments=false + - kind: worksheet + citation: 2025 poverty-credit worksheet, resident booklet p.23 + url: https://www.marylandcomptroller.gov/content/dam/mdcomp/tax/instructions/2025/resident-booklet.pdf#page=23 + readings: + statute: Use the exemptions the filer is allowed and claims. + other: Use the number of persons on the federal return. + example: The 2025 case uses one exemption and $15,650 under the statute versus two persons and $21,150 under the + worksheet. + pe_us: + follows: statute + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10045 + state: ruled + note: 'Ruled statute-first in October 2026; verify the worksheet''s person count against allowed-and-claimed exemptions. + Code not yet on main: md_poverty_line_credit_income_level.' +- id: us-md:premium-assistance-200-fpl-endpoint + program: premium-assistance + years: + from: 2026 + to: 2027 + type: program + note: program year as the program defines it + question: Is Maryland's premium-assistance target contribution at 200% FPL the briefing's 1.00% or the Board design + and MIA exhibit's 2.00%? + sources: + - kind: regulation + citation: Md. Insurance Article §31-125; COMAR 14.35.21 + url: https://mgaleg.maryland.gov/pubs/committee/AELR/25-134E-Regulation.pdf#page=3 + - kind: regulation + citation: COMAR 14.35.21.04B-C + url: https://regs.maryland.gov/us/md/exec/comar/14.35.21 + - kind: guidance + citation: HGO Combined MHBE and MIA briefing (10-16-2025), state subsidy design table + url: https://mgaleg.maryland.gov/meeting_material/2025/hgo%20-%20134051066649659653%20-%20Combined%20MHBE.MIA%20slides_10.16.2025%20briefing%20to%20HGO&Finance.pdf#page=58 + - kind: guidance + citation: MIA 2026 ACA approved rates, Exhibit 2a + url: https://insurance.maryland.gov/Documents/newscenter/newsreleases/2026-ACA-Approved-Rates-State-Subsidy-Program-Impact.pdf#page=1 + readings: + statute: The statutory description does not specify the endpoint; Board design and the MIA exhibit support 2.00%. + other: The briefing prints 1.00% at the boundary. + example: At $31,300, a single person aged 40 pays $53 monthly in the MIA example, about 2.03%; 1.00% would give + about $26. + pe_us: + follows: unknown + code: + - policyengine_us/parameters/gov/states/md/mhbe/premium_assistance/target_contribution_percentage/final.yaml + - policyengine_us/parameters/gov/states/md/mhbe/premium_assistance/target_contribution_percentage/initial.yaml + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9218 + state: unreviewed + note: 'PE-US follows Board design and the MIA exhibit; verify the suspected briefing error and 2027 applicability. + Code not yet on main: md_premium_assistance_target_contribution_percentage.' +- id: us-md:snap-child-support-deduction + program: snap + years: + from: 2013 + to: 2016 + type: program + note: program year as the program defines it + question: Does Maryland deduct child support paid after gross income under state rules or exclude it from gross + income as the federal reports state? + sources: + - kind: regulation + citation: COMAR 07.03.17.35 and .43G + url: https://web.archive.org/web/20111001192853/http://www.dsd.state.md.us/comar/comarhtml/07/07.03.17.35.htm + - kind: manual + citation: FSP Manual 212.11, 409.3G + url: null + - kind: guidance + citation: SNAP State Options Report, 11th and 12th Editions + url: https://fns-prod.azureedge.us/sites/default/files/snap/11-State_Options.pdf#page=10 + readings: + statute: State rules deduct child support after gross income. + other: The reports list an exclusion. + pe_us: + follows: unknown + code: + - policyengine_us/parameters/gov/usda/snap/income/deductions/child_support.yaml + prs: [] + state: unreviewed + note: PE-US follows state rules; verify contemporaneous versions and precise years for the report editions. +- id: us-md:unmarried-childless-eitc-filing-status + program: income-tax + question: Does the statutory term individual permit married separate filers, or may instructions limit this Maryland + EITC provision to single, head-of-household and surviving-spouse filers? + sources: + - kind: statute + citation: Md. Tax-Gen. § 10-704(c)(3) + url: https://mgaleg.maryland.gov/mgawebsite/Laws/StatuteText?article=gtg§ion=10-704&enactments=false + - kind: instructions + citation: Maryland tax form instructions (not identified) + url: null + readings: + statute: The supplied statutory term does not itself specify the filing-status restriction. + other: Restrict eligibility to single, head-of-household and surviving-spouse filers. + pe_us: + follows: gap-fill + code: + - policyengine_us/variables/gov/states/md/tax/income/credits/eitc/md_qualifies_for_unmarried_childless_eitc.py + prs: [] + state: unreviewed + note: Identify the instructions and years, then determine whether the gloss fills a silence or impermissibly narrows + eligibility. +- id: us-me:property-tax-credit-unknown-utilities + program: income-tax + years: + from: 2014 + type: tax + question: Should Maine deduct 15% of rent when included utilities have an unknown cost although the statute supplies + no estimate? + sources: + - kind: statute + citation: 36 M.R.S. § 5219-KK + url: null + - kind: form + citation: 2022 Schedule PTFC/STFC line 5c + url: https://www.maine.gov/revenue/sites/maine.gov.revenue/files/inline-files/22_1040me_sched_pstfc_ff.pdf#page=2 + readings: + statute: No estimate is supplied for utilities of unknown cost. + other: Subtract 15% of rent when included utilities have an unknown amount. + example: With rent of $17,139 and unknown included utilities, countable rent is $2,185 versus $2,571 before. + pe_us: + follows: gap-fill + code: + - policyengine_us/variables/gov/states/me/tax/income/credits/fairness/property_tax_fairness_credit/me_property_tax_fairness_credit_utilities_in_rent_amount.py + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9267 + state: unreviewed + note: 'Verify the form-only estimate and effective years; the statute-first rule permits gap-filling. Code not + yet on main: me_property_tax_fairness_credit_countable_rent, gov.states.me.tax.income.credits.fairness.property_tax.rate.utilities_share_of_rent.' +- id: us-me:sales-tax-fairness-credit-mixed-joint-return + program: income-tax + years: + from: 2015 + type: tax + question: Where the statute leaves the mixed joint case unresolved, does the schedule permit the sales tax fairness + credit when only one spouse is claimable? + sources: + - kind: statute + citation: 36 MRSA 5213-A(6)(C) + url: https://legislature.maine.gov/statutes/36/title36sec5213-A.html + - kind: form + citation: 2025 Schedule PTFC/STFC + url: https://www.maine.gov/revenue/sites/maine.gov.revenue/files/inline-files/25_1040me_sch_ptfc_fillable.pdf#page=3 + readings: + statute: The dependent exclusion does not expressly resolve a joint return with only one claimable spouse. + other: The dependent note under the Single column supports allowing the joint credit unless every filer is claimable. + pe_us: + follows: gap-fill + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10024 + state: ruled + note: 'Ruled in October 2026; verify the mixed-joint interpretation and annual coverage because the supplied form + is for 2025. Code not yet on main: me_sales_tax_fairness_credit_eligible.' +- id: us-me:tanf-incapacitated-adult-care-deduction + program: tanf + years: + from: 2015 + type: program + note: program year as the program defines it + question: Does Maine TANF allow care deductions for incapacitated adults under its administrative rule when the + statute is described as child-only? + sources: + - kind: statute + citation: Maine TANF statute (citation not given in source; described as child-only) + url: null + - kind: regulation + citation: 10-144 CMR ch. 331, Ch. IV § B(2)(b) + url: https://www.law.cornell.edu/regulations/maine/C-M-R-10-144-ch-331-IV + readings: + statute: Cover children only. + other: Cover dependent children and incapacitated adults, up to $175 monthly. + example: An adult-care-only household receives a $0 deduction under the statute versus $100 monthly under the + administrative rule. + pe_us: + follows: conflicting-source + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/8982 + state: unreviewed + note: 'Find the statute citation; if its child-only scope is verified, the statute-first rule requires removing + the adult-care deduction. Code not yet on main: Maine TANF dependent care deduction variable (name not given).' +- id: us-mi:claim-of-right-credit-amount-and-threshold + program: income-tax + years: + from: 2017 + to: 2026 + type: tax + question: Is Michigan's credit the actual prior tax attributable to income meeting section 1341 eligibility, or + repayment times the prior-year rate even for a $2,500 repayment? + sources: + - kind: statute + citation: MCL 206.265(1) + url: https://www.legislature.mi.gov/Laws/MCL?objectName=mcl-206-265 + - kind: guidance + citation: Revenue Administrative Bulletin 1994-9 + url: https://www.michigan.gov/treasury/reference/rab/content/1994/revenue-administrative-bulletin-1994-9 + readings: + statute: Credit actual prior Michigan tax attributable to the repaid income, conditioned on section 1341 eligibility. + other: Multiply repayment by the original year's rate; the bulletin includes a $2,500 repayment example. + example: The bulletin allows a credit for a $2,500 repayment by a taxpayer taking the federal standard deduction; + no credit amount is supplied. + pe_us: + follows: not-modelled + code: + - policyengine_us/parameters/gov/states/mi/tax/income/credits/refundable.yaml + prs: [] + state: unreviewed + note: Verify annual applicability, especially the small-repayment example after federal deduction changes. +- id: us-mi:household-resources-dependent-amounts + program: income-tax + years: + from: 2024 + type: tax + question: Do total household resources include the instructions' amounts for dependents and other family members + when the statute defines household as claimant and spouse? + sources: + - kind: statute + citation: MCL 206.508(3)-(4) + url: https://www.legislature.mi.gov/Laws/MCL?objectName=mcl-206-508 + - kind: instructions + citation: 2025 MI-1040 book, page 32, line 21 (MI-1040CR); related lines 22, 27 and 31 + url: https://www.michigan.gov/taxes/-/media/Project/Websites/taxes/Forms/IIT/TY2025/MI-1040-Book.pdf#page=28 + readings: + statute: Count the claimant and spouse's income. + other: Count the specified income and premiums for all members, including amounts received for dependent adults. + example: A dependent adult's $2,400 pension changes SSI from $11,604 to $9,444, household resources from $21,604 + to $19,444, and heating credit from $35.316 to $80.676. + pe_us: + follows: conflicting-source + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9796 + state: ruled + note: 'Ruled in October 2026 to follow the form; the later statute-first rule requires a model change after distinguishing + dependents'' own income from amounts received for others. Code not yet on main: mi_household_resources, gov.states.mi.tax.income.household_resources_all_members.' +- id: us-mi:household-resources-premium-double-deduction + program: homestead-credit + years: + from: 2021 + type: tax + question: May premiums already deducted from household resources be deducted again when the statute permits family + premiums but instructions prohibit duplication? + sources: + - kind: statute + citation: MCL 206.510(1) + url: https://www.legislature.mi.gov/Laws/MCL?objectName=mcl-206-510 + - kind: instructions + citation: 2025 MI-1040 book, line 31 (p. 33) + url: https://www.michigan.gov/taxes/-/media/Project/Websites/taxes/Forms/IIT/TY2025/MI-1040-Book.pdf#page=33 + readings: + statute: The premium deduction does not expressly address amounts deducted elsewhere. + other: Deduct premiums once, excluding amounts already deducted on lines 21 or 30. + example: With $50,000 Schedule C income and $5,000 premiums, household resources are $41,467.61 instead of $36,467.61. + pe_us: + follows: gap-fill + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9840 + state: unreviewed + note: 'The open PR follows the form; verify overlapping deductions and annual instruction coverage. Code not yet + on main: mi_household_resources.' +- id: us-mi:snap-child-support-deduction + program: snap + years: + from: 2023 + to: 2023 + type: federal-fiscal + question: Does Michigan deduct child support paid after gross income under BEM 556 or exclude it from gross income + as the federal report states? + sources: + - kind: manual + citation: Michigan BEM 556 (DHS-2242 line 20) + url: https://mdhhs-pres-prod.michigan.gov/olmweb/ex/BP/Public/BEM/556.pdf#page=5 + - kind: guidance + citation: SNAP State Options Report, 15th Edition + url: https://fns-prod.azureedge.us/sites/default/files/resource-files/snap-15th-state-options-report-october23.pdf#page=17 + readings: + statute: The manual subtracts child support after gross income. + other: The report lists an exclusion. + pe_us: + follows: unknown + code: + - policyengine_us/parameters/gov/usda/snap/income/deductions/child_support.yaml + prs: [] + state: unreviewed + note: PE-US follows the manual and surrounding report editions; obtain contemporaneous BEM 556 for October 2022-September + 2023. +- id: us-mn:msa-guardian-fee-cap + program: minnesota-supplemental-aid + years: + from: 2026 + type: calendar + question: Does an approved guardian fee allowance equal 5% of gross monthly income capped at $100, or $100 regardless + of income? + sources: + - kind: statute + citation: Minn. Stat. 256D.44 subd. 5(d) + url: https://www.revisor.mn.gov/statutes/cite/256D.44 + - kind: agency-practice + citation: MN DHS correspondence, 2026-10-19 + url: null + readings: + statute: Allow 5% of gross monthly income, up to $100. + other: Allow $100 whenever a fee is approved, regardless of income. + example: An SSI-only recipient receives $49.70 versus $100 in 2026, and $51.45 versus $100 in 2027. + pe_us: + follows: statute + code: [] + prs: [] + state: ruled + note: Ruled in October 2026 to retain the statutory cap; confirm and describe the stated agency practice without + quoting correspondence. +- id: us-mn:small-claim-of-right-repayment-deduction + program: income-tax + years: + from: 2019 + to: 2026 + type: tax + question: Does Minnesota allow DOR's 2%-floor deduction for small nonemployee repayments when its statute preserves + employee expenses and the over-$3,000 section 1341 deduction? + sources: + - kind: statute + citation: Minn. Stat. § 290.0122, subd. 7 and 9 + url: https://www.revisor.mn.gov/statutes/cite/290.0122/pdf#page=3 + - kind: guidance + citation: MN DOR, Repaying Taxed Income Deduction (updated December 17, 2025) + url: https://www.revenue.state.mn.us/repaying-taxed-income-deduction + - kind: instructions + citation: 2025 Schedule M1REF, PDF p.3 + url: https://www.revenue.state.mn.us/sites/default/files/2025-12/m1ref-25.pdf#page=3 + readings: + statute: The listed deductions provide no clear basis for small nonemployee repayments. + other: Allow small repayments subject to a 2% federal-AGI floor. + pe_us: + follows: statute + code: + - policyengine_us/variables/gov/states/mn/tax/income/deductions/mn_itemized_deductions.py + prs: [] + state: unreviewed + note: Establish the guidance's statutory basis and reconcile M1SA with M1REF. +- id: us-mo:claim-of-right-federal-tax-deduction + program: income-tax + years: + from: 2017 + to: 2025 + type: tax + question: Does the section 1341 credit reduce Missouri's federal tax deduction under the statutory all-credits + rule, or leave it unchanged as the chart implies? + sources: + - kind: statute + citation: RSMo § 143.171(1) and (2)(1) + url: https://revisor.mo.gov/main/OneSection.aspx?section=143.171 + - kind: worksheet + citation: 2025 MO-1040 instructions, federal tax deduction chart, PDF p.7 (also 2017, 2018, 2020, 2021 and 2024 + charts) + url: https://dor.mo.gov/forms/MO-1040%20Instructions_2025.pdf#page=7 + readings: + statute: Subtract the credit unless it falls within the statutory overpayment-credit exception. + other: The chart omits Schedule 3 line 13b, leaving deductible federal tax unchanged. + pe_us: + follows: conflicting-source + code: + - policyengine_us/parameters/gov/states/mo/tax/income/deductions/federal_income_tax/ignored_credits.yaml + - policyengine_us/variables/gov/states/mo/tax/income/deductions/mo_federal_income_tax_deduction.py + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10038 + state: ruled + note: 'Ruled in October 2026 to follow worksheets; the later statute-first rule requires a model change if this + credit is outside the statutory exception. Code not yet on main: mo_federal_income_tax_deduction.' +- id: us-mo:medicaid-published-dollar-limit-rounding + program: medicaid + years: + from: 2026 + to: 2026 + type: program + note: program year as the program defines it + question: Should Medicaid apply exact FPL ratios or the manual's inclusive rounded-up dollar limits where percentage + thresholds leave rounding unspecified? + sources: + - kind: plan + citation: FPL percentage thresholds (federal/state plan) + url: null + - kind: manual + citation: MO DSS MAGI Manual §1805.030.20.20.05 and Appendix A; MHABD Appendix J + url: https://dssmanuals.mo.gov/wp-content/uploads/2019/03/MAGIappendix-a.pdf#page=1 + readings: + statute: Compare the exact income-to-FPG ratio with the percentage threshold. + other: Apply published monthly dollars, rounded up and inclusive. + example: A household of two with $2,760 monthly income and a child aged five gets MHK under the manual versus + CHIP under the exact ratio. + pe_us: + follows: gap-fill + code: + - policyengine_us/variables/gov/states/mo/dss/mhf/mo_mhf_parent_income_limit.py + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9297 + - https://github.com/PolicyEngine/policyengine-us/pull/9379 + state: unreviewed + note: 'Verify the rounding gap-fill; the separate January-versus-April timing difference is a model approximation. + Code not yet on main: medicaid_income_level, medicaid_optional_senior_or_disabled_income_limit.' +- id: us-mo:negative-federal-agi-combined-return + program: income-tax + years: + from: 2024 + to: 2024 + type: tax + question: Should each spouse's negative AGI be independently floored under the 2024 instructions, or should the + positive spouse report joint AGI under the regulation? + sources: + - kind: regulation + citation: 12 CSR 10-2.710(1) (eff. July 30, 2024) + url: https://www.law.cornell.edu/regulations/missouri/12-CSR-10-2-710 + - kind: instructions + citation: 2024 MO-1040 instructions, Line 1 + url: null + readings: + statute: The negative spouse reports zero and the other reports the entire positive joint AGI. + other: Floor each column separately, allowing their sum to exceed joint AGI. + example: Spouse A has $5,000 wages and a $15,000 Schedule C loss; spouse B has $100,000 wages; the regulation + method gives $0 and $90,000. + pe_us: + follows: unknown + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10015 + state: unreviewed + note: 'The open PR applies the regulation from 2024; main''s source choice is unspecified, and no statute is supplied. + Code not yet on main: mo_federal_adjusted_gross_income, gov.states.mo.tax.income.federal_agi.negative_floor_applies.' +- id: us-mo:property-tax-credit-rounding + program: property-tax-credit + years: + from: 2025 + to: 2025 + type: tax + question: Is the property tax credit rounded to the nearest dollar under the statute or down under the DOR chart? + sources: + - kind: statute + citation: RSMo §135.030 + url: https://revisor.mo.gov/main/OneSection.aspx?section=135.030 + - kind: statute + citation: RSMo 135.030(2)-(3) + url: https://revisor.mo.gov/main/OneSection.aspx?section=135.030&bid=6439 + - kind: calculator + citation: Missouri DOR Property Tax Claim Chart 2025 + url: https://dor.mo.gov/forms/Property%20Tax%20Claim%20Chart_2025.pdf#page=1 + readings: + statute: Round to the nearest whole dollar. + other: Round credit down and phase-out up. + example: The chart row $14,901-$15,200 gives $709; the supplied rounding-conflict estimate is at most $1 per claim. + pe_us: + follows: conflicting-source + code: + - policyengine_us/variables/gov/states/mo/tax/income/credits/property_tax/mo_property_tax_credit.py + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9214 + state: unreviewed + note: 'The statute-first rule requires nearest-dollar rounding; verify other chart years before extending beyond + 2025. Code not yet on main: mo_property_tax_credit.' +- id: us-mo:sab-personal-standard-rounding + program: supplemental-aid-to-the-blind + question: Is SAB's earnings standard exactly 10% under the manual or the rounded-up value in the regulation's + $5-band table? + sources: + - kind: regulation + citation: 13 CSR 40-2.120 (standard table) + url: https://www.law.cornell.edu/regulations/missouri/13-CSR-40-2-120 + - kind: manual + citation: Missouri SAB Manual § 0410.015.05.20 + url: https://dssmanuals.mo.gov/supplemental-aid-to-the-blind/0410-000-00/0410-015-00/0410-015-05/0410-015-05-20/ + readings: + statute: The table rounds up to the top of each $5 band, increasing deduction by up to $0.50. + other: Use exactly 10% of gross earnings. + pe_us: + follows: unknown + code: + - policyengine_us/variables/gov/states/mo/dss/ssp/mo_sab_countable_income.py + prs: [] + state: unreviewed + note: PE-US follows the manual; establish applicable years and reconcile the table. +- id: us-mo:snap-child-support-exclusion + program: snap + years: + from: 2018 + to: 2022 + type: federal-fiscal + question: Does Missouri exclude child support paid from gross income under its releases and manual or deduct it + afterward as the federal report states? + sources: + - kind: manual + citation: Missouri IM-39 (2003), IM-34 (2013), SNAP Manual 1115.035.20 + url: https://dssmanuals.mo.gov/food-stamps/1115-000-00/1115-035-00/1115-035-20/ + - kind: guidance + citation: SNAP State Options Report, 14th Edition, page 18 + url: https://fns-prod.azureedge.us/sites/default/files/snap/14-State-Options.pdf#page=24 + readings: + statute: State releases and the manual exclude child support paid from gross income. + other: The report lists a deduction. + pe_us: + follows: unknown + code: + - policyengine_us/parameters/gov/usda/snap/income/deductions/child_support.yaml + prs: [] + state: unreviewed + note: PE-US follows state sources; verify October 2017-September 2022 versions and the report page anchor. +- id: us-mo:snap-student-child-care-claim-cap + program: snap + years: + from: 2025 + type: program + note: program year as the program defines it + question: May two student parents claim the child-under-six exemption, or does Missouri's one-adult-per-household + cap fill federal silence? + sources: + - kind: regulation + citation: 7 CFR 273.5(b)(8) + url: null + - kind: manual + citation: Missouri SNAP manual + url: https://dssmanuals.mo.gov/food-stamps/1135-000-00/1135-025-00/ + readings: + statute: The federal regulation does not specify a household claim cap. + other: Only one adult per household may claim responsibility. + example: Two student parents with one toddler may make only one claim under Missouri's manual from 2025. + pe_us: + follows: gap-fill + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9380 + state: unreviewed + note: 'Verify whether the manual permissibly fills the federal silence; PE-US applies the cap only in Missouri. + Code not yet on main: meets_snap_parent_exception, gov/usda/snap/student/child_care_claim_cap/per_household.yaml.' +- id: us-mo:wftc-investment-income-boundary + program: income-tax + years: + from: 2023 + to: 2023 + type: tax + question: Does investment income exactly equal to the WFTC limit preserve eligibility under the incorporated IRC + provision or disqualify under the 2023 form and FAQ? + sources: + - kind: statute + citation: RSMo 143.177.3(1), referencing IRC § 32(i) as of January 1, 2021 + url: https://revisor.mo.gov/main/OneSection.aspx?section=143.177&bid=49978&hl= + - kind: form + citation: 2023 Form MO-WFTC checklist and Line 3 instructions + url: null + - kind: guidance + citation: Missouri DOR WFTC FAQ + url: null + - kind: guidance + citation: 2023 DOR information page + url: null + readings: + statute: Only investment income exceeding the limit disqualifies. + other: The 2023 form and FAQ disqualify equal-or-greater income; the information page instead says income cannot + exceed the limit. + example: A 2023 single filer with EITC $100 and investment income $4,050 remains eligible in PE-US; $4,051 is + ineligible. + pe_us: + follows: statute + code: + - policyengine_us/variables/gov/states/mo/tax/income/credits/mo_wftc_eligible.py + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9180 + state: unreviewed + note: 'Confirm the documented maintainer choice''s date and obtain the 2023 form URL; the 2024-2025 forms are + reported to agree with the statute. Code not yet on main: mo_wftc_eligible, gov/states/mo/tax/income/credits/wftc/investment_income_limit.yaml.' +- id: us-ms:liheap-110-percent-poverty-floor + program: liheap + years: + from: 2026 + to: 2027 + type: program + note: program year as the program defines it + question: May Mississippi deny LIHEAP solely because income exceeds 60% SMI when it remains below the federal + 110%-poverty floor? + sources: + - kind: statute + citation: 42 U.S.C. 8624(b)(2)(B) + url: null + - kind: manual + citation: Mississippi LIHEAP manual, Rule 6.1 C and printed 60% SMI table, PDF page 58 + url: null + - kind: plan + citation: FY2026 plan assurance (2), page 44 + url: null + readings: + statute: A household below 110% of the lagged poverty guideline cannot be excluded solely on income. + other: Apply the manual's 60% SMI limit at every household size. + example: In FY2026, a household of 11 with $77,000 exceeds the $75,593 manual limit but falls below the $77,715 + floor; the proposed statutory model awards $650 for propane. + pe_us: + follows: conflicting-source + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10279 + state: unreviewed + note: 'The statute-first rule requires applying the floor in main; the open PR proposes this change, while main + uses the manual limit alone. Code not yet on main: ms_liheap eligibility formula, gov.hhs.liheap.fpg_floor, + fpg_year_lag.' +- id: us-ms:liheap-unearned-income-sources + program: liheap + years: + from: 2026 + type: program + note: program year as the program defines it + question: Does LIHEAP count gifts, rent, interest, dividends and royalties under the manual despite those categories + being unchecked in the FY2026 plan? + sources: + - kind: plan + citation: Mississippi FY2026 LIHEAP State Plan, Section 1.9 + url: https://liheapch.acf.gov/docs/2026/state-plans/MS_Plan_2026.pdf#page=5 + - kind: manual + citation: Mississippi LIHEAP Policy Manual, Rule 6.11 C(13), F(7)-(8) and K(1) + url: https://www.sos.ms.gov/adminsearch/ACCode/00000693c.pdf#page=29 + readings: + statute: The plan leaves the categories unchecked. + other: The manual counts them. + pe_us: + follows: unknown + code: + - policyengine_us/parameters/gov/states/ms/mdhs/liheap/unearned_income_sources.yaml + prs: [] + state: unreviewed + note: PE-US follows the manual from October 1, 2025; verify the checklist's meaning and the manual's administrative-code + status. +- id: us-mt:elderly-credit-homestead-costs + program: income-tax + years: + from: 2009 + type: tax + question: Does the household's sole elderly-credit claimant count the whole homestead's property tax and rent, + or only the claimant's own costs? + sources: + - kind: statute + citation: MCA 15-30-2337(10), (5) + url: https://mca.legmt.gov/bills/mca/title_0150/chapter_0300/part_0230/section_0370/0150-0300-0230-0370.html + - kind: instructions + citation: 2025 Form 2 instructions, PDF page 47; Schedule 2EC lines 23-24 + url: https://revenue.mt.gov/files/forms/Montana-Individual-Income-Tax-Return-Form-2-Instructions/2025_Montana_Individual_Income_Tax_Return_Form_2_Instructions.pdf#page=47 + readings: + statute: The sole claimant counts the whole homestead's costs. + other: Each tax unit counts its own costs. + example: Two elderly siblings with pensions of $10,000 and $15,000 and rent of $4,800 and $7,200 receive a 2024 + credit of $460 under the form versus $1,150 under the homestead reading. + pe_us: + follows: conflicting-source + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9900 + - https://github.com/PolicyEngine/policyengine-us/pull/9945 + state: open + note: 'A source-choice decision remains open; the statute-first rule requires changing claimant-only costs if + the whole-homestead reading is confirmed. Code not yet on main: mt_elderly_homeowner_or_renter_credit_pre_one_claimant, + mt_elderly_homeowner_or_renter_credit_property_tax_billed, mt_elderly_homeowner_or_renter_credit_gross_rent.' +- id: us-mt:elderly-credit-nonloss-agi-adjustments + program: elderly-homeowner-renter-credit + years: + from: 2024 + to: 2025 + type: tax + question: Does gross household income retain federal non-loss AGI adjustments under the statute or omit them when + summing the form's income categories? + sources: + - kind: statute + citation: MCA 15-30-2337(9)(a) + url: https://mca.legmt.gov/bills/mca/title_0150/chapter_0300/part_0230/section_0370/0150-0300-0230-0370.html + - kind: form + citation: 2024 Montana Form 2 instructions, Schedule 2EC, p. 47 + url: https://revenue.mt.gov/files/forms/Montana-Individual-Income-Tax-Return-Form-2-Instructions/2024_Montana_Individual_Income_Tax_Return_Form_2_Instructions.pdf#page=47 + readings: + statute: Start from federal AGI without losses, retaining valid non-loss adjustments. + other: Sum income categories without non-loss deductions. + pe_us: + follows: statute + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9915 + state: unreviewed + note: 'Identify the omitted adjustments and verify applicability in both years. Code not yet on main: mt_elderly_homeowner_or_renter_credit_gross_household_income.' +- id: us-mt:elderly-credit-refundable-credit-timing + program: elderly-homeowner-renter-credit + years: + from: 2021 + to: 2023 + type: tax + question: Do refundable credits enter elderly-credit income when received under the regulation or as reported + on the current return under the schedule? + sources: + - kind: regulation + citation: ARM 42.4.301(2)(b)-(c) + url: null + - kind: form + citation: 2021-2023 Elderly Homeowner/Renter Credit Schedule + url: https://revenue.mt.gov/files/Forms/Montana-Individual-Income-Tax-Return-Form-2/2023_Montana_Individual_Income_Tax_Return_Form_2.pdf#page=10 + readings: + statute: The cited regulation counts refundable credits actually received; no statute is supplied. + other: The schedule directs use of amounts reported on the current Form 2. + pe_us: + follows: unknown + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9915 + state: unreviewed + note: 'PE-US uses current-return credits as a proxy; resolve the regulation/form timing difference, noting that + the 2024 caption uses received amounts. Code not yet on main: mt_elderly_homeowner_or_renter_credit_federal_refundable_credits.' +- id: us-mt:elderly-credit-rent-free-occupants + program: income-tax + years: + from: 2009 + type: tax + question: Can a rent-free occupant qualify by treating another member's property tax as rent when the statute + requires occupancy as owner, renter or lessee? + sources: + - kind: statute + citation: MCA 15-30-2338(1)(c) + url: null + - kind: regulation + citation: ARM 42.4.302(2)(b) + url: https://www.law.cornell.edu/regulations/montana/Mont-Admin-r-42.4.302 + - kind: instructions + citation: 2025 Form 2 instructions, Schedule 2EC line 23, PDF page 47 + url: https://revenue.mt.gov/files/forms/Montana-Individual-Income-Tax-Return-Form-2-Instructions/2025_Montana_Individual_Income_Tax_Return_Form_2_Instructions.pdf#page=47 + readings: + statute: The owner, renter or lessee condition potentially excludes a rent-free occupant. + other: Another person's property tax bill qualifies as the claimant's rent. + example: An 80-year-old parent with a $14,000 pension living rent-free in a child's home with $4,000 property + tax receives a 2024 credit of $341 versus $0 before. + pe_us: + follows: conflicting-source + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9945 + state: open + note: 'The source-choice question remains open; the statute-first rule requires a model change if the regulation + expands rather than interprets statutory eligibility. Code not yet on main: mt_elderly_homeowner_or_renter_credit_gross_rent.' +- id: us-mt:medical-floor-agi-base + program: income-tax + years: + from: 2021 + to: 2023 + type: tax + question: Does Montana's medical-expense deduction use Montana AGI as the form directs when the statute does not + specify the AGI base? + sources: + - kind: statute + citation: Former MCA 15-30-2131(1)(a) + url: https://mca.legmt.gov/bills/2022/mca/title_0150/chapter_0300/part_0210/section_0310/0150-0300-0210-0310.html + - kind: form + citation: 2022 Form 2, Itemized Deductions Schedule lines 1b-1c, PDF page 7 + url: https://revenuefiles.mt.gov/files/Forms/Montana-Individual-Income-Tax-Return-Form-2/2022_Montana_Individual_Income_Tax_Return_Form_2.pdf#page=7 + readings: + statute: The incorporation does not expressly identify the AGI base. + other: Use Montana AGI from page 1 line 14 for the medical floor. + example: A 2021 couple's medical deduction changes from $3,250 to $4,000. + pe_us: + follows: gap-fill + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9903 + state: unreviewed + note: 'Verify the incorporated federal provision against the form''s AGI choice; negative-AGI clipping is a separate + model convention. Code not yet on main: mt_medical_expense_deduction_joint, mt_standard_deduction_joint.' +- id: us-nc:lieap-gross-versus-net-income + program: liheap + years: + from: 2026 + to: 2026 + type: program + note: program year as the program defines it + question: Does LIEAP test gross income under the FY2026 plan or income net of the Energy Programs Manual's deductions? + sources: + - kind: plan + citation: FY2026 NC state plan, item 1.8, page 5 + url: https://liheapch.acf.gov/docs/2026/state-plans/NC_Plan_2026.pdf#page=6 + - kind: manual + citation: North Carolina Energy Programs Manual, Section 300.09 B, pages 11-13 + url: https://policies.ncdhhs.gov/wp-content/uploads/EP-300-5.1.2026.pdf#page=10 + readings: + statute: The filed plan reports gross income. + other: Deduct work, medical, support and care expenses. + pe_us: + follows: unknown + code: + - policyengine_us/variables/gov/states/nc/ncdhhs/lieap/nc_lieap_income.py + prs: [] + state: unreviewed + note: PE-US follows the manual; verify the plan item and supplied page anchor and reconcile income definitions. +- id: us-nc:lieap-insurance-payments + program: liheap + years: + from: 2026 + type: program + note: program year as the program defines it + question: Does LIEAP count workers' compensation and disability payments under the manual despite direct insurance + payments being unchecked in the FY2026 plan? + sources: + - kind: plan + citation: FY2026 NC state plan, item 1.9 checklist, pages 6-7 + url: https://liheapch.acf.gov/docs/2026/state-plans/NC_Plan_2026.pdf#page=6 + - kind: manual + citation: NC FNS Manual 300.02 chart, Worker's Compensation (page 26) and Disability Payments (page 6) + url: https://policies.ncdhhs.gov/wp-content/uploads/fns-300-sources-of-income.pdf#page=1 + readings: + statute: The plan leaves insurance payments made directly to the insured unchecked. + other: Count workers' compensation and disability benefits. + pe_us: + follows: unknown + code: + - policyengine_us/parameters/gov/states/nc/ncdhhs/lieap/unearned_income_sources.yaml + prs: [] + state: unreviewed + note: PE-US follows the manual from October 1, 2025; verify the insurance category's scope and whether unchecked + means excluded. +- id: us-nc:snap-child-support-exclusion + program: snap + years: + from: 2018 + type: federal-fiscal + question: Does North Carolina exclude child support paid from gross income under its letter and manual or deduct + it afterward as the federal reports state? + sources: + - kind: manual + citation: NC DSS Administrative Letter 6-2005; NCDHHS FNS manual 340.19(A) + url: https://policies.ncdhhs.gov/wp-content/uploads/FNS-340-Deductions_8.4.2026.pdf#page=25 + - kind: guidance + citation: SNAP State Options Report, 14th-17th Editions + url: https://fns-prod.azureedge.us/sites/default/files/resource-files/snap-stateOptionsReport-17edition-120925.pdf#page=23 + readings: + statute: State rules exclude child support paid from gross income. + other: The reports list a deduction. + pe_us: + follows: unknown + code: + - policyengine_us/parameters/gov/usda/snap/income/deductions/child_support.yaml + prs: [] + state: unreviewed + note: PE-US follows state rules from October 1, 2017; obtain historical versions because the supplied manual is + a 2026 revision. +- id: us-nd:stillborn-subtraction-dependency-condition + program: income-tax + years: + from: 2025 + to: 2025 + type: tax + question: Does the stillborn-child subtraction require federal dependent eligibility under the form when the statute + allows it for each stillbirth? + sources: + - kind: statute + citation: N.D.C.C. 57-38-30.3(2)(p) + url: https://www.ndlegis.gov/cencode/t57c38.pdf#page=35 + - kind: form + citation: 2025 Schedule ND-1SA line 8, p. 2 + url: https://www.tax.nd.gov/sites/www/files/documents/forms/individual/2025-iit/28710-schedule-nd-1sa-2025.pdf#page=2 + readings: + statute: The subtraction applies for each birth resulting in stillbirth without the added dependency condition. + other: The filer must have been eligible to claim the child federally. + example: A claimable filer receives $5,241 under the statutory reading versus $0 under the form. + pe_us: + follows: conflicting-source + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10043 + state: open + note: 'The statute-first rule requires removing the form''s added dependency condition if confirmed; the requested + decision remains open. Code not yet on main: nd_stillborn_subtraction.' +- id: us-ne:claim-of-right-obsolete-revenue-ruling + program: income-tax + years: + from: 2017 + to: 2026 + type: tax + question: Does Nebraska provide the statutory AGI subtraction or the federal-tax-percentage computation described + in the still-listed revenue ruling? + sources: + - kind: statute + citation: Neb. Rev. Stat. § 77-2716(7) + url: https://nebraskalegislature.gov/laws/statutes.php?statute=77-2716 + - kind: guidance + citation: Nebraska Revenue Ruling 22-85-2 + url: https://revenue.nebraska.gov/sites/default/files/doc/legal/rulings/rr228502_claim_of_right.pdf#page=2 + readings: + statute: Subtract the repayment from federal AGI when the federal section 1341 credit method applies. + other: Compute relief under the ruling's percentage-of-federal-tax framework. + pe_us: + follows: not-modelled + code: + - policyengine_us/parameters/gov/states/ne/tax/income/agi/subtractions/subtractions.yaml + prs: [] + state: unreviewed + note: Verify whether the still-listed ruling applies during these years despite its obsolete tax base. +- id: us-nj:claim-of-right-same-category-offset + program: income-tax + years: + from: 2011 + type: tax + question: Does the statutory within-category loss rule authorize the same-category repayment offset allowed by + agency guidance? + sources: + - kind: statute + citation: N.J.S.A. 54A:5-2 + url: https://lis.njleg.state.nj.us/nxt/gateway.dll/statutes/1/53569/53634 + - kind: guidance + citation: TAM 2011-7, Claim of Right Repayment Refunds (IRC 1341), issued January 13, 2011 + url: https://www.nj.gov/treasury/taxation/pdf/pubs/tams/tam7.pdf#page=1 + readings: + statute: The statute permits within-category losses but does not expressly address repayments of earlier-year + income. + other: Repayments offset same-category income in the repayment year, floored at zero, without a $3,000 threshold + or federal-method condition. + example: Wages of $50,000 and an $8,000 wage repayment reduce New Jersey tax from $1,214.75 to $772.75 under the + guidance. + pe_us: + follows: gap-fill + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10198 + state: unreviewed + note: 'Retain as a disputable gap-fill; verify whether repayments are statutory losses and separate this issue + from unsupported spouse attribution. Code not yet on main: policyengine_us/variables/gov/states/nj/tax/income/adjusted_gross_income/claim_of_right/nj_claim_of_right_repayment_category.py, + gov/states/nj/tax/income/adjusted_gross_income/nj_claim_of_right_offset.yaml, nj_claim_of_right_offset, nj_claim_of_right_repayment_category.' +- id: us-nj:liheap-income-ceiling + program: liheap + years: + from: 2022 + type: federal-fiscal + question: Is the income ceiling 175% FPG under the regulation or 60% SMI under the handbooks and published limits? + sources: + - kind: regulation + citation: N.J.A.C. 5:49 (readopted effective 2025-09-22) + url: https://www.nj.gov/dca/hmfa/about/regulations/docs/noticeofadoption10.20.25njr.pdf#page=6 + - kind: manual + citation: FY2026 and FY2027 LIHEAP Handbooks; USFHEA fact sheets + url: https://www.nj.gov/dca/dhcr/offices/docs/FY2027%20LIHEAP%20Handbook.pdf#page=7 + readings: + statute: No statute supplied; the codified regulation sets 175% FPG. + other: The handbooks and published limits use 60% SMI. + pe_us: + follows: unknown + code: + - policyengine_us/variables/gov/states/nj/dca/liheap/eligibility/nj_liheap_income_limit.py + prs: [] + state: unreviewed + note: PE-US follows the handbooks; establish authority for departure from the regulation readopted in 2025. +- id: us-nj:liheap-tanf-and-general-assistance-income + program: liheap + years: + from: 2027 + to: 2027 + type: federal-fiscal + question: Are TANF and General Assistance excluded by the FY2027 plan's unchecked items or counted under its handbook? + sources: + - kind: plan + citation: FY2027 NJ LIHEAP State Plan, item 1.9 (page 6) + url: null + - kind: manual + citation: FY2027 LIHEAP Handbook 2.2 (page 6) + url: https://www.nj.gov/dca/dhcr/offices/docs/FY2027%20LIHEAP%20Handbook.pdf#page=9 + readings: + statute: No statute supplied; the plan leaves TANF and General Assistance unchecked. + other: The handbook counts TANF and General Assistance grants. + pe_us: + follows: unknown + code: + - policyengine_us/variables/gov/states/nj/dca/liheap/income/nj_liheap_countable_income.py + prs: [] + state: unreviewed + note: PE-US counts TANF under the handbook; obtain the plan URL, verify the anchor and General Assistance treatment, + and do not infer a contrary handbook rule for strike pay. +- id: us-nj:school-meals-income-limit-carryforward + program: school-meals + years: + from: 2025 + type: program + note: program year as the program defines it + question: Does the 224% poverty-guideline free-lunch limit continue after school year 2024-25 despite the statute + naming only 2023-24 and 2024-25? + sources: + - kind: statute + citation: P.L.2023, c.336 + url: https://pub.njleg.state.nj.us/Bills/2022/AL23/336_.HTM + - kind: guidance + citation: NJDOE guidance, July 29, 2026 + url: https://www.nj.gov/education/broadcasts/2026/jul/29/GuidelinesforReportingEnrollmentIncomeStatus.pdf#page=1 + readings: + statute: The named lunch expansion ends after 2024-25 unless reenacted. + other: Guidance continues treating 186%-224% as eligible for free meals. + example: 'NJ 2025, $42,300 earnings: paid meals and $0 on main versus free meals and an additional $1,078.20 in + the PR.' + pe_us: + follows: conflicting-source + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10238 + state: unreviewed + note: 'The draft carries the guidance''s limit forward; the statute-first rule requires changing that choice, + subject to verifying subsequent legislation. Code not yet on main: school_meal_tier, state_free_income_limit.' +- id: us-nm:ccap-income-ceilings + program: child-care-assistance + years: + from: 2022 + type: program + note: program year as the program defines it + question: Do codified 200%/250% FPG ceilings or operative 400%/425% ceilings and later removal of limits govern + child-care assistance? + sources: + - kind: regulation + citation: 8.15.2.9 NMAC and 8.15.2.12 NMAC + url: https://www.srca.nm.gov/parts/title08/08.015.0002.html + - kind: agency-practice + citation: LFC Policy Brief, New Mexico Childcare Assistance Eligibility Changes (Dec 9 2025), p.2 + url: https://www.nmlegis.gov/handouts/ALFC%20120825%20Item%208%20Policy%20Brief%20Child%20Care%20Update.pdf#page=2 + readings: + statute: No statute supplied; the regulation provides 200% initial and 250% continuation ceilings. + other: Practice uses 400%/425% from May 1, 2022 and no income limit from November 1, 2025. + pe_us: + follows: unknown + code: + - policyengine_us/parameters/gov/states/nm/ececd/ccap/eligibility/fpl_limit/continuation.yaml + - policyengine_us/parameters/gov/states/nm/ececd/ccap/eligibility/fpl_limit/initial.yaml + prs: [] + state: unreviewed + note: PE-US follows agency practice; establish authority for departure from the codified regulation. +- id: us-nm:medical-care-credit-mixed-age-spouses + program: income-tax + years: + from: 2023 + type: tax + question: Must the same taxpayer satisfy the medical-care credit's age and nondependency tests, or can different + spouses satisfy them? + sources: + - kind: statute + citation: NMSA 7-2-18.13(A) + url: null + - kind: form + citation: PIT-RC line 23 + url: https://realfile.tax.newmexico.gov/2025pit-rc-ins.pdf#page=2 + readings: + statute: The same taxpayer must be at least 65 and not another taxpayer's dependent. + other: The form's either-spouse wording can allow one spouse to satisfy each test. + example: A joint return whose only spouse aged 65 or older is claimable receives $0 versus $2,800. + pe_us: + follows: statute + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10088 + state: ruled + note: 'Ruled in October 2026 to apply both tests to the same taxpayer; verify the line-23 page because the supplied + page-2 anchor is unconfirmed. Code not yet on main: nm_medical_expense_credit.' +- id: us-nm:medical-exemption-two-qualifying-spouses + program: income-tax + years: + from: 2023 + type: tax + question: Can two qualifying spouses each claim the $3,000 medical exemption or is it limited to $3,000 per return? + sources: + - kind: statute + citation: NMSA 7-2-5.9(A) + url: null + - kind: form + citation: PIT-ADJ line 18 + url: https://realfile.tax.newmexico.gov/2025pit-adj-ins.pdf#page=5 + readings: + statute: The individual wording supports $3,000 per qualifying spouse. + other: The single form line directs entering $3,000 for the return. + example: Two qualifying spouses receive $6,000 under the per-person reading versus $3,000 under the form reading. + pe_us: + follows: conflicting-source + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10047 + state: ruled + note: 'An October 2026 ruling accepted $3,000 per return; the statute-first rule requires a change if the per-person + reading is confirmed. Verify whether the single line actually caps entitlement. Code not yet on main: nm_medical_expense_exemption.' +- id: us-nm:medical-expense-exemption-28000-boundary + program: income-tax + years: + from: 2023 + type: tax + question: Must medical expenses exceed $28,000, or does exactly $28,000 qualify for the exemption? + sources: + - kind: statute + citation: NMSA 7-2-5.9(A) + url: null + - kind: instructions + citation: 2025 PIT-ADJ line 18 instructions + url: https://realfile.tax.newmexico.gov/2025pit-adj-ins.pdf#page=5 + - kind: instructions + citation: 2025 PIT-ADJ line 18 instructions (2025 PIT packet) + url: https://klvg4oyd4j.execute-api.us-west-2.amazonaws.com/prod/PublicFiles/34821a9573ca43e7b06dfad20f5183fd/0558a902-6362-47ca-8e3b-7cca3bc69b9d/2025%20PIT%20Packet_Final.pdf#page=50 + readings: + statute: Expenses must exceed $28,000. + other: Expenses of $28,000 or more qualify. + example: At exactly $28,000 of expenses, the statute gives no exemption and the instructions give a $3,000 exemption. + pe_us: + follows: conflicting-source + code: + - policyengine_us/variables/gov/states/nm/tax/income/exemptions/nm_medical_expense_exemption.py + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10047 + - https://github.com/PolicyEngine/policyengine-us/pull/10088 + state: ruled + note: 'An October 2026 ruling accepted the instructions; the later statute-first rule requires a strict greater-than + threshold. Code not yet on main: nm_medical_expense_exemption.' +- id: us-nm:mixed-spouse-dependent-credit-tests + program: income-tax + years: + from: 2021 + type: tax + question: On a mixed joint return, does one spouse's dependency bar the whole return or only that spouse's rebates + and credits? + sources: + - kind: statute + citation: NMSA 7-2-7.5, 7-2-7.6, 7-2-7.7, 7-2-39, 7-2-18.13, 7-2-18.1 + url: null + - kind: instructions + citation: 2025 PIT-RC instructions + url: https://realfile.tax.newmexico.gov/2025pit-rc-ins.pdf#page=2 + readings: + statute: The statutory dependent wording does not explicitly resolve mixed joint returns. + other: The instructions preserve potential eligibility for the nondependent spouse. + pe_us: + follows: gap-fill + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10024 + state: ruled + note: 'Ruled in October 2026 to follow the per-spouse gap-fill; verify which listed credits and rebates share + that treatment. Code not yet on main: nm_2021_income_rebate, nm_deduction_for_certain_dependents_eligible, nm_medical_expense_credit, + nm_cdcc_eligible.' +- id: us-ny:college-tuition-credit-claimed-spouse + program: income-tax + years: + from: 2015 + type: tax + question: Does the statute preserve one spouse's own tuition credit when the other spouse is claimed, despite + the form's return-level stopping question? + sources: + - kind: statute + citation: N.Y. Tax Law 606(t)(2)(D) + url: https://www.nysenate.gov/legislation/laws/TAX/606 + - kind: form + citation: Form IT-272 + url: https://www.tax.ny.gov/pdf/2025/inc/it272i_2025.pdf#page=1 + readings: + statute: The restriction applies per individual, preserving the other spouse's tuition. + other: The form's single dependency question stops the entire return's claim. + example: The other spouse retains $6,000 of allowable expenses and a $240 credit under the statute, versus $0 + under the form reading. + pe_us: + follows: statute + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10090 + state: ruled + note: 'Ruled in October 2026 to read the statute per individual; verify the form''s stopping condition. Code not + yet on main: ny_allowable_college_tuition_expenses.' +- id: us-ny:dependent-standard-deduction-filing-status + program: income-tax + years: + from: 2015 + type: tax + question: Does the dependent standard deduction apply across filing statuses under the statute or only to single + filers under the instructions? + sources: + - kind: statute + citation: N.Y. Tax Law 614(e) + url: https://www.nysenate.gov/legislation/laws/TAX/614 + - kind: instructions + citation: 2025 IT-201 instructions, standard deduction table, p. 11 + url: https://www.tax.ny.gov/pdf/2025/inc/it201i_2025.pdf#page=11 + readings: + statute: The resident-individual wording is status-neutral and supports the dependent amount for non-single + claimable filers. + other: Only single dependent filers receive $3,100; other statuses receive their regular deduction. + example: The supplied 2025 couple receives a $16,050 deduction under the table, versus the possible $3,100 statutory + reading. + pe_us: + follows: conflicting-source + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10024 + state: ruled + note: 'An October 2026 ruling followed the table; the statute-first rule requires a change if the status-neutral + wording governs, or a gap-fill finding if status is unspecified. Code not yet on main: ny_standard_deduction.' +- id: us-ny:heap-code-c-ssi-household-membership + program: liheap + years: + from: 2026 + to: 2026 + type: federal-fiscal + question: Are Code C SSI children household members under the regulation or excluded under the HEAP manual? + sources: + - kind: regulation + citation: 18 NYCRR 393.4(b) + url: https://www.law.cornell.edu/regulations/new-york/18-NYCRR-393.4 + - kind: manual + citation: NY HEAP Manual Chapter 8 D.4(a)(5), PDF page 36 + url: https://otda.ny.gov/programs/heap/HEAP-manual.pdf#page=36 + readings: + statute: No statute supplied; the regulation's relatives presumption counts the SSI child's size and vulnerability. + other: The manual excludes Code C SSI children from household membership. + pe_us: + follows: unknown + code: + - policyengine_us/variables/gov/states/ny/otda/heap/eligibility/ny_heap_household_size.py + - policyengine_us/variables/gov/states/ny/otda/heap/eligibility/ny_heap_is_excluded_person.py + prs: [] + state: unreviewed + note: PE-US follows the manual; resolve the regulation-manual hierarchy without assuming a statute ruling. +- id: us-ny:heap-income-limits-for-large-households + program: liheap + years: + from: 2026 + to: 2026 + type: federal-fiscal + question: For households of at least 14, is the income limit computed from the stated FPG rate or the matrix's + additional-person increment? + sources: + - kind: manual + citation: HEAP Manual Chapter 8 D.9(c) + url: https://otda.ny.gov/programs/heap/HEAP-manual.pdf#page=37 + - kind: plan + citation: FY2026 LIHEAP State Plan section 2.1 + url: null + - kind: calculator + citation: NY FY2026 benefit matrix + url: https://liheapch.acf.gov/docs/2026/benefits-matricies/NY_BenefitMatrix_2026.docx + readings: + statute: No statute supplied; the manual and plan use max(60% SMI, 150% FPG) for actual size. + other: The matrix uses its per-person increment. + pe_us: + follows: unknown + code: + - policyengine_us/parameters/gov/states/ny/otda/heap/eligibility/fpg_rate.yaml + - policyengine_us/variables/gov/states/ny/otda/heap/eligibility/ny_heap_income_limit.py + prs: [] + state: unreviewed + note: PE-US follows the manual and plan; verify the matrix discrepancy for sizes 14 and above. +- id: us-ny:household-credit-claimable-spouse + program: income-tax + years: + from: 2015 + type: tax + question: Does one claimable spouse bar the entire household credit under the instructions despite the statute's + separate treatment of married couples? + sources: + - kind: statute + citation: N.Y. Tax Law 606(b); 1310(d) + url: https://www.nysenate.gov/legislation/laws/TAX/606 + - kind: instructions + citation: IT-201 instructions, line 40 (household credit) and item C + url: https://www.tax.ny.gov/pdf/2025/inc/it201i_2025.pdf#page=12 + readings: + statute: An exemption-count or whole-household reading preserves some or all of the credit. + other: The instructions deny the credit when either spouse can be claimed. + example: The test household receives $0 under the instructions, $60 state/$30 NYC by exemption count, or $75 state/$60 + NYC by whole household. + pe_us: + follows: conflicting-source + code: + - policyengine_us/variables/gov/states/ny/tax/income/credits/ny_household_credit_potential.py + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10090 + state: ruled + note: 'An October 2026 ruling accepted the instructions; the statute-first rule requires a model change after + resolving the statutory allocation. Code not yet on main: nyc_household_credit.' +- id: us-ny:real-property-credit-claimable-spouse + program: income-tax + years: + from: 2015 + type: tax + question: Can a qualified taxpayer retain the real-property tax credit when their spouse is claimable, despite + the instructions' return-level dependency question? + sources: + - kind: statute + citation: N.Y. Tax Law 606(e)(6)(C), 606(e)(7)(E) + url: https://www.nysenate.gov/legislation/laws/TAX/606 + - kind: instructions + citation: Form IT-214 instructions + url: https://www.tax.ny.gov/pdf/2025/inc/it214i_2025.pdf#page=1 + readings: + statute: The qualified taxpayer and spouse retain the credit when one spouse can be claimed. + other: The return-level dependency question can bar the credit if either spouse can be claimed. + pe_us: + follows: statute + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10090 + state: ruled + note: 'Ruled in October 2026 to retain the credit under the statute; verify the instructions'' return-level interpretation. + Code not yet on main: ny_real_property_tax_credit.' +- id: us-oh:claim-of-right-federal-claim-condition + program: income-tax + years: + from: 2021 + to: 2025 + type: tax + question: Does Ohio's deduction for repaying income reported in a prior year (R.C. 5747.01(A)(12)) need only to + be allowable, as the statute says, or must the federal return also have claimed the section 1341 credit or a + Schedule A deduction for the repayment, as the IT 1040 instructions require? + sources: + - kind: statute + citation: R.C. 5747.01(A)(12) + url: https://codes.ohio.gov/ohio-revised-code/section-5747.01 + - kind: statute + citation: R.C. 5747.01(A)(12)(a) + url: https://codes.ohio.gov/ohio-revised-code/section-5747.01 + - kind: instructions + citation: 2025 Ohio IT 1040 instructions, Schedule of Adjustments line 29, p. 23 + url: https://dam.assets.ohio.gov/image/upload/tax.ohio.gov/forms/ohio_individual/individual/2025/it1040-booklet.pdf#page=23 + readings: + statute: Deduct the repayment whenever (A)(12) allows it (an item included in a prior year's Ohio AGI that did + not qualify for the resident or nonresident credit and does not otherwise reduce AGI), whether or not the + federal return claimed relief for it. + other: Deduct only when the federal return claimed the section 1341 credit or itemized the repayment on Schedule + A, as every IT 1040 edition from 2021 (line 23) to 2025 (line 29) instructs. + example: 'A 2025 single filer repays $10,000 of wages taxed in an earlier year, takes the federal standard deduction, + and the section 1341 methods tie: the statute reading deducts $10,000 from Ohio AGI, the instructions $0. This + is the difference in deduction, worth up to $275 of Ohio tax at the 2.75% rate.' + pe_us: + follows: conflicting-source + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10195 + state: ruled + note: Verified entry drafted in TheAxiomFoundation/rulespec-us#1825; it registers once its source captures are + on main. +- id: us-oh:heap-awards-above-150-percent-poverty + program: liheap + years: + from: 2021 + to: 2026 + type: program + note: program year as the program defines it + question: Do eligible households between 150% and 175% of poverty receive the 150% award or zero? + sources: + - kind: worksheet + citation: 2021 and 2023 FINAL benefit workbooks, Tables 2B and 2C + url: null + - kind: worksheet + citation: 2021 and 2023 FINAL benefit workbooks, Table 4 (page 29) + url: https://liheapch.acf.gov/sites/default/files/webfiles/docs/OH_BenefitMatrix_2022.pdf#page=1 + readings: + statute: No statutory rule supplied; Tables 2B and 2C pay the 150+ row through the 175% limit. + other: Table 4 pays zero above 150%. + pe_us: + follows: unknown + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9975 + state: unreviewed + note: 'PE-US pays the 150% award through the 175% limit; verify applicable workbook years and tables. Code not + yet on main: oh_liheap_eligible, oh_liheap.' +- id: us-oh:heap-dependent-minor-income + program: liheap + years: + from: 2026 + to: 2026 + type: federal-fiscal + question: Does the dependent-minor income exclusion cover SSI and other income under the Guidelines or only earned + income under the plan? + sources: + - kind: manual + citation: Guidelines E-2.2, E-2.3, Appendix XXIII + url: null + - kind: guidance + citation: FY2026 LIHEAP State Plan section 1.9, page 6 + url: https://dam.assets.ohio.gov/image/upload/v1769700600/development.ohio.gov/individual/energyassistance/DETAILED_MODEL_PLAN_LIHEAP__10_01_2025.pdf#page=5 + readings: + statute: No statutory rule supplied; the Guidelines exclude a dependent minor's SSI and other income but count + Social Security. + other: The plan excludes only earned income of a child under 18. + pe_us: + follows: unknown + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9975 + state: unreviewed + note: 'PE-US follows the Guidelines; reconcile the exclusions by income type. Code not yet on main: oh_liheap_countable_income.' +- id: us-oh:heap-general-assistance-income + program: liheap + years: + from: 2026 + to: 2026 + type: federal-fiscal + question: Does General Assistance count under the Guidelines despite the state plan's unchecked item? + sources: + - kind: manual + citation: Guidelines E-2.2, E-2.3, Appendix XXIII + url: null + - kind: guidance + citation: FY2026 LIHEAP State Plan section 1.9, page 6 + url: https://dam.assets.ohio.gov/image/upload/v1769700600/development.ohio.gov/individual/energyassistance/DETAILED_MODEL_PLAN_LIHEAP__10_01_2025.pdf#page=5 + readings: + statute: No statutory rule supplied; the Guidelines count General Assistance. + other: The plan leaves General Assistance unchecked. + pe_us: + follows: unknown + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9975 + state: unreviewed + note: 'PE-US follows the Guidelines; confirm the checkbox''s meaning and cited page. Code not yet on main: oh_liheap_countable_income.' +- id: us-oh:heap-heat-in-rent-bill-name + program: liheap + years: + from: 2026 + to: 2026 + type: federal-fiscal + question: Must a tenant whose heat is included in rent hold the electric bill in their name to qualify? + sources: + - kind: manual + citation: Guidelines E-4 + url: null + - kind: guidance + citation: FY2026 plan section 2.3, page 8 + url: null + readings: + statute: No statutory rule supplied; the Guidelines do not require the bill in a household member's name. + other: The plan requires the renter's name unless the tenant verifies paying all or part of the bill. + pe_us: + follows: unknown + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9975 + state: unreviewed + note: 'PE-US follows Guidelines E-4 for unsubsidized tenants; establish whether the plan''s verification exception + reconciles the rules. Code not yet on main: oh_liheap_eligible, oh_liheap.' +- id: us-oh:heap-income-limit-2022-2023 + program: liheap + years: + from: 2023 + to: 2023 + type: federal-fiscal + question: Is Ohio's 2022-2023 income limit 60% SMI under the plan or 175% of poverty guidelines under the Guidelines? + sources: + - kind: statute + citation: 42 U.S.C. 8624(b)(2)(B) + url: https://www.law.cornell.edu/uscode/text/42/8624 + - kind: guidance + citation: FY2023 LIHEAP State Plan section 2.1, page 8 + url: https://liheapch.acf.gov/docs/2023/state-plans/OH_Plan_2023.pdf#page=8 + - kind: manual + citation: Ohio 2022-2023 Energy Assistance Programs Guidelines section E-2.2, page 7 + url: https://irp.cdn-website.com/aa88b0b1/files/uploaded/2022-24%20ATTACHMENT%202022-2023%20EAP%20Guidelines%20%281%29.pdf#page=5 + readings: + statute: The federal cap permits either measure and does not resolve the agency-source disagreement. + other: The plan uses 60% SMI for every size; the Guidelines use 175% of poverty guidelines. + pe_us: + follows: unknown + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9975 + state: unreviewed + note: 'PE-US follows the Guidelines; reconcile the agency sources and verify the cited PDF page. Code not yet + on main: oh_liheap_income_limit.' +- id: us-oh:liheap-income-floor-vs-smi-limit + program: liheap + years: + from: 2025 + to: 2027 + type: federal-fiscal + question: Can Ohio's printed 60% SMI limit exclude a large household whose income is below the federal 110% poverty-guideline + floor? + sources: + - kind: statute + citation: 42 U.S.C. 8624(b)(2)(B) + url: https://www.law.cornell.edu/uscode/text/42/8624 + - kind: guidance + citation: Ohio FY2026 LIHEAP State Plan / HEAP applications (60% SMI above size cutoff) + url: https://dam.assets.ohio.gov/image/upload/v1769700600/development.ohio.gov/individual/energyassistance/DETAILED_MODEL_PLAN_LIHEAP__10_01_2025.pdf#page=5 + readings: + statute: Income below 110% of the poverty guideline cannot by itself exclude the household. + other: The printed Ohio limits fall below that floor for households of 17 or more. + example: For a 20-person household in 2026, the printed limit is $119,633 versus a federal floor of $132,165. + pe_us: + follows: statute + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9975 + state: unreviewed + note: 'The open PR applies the federal floor; verify the applicable fiscal-year tables and large-household calculations. + Code not yet on main: oh_liheap_eligible, gov.hhs.liheap.fpg_floor.' +- id: us-ok:liheap-child-earnings + program: liheap + years: + from: 2026 + to: 2026 + type: federal-fiscal + question: Are all under-18 earnings excluded under the plan or only earnings of qualifying school-attending children + under the regulation? + sources: + - kind: regulation + citation: OAC 340:20-1-11(b); OAC 340:50-7-22(9) + url: https://prod-ok-administrativerules.tecuity.com/api/BlobStorageGetFile?storageContainer=TitleHtml&name=Title_340.html + - kind: guidance + citation: FY2026 LIHEAP State Plan section 1.9 (page 6) + url: https://liheapch.acf.gov/docs/2026/state-plans/OK_Plan_2026.pdf#page=5 + readings: + statute: No statute supplied; the regulation excludes elementary/high-school students aged 17 or younger under + parental control. + other: The plan excludes earned income of every child under 18. + pe_us: + follows: unknown + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9970 + state: unreviewed + note: 'PE-US follows the regulation; verify whether the broader plan checkbox reflects actual practice. Code not + yet on main: ok_liheap.' +- id: us-ok:liheap-immigration-status-list + program: liheap + years: + from: 2026 + to: 2027 + type: program + note: program year as the program defines it + question: Does Oklahoma LIHEAP use the narrowed statutory SNAP immigration list or the regulation text that still + includes refugees and asylees? + sources: + - kind: statute + citation: P.L. 119-21 section 10108 (amending 7 U.S.C. 2015(f)) + url: https://www.govinfo.gov/content/pkg/PLAW-119publ21/html/PLAW-119publ21.htm + - kind: regulation + citation: 7 CFR 273.4(a)(6) (eCFR text) + url: https://www.ecfr.gov/current/title-7/section-273.4 + readings: + statute: The narrowed list is reported to exclude refugees and asylees. + other: The regulation text retains those categories. + example: The supplied refugee example is eligible in 2025 but not in 2027. + pe_us: + follows: statute + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9970 + state: unreviewed + note: 'Verify statutory effective dates and Oklahoma LIHEAP''s incorporation of SNAP categories. Code not yet + on main: is_snap_immigration_status_eligible.' +- id: us-ok:liheap-medicare-premium-income-test + program: liheap + years: + from: 2025 + to: 2027 + type: federal-fiscal + question: Is Social Security tested gross under the regulation or net of Medicare premiums under the plan checkbox? + sources: + - kind: regulation + citation: OAC 340:20-1-11(a), (c) + url: https://prod-ok-administrativerules.tecuity.com/api/BlobStorageGetFile?storageContainer=TitleHtml&name=Title_340.html + - kind: guidance + citation: FY2025-FY2027 LIHEAP State Plans, section 1.9 (page 6) + url: https://liheapch.acf.gov/docs/2026/state-plans/OK_Plan_2026.pdf#page=5 + readings: + statute: No statute supplied; the regulation tests gross Social Security and deducts the premium afterward. + other: The checkbox indicates Social Security net of the premium. + example: A retiree receiving $1,780 monthly is ineligible under the gross test even when the premium is withheld. + pe_us: + follows: unknown + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9970 + state: unreviewed + note: 'PE-US follows the regulation; the plan narrative agrees, so reconcile its contrary checkbox and verify + page references. Code not yet on main: ok_liheap.' +- id: us-or:2026-standard-deduction-agency-figures + program: income-tax + years: + from: 2026 + to: 2026 + type: tax + question: Which 2026 standard deduction governs when OR-ESTIMATE and the withholding formulas publish different + amounts? + sources: + - kind: guidance + citation: 2026 Publication OR-ESTIMATE + url: https://www.oregon.gov/dor/forms/FormsPubs/publication-or-estimate_101-026_2026.pdf#page=3 + - kind: guidance + citation: 2026 Oregon Withholding Tax Formulas + url: https://www.oregon.gov/dor/forms/FormsPubs/withholding-tax-formulas_206-436_2026.pdf#page=6 + readings: + statute: No statute reading supplied; OR-ESTIMATE gives $2,900 single and $5,800 joint. + other: The withholding formulas give $2,910 single and $5,820 married. + pe_us: + follows: unknown + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9927 + state: unreviewed + note: 'PE-US retains its projection pending OR-40 instructions; verify whether these documents intend the same + annual deduction. Code not yet on main: or standard deduction parameter.' +- id: us-or:claim-of-right-federal-tax-subtraction + program: income-tax + years: + from: 2017 + to: 2025 + type: tax + question: Does the section 1341 credit reduce Oregon's federal-tax subtraction under the publication's prose or + remain excluded from the worksheet's reductions? + sources: + - kind: statute + citation: ORS 316.680(1)(b) + url: https://www.oregonlegislature.gov/bills_laws/ors/ors316.html + - kind: guidance + citation: 2025 Publication OR-17, PDF p.71 + url: https://www.oregon.gov/dor/forms/FormsPubs/publication-or-17_101-431_2025.pdf#page=71 + - kind: worksheet + citation: 2025 OR-17 federal tax subtraction worksheet, PDF pp.71-72 (also 2017, 2018 and 2021) + url: https://www.oregon.gov/dor/forms/FormsPubs/publication-or-17_101-431_2025.pdf#page=71 + readings: + statute: The statute refers to federal income taxes accrued; how it treats the section 1341 credit is unresolved. + other: The prose says credits except EITC reduce the subtraction, but the worksheet does not subtract the section + 1341 credit. + pe_us: + follows: unknown + code: + - policyengine_us/variables/gov/states/or/tax/income/subtractions/or_federal_tax_liability_subtraction.py + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10038 + state: ruled + note: 'Ruled in October 2026 to follow the worksheet; establish the statutory treatment before determining whether + a model change is required. Code not yet on main: or_federal_tax_liability_subtraction.' +- id: us-or:liheap-final-payment-band-bound + program: liheap + years: + from: 2025 + to: 2027 + type: program + note: program year as the program defines it + question: Does the final payment band end at the payment table's bound or the eligibility table's $1-different + limit? + sources: + - kind: manual + citation: PY2025-PY2027 Energy Assistance Intake Operations and Policy Manual, standard payment income bands + url: https://www.oregon.gov/ohcs/energy-weatherization/Documents/PY25%20EA%20Operations%20%20Policy%20Manual-%20FINAL%209-27-24.pdf#page=58 + - kind: manual + citation: Same manual, eligibility limit table + url: null + readings: + statute: No statutory reading supplied; the payment-band table supplies one upper bound. + other: The separate eligibility table supplies a bound differing by $1. + pe_us: + follows: unknown + code: + - policyengine_us/parameters/gov/states/or/ohcs/liheap/payment/income_band.yaml + prs: [] + state: unreviewed + note: PE-US extends the final band through the eligibility limit; verify the table bounds and payment effect at + the boundary. +- id: us-pa:liheap-interest-dividend-threshold + program: liheap + years: + from: 2025 + to: 2027 + type: program + note: program year as the program defines it + question: Do interest and dividends count from the first dollar under the plan or only above $25 a month under + the handbook? + sources: + - kind: guidance + citation: FY2026 plan 601.82(4)(ix), page 51 + url: null + - kind: manual + citation: LIHEAP Handbook 650.3(9) + url: null + readings: + statute: No statutory rule supplied; the plan counts interest and dividends without a threshold. + other: The handbook counts amounts over $25 a month. + pe_us: + follows: unknown + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9971 + state: unreviewed + note: 'PE-US follows the handbook; obtain the plan link and effective versions. The code identifier is inferred, + not confirmed. Code not yet on main: pa_liheap_countable_income.' +- id: us-pa:liheap-railroad-retirement-medicare-premium + program: liheap + years: + from: 2025 + to: 2027 + type: program + note: program year as the program defines it + question: Are Medicare premiums deducted from Railroad Retirement excluded under the handbook or only premiums + deducted from Social Security under the plan? + sources: + - kind: guidance + citation: FY2026 plan 601.84(10) + url: null + - kind: manual + citation: LIHEAP Handbook 650.6(10) + url: null + readings: + statute: No statutory rule supplied; the plan excludes only the premium deducted from Social Security. + other: The handbook also excludes premiums deducted from Railroad Retirement. + pe_us: + follows: unknown + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9971 + state: unreviewed + note: 'PE-US follows the handbook; obtain section links and effective versions. The code identifier is inferred, + not confirmed. Code not yet on main: pa_liheap_countable_income.' +- id: us-pa:liheap-supplement-child-age + program: liheap + years: + from: 2025 + to: 2026 + type: program + note: program year as the program defines it + question: Does a household whose only vulnerable member is five qualify for the supplement? + sources: + - kind: guidance + citation: FY2026 plan pages 34 and 43 + url: null + - kind: guidance + citation: July 30, 2026 announcement + url: null + - kind: guidance + citation: Operations Memoranda 25-08-01 and 26-07-01, page 2 + url: null + readings: + statute: No statutory rule supplied; the plan's age-five-and-under and announcement's under-six wording include + five-year-olds. + other: The memoranda's under-five wording excludes five-year-olds. + example: A household whose only vulnerable member is five receives no supplement in the model. + pe_us: + follows: unknown + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9971 + state: unreviewed + note: PE-US follows the memoranda; reconcile the age cutoff and verify the cited page. +- id: us-pa:snap-child-support-deduction + program: snap + years: + from: 2013 + to: 2016 + type: program + note: program year as the program defines it + question: Is paid child support deducted under Pennsylvania's handbook or excluded under the 11th and 12th federal + options reports? + sources: + - kind: manual + citation: Pennsylvania SNAP Handbook 560.6 + url: null + - kind: guidance + citation: SNAP State Options Report, 11th and 12th Editions + url: https://fns-prod.azureedge.us/sites/default/files/snap/12-State_Options.pdf#page=16 + readings: + statute: No statute supplied; the handbook deducts paid child support. + other: The cited reports list an exclusion. + pe_us: + follows: unknown + code: + - policyengine_us/parameters/gov/usda/snap/income/deductions/child_support.yaml + prs: [] + state: unreviewed + note: PE-US follows the handbook; verify its historical applicability to the report periods. +- id: us-pa:tax-forgiveness-dependent-parent-exception + program: income-tax + years: + from: 2025 + to: 2025 + type: tax + question: Can a dependent child claim tax forgiveness when the claiming parent qualifies despite the statute's + dependent exclusion? + sources: + - kind: statute + citation: Tax Reform Code 301(c.2) + url: https://www.legis.state.pa.us/WU01/LI/LI/US/PDF/1971/0/0002..PDF#page=112 + - kind: form + citation: 2025 PA-40 Schedule SP, pp. 3-5 + url: https://www.pa.gov/content/dam/copapwp-pagov/en/revenue/documents/formsandpublications/formsforindividuals/pit/documents/2025/2025_pa-40sp.pdf#page=3 + readings: + statute: A dependent cannot be a claimant. + other: A dependent child may qualify when the claiming parent qualifies. + pe_us: + follows: conflicting-source + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10043 + state: open + note: 'The statute-first rule requires removing the form''s dependent-child exception if confirmed; the requested + decision remains open. Code not yet on main: pa_tax_forgiveness_eligible, pa_tax_forgiveness_parent_qualifies, + pa_tax_forgiveness_amount.' +- id: us-pa:tax-forgiveness-one-claimed-spouse-table + program: income-tax + years: + from: 2025 + to: 2025 + type: tax + question: Which tax-forgiveness table and allocation apply when one spouse is claimed elsewhere and the other + qualifies? + sources: + - kind: statute + citation: Tax Reform Code 301(c.2) + url: https://www.legis.state.pa.us/WU01/LI/LI/US/PDF/1971/0/0002..PDF#page=112 + - kind: form + citation: 2025 PA-40 Schedule SP, pp. 3-5 + url: https://www.pa.gov/content/dam/copapwp-pagov/en/revenue/documents/formsandpublications/formsforindividuals/pit/documents/2025/2025_pa-40sp.pdf#page=3 + - kind: guidance + citation: PA Personal Income Tax Guide, Tax Forgiveness + url: https://www.pa.gov/agencies/revenue/forms-and-publications/pa-personal-income-tax-guide/tax-forgiveness + readings: + statute: The statute does not specify the table for this mixed-spouse case. + other: Schedule SP supplies married treatment; the guide's classification of married-separate claimants points + to the single table. + example: The supplied case with $3,000 income for each spouse gives $92.10 under Schedule SP. + pe_us: + follows: gap-fill + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10043 + state: open + note: 'PE-US follows Schedule SP''s gap-fill; reconcile it with the guide''s single-claimant category. Code not + yet on main: pa_tax_forgiveness_eligible_share, pa_tax_forgiveness_amount.' +- id: us-pr:eitc-minimum-age-gap-fill + program: income-tax + years: + from: 2023 + type: tax + question: Does a minimum age apply when the statute states none and Schedule CT imposes 19? + sources: + - kind: statute + citation: P.R. Laws tit. 13, § 30211 + url: https://law.justia.com/codes/puerto-rico/title-thirteen/subtitle-17/part-ii/chapter-1007/subchapter-b/30211/ + - kind: instructions + citation: Schedule CT Individual, Earned Income Credit, 2023, page 1 + url: https://hacienda.pr.gov/sites/default/files/schedule_ct_rev._jul_5_23_informative_-_instructions.pdf#page=1 + readings: + statute: The supplied statutory reading states no minimum age. + other: Schedule CT excludes filers younger than 19. + pe_us: + follows: gap-fill + code: + - policyengine_us/parameters/gov/territories/pr/tax/income/credits/earned_income/eligibility/min.yaml + prs: [] + state: unreviewed + note: Verify whether statutory silence permits the instruction's age restriction; no individual policy ruling + is supplied. +- id: us-pr:eitc-separate-filer-gap-fill + program: income-tax + years: + from: 2023 + type: tax + question: Are separate filers eligible when the statute has no filing-status restriction and Schedule CT excludes + them? + sources: + - kind: statute + citation: P.R. Laws tit. 13, § 30211 + url: https://law.justia.com/codes/puerto-rico/title-thirteen/subtitle-17/part-ii/chapter-1007/subchapter-b/30211/ + - kind: instructions + citation: Schedule CT Individual, Earned Income Credit, 2023, page 1 + url: https://hacienda.pr.gov/sites/default/files/schedule_ct_rev._jul_5_23_informative_-_instructions.pdf#page=1 + readings: + statute: The supplied statutory reading states no filing-status restriction. + other: Schedule CT excludes married separate filers. + pe_us: + follows: gap-fill + code: + - policyengine_us/parameters/gov/territories/pr/tax/income/credits/earned_income/eligibility/separate_filer.yaml + prs: [] + state: unreviewed + note: Verify whether statutory silence permits the filing-status restriction; no individual policy ruling is supplied. +- id: us-pr:eitc-unearned-income-limit + program: income-tax + years: + from: 2023 + type: tax + question: Is Puerto Rico's EITC unearned-income limit the statute's $2,200 or Schedule CT's $10,000? + sources: + - kind: statute + citation: P.R. Laws tit. 13, § 30211(6)(e) + url: https://law.justia.com/codes/puerto-rico/title-thirteen/subtitle-17/part-ii/chapter-1007/subchapter-b/30211/ + - kind: instructions + citation: Schedule CT Individual, Earned Income Credit, 2023, page 4 + url: https://hacienda.pr.gov/sites/default/files/schedule_ct_rev._jul_5_23_informative_-_instructions.pdf#page=4 + readings: + statute: Filers with unearned income at or above $2,200 lose the credit. + other: The limit is $10,000. + example: A filer with $5,000 unearned income passes the form's limit but fails the supplied statutory limit. + pe_us: + follows: conflicting-source + code: + - policyengine_us/parameters/gov/territories/pr/tax/income/credits/earned_income/unearned_income/limit.yaml + prs: [] + state: unreviewed + note: The statute-first rule requires changing the $10,000 form-based limit to the statutory limit; confirm applicable + years and the boundary test. +- id: us-ri:liheap-lottery-winnings + program: liheap + years: + from: 2026 + to: 2026 + type: federal-fiscal + question: Are lottery winnings and cash prizes excluded under the state plan or counted under the manual? + sources: + - kind: plan + citation: FY2026 LIHEAP State Plan, section 1.9 (page 6) + url: https://liheapch.acf.gov/docs/2026/state-plans/RI_Plan_2026.pdf#page=5 + - kind: manual + citation: 2019 manual, section III.E, page 17 + url: null + readings: + statute: No statute supplied; the plan leaves lottery winnings unchecked. + other: The manual counts cash prizes and lottery winnings. + pe_us: + follows: unknown + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9972 + state: unreviewed + note: 'PE-US follows the manual; verify the unchecked item''s meaning and continued manual applicability. Code + not yet on main: ri_liheap countable income.' +- id: us-ri:liheap-student-household-head-income + program: liheap + years: + from: 2026 + to: 2027 + type: federal-fiscal + question: Is income excluded for every full-time student aged 18-23 or only a student child who is not the household + head? + sources: + - kind: instructions + citation: FY2026 (Appendix H) and FY2027 application instructions, page 2 + url: https://dhs.ri.gov/media/12306/download?language=en#page=2 + - kind: manual + citation: RI LIHEAP Administration and Procedures Manual (2019), section III.G, page 20 + url: https://ripuc.ri.gov/eventsactions/docket/4290-DHS-DR-PUC%203-6%20attachment%20LIHEAP%20Manual%202020%20-%20Final.pdf#page=5 + readings: + statute: No statute supplied; current instructions exclude every full-time student aged 18-23. + other: The manual excludes only a student child who is not the household head. + pe_us: + follows: unknown + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9972 + state: unreviewed + note: 'PE-US follows current instructions; verify that the 2019 manual remains applicable. Code not yet on main: + ri_liheap countable income.' +- id: us-ri:liheap-workers-compensation-and-tdi + program: liheap + years: + from: 2026 + to: 2026 + type: federal-fiscal + question: Are workers' compensation and TDI/TCI payments excluded under the plan or counted under the manual? + sources: + - kind: plan + citation: FY2026 LIHEAP State Plan, section 1.9 (page 6) + url: https://liheapch.acf.gov/docs/2026/state-plans/RI_Plan_2026.pdf#page=5 + - kind: manual + citation: 2019 manual, section III.E, pages 15-16 + url: null + readings: + statute: No statute supplied; the plan leaves insurance payments made directly to the insured unchecked. + other: The manual counts workers' compensation, TDI and TCI. + pe_us: + follows: unknown + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9972 + state: unreviewed + note: 'PE-US follows the manual; verify whether the unchecked insurance category covers these payments. Code not + yet on main: ri_liheap countable income.' +- id: us-sd:liheap-2025-published-income-limit + program: liheap + years: + from: 2025 + to: 2025 + type: federal-fiscal + question: Is the FY2025 four-person annual income limit $62,400 under the rule or $63,432 in the published table? + sources: + - kind: regulation + citation: ARSD 67:15:01:10 + url: https://sdlegislature.gov/Rules/Administrative/67:15:01:10 + - kind: agency-practice + citation: FY2025 table + url: null + readings: + statute: No statute supplied; the rule's min/max formula gives $62,400. + other: The published table gives $63,432. + example: The four-person annual limits differ by using $62,400 versus $63,432. + pe_us: + follows: unknown + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9974 + state: unreviewed + note: 'PE-US follows the printed table; obtain it and verify the discrepancy. Code not yet on main: sd_liheap + income limit parameters.' +- id: us-sd:liheap-2026-plan-income-limits + program: liheap + years: + from: 2026 + to: 2026 + type: federal-fiscal + question: Do FY2026 limits follow the rule and DSS's published limits or the plan's 60% SMI? + sources: + - kind: regulation + citation: ARSD 67:15:01:10 + url: https://sdlegislature.gov/Rules/Administrative/67:15:01:10 + - kind: guidance + citation: FY2026 LIHEAP State Plan section 2.1 (page 9) + url: https://liheapch.acf.gov/docs/2026/state-plans/SD_Plan_2026.pdf#page=9 + - kind: agency-practice + citation: DSS heating season income limits (2025-2026) + url: https://web.archive.org/web/20260101052007/https://dss.sd.gov/economicassistance/energy_weatherization_assistance.aspx + readings: + statute: No statute supplied; the rule and DSS give three-month limits of $16,075, $18,825 and $21,575 for sizes + 4-6. + other: The plan's 60% SMI gives $16,677, $19,345 and $22,014. + pe_us: + follows: unknown + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9974 + state: unreviewed + note: 'PE-US follows DSS''s limits, which match the rule; reconcile the plan''s 60%-SMI entry. Code not yet on + main: sd_liheap income limit parameters.' +- id: us-sd:liheap-cash-gifts + program: liheap + years: + from: 2026 + to: 2026 + type: federal-fiscal + question: Are regular cash gifts counted under the rule despite the plan leaving all cash gifts unchecked? + sources: + - kind: regulation + citation: ARSD 67:15:01:18(17) + url: https://sdlegislature.gov/Rules/Administrative/67:15:01:18 + - kind: guidance + citation: FY2026 LIHEAP State Plan section 1.9 (page 6) + url: https://liheapch.acf.gov/docs/2026/state-plans/SD_Plan_2026.pdf#page=6 + readings: + statute: No statute supplied; only recurring-occasion gifts are excluded, while other regular cash gifts count. + other: The unchecked plan item indicates cash gifts are not counted. + example: $12,000 of wages plus $2,400 of help counts as $14,400. + pe_us: + follows: unknown + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9974 + state: unreviewed + note: 'PE-US follows the rule and manual; verify whether the plan checkbox excludes a broader category. Code not + yet on main: sd_liheap_countable_income.' +- id: us-sd:liheap-categorical-eligibility + program: liheap + years: + from: 2024 + to: 2026 + type: program + note: program year as the program defines it + question: Does categorical eligibility require every household member to receive SNAP or extend to the manual's + broader groups? + sources: + - kind: regulation + citation: ARSD 67:15:01:01(1) + url: https://sdlegislature.gov/Rules/Administrative/67:15:01:01 + - kind: guidance + citation: FY2026 plan section 1.4a (page 5) + url: null + - kind: manual + citation: LIEAP manual, p. 12 + url: https://liheapch.acf.gov/sites/default/files/webfiles/docs/SD_Policy-and-Procedures-Manual2018.pdf#page=12 + readings: + statute: No statute supplied; the rule and plan require every application member to receive SNAP. + other: The manual also covers SNAP-considered members, Medicare Savings Program households and SSI recipients. + pe_us: + follows: unknown + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9974 + state: unreviewed + note: 'PE-US follows the rule and plan; establish which broader manual provisions remain operative. Code not yet + on main: sd_liheap_eligible.' +- id: us-sd:liheap-gambling-winnings + program: liheap + years: + from: 2026 + to: 2026 + type: federal-fiscal + question: Are lottery and gaming winnings counted under the manual despite the plan leaving winnings unchecked? + sources: + - kind: manual + citation: Manual page 27 + url: null + - kind: guidance + citation: FY2026 LIHEAP State Plan section 1.9 (page 6) + url: https://liheapch.acf.gov/docs/2026/state-plans/SD_Plan_2026.pdf#page=6 + readings: + statute: No statute supplied; the manual counts winnings in full. + other: The unchecked plan entry indicates winnings are not counted. + pe_us: + follows: unknown + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9974 + state: unreviewed + note: 'PE-US follows the manual; verify the unchecked entry and applicable manual edition. Code not yet on main: + sd_liheap_countable_income.' +- id: us-sd:liheap-kerosene-payment-method + program: liheap + years: + from: 2024 + to: 2026 + type: program + note: program year as the program defines it + question: Is kerosene assistance paid in full to the household under the manual or to the supplier subject to + unpaid charges under the rule? + sources: + - kind: regulation + citation: ARSD 67:15:01:40 + url: https://sdlegislature.gov/Rules/Administrative/67:15:01:40 + - kind: manual + citation: LIEAP Policy and Procedures Manual (2018), p. 31 + url: https://liheapch.acf.gov/sites/default/files/webfiles/docs/SD_Policy-and-Procedures-Manual2018.pdf#page=31 + - kind: guidance + citation: DSS energy assistance page + url: null + readings: + statute: No statute supplied; the rule names only wood and coal for direct household payments, treating kerosene + as a vendor fuel. + other: The manual pays kerosene households the entire fuel-oil benefit by check. + pe_us: + follows: unknown + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9974 + state: unreviewed + note: 'PE-US follows the manual; confirm the recipient and whether unpaid charges cap the award. Code not yet + on main: sd_liheap.' +- id: us-tx:family-planning-unearned-income-exclusions + program: family-planning-program + years: + from: 2016 + type: calendar + question: Are dividends, interest, royalties and VA payments exempt under the regulation or countable under the + FPP manual? + sources: + - kind: regulation + citation: 1 Tex. Admin. Code §382.109(3)(L), (3)(M) + url: https://www.law.cornell.edu/regulations/texas/1-Tex-Admin-Code-SS-382-109 + - kind: manual + citation: HHSC FPP Policy Manual, Definition of Income (Rev. 24-2) + url: https://fhb.hhs.texas.gov/sites/default/files/documents/fpppm-9000-definitions-of-income.pdf#page=1 + readings: + statute: No statute supplied; the regulation exempts these income sources. + other: The manual describes them as countable. + pe_us: + follows: unknown + code: + - policyengine_us/variables/gov/states/tx/fpp/income/tx_fpp_countable_unearned_income.py + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/8954 + state: unreviewed + note: 'PE-US follows the regulation; confirm overlapping manual versions and effective years. Code not yet on + main: gov.states.tx.fpp.income.sources.unearned.' +- id: us-tx:ssi-facility-supplement-amount-and-start + program: ssi-state-supplement + years: + from: 2001 + to: 2011 + type: calendar + question: Was the facility supplement $30 or $60 in 2007-2011, and did the $30 increase begin in September 2001 + or September 2002? + sources: + - kind: regulation + citation: 1 TAC §358.450(h) / MEPD H-6000 (HHSC rule and handbook) + url: null + - kind: guidance + citation: SSA, State Assistance Programs for SSI Recipients (January 2007-2011 and January 2002 editions) + url: null + readings: + statute: No statute supplied; HHSC records give a $30 supplement beginning September 1, 2001. + other: SSA gives $60 in 2007-2011 and dates the increase to September 2002. + example: For 2011, HHSC gives a $30 monthly supplement while SSA gives $60. + pe_us: + follows: unknown + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10148 + state: unreviewed + note: 'PE-US follows HHSC''s rule and handbook; verify the historical SSA amounts and effective date. Code not + yet on main: tx_ssi_state_supplement, personal_needs_allowance.yaml.' +- id: us-tx:ssi-facility-supplement-rsdi-bar + program: ssi-state-supplement + years: + from: 2024 + type: calendar + question: Does RSDI receipt bar a facility resident who also receives reduced SSI from the personal-needs supplement? + sources: + - kind: regulation + citation: 1 TAC §358.381(c)(2) + url: null + - kind: guidance + citation: HHSC Information Letter 2023-45 (Dec. 21, 2023) + url: null + readings: + statute: No statute supplied; the regulation pays residents receiving reduced SSI, including those also receiving + RSDI. + other: The letter denies the supplement to RSDI recipients. + example: The supplied case is a single resident with no other income and RSDI below $50 monthly. + pe_us: + follows: unknown + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10148 + state: open + note: 'PE-US follows the regulation; resolve the pending conflict with the information letter. Code not yet on + main: tx_ssi_state_supplement.' +- id: us-va:claim-of-right-credit-gap-fill + program: income-tax + years: + from: 2017 + to: 2026 + type: tax + question: Does general conformity support Virginia's rulings requiring the federal method and providing a refundable + credit reported as withholding? + sources: + - kind: statute + citation: Va. Code § 58.1-301(A) + url: https://law.lis.virginia.gov/vacode/title58.1/chapter3/section58.1-301/ + - kind: guidance + citation: P.D. 16-183 (September 14, 2016); P.D. 20-35 (March 6, 2020) + url: https://www.tax.virginia.gov/laws-rules-decisions/rulings-tax-commissioner/16-183 + readings: + statute: General federal conformity supplies no express section 1341 credit mechanism. + other: The federal method controls; the Virginia credit-method decrease is entered as withholding and refunded + as warranted. + pe_us: + follows: not-modelled + code: + - policyengine_us/parameters/gov/states/va/tax/income/credits/refundable.yaml + prs: [] + state: unreviewed + note: Retain as a disputable gap-fill; verify authority for the binding federal method and refundable withholding + treatment. +- id: us-va:claimable-filer-personal-exemption + program: income-tax + years: + from: 2023 + type: tax + question: Does the statutory federal link deny a claimable filer's personal exemption despite agency guidance + saying each filer receives one? + sources: + - kind: statute + citation: Va. Code 58.1-322.03(2)(a); IRC 151(d)(2) + url: https://law.lis.virginia.gov/vacode/title58.1/chapter3/section58.1-322.03/ + - kind: guidance + citation: Virginia Tax web page + url: null + readings: + statute: The federal exemption link denies the filer's own exemption when they can be claimed. + other: Each filer receives one personal exemption. + example: The readings differ by a $930 exemption per claimable filer. + pe_us: + follows: statute + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10091 + state: ruled + note: 'Ruled in October 2026 to follow the statutory federal link; obtain the dated agency guidance and missing + URL. Code not yet on main: va_personal_exemption_person.' +- id: us-va:dependent-credit-bar-claimable-versus-claimed + program: income-tax + years: + from: 2015 + type: tax + question: Do Virginia's credit dependency bars cover filers who can be claimed or only those actually claimed? + sources: + - kind: statute + citation: Va. Code 58.1-339.8(B)(1) + url: https://law.lis.virginia.gov/vacode/title58.1/chapter3/section58.1-339.8/ + - kind: guidance + citation: Virginia Tax guidance on the credits + url: null + - kind: instructions + citation: 2025 Form 760 instructions p. 30 + url: https://www.tax.virginia.gov/sites/default/files/vatax-pdf/2025-760-instructions.pdf#page=30 + readings: + statute: The dependency bar and federal definitions apply to a filer who can be claimed. + other: The guidance and instructions describe filers actually claimed as dependents. + pe_us: + follows: statute + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10024 + - https://github.com/PolicyEngine/policyengine-us/pull/10091 + state: ruled + note: 'Ruled in October 2026 to use claimability; verify the guidance and distinguish this wording conflict from + mixed-spouse allocation. Code not yet on main: va_refundable_eitc_if_claimed, va_non_refundable_eitc_if_claimed, + va_low_income_tax_credit_eligible.' +- id: us-va:snap-child-support-exclusion + program: snap + years: + from: 2024 + to: 2024 + type: federal-fiscal + question: Is paid child support excluded from gross SNAP income under Virginia's regulation or deducted under + the federal options report? + sources: + - kind: regulation + citation: 22VAC40-601-70 + url: https://law.lis.virginia.gov/admincode/title22/agency40/chapter601/section70/ + - kind: guidance + citation: SNAP State Options Report, 16th Edition + url: https://fns-prod.azureedge.us/sites/default/files/resource-files/snap-16th-state-options-report-june24.pdf#page=17 + readings: + statute: No statute supplied; Virginia's regulation excludes paid child support. + other: The report lists a deduction. + pe_us: + follows: unknown + code: + - policyengine_us/parameters/gov/usda/snap/income/deductions/child_support.yaml + prs: [] + state: unreviewed + note: PE-US follows Virginia's regulation; verify the federal-fiscal-2024 report against the contemporaneous rule. +- id: us-vt:low-income-cdcc-threshold-equality + program: income-tax + years: + from: 2021 + type: tax + question: Does AGI exactly equal to the low-income child-care-credit threshold qualify under the form despite + the statute requiring income below it? + sources: + - kind: statute + citation: 32 V.S.A. § 5828c + url: https://law.justia.com/codes/vermont/2021/title-32/chapter-151/section-5828c/ + - kind: form + citation: Vermont Schedule IN-112, 2021, page 2 + url: https://tax.vermont.gov/sites/tax/files/documents/IN-112-2021.pdf#page=2 + readings: + statute: AGI must be strictly below the threshold. + other: AGI equal to the threshold qualifies. + pe_us: + follows: conflicting-source + code: + - policyengine_us/variables/gov/states/vt/tax/income/credits/cdcc/vt_low_income_cdcc_eligible.py + prs: [] + state: unreviewed + note: The statute-first rule requires a strict below-threshold test; verify form years before changing the inclusive + comparison. +- id: us-vt:medical-deduction-without-federal-itemizing + program: income-tax + years: + from: 2022 + type: tax + question: Must the Vermont medical deduction actually have been taken federally or may the worksheet compute it + for a federal nonitemizer? + sources: + - kind: statute + citation: 32 V.S.A. § 5811(21)(C)(iv) + url: https://legislature.vermont.gov/statutes/section/32/151/05811 + - kind: worksheet + citation: 2022 Schedule IN-112 instructions, medical deduction worksheet + url: https://tax.vermont.gov/sites/tax/files/documents/IN-112%20Instr-2022.pdf#page=2 + readings: + statute: The phrase taken at the federal level can require actual federal itemization. + other: The worksheet computes the deduction regardless of federal itemization. + pe_us: + follows: gap-fill + code: + - policyengine_us/variables/gov/states/vt/tax/income/adjusted_gross_income/subtractions/vt_medical_expense_deduction.py + prs: [] + state: unreviewed + note: PE-US treats the worksheet as filling silence about actual itemization; verify that interpretation against + the statutory phrase. +- id: us-vt:renter-credit-booklet-income-limit-errors + program: renter-credit + years: + from: 2021 + to: 2025 + type: tax + question: Do renter-credit income limits follow HUD and the department calculator or the conflicting amounts printed + in the booklet? + sources: + - kind: statute + citation: 32 V.S.A. §6061(19)-(20) + url: null + - kind: instructions + citation: TY2025 renter credit booklet (RCC-146) + url: null + - kind: calculator + citation: TY2025 Renter Credit Website Calculator + url: https://tax.vermont.gov/sites/tax/files/documents/2025%20Renter%20Credit%20Website%20Calculator.xlsx + readings: + statute: Washington County size 7 in 2025 uses 1.3 times $68,450, or $88,985, rounded by the calculator to $88,990. + other: The 2025 booklet prints $88,880; the 2021 booklet prints $41,120 where HUD gives $40,120. + example: 'Washington County size 7, 2025 income $88,872: $0 before correction and $7 after correction.' + pe_us: + follows: statute + code: + - policyengine_us/parameters/gov/states/vt/tax/income/credits/renter/income_limit_ami/thirty_percent.yaml + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10116 + - https://github.com/PolicyEngine/policyengine-us/pull/10125 + state: unreviewed + note: 'The supplied errors concern 2021 and 2025; verify the inferred $10 half-up rounding and corrected booklet + cells. Code not yet on main: gov.states.vt.tax.income.credits.renter.fifty_percent.' +- id: us-vt:renter-credit-household-size-cap + program: renter-credit + years: + from: 2021 + to: 2025 + type: tax + question: Should statutory HUD-based limits extend to larger households or follow the calculator's size and bedroom + caps? + sources: + - kind: statute + citation: 32 V.S.A. § 6061(19)-(20), § 6066(b)(2) + url: https://legislature.vermont.gov/statutes/section/32/154/06061 + - kind: calculator + citation: Renter Credit Website Calculators TY2021-2025, Calculator sheet cells G10-G13 + url: https://tax.vermont.gov/sites/tax/files/documents/2021%20Renter%20Credit%20Website%20Calculator_8.xlsx + readings: + statute: No maximum size is specified; a literal HUD import could include larger-household and bedroom extensions. + other: The calculator caps household lookup at eight and bedrooms at four. + example: Chittenden 2025 household sizes 8, 9 and 10 all give $1,250 in the calculator. + pe_us: + follows: gap-fill + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10116 + state: unreviewed + note: 'Verify whether HUD extensions or the calculator''s caps properly fill the statutory silence. Code not yet + on main: vt_renter_credit, gov.states.vt.tax.income.credits.renter.max_household_size.' +- id: us-vt:renter-credit-statewide-average-fmr + program: renter-credit + years: + from: 2022 + to: 2025 + type: tax + question: Should the statewide fair-market-rent average use a plain HUD-area mean or the department tables' inferred + averaging adjustments? + sources: + - kind: statute + citation: 32 V.S.A. §6061(7)(C); §6066(b) + url: https://legislature.vermont.gov/statutes/section/32/154/06061 + - kind: calculator + citation: Department of Taxes Renter Credit Website Calculators and published tables, 2022-2025 + url: https://tax.vermont.gov/sites/tax/files/documents/2022%20Renter%20Credit%20Website%20Calculator_1.xlsx + readings: + statute: The statute calls for a statewide average without specifying weights or rounding. + other: The published tables require inferred reconstructions rather than a plain mean of HUD areas. + example: '2022 sizes 4-8: PE $1,774 versus published $1,773; 2025 size 3: $2,026 versus $2,025.' + pe_us: + follows: gap-fill + code: + - policyengine_us/parameters/gov/states/vt/tax/income/credits/renter/fair_market_rent.yaml + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10130 + state: unreviewed + note: 'Document the inferred reconstruction and distinguish averaging assumptions from official table values. + Code not yet on main: vt_renter_credit.' +- id: us-vt:renter-credit-zero-exemption-rent + program: renter-credit + years: + from: 2021 + to: 2025 + type: tax + question: Does a claimant with zero exemptions receive efficiency rent under the statute or one-bedroom rent under + the department calculator? + sources: + - kind: statute + citation: 32 V.S.A. §6066(b)(2) + url: https://legislature.vermont.gov/statutes/section/32/154/06066 + - kind: calculator + citation: Vermont Department of Taxes renter credit calculators (2021, 2024, 2025) + url: https://tax.vermont.gov/sites/tax/files/documents/2025%20Renter%20Credit%20Website%20Calculator.xlsx + - kind: calculator + citation: Department 2021 and 2024 Renter Credit Website Calculators + url: https://tax.vermont.gov/sites/tax/files/documents/2024%20Renter%20Credit%20Website%20Calculator.xlsx + readings: + statute: Zero exemptions imply zero bedrooms and HUD efficiency rent. + other: The calculator counts the claimant in family size and has no zero-bedroom column. + example: 'Claimable but unclaimed single Burlington renter, 2025: $1,656 versus $1,771.' + pe_us: + follows: statute + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10044 + state: ruled + note: 'Ruled in October 2026 to follow the statute; verify the calculator editions and zero-exemption example. + Code not yet on main: vt_renter_credit.' +- id: us-vt:snap-child-support-deduction + program: snap + years: + from: 2016 + to: 2024 + type: federal-fiscal + question: Is paid child support deducted under Vermont's rules and manual or excluded under federal options reports? + sources: + - kind: regulation + citation: Vermont 3SquaresVT Rules 273.9(d)(7), 273.10(e)(1)(i)(F); Program Manual 1700.2.1, 1800.7.2 + url: https://www.ahsnet.ahs.state.vt.us/Public/3sVT/assets/BRM/1600_Deductions.htm + - kind: guidance + citation: SNAP State Options Report, 12th, 13th and 16th Editions + url: https://fns-prod.azureedge.us/sites/default/files/resource-files/snap-16th-state-options-report-june24.pdf#page=17 + readings: + statute: No statute supplied; Vermont's rules and manual treat child support as a deduction. + other: The cited reports list an exclusion. + pe_us: + follows: unknown + code: + - policyengine_us/parameters/gov/usda/snap/income/deductions/child_support.yaml + prs: [] + state: unreviewed + note: PE-US follows Vermont's deduction; evidence concerns federal fiscal 2016-2017 and 2024 only, with intervening + years unasserted. +- id: us-wa:ltss-spousal-maintenance-rounding + program: medicaid-ltss + years: + from: 2026 + to: 2026 + type: calendar + question: Does the community-spouse allowance use federal minimum-plus-shelter arithmetic or Washington's published + rounded standards? + sources: + - kind: statute + citation: 42 USC 1396r-5(d) + url: null + - kind: guidance + citation: Washington HCA income standards chart (January 2026); WAC 182-513-1385(2) + url: https://www.hca.wa.gov/assets/free-or-low-cost/income-standards-20260101.pdf + readings: + statute: Unrounded federal arithmetic gives $2,850.625 in the January example and $3,705 in the July example. + other: Published rounded standards give $2,850 and $3,704.50 respectively. + example: January shelter costs of $1,000 give $2,850 versus $2,850.625; July shelter costs of $1,811.50 give $3,704.50 + versus $3,705. + pe_us: + follows: gap-fill + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9184 + state: unreviewed + note: 'PE-US follows the rounded standards as a disputable gap-fill; verify statutory rounding requirements and + applicability of the undated precedent. Code not yet on main: medicaid_ltss_mmmna.' +- id: us-wi:claim-of-right-itemized-deduction-credit + program: income-tax + years: + from: 2025 + to: 2025 + type: tax + question: Does a claim-of-right deduction count toward Wisconsin's itemized deduction credit despite having no + line on the form? + sources: + - kind: statute + citation: Wis. Stat. 71.07(5)(a)6.-7. + url: https://docs.legis.wisconsin.gov/statutes/statutes/71.pdf#page=39 + - kind: form + citation: 2025 Form 1, Schedule 1 (PDF p. 4) + url: https://www.revenue.wi.gov/TaxForms2025/2025-Form1.pdf#page=4 + readings: + statute: The repayment could count because it is not miscellaneous under section 67(b)(9), and the separate + repayment exclusion applies when Wisconsin's own credit is used. + other: The form includes only medical expenses, interest, charitable gifts and casualty losses. + pe_us: + follows: conflicting-source + code: + - policyengine_us/variables/gov/states/wi/tax/income/credits/itemized_deduction/wi_itemized_deduction_credit_potential.py + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10038 + state: ruled + note: An October 2026 ruling followed the worksheet; the statute-first rule requires including the repayment deduction + if the statutory reading is confirmed. +- id: us-wi:shares-home-value-and-vehicle-asset-tests + program: child-care-assistance + years: + from: 2025 + type: program + note: program year as the program defines it + question: Do the statutory home-value and vehicle-equity limits apply when the operational handbook tests liquid + assets only? + sources: + - kind: statute + citation: Wis. Stat. 49.155(1m)(cr)1.-2. + url: https://docs.legis.wisconsin.gov/statutes/statutes/49/III/155 + - kind: manual + citation: Wisconsin Shares Handbook section 6.5 + url: https://dcf.wisconsin.gov/wisconsin-shares/wisconsin-shares-handbook-july-2026#page=64 + readings: + statute: Home value above 200% of the statewide median or combined vehicle equity above $20,000 causes ineligibility. + other: Only liquid assets, limited to $25,000, are tested. + pe_us: + follows: conflicting-source + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9062 + state: unreviewed + note: 'PE-US applies the liquid-assets-only test; the statute-first rule requires implementing the omitted home-value + and vehicle-equity limits. Code not yet on main: wi_shares_asset_eligible.' +- id: us-wv:claim-of-right-subtraction-authority + program: income-tax + years: + from: 2017 + type: tax + question: What statutory authority supports the instructions' repayment subtraction when the cited statutory paragraph + concerns income-tax refunds? + sources: + - kind: statute + citation: W. Va. Code § 11-21-12(c)(4); § 11-21-12(c) + url: https://code.wvlegislature.gov/11-21-12/ + - kind: statute + citation: W. Va. Code § 11-21-12(c)(4) + url: https://code.wvlegislature.gov/pdf/11-21-12/#page=2 + - kind: instructions + citation: 2025 IT-140 instructions, Schedule M line 42, PDF p.29 + url: https://tax.wv.gov/Documents/PIT/2025/it140.PersonalIncomeTaxFormsAndInstructions.2025.pdf#page=29 + - kind: guidance + citation: WV Tax Expenditure Study, January 2026, p.44 (PDF p.49) + url: https://tax.wv.gov/Documents/TaxExpenditureStudy/CorporationNetIncomeTaxPersonalIncomeTaxAndFiduciaryIncomeTaxExpenditures.January.2026.pdf#page=49 + readings: + statute: The cited paragraph excludes income-tax refunds; no repayment-specific modification was identified. + other: The instructions allow a section 1341 repayment subtraction, with an explicit over-$3,000 condition appearing + from 2020. + example: Wages of $40,000 and a $10,000 repayment reduce West Virginia tax from $1,098.90 to $765.90 under the + instructions. + pe_us: + follows: gap-fill + code: + - policyengine_us/parameters/gov/states/wv/tax/income/subtractions/subtractions.yaml + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10196 + state: unreviewed + note: 'Retain as a disputable gap-fill; identify statutory authority, resolve the study''s citation, and verify + threshold and federal-method conditions by year. Code not yet on main: gov/states/wv/tax/income/subtractions/wv_claim_of_right_subtraction.yaml, + policyengine_us/variables/gov/states/wv/tax/income/subtractions/wv_subtractions.py, wv_claim_of_right_subtraction, + gov.states.wv.tax.income.subtractions.claim_of_right.threshold.' +- id: us-wv:senior-disability-modification-income-base + program: income-tax + years: + from: 2014 + type: tax + question: Does the senior/disability modification exclude all other Schedule M subtractions from its income base + or only the statutory listed offsets? + sources: + - kind: statute + citation: W. Va. Code 11-21-12(c)(9) + url: https://code.wvlegislature.gov/11-21-12/ + - kind: form + citation: 2025 Schedule M, line 47 box (c) + url: https://tax.wv.gov/Documents/PIT/2025/it140.PersonalIncomeTaxFormsAndInstructions.2025.pdf#page=6 + readings: + statute: The listed offsets omit state tax refunds, allowing the modification to use income also subtracted + as a refund. + other: Other Schedule M subtractions are excluded before applying the $8,000 cap. + example: A 66-year-old with $6,000 AGI including a $2,000 state refund gets a $6,000 senior modification under + the statutory reading or $4,000 under the form. + pe_us: + follows: conflicting-source + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10082 + state: ruled + note: 'An October 2026 ruling followed the form; the statute-first rule requires changing the income base after + verifying the statutory offsets. Code not yet on main: wv_senior_citizen_disability_deduction_person.' +- id: us-wv:senior-modification-excluded-line-range + program: income-tax + years: + from: 2025 + to: 2025 + type: tax + question: Does the senior-modification income base exclude Schedule M lines 35-46 or lines 35-48? + sources: + - kind: form + citation: 2025 Schedule M (form) + url: https://tax.wv.gov/Documents/PIT/2025/it140.PersonalIncomeTaxFormsAndInstructions.2025.pdf#page=6 + - kind: instructions + citation: 2025 IT-140 instructions, PDF p. 29 + url: https://tax.wv.gov/Documents/PIT/2025/it140.PersonalIncomeTaxFormsAndInstructions.2025.pdf#page=29 + readings: + statute: No statutory reading supplied; the form excludes lines 35-46. + other: The instructions retain lines 35-48, while their worked example uses 35-46. + pe_us: + follows: unknown + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10082 + state: unreviewed + note: 'PE-US follows the form and worked example; verify the stale range and resulting amount difference. Code + not yet on main: wv_senior_citizen_disability_deduction_person.' +- id: us-wv:zero-exemption-return-500-allowance + program: income-tax + years: + from: 2025 + to: 2025 + type: tax + question: Is the $500 allowance for claimable filers applied per person under the statute or once per return under + IT-140? + sources: + - kind: statute + citation: W. Va. Code §11-21-16(d) + url: https://code.wvlegislature.gov/11-21-16/ + - kind: form + citation: IT-140 (2025), PDF p. 3 + url: https://tax.wv.gov/Documents/PIT/2025/it140.PersonalIncomeTaxFormsAndInstructions.2025.pdf#page=3 + readings: + statute: The individual wording supports a per-person allowance. + other: The form directs a single $500 allowance when the return's exemption count is zero. + example: 'Joint return with one claimable spouse: $2,500 versus $2,000; both claimable: $1,000 versus $500.' + pe_us: + follows: conflicting-source + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10044 + state: ruled + note: 'The October 2026 statute-first ruling requires changing the form-based allowance if the per-person reading + is confirmed; obtain the exact statutory text. Code not yet on main: wv_personal_exemption.' +- id: us-wy:ccap-copay-statutory-formula-vs-chart + program: child-care-assistance + years: + from: 2024 + type: program + note: program year as the program defines it + question: Should child-care copays follow the statutory hourly formula or the published Table I amounts? + sources: + - kind: statute + citation: W.S. 42-2-103(f)(i) + url: https://wyoleg.gov/statutes/compress/title42.pdf#page=13 + - kind: guidance + citation: DFS Table I sliding fee scale charts (eff. 04/01/24, 04/01/25, 04/01/26) + url: https://drive.google.com/file/d/1-zjev4TxHdyq7vC8tlh9SCNSNZzZz4Kq/view + readings: + statute: Compute copays from income divided by 2,340 hours and multiplied by the statutory multiplier. + other: Use flat daily copays by FPL step, up to $6.84 part day and $13.68 full day. + pe_us: + follows: conflicting-source + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9109 + state: unreviewed + note: 'PE-US follows the chart; the statute-first rule requires changing that choice after verifying the formula + and chart reconciliation. Code not yet on main: wy_ccap_copay, copay/full_day.yaml, copay/part_day.yaml.' +- id: us-wy:ccap-scale-income-basis + program: child-care-assistance + years: + from: 2024 + type: program + note: program year as the program defines it + question: Does placement on the child-care scale use countable income under the Rules or monthly gross income + under the chart header? + sources: + - kind: regulation + citation: Wyo. Admin. Rules 049.0008.1 §8(e)(iv)(G)(II), §8(e)(iv)(D)(III)(5.), §4(vv) + url: https://drive.google.com/file/d/1yatL28Yylj62R2cTipV2sGa10TxZplxr/view + - kind: form + citation: Table I chart column header + url: https://drive.google.com/file/d/1-zjev4TxHdyq7vC8tlh9SCNSNZzZz4Kq/view + readings: + statute: No statute supplied; the Rules use countable income after the $200 disregard and child support. + other: The chart header specifies monthly gross income. + pe_us: + follows: unknown + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9109 + state: unreviewed + note: 'PE-US follows the Rules; establish whether the chart header denotes a different calculation. Code not yet + on main: wy_ccap_income_eligible, wy_ccap_countable_income.' +- id: us:additional-child-credit-housing-deduction-bar + program: income-tax + years: + from: 2015 + type: tax + question: Does claiming only the foreign housing deduction bar the additional child tax credit when the statute + refers to electing an exclusion? + sources: + - kind: statute + citation: 26 U.S.C. 24(d)(3); 911(c)(4)(A); 32(c)(1)(C) + url: https://www.law.cornell.edu/uscode/text/26/911#c_4 + - kind: instructions + citation: Schedule 8812 Part II-A; Credit Limit Worksheet B; Pub. 596 Rule 5 + url: null + readings: + statute: A housing deduction alone arguably does not trigger the section 24(d)(3) exclusion bar. + other: The instructions bar a Form 2555 filer even when the form claims only the housing deduction. + pe_us: + follows: conflicting-source + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10022 + state: unreviewed + note: 'The statute-first rule requires revising the deduction-only ACTC bar; verify that interpretation separately + from EITC, whose statutory wording differs. Code not yet on main: elects_section_911_exclusion.' +- id: us:claim-of-right-same-class-aggregation + program: income-tax + years: + from: 2018 + type: tax + question: Are repayments aggregated within each income class for the $3,000 threshold, or across the whole return? + sources: + - kind: statute + citation: 26 U.S.C. 1341(a)(3) + url: https://www.govinfo.gov/content/pkg/USCODE-2024-title26/html/USCODE-2024-title26-subtitleA-chap1-subchapQ-partV-sec1341.htm + - kind: regulation + citation: 26 CFR 1.1341-1(a)(3) + url: https://www.ecfr.gov/current/title-26/chapter-I/subchapter-A/part-1/subject-group-ECFR4c74bc8cf7c11fb/section-1.1341-1 + - kind: guidance + citation: Publication 525 (2025), Repayments, PDF pp. 36-37 + url: https://www.irs.gov/pub/irs-prior/p525--2025.pdf#page=36 + readings: + statute: Section 1341 sets the $3,000 threshold; the cited regulation aggregates repayments within the same + income class. + other: Publication 525 totals repayments across the return. + pe_us: + follows: unknown + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10038 + state: unreviewed + note: 'The model follows the publication; verify the statutory reading before treating this regulation-versus-publication + disagreement as a required statutory change. Code not yet on main: claim_of_right_section_1341_eligible.' +- id: us:dependent-care-exclusion-separate-filer-income + program: income-tax + years: + from: 2018 + type: tax + question: Does section 21(e)(4)'s unmarried rule reach the section 129(b) earned-income limit, as Form 2441 instructions + apply it, when section 129(a)(2)(C) limits its cross-reference to that paragraph? + sources: + - kind: statute + citation: 26 U.S.C. 129(a)(2)(C) + url: null + - kind: instructions + citation: 2025 Form 2441 line 19 instructions + url: null + readings: + statute: The unmarried rule covers the section 129(a)(2) dollar cap only; section 129(b) uses the lesser of + the married filer's and spouse's earned income. + other: A separate filer considered unmarried enters their own earned income. + pe_us: + follows: conflicting-source + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9949 + state: unreviewed + note: 'The statute-first rule requires revising the form-based earned-income limit; verify whether the marital-status + cross-reference extends beyond section 129(a)(2). Code not yet on main: min_head_spouse_earned, dependent_care_assistance_exclusion.' +- id: us:dependent-deduction-worksheet-earned-income + program: income-tax + years: + from: 2024 + type: tax + question: Where section 63(c)(5) leaves earned income undefined, should the dependent standard deduction use the + Form 1040 worksheet's reported-income measure? + sources: + - kind: statute + citation: 26 U.S.C. 63(c)(5) + url: null + - kind: instructions + citation: 2025 Form 1040 instructions, Standard Deduction Worksheet for Dependents footnote + url: https://www.irs.gov/pub/irs-prior/i1040gi--2025.pdf#page=23 + readings: + statute: Section 63(c)(5) leaves earned income undefined. + other: The worksheet uses reported wages and listed Schedule 1 income, minus the Schedule 1 line 15 deduction. + example: A 2025 dependent with $10,000 wages, a $6,000 401(k) deferral and $600 interest gets a $4,450 deduction + and must file in the PR; main gave $10,450. + pe_us: + follows: unknown + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10272 + state: unreviewed + note: 'Main uses a broader earned-income measure; the open PR adopts the worksheet as a permitted gap-fill, with + partnership-related line 15 deductions still needing verification. Code not yet on main: standard_deduction_worksheet_earned_income_person, + standard_deduction_worksheet_earned_income, basic_standard_deduction, medicaid_person_is_required_to_file, or_standard_deduction, + hi_deductions.' +- id: us:education-benefits-joint-claimed-spouse + program: income-tax + years: + from: 2018 + type: tax + question: Does claiming one spouse as a dependent bar only that spouse's education credits and student loan interest + deduction, or the whole joint return? + sources: + - kind: statute + citation: 26 U.S.C. 25A(g)(3); 26 U.S.C. 221(c) + url: https://www.law.cornell.edu/uscode/text/26/25A#g_3 + - kind: instructions + citation: Form 1040 instructions (education credits and student loan interest) + url: https://www.irs.gov/pub/irs-prior/i1040gi--2025.pdf#page=98 + readings: + statute: The claimed spouse loses the benefit; the other spouse keeps their own credit or deduction. + other: The whole joint return is barred. + pe_us: + follows: conflicting-source + code: + - policyengine_us/variables/gov/irs/credits/education/is_barred_from_education_credits_by_dependency.py + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10087 + state: ruled + note: 'Ruled October 2026; the statute-first rule now requires changing the whole-return bar; verify the education-credit + page anchor because the supplied URL is for student loan interest. Code not yet on main: student_loan_interest_ald_eligible.' +- id: us:eitc-trust-royalties-investment-income + program: income-tax + years: + from: 2018 + type: tax + question: Do trust royalties in Schedule E Part III count toward the EITC investment-income limit when Publication + 596 Worksheet 1 reads only Part I royalties? + sources: + - kind: statute + citation: 26 U.S.C. 32(i)(2)(C) + url: null + - kind: worksheet + citation: Publication 596 Worksheet 1, line 8 + url: null + readings: + statute: Box 5 royalties count toward the investment-income limit. + other: Only Schedule E Part I royalties enter line 8. + pe_us: + follows: conflicting-source + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10194 + state: unreviewed + note: 'The statute-first rule requires including qualifying Part III royalties; obtain the worksheet version and + verify the omitted income basket. Code not yet on main: eitc_relevant_investment_income.' +- id: us:filing-chart-a-blindness-and-equality + program: income-tax + years: + from: 2018 + to: 2025 + type: tax + question: Does the filing threshold include blindness and excuse income exactly at the threshold, or does Chart + A count age only and require filing at equality? + sources: + - kind: statute + citation: 26 U.S.C. 6012(f)(1) + url: https://www.law.cornell.edu/uscode/text/26/6012#f + - kind: instructions + citation: 2025 Form 1040 instructions, Chart A + url: https://www.irs.gov/pub/irs-prior/i1040gi--2025.pdf#page=9 + - kind: instructions + citation: Chart A, 2018-2025 Form 1040 instructions; Pub. 501 Table 1 + url: null + readings: + statute: The full standard deduction includes blindness, and filing is required only when gross income exceeds + it. + other: Chart A counts age additions only and requires filing at or above its threshold. + example: A 2025 single filer aged 40 with $15,750 interest need not file under the statute; $15,751 requires filing. + pe_us: + follows: statute + code: + - policyengine_us/variables/gov/irs/tax_unit_is_required_to_file.py + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10137 + state: open + note: 'This decision is still open; code comments citing it do not establish a completed ruling or its date. Code + not yet on main: tax_unit_is_required_to_file.' +- id: us:filing-claimable-married-separate + program: income-tax + years: + from: 2018 + type: tax + question: Must a claimable married separate filer file whenever they have gross income, or only when Chart B's + tests are met? + sources: + - kind: statute + citation: 26 U.S.C. 6012(f) and (a)(1) + url: https://www.law.cornell.edu/uscode/text/26/6012#f + - kind: instructions + citation: 2025 Form 1040 instructions, Chart B (married dependents) + url: https://www.irs.gov/pub/irs-prior/i1040gi--2025.pdf#page=10 + readings: + statute: Any gross income requires a return. + other: A return is required only if the spouse itemizes or one of the dollar tests is met. + pe_us: + follows: statute + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10135 + state: open + note: 'Verify the married-dependent Chart B conditions and applicable years; the decision remains open. Code not + yet on main: tax_unit_is_required_to_file.' +- id: us:filing-claimable-spouse-unearned-income-additions + program: income-tax + years: + from: 2018 + to: 2025 + type: tax + question: Does a claimable spouse's joint-return unearned-income filing threshold include age or blindness additions? + sources: + - kind: statute + citation: 26 U.S.C. 6012(f)(2)(D) + url: https://www.law.cornell.edu/uscode/text/26/6012#f + - kind: instructions + citation: 2025 Form 1040 instructions, Chart B; Publication 501 (2025) Table 2 + url: https://www.irs.gov/pub/irs-prior/i1040gi--2025.pdf#page=10 + - kind: guidance + citation: IRS Publication 501 (2025), Table 2 (Chart B of the Form 1040 instructions) + url: https://www.irs.gov/pub/irs-prior/p501--2025.pdf#page=4 + readings: + statute: Section 6012(f)(2)(D) uses the section 63(c)(5)(A) amount alone, $1,350 in the supplied 2025 reading. + other: Chart B and Publication 501 add age or blindness amounts, giving $2,950 or $4,550 in the supplied 2025 + reading. + pe_us: + follows: conflicting-source + code: + - policyengine_us/variables/gov/irs/tax_unit_is_required_to_file.py + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10135 + - https://github.com/PolicyEngine/policyengine-us/pull/10137 + state: open + note: 'The statute-first rule requires removing the extra amounts from this statutory test; separate 2026 issues + same-year instructions for the separate 2026 issues are not cited here. Code not yet on main: tax_unit_is_required_to_file.' +- id: us:hsa-limit-indexing-windows + program: income-tax + years: + from: 2018 + type: tax + question: Does section 223(g)'s March 31 substitution apply throughout the indexing calculation, or does IRS practice + retain an August-window 2016 ratio? + sources: + - kind: statute + citation: 26 U.S.C. 223(g) + url: https://www.law.cornell.edu/uscode/text/26/223#g + - kind: guidance + citation: IRS-published HSA limits (Rev. Procs. for 2019-2027) + url: null + readings: + statute: The literal March-window method matches 7 of 16 published 2019-2026 limits; its precise scope is not + settled. + other: Mixed March and August windows match all 18 published 2019-2027 limits. + example: The method projected 2027 limits of $4,500 and $9,000 before those amounts were published. + pe_us: + follows: conflicting-source + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10097 + state: unreviewed + note: 'The statute-first rule requires changing conflicting projections; verify the statutory window substitution + first, and preserve the distinction from published limits fixed through 2027. Code not yet on main: extend_hsa_contribution_limits, + get_hsa_cola.' +- id: us:mortgage-interest-limit-ratio-rounding + program: income-tax + years: + from: 2025 + to: 2025 + type: tax + question: Should the deductible share of mortgage interest above the debt limit use the exact ratio or the ratio + rounded to three places in Table 1? + sources: + - kind: statute + citation: 26 U.S.C. 163(h)(3) + url: null + - kind: worksheet + citation: 2025 Pub. 936 Table 1, line 14 + url: null + readings: + statute: Section 163(h)(3) does not specify rounding of the deductible-interest ratio. + other: Publication 936 Table 1 line 14 rounds the ratio to three decimal places. + example: A 2016 joint example gives $26,666.67 using the exact ratio versus $26,680 using the rounded ratio. + pe_us: + follows: unknown + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10274 + state: unreviewed + note: 'This is a disputed worksheet gap-fill; PE-US uses the exact ratio, and the supplied worked example is for + 2016 rather than the cited 2025 worksheet. Code not yet on main: deductible_mortgage_interest.' +- id: us:niit-excess-business-loss-addback + program: income-tax + years: + from: 2025 + to: 2025 + type: tax + question: Does NII take the full loss carried by Form 8960 line 4a or only the loss chapter 1 allows after section + 461(l)? + sources: + - kind: statute + citation: 26 U.S.C. 1411(c)(1)(B); Treas. Reg. 1.1411-4(f), 1.1411-1(a) + url: null + - kind: form + citation: Form 461 / Form 8960 line 4a + url: null + readings: + statute: NII takes only the loss section 461(l) allows. + other: NII takes the loss in full through line 4a. + example: For $300,000 wages, $500,000 interest and a $600,000 rental loss, main gives NIIT of $0; the statutory + reading gives NII of $187,000 and NIIT of $7,106. + pe_us: + follows: conflicting-source + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10076 + state: unreviewed + note: 'Main follows the form-line omission; the statute-first rule requires the statutory add-back proposed in + the open PR. Code not yet on main: excess_business_loss, net_investment_income_excess_business_loss, gov.irs.investment.income.sources.' +- id: us:niit-magi-trust-code-h-adjustment + program: income-tax + years: + from: 2013 + type: tax + question: Does a positive code H amount raise NIIT MAGI under the Form 8960 instructions when section 1411(d) + adjusts MAGI only for section 911? + sources: + - kind: statute + citation: 26 U.S.C. 1411(d) + url: null + - kind: instructions + citation: 2024 Form 8960 instructions, line 7, page 11 + url: null + readings: + statute: MAGI is AGI plus the section 911 add-back only. + other: MAGI also rises by any positive code H amount. + pe_us: + follows: conflicting-source + code: + - policyengine_us/variables/household/income/person/estate/estate_income_niit_magi_adjustment.py + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9633 + state: open + note: 'The statute-first rule requires revising the extra MAGI adjustment; verify whether CFC or PFIC regulatory + authority reconciles the instructions with section 1411(d). Code not yet on main: niit_magi, net_investment_income_tax.' +- id: us:qbid-net-capital-gain-investment-election + program: income-tax + years: + from: 2018 + type: tax + question: Does the statutory section 1(h) cross-reference reduce net capital gain by amounts elected as investment + income, or does the QBID calculation ignore the election under the regulation and form? + sources: + - kind: statute + citation: 26 U.S.C. 199A(a)(2)(B) + url: https://www.govinfo.gov/content/pkg/USCODE-2024-title26/pdf/USCODE-2024-title26-subtitleA-chap1-subchapB-partVI-sec199A.pdf#page=1 + - kind: statute + citation: 26 U.S.C. 199A(a)(2)(B); 26 U.S.C. 1(h)(2) + url: null + - kind: regulation + citation: Treas. Reg. 1.199A-1(b)(3) + url: https://www.govinfo.gov/content/pkg/CFR-2025-title26-vol4/pdf/CFR-2025-title26-vol4-sec1-199A-1.pdf#page=1 + - kind: regulation + citation: Treas. Reg. 1.199A-1(b)(3); T.D. 9847 preamble; Form 8995 line 12 instructions + url: https://www.ecfr.gov/current/title-26/part-1/section-1.199A-1#p-1.199A-1(b)(3) + - kind: guidance + citation: TD 9847 preamble, 84 FR 2954 + url: https://www.govinfo.gov/content/pkg/FR-2019-02-08/pdf/2019-01025.pdf#page=3 + - kind: form + citation: 2025 Form 8995, lines 11-15 + url: https://www.irs.gov/pub/irs-prior/f8995--2025.pdf#page=1 + readings: + statute: Applying section 1(h)(2)'s election reduction lowers net capital gain subtracted from taxable income, + increasing the QBID income cap. + other: The regulation, preamble and form ignore the election and subtract the unreduced net capital gain and + qualified dividends. + example: For the supplied election case with line 11 of $100,000 and line 12 of $60,000, the regulation/form result + is $8,000 versus a legacy $12,000 result. + pe_us: + follows: conflicting-source + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9886 + - https://github.com/PolicyEngine/policyengine-us/pull/10077 + state: open + note: 'The statute-first rule requires revising the regulatory default if the cross-reference reading is confirmed; + resolve the requested ruling and which direction the cap runs. Code not yet on main: section_199a_net_capital_gain, + qualified_business_income_deduction.' +- id: us:recovery-rebate-joint-claimable-spouse + program: recovery-rebate-credit + years: + from: 2020 + to: 2021 + type: tax + question: Does one claimable spouse reduce a joint recovery rebate credit, or do the worksheets allow the full + joint amount? + sources: + - kind: statute + citation: 26 U.S.C. 6428(d)(2), 6428A(d)(2), 6428B(c)(2) + url: https://www.law.cornell.edu/uscode/text/26/6428#d_2 + - kind: worksheet + citation: 2020-2021 Recovery Rebate Credit worksheets + url: null + readings: + statute: Each spouse is tested separately as an eligible individual. + other: The joint-return worksheet skips the dependency question and allows the full joint amount. + example: In 2021, one claimable spouse gives $1,400 under the per-person reading versus $2,800 under the worksheet; + a whole-return bar gives $0. + pe_us: + follows: statute + code: + - policyengine_us/variables/gov/irs/credits/recovery_rebate_credit/rrc_adult_count_with_valid_ssn.py + - policyengine_us/variables/gov/irs/credits/recovery_rebate_credit/rrc_arpa.py + - policyengine_us/variables/gov/irs/credits/recovery_rebate_credit/rrc_caa.py + - policyengine_us/variables/gov/irs/credits/recovery_rebate_credit/rrc_cares.py + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10087 + state: ruled + note: Ruled October 2026; verify the worksheet version and whether claiming the rebate defeats the refund-only + joint-return exception. +- id: us:separate-filer-zero-income-threshold + program: income-tax + years: + from: 2018 + type: tax + question: Must a married separate filer file at zero gross income, or does the IRS's $5 relief threshold apply? + sources: + - kind: statute + citation: 26 U.S.C. 6012(a)(1)(A) + url: https://www.law.cornell.edu/uscode/text/26/6012#a_1 + - kind: agency-practice + citation: National Taxpayer Advocate blog (2019) on IRS relief + url: https://www.taxpayeradvocate.irs.gov/news/nta-blog/ntablog-irs-publication-error-may-have-caused-certain-married-taxpayers-filing-separately-to-fail-to-file-required-tax-returns/2019/12/ + readings: + statute: With a zero exemption amount, the literal filing rule includes a separate filer with no gross income. + other: IRS relief requires filing only at $5 or more of gross income. + example: The supplied 2026-or-later case for a separate filer aged 40 with no income returns false in the model. + pe_us: + follows: unknown + code: + - policyengine_us/variables/gov/irs/tax_unit_is_required_to_file.py + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10137 + state: open + note: 'PE-US requires positive gross income, matching neither official reading; the statute-first rule requires + a model change, and no completed ruling date is recorded. Code not yet on main: tax_unit_is_required_to_file.' +- id: us:snap-bbce-income-chart-rounding + program: snap + years: + from: 2026 + to: 2026 + type: calendar + question: Should the BBCE income limit use an exact percentage of the guideline or the rounded amounts published + in state charts? + sources: + - kind: regulation + citation: 7 CFR 273.2(j)(2); 273.9(a)(3) + url: null + - kind: guidance + citation: State BBCE charts (e.g. CA, CO, DC, AZ) + url: null + readings: + statute: The cited federal rules do not prescribe rounding for this BBCE limit. + other: State charts apply their own rounding conventions. + example: California, Colorado, DC and Arizona publish $2,610 where the exact percentage gives $2,608.33. + pe_us: + follows: unknown + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9243 + state: unreviewed + note: 'This is a disputed gap-fill; PE-US uses exact percentages rather than the published charts, so neither + statutory adherence nor following the charts is established. Code not yet on main: tanf_non_cash_gross_income_limit, + meets_tanf_non_cash_gross_income_test.' +- id: us:snap-conditional-entrant-waiting-period + program: snap + years: + from: 2003 + to: 2025 + type: calendar + question: Are conditional entrants and battered aliens subject to SNAP's five-year waiting period or immediately + eligible under the October 2025 FNS memorandum? + sources: + - kind: regulation + citation: 7 CFR 273.4(a)(6)(iii)(C)-(D) + url: https://www.law.cornell.edu/cfr/text/7/273.4#a_6_iii + - kind: guidance + citation: FNS memo October 31, 2025, Attachment 1, file page 7 + url: https://www.usda.gov/sites/default/files/guidance-documents/fns.snap-obbb-alien-eligibility.pdf#page=7 + - kind: guidance + citation: USDA FNS, SNAP Implementation of the One Big Beautiful Bill Act of 2025 - Alien SNAP Eligibility (October + 31, 2025), Attachment 1 (file page 7) + url: https://www.usda.gov/sites/default/files/guidance-documents/fns.snap-obbb-alien-eligibility.pdf#page=8 + readings: + statute: The cited regulation places these categories on the five-year clock. + other: The memorandum labels them eligible immediately before P.L. 119-21. + pe_us: + follows: unknown + code: + - policyengine_us/parameters/gov/usda/snap/eligibility/waiting_period/subject_immigration_statuses.yaml + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9661 + state: unreviewed + note: 'PE-US follows the regulation; verify battered-alien scope and the competing page anchors; the supplied + period is 2003-04-01 through 2025-07-03, and conditional entry ended in 1980. Code not yet on main: gov.usda.snap.eligibility.waiting_period.subject_immigration_statuses, + meets_snap_qualified_alien_waiting_period.' +- id: us:snap-large-household-cap-effective-date + program: snap + years: + from: 2026 + to: 2027 + type: federal-fiscal + question: Does SNAP's 18-plus-person allotment cap start in FY2026 under the statutory effective date or FY2027 + under the published tables? + sources: + - kind: statute + citation: 7 U.S.C. 2012(u)(2)(I), as amended by P.L. 119-21 + url: https://www.law.cornell.edu/uscode/text/7/2012#u_2 + - kind: guidance + citation: USDA FY2026 SNAP COLA table + url: null + readings: + statute: The cap starts in FY2026. + other: The cap starts in FY2027. + example: Applying the cap in FY2026 changes the supplied 18-plus-person allotment from $3,969 to $3,777 in the + 48 states and DC. + pe_us: + follows: conflicting-source + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9623 + state: open + note: 'The statute-first rule requires revising the model''s delayed cap; verify the FY2026 table and the October + 1, 2025 effective date. Code not yet on main: snap_max_allotment, max_allotment.yaml cap.' +- id: us:snap-minimum-allotment-rounding-base + program: snap + years: + from: 2023 + to: 2027 + type: federal-fiscal + question: Is SNAP's minimum allotment based on the unrounded thrifty food plan cost or the rounded published one-person + maximum? + sources: + - kind: statute + citation: 7 U.S.C. 2017(a) + url: https://www.law.cornell.edu/uscode/text/7/2017#a + - kind: regulation + citation: 7 CFR 273.10(e)(2)(ii)(C) + url: https://www.law.cornell.edu/cfr/text/7/273.10 + - kind: guidance + citation: USDA FY2027 SNAP COLA memorandum (Aug 21, 2026), p. 5 + url: https://www.usda.gov/sites/default/files/guidance-documents/fna.snap-cola2027.pdf + readings: + statute: Both bases have been attributed to section 2017(a), so the statutory reading is unresolved. + other: The regulation uses the one-person maximum; the described USDA practice uses unrounded thrifty food plan + cost. + example: FY2023 gives $22 from the rounded maximum versus USDA's $23; FY2027 gives $24 versus USDA's $25. + pe_us: + follows: unknown + code: + - policyengine_us/parameters/gov/usda/snap/min_allotment/published_adjustment.yaml + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9162 + - https://github.com/PolicyEngine/policyengine-us/pull/9623 + state: unreviewed + note: 'Resolve the statutory base and year-specific model behavior; the rounded method is reported for FY2023 + and a guidance adjustment for FY2027, with no intervening-year conflict established. Code not yet on main: snap_min_allotment.' +- id: us:snap-waiting-period-age-based-ssi + program: snap + years: + from: 2003 + type: calendar + question: Does age-based SSI receipt exempt a person from SNAP's waiting period, or must SSI be paid for blindness + or disability? + sources: + - kind: statute + citation: 8 U.S.C. 1612(a)(2)(F)(ii) + url: https://www.law.cornell.edu/uscode/text/8/1612#a_2_F_ii + - kind: guidance + citation: FNS Guidance on Non-Citizen Eligibility (June 2011), file page 13 + url: https://media.nilc.org/wp-content/uploads/2019/05/Non-Citizen_Guidance_063011.pdf#page=13 + - kind: regulation + citation: 75 FR 4912, 4915 (2010 final rule preamble) + url: https://www.govinfo.gov/content/pkg/FR-2010-01-29/pdf/2010-815.pdf#page=4 + readings: + statute: A narrower reading counts only SSI paid for blindness or disability. + other: SSI on any basis exempts. + example: A Texas LPR aged 67 receiving $994 monthly age-based SSI gets $62 SNAP after two years, the same as after + five years. + pe_us: + follows: conflicting-source + code: [] + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/9661 + state: unreviewed + note: 'The statute-first rule requires revising the any-SSI exemption if the narrower reading holds; first check + the cross-referenced disability definition and the preamble''s scope. Code not yet on main: is_snap_alien_waiting_period_exempt, + is_usda_disabled.' +- id: us:ssi-spousal-deeming-child-scope + program: ssi + years: + from: 2026 + to: 2026 + type: calendar + question: Does the regulation's ineligible-child definition include the claimant's siblings in spouse-to-spouse + deeming, or does POMS limit it to the couple's children? + sources: + - kind: regulation + citation: 20 CFR 416.1160(d) + url: null + - kind: manual + citation: POMS SI 01310.115 A.3; POMS SI 01310.140 A + url: https://secure.ssa.gov/poms.nsf/lnx/0501310115 + readings: + statute: The full regulatory definition would include the claimant's own siblings. + other: POMS limits spouse-to-spouse deeming to the children of either member of the couple. + pe_us: + follows: unknown + code: + - policyengine_us/variables/gov/ssa/ssi/eligibility/status/is_ssi_ineligible_child.py + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10146 + state: unreviewed + note: 'The open PR follows POMS rather than the broader regulatory reading; no statutory comparison or specific + ruling is supplied. Code not yet on main: ssi_spousal_deeming_child_allocations, ssi_ineligible_child_allocation.' +- id: us:surviving-spouse-child-gross-income-test + program: income-tax + years: + from: 2018 + type: tax + question: Does section 2(a)(1)(B)(ii) restore the dependent gross-income test that the surviving-spouse instructions + disregard? + sources: + - kind: statute + citation: 26 U.S.C. 2(a)(1)(B) + url: https://www.law.cornell.edu/uscode/text/26/2#a_1_B + - kind: instructions + citation: 2025 Form 1040 instructions, page 15, Qualifying Surviving Spouse item 2 + url: https://www.irs.gov/pub/irs-pdf/i1040gi.pdf#page=15 + - kind: guidance + citation: REG-137604-07 preamble (I.R.B. 2017-7), proposed regulations + url: https://www.irs.gov/irb/2017-07_IRB + readings: + statute: Read literally, clause (ii) requires a dependent for whom a section 151 deduction is allowable, bringing + back the gross-income test. + other: The instructions and proposed regulation disregard the gross-income test, so a high-income adult child + can still qualify the parent. + example: A widowed filer with a 29-year-old child earning $6,238 is SINGLE on main; the draft PR gives SURVIVING_SPOUSE + and a $31,500 basic standard deduction. + pe_us: + follows: statute + code: + - policyengine_us/variables/household/demographic/tax_unit/tax_unit_child_dependents.py + prs: + - https://github.com/PolicyEngine/policyengine-us/pull/10273 + state: unreviewed + note: 'Main applies the gross-income test; the draft PR would adopt instructions and needs revision under the + statute-first rule after resolving the two statutory clauses. Code not yet on main: surviving_spouse_eligible, + is_child_dependent.' diff --git a/source_conflicts/known-source-conflicts.yaml b/source_conflicts/known-source-conflicts.yaml new file mode 100644 index 00000000000..e87a76ad0b9 --- /dev/null +++ b/source_conflicts/known-source-conflicts.yaml @@ -0,0 +1,548 @@ +# Source conflicts: places where a jurisdiction's sources disagree (statute +# against regulation, regulation against an agency manual, one manual +# section against another), the readings each side supports, and the +# reading adopted. +# +# Each entry's interpretation core (question, texts, reading, alternatives, +# basis, status, ruling, confirmation) has the field names and status rules +# of a RuleSpec module.interpretations v1 entry, so it moves into a module +# unchanged when the provision is encoded; the module then lists it here +# under adopted_by as a (module path, interpretation id) pair. The global id +# of an entry is ":"; code outside RuleSpec cites that. +# +# tools/source_conflicts.py check (in the Repository Checks pytest leg) +# fails on a malformed entry, a broken in-repo reference, an adopting module +# that does not carry the entry unchanged, or a ruled, confirmed or +# contradicted module interpretation whose texts cite two or more provisions +# without an entry here (an unregistered open one is listed as a warning). +# tools/source_conflicts.py verify (the source-conflicts workflow) checks +# every excerpt verbatim: texts against the pinned corpus release, +# pending_texts against their pinned snapshots. tools/pin_runner.py (its +# pinned-tests job) runs every pinned test at its pinned commit, which must be +# on its repository's default branch. Field reference: tools/README.md, +# "Source-conflict register". +# +# The register is public: no people's names, decision-queue ids, session +# ids, local paths or email addresses. ruling.by is an organisation and +# ruling.record a public PR, issue or comment. +version: 1 +entries: +- id: oasdi-ret-negative-nese-proration + jurisdiction: us + program: social-security + question: When annual net earnings from self-employment (NESE) are a loss, is the monthly share rounded + down (floored) or are its cents dropped (truncated toward zero)? + texts: [] + pending_texts: + - citation: POMS RS 02501.080B.2.c + url: https://secure.ssa.gov/poms.nsf/lnx/0302501080 + snapshot: + repo: PolicyEngine/microcosm-dynamics + commit: f43eee7afc46c643729dec8d6d4227cb5c77a678 + path: tests/data/track_b/ret_ledger_sources/poms_rs_02501_080.html + sha256: cedc11dfbf44d23bea4f4f0974ee35caef4fef602d38dfcb3e2c479ec87ab962 + excerpt: prorate the net earnings (or loss) equally over all months the beneficiary was engaged in + self-employment + - citation: POMS RS 02501.080B.2.c (note) + url: https://secure.ssa.gov/poms.nsf/lnx/0302501080 + snapshot: + repo: PolicyEngine/microcosm-dynamics + commit: f43eee7afc46c643729dec8d6d4227cb5c77a678 + path: tests/data/track_b/ret_ledger_sources/poms_rs_02501_080.html + sha256: cedc11dfbf44d23bea4f4f0974ee35caef4fef602d38dfcb3e2c479ec87ab962 + excerpt: When cents are involved divide the amount by 12, then drop the cents, then round down before + multiplying by the months before the beneficiary attains FRA. + reading: Floor the monthly NESE share to whole dollars, losses included (the literal "round down"). + alternatives: + - reading: 'Drop the cents: truncate a negative monthly share toward zero.' + effect: In the invented case the drop-the-cents reading withholds $1 more for the year. + basis: The note's last instruction is "round down", which for a negative amount is the mathematical + floor; the two readings agree on every published positive example. + status: ruled + ruling: + by: Axiom Foundation + date: '2026-10-12' + record: https://github.com/TheAxiomFoundation/rulespec-us/pull/1710#issuecomment-6126429754 + outcome: computed + implementations: + - repo: PolicyEngine/microcosm-dynamics + commit: f43eee7afc46c643729dec8d6d4227cb5c77a678 + path: src/populace_dynamics/track_b/ret_ledger.py + follows: reading + cites_entry: false + tests: + - repo: PolicyEngine/microcosm-dynamics + commit: f43eee7afc46c643729dec8d6d4227cb5c77a678 + path: tests/test_track_b_ret_ledger.py + name: test_negative_nese_floor_and_drop_cents_readings_are_explicit + pins: + - reading + - alternatives[0] + - repo: PolicyEngine/microcosm-dynamics + commit: f43eee7afc46c643729dec8d6d4227cb5c77a678 + path: tests/test_track_b_ret_ledger.py + name: test_negative_nese_reading_changes_final_deduction_by_one_dollar + pins: + - reading + - alternatives[0] + money_case: + description: 'June FRA year, annual NESE loss of $13 over twelve months and pre-FRA wages $13 above + the higher exempt amount, $600 January rate: the January check is $599 under floor and $598 under + drop-the-cents.' + amount: '1.00' + currency: USD + period: year + computed_by: test_negative_nese_reading_changes_final_deduction_by_one_dollar +- id: oasdi-ret-grace-simultaneous-rib-dib + jurisdiction: us + program: social-security + question: In a grace year, can a month in which the beneficiary is entitled to both retirement (RIB) + and disability (DIB) benefits, and elects RIB, be a non-service month? + texts: [] + pending_texts: + - citation: 20 CFR 404.435(b)(3) + url: https://www.ecfr.gov/api/versioner/v1/full/2026-10-07/title-20.xml?part=404&subpart=E + snapshot: + repo: PolicyEngine/microcosm-dynamics + commit: f43eee7afc46c643729dec8d6d4227cb5c77a678 + path: tests/data/track_b/ret_ledger_sources/ecfr_20cfr404_subpart_e.xml + sha256: fa67514821b77e8a88cdeacacb420341e6481d0cfa0c662233b5359f0d67f39b + excerpt: we will not count as a non-service month, a month that occurred while the beneficiary was + entitled to disability benefits under section 223 of the Social Security Act or as a disabled widow, + widower, or child under section 202. + - citation: POMS RS 02501.030B.4 + url: https://secure.ssa.gov/poms.nsf/lnx/0302501030 + snapshot: + repo: PolicyEngine/microcosm-dynamics + commit: f43eee7afc46c643729dec8d6d4227cb5c77a678 + path: tests/data/track_b/ret_ledger_sources/poms_rs_02501_030.html + sha256: 92fe687bc11c8ff8d66f5779a5f0c88298f1f1d6684baf85d10b0c8c1c5760ec + excerpt: If the beneficiary becomes simultaneously entitled to RIB and DIB benefits, the earnings + test (ET) applies to any month they elect to receive RIB. + - citation: POMS RS 02501.030B.4 + url: https://secure.ssa.gov/poms.nsf/lnx/0302501030 + snapshot: + repo: PolicyEngine/microcosm-dynamics + commit: f43eee7afc46c643729dec8d6d4227cb5c77a678 + path: tests/data/track_b/ret_ledger_sources/poms_rs_02501_030.html + sha256: 92fe687bc11c8ff8d66f5779a5f0c88298f1f1d6684baf85d10b0c8c1c5760ec + excerpt: Count NSMs for any month the RIB applies. + reading: No non-service months while the beneficiary is entitled to disability benefits, even in months + RIB is elected (20 CFR 404.435(b)(3)). + alternatives: + - reading: Count non-service months for any month RIB is elected during simultaneous entitlement (POMS + RS 02501.030B.4). + effect: In the invented case all $4,200 of June-December benefits is paid instead of withheld. + basis: The regulation's exclusion is categorical; the POMS exception is operational guidance the regulation + does not contain. + status: ruled + ruling: + by: Axiom Foundation + date: '2026-10-12' + record: https://github.com/TheAxiomFoundation/rulespec-us/pull/1710#issuecomment-6126429754 + outcome: computed + implementations: + - repo: PolicyEngine/microcosm-dynamics + commit: f43eee7afc46c643729dec8d6d4227cb5c77a678 + path: src/populace_dynamics/track_b/ret_grace.py + follows: reading + cites_entry: false + tests: + - repo: PolicyEngine/microcosm-dynamics + commit: f43eee7afc46c643729dec8d6d4227cb5c77a678 + path: tests/test_track_b_ret_ledger_readings.py + name: test_simultaneous_dib_rib_source_readings_change_4200_dollars + pins: + - reading + - alternatives[0] + - repo: PolicyEngine/microcosm-dynamics + commit: f43eee7afc46c643729dec8d6d4227cb5c77a678 + path: tests/test_track_b_ret_ledger_readings.py + name: test_property_explicit_poms_election_protects_only_eligible_rib_months + pins: + - reading + - alternatives[0] + - repo: PolicyEngine/microcosm-dynamics + commit: f43eee7afc46c643729dec8d6d4227cb5c77a678 + path: tests/test_track_b_ret_grace.py + name: test_simultaneous_disability_cfr_default_and_poms_alternative_are_explicit + pins: + - reading + - alternatives[0] + money_case: + description: '2026: $45,000 January wages, then entitlement to RIB and DIB in June with RIB elected + at $600 a month and no work June-December: $4,200 withheld under the CFR reading, $4,200 paid under + the POMS reading.' + amount: '4200.00' + currency: USD + period: year + computed_by: test_simultaneous_dib_rib_source_readings_change_4200_dollars +- id: oasdi-ret-own-work-age-exemptions + jurisdiction: us + program: social-security + question: Is an adult child's or a widow(er)'s own excess earnings exempt by age alone (the Act), or + only when the benefit is based on disability (the CFR)? + texts: + - corpus_citation_path: us/statute/42/403/f/1 + excerpt: but subject to section 402(s) + - corpus_citation_path: us/statute/42/403/f/1 + excerpt: in which such individual, if a child entitled to child’s insurance benefits, has attained + the age of 18 + - corpus_citation_path: us/statute/42/403/f/1 + excerpt: for which such individual is entitled to widow’s or widower’s insurance benefits if such + individual became so entitled prior to attaining age 60 + pending_texts: + - citation: 20 CFR 404.435(a)(5) + url: https://www.ecfr.gov/api/versioner/v1/full/2026-10-07/title-20.xml?part=404&subpart=E + snapshot: + repo: PolicyEngine/microcosm-dynamics + commit: f43eee7afc46c643729dec8d6d4227cb5c77a678 + path: tests/data/track_b/ret_ledger_sources/ecfr_20cfr404_subpart_e.xml + sha256: fa67514821b77e8a88cdeacacb420341e6481d0cfa0c662233b5359f0d67f39b + excerpt: Are age 18 or over and entitled to a child's insurance benefit based on disability + - citation: 20 CFR 404.435(a)(6) + url: https://www.ecfr.gov/api/versioner/v1/full/2026-10-07/title-20.xml?part=404&subpart=E + snapshot: + repo: PolicyEngine/microcosm-dynamics + commit: f43eee7afc46c643729dec8d6d4227cb5c77a678 + path: tests/data/track_b/ret_ledger_sources/ecfr_20cfr404_subpart_e.xml + sha256: fa67514821b77e8a88cdeacacb420341e6481d0cfa0c662233b5359f0d67f39b + excerpt: Are entitled to a widow's or widower's insurance benefit based on disability + reading: Exempt automatically only the CFR's disability-based categories; the Act's age clauses apply + only when the caller explicitly asserts the entitlement, age facts and any 402(s) condition. + alternatives: + - reading: Apply the Act's 203(f)(1)(C)-(D) age clauses automatically, subject to section 202(s). + effect: In the invented case the child or widow keeps $600 more for the year. + basis: The Act's age clauses are subject to 202(s), which is not captured or adjudicated here, so the + CFR's narrower disability categories are the automatic default and the broader reading needs an explicit + assertion. + status: ruled + ruling: + by: Axiom Foundation + date: '2026-10-12' + record: https://github.com/TheAxiomFoundation/rulespec-us/pull/1710#issuecomment-6126429754 + outcome: computed + implementations: + - repo: PolicyEngine/microcosm-dynamics + commit: f43eee7afc46c643729dec8d6d4227cb5c77a678 + path: src/populace_dynamics/track_b/ret_ledger.py + follows: reading + cites_entry: false + tests: + - repo: PolicyEngine/microcosm-dynamics + commit: f43eee7afc46c643729dec8d6d4227cb5c77a678 + path: tests/test_track_b_ret_ledger_readings.py + name: test_optional_act_age_exemptions_are_an_explicit_600_dollar_reading + pins: + - reading + - alternatives[0] + - repo: PolicyEngine/microcosm-dynamics + commit: f43eee7afc46c643729dec8d6d4227cb5c77a678 + path: tests/test_track_b_ret_ledger_readings.py + name: test_property_other_statutory_own_exemptions_protect_only_that_workers_excess + pins: + - alternatives[0] + money_case: + description: 'An ordinary $200-a-month child or widow with earnings $1,200 above the lower exempt + amount: $600 withheld by default, nothing withheld under the Act''s age clauses.' + amount: '600.00' + currency: USD + period: year + computed_by: test_optional_act_age_exemptions_are_an_explicit_600_dollar_reading +- id: oasdi-ret-deemed-entitlement-basis + jurisdiction: us + program: social-security + question: 'Who is deemed entitled on a retirement beneficiary''s record for the earnings test: only + a married recipient (the Act and CFR), or also an unmarried child or spouse receiving benefits on + another record (POMS)? And does the Act''s ordinary adult child count where the CFR names only a disabled + child?' + texts: + - corpus_citation_path: us/statute/42/403/b/1 + excerpt: is married to an individual entitled to old-age insurance benefits under section 402(a) + pending_texts: + - citation: 20 CFR 404.420 + url: https://www.ecfr.gov/api/versioner/v1/full/2026-10-07/title-20.xml?part=404&subpart=E + snapshot: + repo: PolicyEngine/microcosm-dynamics + commit: f43eee7afc46c643729dec8d6d4227cb5c77a678 + path: tests/data/track_b/ret_ledger_sources/ecfr_20cfr404_subpart_e.xml + sha256: fa67514821b77e8a88cdeacacb420341e6481d0cfa0c662233b5359f0d67f39b + excerpt: a person who is married to an old-age insurance beneficiary + - citation: POMS RS 02501.140 + url: https://secure.ssa.gov/poms.nsf/lnx/0302501140 + snapshot: + repo: PolicyEngine/microcosm-dynamics + commit: f43eee7afc46c643729dec8d6d4227cb5c77a678 + path: tests/data/track_b/ret_ledger_sources/poms_rs_02501_140.html + sha256: 57435f8afe81ca71757bc8d29e2885c73d83ed554dbcd095579f1e2e1c3c7e80 + excerpt: deem a retirement beneficiary's spouse or child entitled on their record if they are receiving + CDB, mother's or father's benefits, or child's benefits based on another person's ER. + reading: Refuse deemed entitlement outside the married basis of Act 203(b)(1) and 20 CFR 404.420, and + refuse an ordinary (non-disabled) deemed adult child; the refusals are counted. + alternatives: + - reading: 'POMS RS 02501.140: deem an unmarried spouse or child receiving benefits on another record + entitled.' + effect: The number holder's excess would also be charged against that recipient's benefit. + - reading: 'Act 203(b)(1): deem a married ordinary adult child entitled, not only a disabled one.' + effect: The excess would also be charged against a married ordinary deemed child's benefit. + basis: The Act and the CFR both require marriage to the number holder; POMS's wording is broader, and + the CFR's child basis is disability. No amount is computed for a case only the broader wording would + reach. + status: ruled + ruling: + by: Axiom Foundation + date: '2026-10-12' + record: https://github.com/TheAxiomFoundation/rulespec-us/pull/1710#issuecomment-6126429754 + outcome: refused + implementations: + - repo: PolicyEngine/microcosm-dynamics + commit: f43eee7afc46c643729dec8d6d4227cb5c77a678 + path: src/populace_dynamics/track_b/ret_ledger.py + follows: reading + cites_entry: false + tests: + - repo: PolicyEngine/microcosm-dynamics + commit: f43eee7afc46c643729dec8d6d4227cb5c77a678 + path: tests/test_track_b_ret_ledger.py + name: test_unmarried_deemed_entitlement_is_refused_pending_source_judgment + pins: + - reading + - repo: PolicyEngine/microcosm-dynamics + commit: f43eee7afc46c643729dec8d6d4227cb5c77a678 + path: tests/test_track_b_ret_ledger_readings.py + name: test_deemed_ordinary_child_requires_explicit_adult_age_facts + pins: + - reading +- id: oasdi-survivor-fra-1911-births + jurisdiction: us + program: social-security + question: Is full retirement age for widow(er)'s benefits 62 or 65 for people born from January 2, 1911 + through January 1, 1912? + texts: [] + pending_texts: + - citation: POMS RS 00615.003 + url: https://secure.ssa.gov/poms.nsf/lnx/0300615003 + snapshot: + repo: PolicyEngine/microcosm-dynamics + commit: d76379f2363c893afc04c91c93d266a46f824545 + path: tests/data/track_b/arf_recompute_sources/poms_rs_00615_003.html + sha256: 935b391658a9f94117fde850fa4eb88293eb9ac5f19e05a5b9f946c4e15e6c2d + excerpt: People Born from 1/2/1911 Through 1/1/40 + - citation: 20 CFR 404.409(b) + url: https://www.ecfr.gov/api/versioner/v1/full/2026-10-07/title-20.xml?part=404§ion=404.409 + snapshot: + repo: PolicyEngine/microcosm-dynamics + commit: d76379f2363c893afc04c91c93d266a46f824545 + path: tests/data/track_b/arf_recompute_sources/ecfr_20cfr_404_409.xml + sha256: f5545ff658026f9926715cbc75d032ab1d502833d828c552e303bef494e9dce9 + excerpt: Before 1/2/1912 62 years. + - citation: 20 CFR 404.409(b) + url: https://www.ecfr.gov/api/versioner/v1/full/2026-10-07/title-20.xml?part=404§ion=404.409 + snapshot: + repo: PolicyEngine/microcosm-dynamics + commit: d76379f2363c893afc04c91c93d266a46f824545 + path: tests/data/track_b/arf_recompute_sources/ecfr_20cfr_404_409.xml + sha256: f5545ff658026f9926715cbc75d032ab1d502833d828c552e303bef494e9dce9 + excerpt: 1/2/1912—1/1/1940 65 years. + reading: Refuse widow(er) claims for births from 1911-01-02 to 1912-01-01, including the full-retirement-age + helper; the refusals are counted. + alternatives: + - reading: 'POMS RS 00615.003: full retirement age 65 for this cohort.' + effect: $829 a month in the invented case. + - reading: '20 CFR 404.409(b): full retirement age 62 for this cohort.' + effect: $1,000 a month (no reduction) in the invented case. + basis: The POMS table and the regulation's table disagree for one birth year; neither is silently admitted. + status: ruled + ruling: + by: Axiom Foundation + date: '2026-10-12' + record: https://github.com/TheAxiomFoundation/rulespec-us/pull/1710#issuecomment-6126429754 + outcome: refused + implementations: + - repo: PolicyEngine/microcosm-dynamics + commit: d76379f2363c893afc04c91c93d266a46f824545 + path: src/populace_dynamics/track_b/arf.py + follows: reading + cites_entry: false + tests: + - repo: PolicyEngine/microcosm-dynamics + commit: d76379f2363c893afc04c91c93d266a46f824545 + path: tests/test_track_b_arf.py + name: test_historic_survivor_fra_conflict_is_refused + pins: + - reading + - alternatives[0] + money_case: + description: 'A widow born January 2, 1911 claiming in January 1973 on a $1,000 PIA, 36 of 60 reduction + months: $829 under FRA 65, $1,000 (unreduced) under FRA 62.' + amount: '171.00' + currency: USD + period: month + computed_by: test_historic_survivor_fra_conflict_is_refused +- id: oasdi-arf-widow-child-in-care-credits + jurisdiction: us + program: social-security + question: When a reduced widow(er)'s benefit is adjusted at FRA, are months with an entitled child in + care credited even if the benefit was never raised to the mother's or father's rate? + texts: + - corpus_citation_path: us/statute/42/402/q/7 + excerpt: any month in which the reduction in the amount of such benefit was determined under paragraph + (5)(D) + pending_texts: + - citation: 20 CFR 404.412(a)(4) + url: https://www.ecfr.gov/api/versioner/v1/full/2026-10-07/title-20.xml?part=404§ion=404.412 + snapshot: + repo: PolicyEngine/microcosm-dynamics + commit: d76379f2363c893afc04c91c93d266a46f824545 + path: tests/data/track_b/arf_recompute_sources/ecfr_20cfr_404_412.xml + sha256: e560ab4ca39a5281573578ad89fcc64ef59edb6c3876bc2c75dd828bdac1aa89 + excerpt: any month in which she or he had in her or his care a child of the deceased insured individual + and for which the child was entitled to child's benefits; + - citation: POMS RS 00615.482 + url: https://secure.ssa.gov/poms.nsf/lnx/0300615482 + snapshot: + repo: PolicyEngine/microcosm-dynamics + commit: d76379f2363c893afc04c91c93d266a46f824545 + path: tests/data/track_b/arf_recompute_sources/poms_rs_00615_482.html + sha256: 8b579019f4e8d0111175b9756ddaa688317026c7db68faefbdf7b322571cdad0 + excerpt: widow(er)’s benefits were increased to the mother or father's rate. + reading: Credit only certified months in which the benefit was raised to the mother's or father's rate; + refuse a history with child-in-care months that were not, and count the refusal. + alternatives: + - reading: '20 CFR 404.412(a)(4): credit every month with an entitled child in care.' + effect: $898.20 a month in the invented case. + - reading: 'POMS RS 00615.482 and Act 202(q)(7)(D): credit only months raised to the mother''s or father''s + rate.' + effect: $877.80 a month in the invented case. + basis: The Act ties the credit to months whose reduction was determined under 202(q)(5)(D), as POMS + does; the regulation's care category is broader. + status: ruled + ruling: + by: Axiom Foundation + date: '2026-10-12' + record: https://github.com/TheAxiomFoundation/rulespec-us/pull/1710#issuecomment-6126429754 + outcome: refused + implementations: + - repo: PolicyEngine/microcosm-dynamics + commit: d76379f2363c893afc04c91c93d266a46f824545 + path: src/populace_dynamics/track_b/arf.py + follows: reading + cites_entry: false + tests: + - repo: PolicyEngine/microcosm-dynamics + commit: d76379f2363c893afc04c91c93d266a46f824545 + path: tests/test_track_b_arf.py + name: test_widow_nonbinding_child_care_readings_are_explicit + pins: + - reading + - alternatives[0] + - alternatives[1] + money_case: + description: 'Widow at 64, FRA 67, $1,000 PIA, six child-in-care months never raised to the mother''s + rate: $898.20 crediting them (30 reduction months of 84), $877.80 not (36).' + amount: '20.40' + currency: USD + period: month + computed_by: test_widow_nonbinding_child_care_readings_are_explicit +- id: oasdi-arf-spouse-reentitlement-credits + jurisdiction: us + program: social-security + question: When a reduced spouse is terminated and reentitled before FRA, are the terminated months removed + from the reduction at FRA or at reentitlement? + texts: [] + pending_texts: + - citation: POMS RS 00615.201A.1 + url: https://secure.ssa.gov/poms.nsf/lnx/0300615201 + snapshot: + repo: PolicyEngine/microcosm-dynamics + commit: 0154fed56e91a7c8a5b93d6315b57512bf2b00f4 + path: tests/data/track_b/gross_benefit_sources/poms_rs_00615_201.html + sha256: d2a38cb3b36bc3f1637106805a6c39037b7e421f2b434364dbcf207eeaa5bc92 + excerpt: After 12/72 a spouse reentitled prior to FRA as a spouse on the same earnings is reduced + the same number of months as the earlier entitlement. An ARF at FRA will remove all months of nonentitlement. + - citation: POMS RS 00615.491A + url: https://secure.ssa.gov/poms.nsf/lnx/0300615491 + snapshot: + repo: PolicyEngine/microcosm-dynamics + commit: d76379f2363c893afc04c91c93d266a46f824545 + path: tests/data/track_b/arf_recompute_sources/poms_rs_00615_491.html + sha256: 6bccc5680188c727cf68914ecc907b6c41d58b97aab62e2f26d1798ea735de5b + excerpt: Beginning in 1/78, if a reduced spouse is terminated and then reentitled, (months in which + the spouse's benefits were terminated will be eliminated from the reduction factor when the spouse + is reentitled. + reading: Refuse a reduced spouse reentitled before FRA (named refusal), and count the refusal. + alternatives: + - reading: 'POMS RS 00615.201A.1: keep the original reduction months until an adjustment at FRA.' + effect: $422.50 a month in the invented case. + - reading: 'POMS RS 00615.491A: remove the terminated months at reentitlement.' + effect: $425.20 a month in the invented case. + basis: Two POMS sections give different timings for the same credit; neither is silently admitted. + status: ruled + ruling: + by: Axiom Foundation + date: '2026-10-12' + record: https://github.com/TheAxiomFoundation/rulespec-us/pull/1710#issuecomment-6126429754 + outcome: refused + implementations: + - repo: PolicyEngine/microcosm-dynamics + commit: d76379f2363c893afc04c91c93d266a46f824545 + path: src/populace_dynamics/track_b/arf.py + follows: reading + cites_entry: false + tests: + - repo: PolicyEngine/microcosm-dynamics + commit: d76379f2363c893afc04c91c93d266a46f824545 + path: tests/test_track_b_r3_sources.py + name: test_spouse_reentitlement_counterfactual_readings_keep_named_refusal + pins: + - reading + - alternatives[0] + - alternatives[1] + money_case: + description: 'Spouse born January 2, 1960, first reduced in January 2022, terminated in February and + reentitled in March, $650 unreduced: 60 reduction months give $422.50, 59 give $425.20.' + amount: '2.70' + currency: USD + period: month + computed_by: test_spouse_reentitlement_counterfactual_readings_keep_named_refusal +- id: oasdi-family-maximum-saving-clause + jurisdiction: us + program: social-security + question: Does the 1972 family-payment saving clause protect a family total in every later month in + which it falls, or only when a PIA increase itself lowers the total? + texts: + - corpus_citation_path: us/statute/42/403/a/5 + excerpt: for any such subsequent month + pending_texts: + - citation: POMS RS 00630.400 + url: https://secure.ssa.gov/poms.nsf/lnx/0300630400 + snapshot: + repo: PolicyEngine/microcosm-dynamics + commit: 0154fed56e91a7c8a5b93d6315b57512bf2b00f4 + path: tests/data/track_b/gross_benefit_sources/poms_rs_00630_400.html + sha256: e6242ec12c64aafba782e5c37a8cfea09f65820ef05b30b8a3bf2a50ecc03d61 + excerpt: Total family payment is less after the PIA increase than it was before + - citation: POMS RS 00630.400 + url: https://secure.ssa.gov/poms.nsf/lnx/0300630400 + snapshot: + repo: PolicyEngine/microcosm-dynamics + commit: 0154fed56e91a7c8a5b93d6315b57512bf2b00f4 + path: tests/data/track_b/gross_benefit_sources/poms_rs_00630_400.html + sha256: e6242ec12c64aafba782e5c37a8cfea09f65820ef05b30b8a3bf2a50ecc03d61 + excerpt: at least one beneficiary is reduced for age + reading: 'SSA''s operational reading: protection starts only when a PIA increase itself lowers the family + total, with two or more entitled, a binding maximum and an age-reduced beneficiary; the literal reading + stays available behind a switch.' + alternatives: + - reading: 'The Act''s literal "any such subsequent month": once a total is protected, any later month + whose total falls below it is raised (the reference refuses those months and every later governed + month).' + effect: After a child ages out, every later month on the record is refused instead of computed. + basis: SSA's chart conditions the clause on the PIA increase lowering the total; under that reading + a COLA alone never triggers it for families that are not dually entitled, so almost every month computes. + status: ruled + ruling: + by: Axiom Foundation + date: '2026-10-12' + record: https://github.com/TheAxiomFoundation/rulespec-us/pull/1710#issuecomment-6126429754 + outcome: computed diff --git a/source_conflicts/pin.yaml b/source_conflicts/pin.yaml new file mode 100644 index 00000000000..11b531d12cf --- /dev/null +++ b/source_conflicts/pin.yaml @@ -0,0 +1,6 @@ +# The rulespec-us commit known-source-conflicts.yaml is vendored from. +# Written by scripts/update_source_conflicts.py; do not edit by hand. +repo: TheAxiomFoundation/rulespec-us +commit: 5796861e585682538d76c446dc069c06ecda5202 +path: known-source-conflicts.yaml +sha256: 95e8f31ac957729d8951943895aba71f67bf3dd81faedc9848b764130441250a diff --git a/source_conflicts/sources/README.md b/source_conflicts/sources/README.md new file mode 100644 index 00000000000..624c4abf07d --- /dev/null +++ b/source_conflicts/sources/README.md @@ -0,0 +1,11 @@ +# Captured sources for source-conflict register entries + +Text captures of official sources (statutes, regulations, forms, instructions) that +entries in the shared source-conflict register cite under `pending_texts`, because +the Axiom corpus does not hold them yet. Each entry pins its file by this +repository, a commit and the file's sha256; rulespec-us's `verify` checks that each +excerpt appears verbatim in the capture. Each `.txt` file starts with the source URL +and how the text was extracted. `.html` files are the official page as fetched. + +Do not edit a capture after an entry pins it: add a new file instead, and move the +entry's snapshot to it. diff --git a/source_conflicts/sources/us-ar/act-1284-2013.txt b/source_conflicts/sources/us-ar/act-1284-2013.txt new file mode 100644 index 00000000000..d4849904662 --- /dev/null +++ b/source_conflicts/sources/us-ar/act-1284-2013.txt @@ -0,0 +1,108 @@ +Source: https://www.arkleg.state.ar.us/Acts/FTPDocument?path=%2FACTS%2F2013R%2FPublic%2F&file=1284.pdf&ddBienniumSession=2013%2F2013R +Pages 1-2, text extracted with pdftotext (poppler), cropped to the text column (-x 80) to drop the margin line numbers. + +Stricken language would be deleted from and underlined language would be added to present law. +Act 1284 of the Regular Session + +As Engrossed: + +State of Arkansas + +H3/20/13 + +A Bill + +89th General Assembly + +HOUSE BILL 1866 + +Regular Session, 2013 +By: Representative Kerr + +For An Act To Be Entitled +AN ACT CONCERNING THE COMPUTATION OF INCOME TAX; TO +ADOPT CURRENT INTERNAL REVENUE CODE PROVISIONS +CONCERNING THE COMPUTATION OF INCOME TAX WHEN A +TAXPAYER RESTORES AN AMOUNT HELD UNDER A CLAIM OF +RIGHT; AND FOR OTHER PURPOSES. + +Subtitle +TO ADOPT CURRENT INTERNAL REVENUE CODE +PROVISIONS CONCERNING THE COMPUTATION OF +INCOME TAX WHEN A TAXPAYER RESTORES AN +AMOUNT HELD UNDER A CLAIM OF RIGHT. + +BE IT ENACTED BY THE GENERAL ASSEMBLY OF THE STATE OF ARKANSAS: +SECTION 1. + +Arkansas Code Title 26, Chapter 51, Subchapter 4, is + +amended to add an additional section to read as follows: +26-51-457. + +(a) + +Claim of right. + +Title 26 U.S.C. § 1341(a)(1)-(3) and (b)(2), as they existed on + +January 1, 2013, regarding the computation of income tax when a taxpayer +restores a substantial amount held under a claim of right, is adopted for +purposes of computing income tax liability under this chapter. + +(b)(1) + +Title 26 U.S.C. § 1341(a)(4) and (5), (b)(1), and (b)(3)-(5), + +concerning the methods of calculating the deduction authorized under 26 +U.S.C. § 1341 and special rules for net operating losses and capital losses, +are not adopted. +(2) + +For the purpose of computing income tax when a taxpayer + +restores a substantial amount held under a claim of right under this section: + +*JLL189* + +02-18-2013 10:35:05 JLL189 + + As Engrossed: + +H3/20/13 + +(A) + +HB1866 + +The tax imposed under this chapter is calculated for + +the taxable year by allowing a deduction in the tax year the taxpayer +restores the amount held under a claim of right; and +(B) + +Net operating losses and capital losses are calculated + +and deducted under §§ 26-51-427 and 26-51-815. +(c) + +The Director of the Department of Finance and Administration may + +promulgate rules to administer this section. +SECTION 2. + +EFFECTIVE DATE. + +This act is effective for tax years + +beginning on or after January 1, 2013. + +/s/Kerr + +APPROVED: 04/16/2013 + +2 + +02-18-2013 10:35:05 JLL189 + + \ No newline at end of file diff --git a/source_conflicts/sources/us-ar/act-382-1987-p9.txt b/source_conflicts/sources/us-ar/act-382-1987-p9.txt new file mode 100644 index 00000000000..d6c653c1811 --- /dev/null +++ b/source_conflicts/sources/us-ar/act-382-1987-p9.txt @@ -0,0 +1,57 @@ +Source: https://www.arkleg.state.ar.us/Acts/FTPDocument?path=%2FACTS%2F1987R%2FPublic%2F&file=382.pdf&ddBienniumSession=1987%2F1987R#page=9 +Page 9, text extracted with pdftotext (poppler), reading order. + +assignee shall make returns for such corporation in the same manner and form +as corporations are required to make returns, and any tax due on the basis of +such returns shall be collected in the same manner as if collected from the +corporations of whose business or property they have custody or control. +(b) Returns made under this Section shall be subject to the provisions +of this Act." +(IRA and Deferred Compensation) +SECTION 27. Section 2 of Act 202 of 1959, as amended, the same being +Ark. Stat. Ann. 84-2049, is hereby amended to read as follows: +"Section 2. Sections 219 and 401 through 416 (26 U.S C. +219 and 401 +through 416) inclusive, of the Internal Revenue Code of 1986, in effect on +January 1, 1987, are hereby adopted in computing the income tax liabilities, +under the provisions of the Income Tax Act of 1929, as amended, for all participants in deferred compensation plans qualifying as such under these provisions, except Arkansas capital gains treatment and Arkansas tax rates shall +apply. Any additional tax or penalty imposed by this Section shall be ten +percent (10%) of the amount of any additional tax or penalty provided in the +federal income tax law adopted by this Section." +SECTION 28. MISCELLANEOUS ITEMIZED DEDUCTIONS (a) In the case of an +individual, the miscellaneous itemized deductions for any taxable year shall +be allowed only to the extent that the aggregate of such deductions exceeds two +percent (2%) of adjusted gross income. +(b) For the purposes of this section, the term "miscellaneous itemized +deductions" means the itemized deductions other than: +(1) The deduction allowed under Section l3(a)(l) of Act ll8 of l929, as +amended, the same being Ark. Stat. Ann. 84-20l6(a)(l), relating to expenses +in carrying on a trade or business. However, employee business expenses which +are not reimbursed by the employer are miscellaneous itemized deductions. +(2) The deduction allowed under Section l3(a)(2) of Act ll8 of l929, as +amended, the same being Ark. Stat. Ann. 84-20l6(a)(2), relating to medical, +dental, drug and related health care expenses. +(3) The deduction allowed under Section l3 (b) of Act ll8 of l929, as +amended the same being Ark. Stat. Ann. 84-20l6(b), relating to interest. +(4) The deduction allowed under Section l3(c) of Act ll8 of l929, as +amended, the same being Ark. Stat. Ann. 84-20l6(c), relating to taxes. +(5) The deduction allowed under Section l3(d) of Act ll8 of l929, as +amended, the same being Ark. Stat. Ann. 84-20l6(d), relating to losses. +(6) The deduction allowed under Section 2 of Act 25 of l967, as amended, +the same being Ark. Stat. Ann. 84-20l6.3, relating to charitable contributions. +(7) The deduction allowed under l of Act 8l8 of l983, the same being +Ark. Stat. Ann. 84-20l6.l5, relating to the donation of artistic, literary +and musical creations. +PROCEDURAL PROVISIONS +(FOIA Exclusion for all Tax Returns) +SECTION 29. Subsection (a) of Section 6 of Act 401 of 1979, as +amended, the same being Ark. Stat. Ann. +84-4706, are hereby amended to read +as follows: +"(a) The Commissioner is the official custodian of all records and files +required by any State tax law to be filed with the Commissioner and is +required to take all steps necessary to maintain their confidentiality. +Except as otherwise provided by this Act, the records and files of the +commissioner concerning the administration of any State tax law are confidential and privileged. These records and files and any information obtained + + \ No newline at end of file diff --git a/source_conflicts/sources/us-ar/ar3-2014.txt b/source_conflicts/sources/us-ar/ar3-2014.txt new file mode 100644 index 00000000000..2fa69463bce --- /dev/null +++ b/source_conflicts/sources/us-ar/ar3-2014.txt @@ -0,0 +1,117 @@ +Source: https://www.dfa.arkansas.gov/wp-content/uploads/AR3_2014_RE.pdf#page=1 +Page 1, text extracted with pdftotext (poppler), reading order. + +AR3 + +2014 + +CLICK HERE TO CLEAR FORM + +ARKANSAS INDIVIDUAL INCOME TAX + +ITEMIZED DEDUCTION SCHEDULE +Name + +Social Security Number + +MEDICAL AND DENTAL EXPENSES: [Do not include expense(s) paid by others]. (See Instructions) +00 +1. Medical and dental expenses:. ......................................................................................................... 1 +00 +2. Enter amount from Form AR1000F/AR1000NR, line 24(A) and 24(B):......2 +00 +3A. Multiply line 2 by 10% (.10) if you and your spouse were under 65 at the end of 2014; otherwise enter 0:. ......3A +00 +3B. Multiply line 2 by 7.5% (.075) if you or your spouse were 65 or over at the end of 2014; otherwise enter 0:. ... 3B +4. TOTAL MEDICAL EXPENSES: (Subtract lines 3A and 3B from line 1; if more than line 1, enter 0).....................................4 +TAXES: (See Instructions) +00 +5. Real estate tax:................................................................................................................................. 5 +6. Personal property tax or other taxes: (List type and amount) ____________________________ 6 +00 +7. TOTAL TAXES: (Add lines 5 and 6). ......................................................................................................................................7 +INTEREST EXPENSES: (See Instructions) +00 +8. Home mortgage interest paid to financial institutions:. ..................................................................... 8 +9. Home mortgage interest paid to an individual: Name: ________________________________ +00 +Address: ___________________________________________________________________ 9. +00 +10. Deductible points:. .......................................................................................................................... 10 +00 +11. Investment interest: (Attach federal Form 4952)............................................................................. 11 +12. TOTAL INTEREST EXPENSE: (Add lines 8 through 11).................................................................................................... 12 +CONTRIBUTIONS: (See Instructions) +00 +13. Cash contributions:. ........................................................................................................................ 13 +00 +14. Art and literary contributions:. ......................................................................................................... 14 +00 +15. Other:.............................................................................................................................................. 15 +00 +16. Carryover contributions: (List type and amount)______________________________________ 16 +17. TOTAL CONTRIBUTIONS: (Add lines 13 through 16)........................................................................................................ 17 +CASUALTY AND THEFT LOSSES: (See Instructions) +18. TOTAL CASUALTY AND THEFT LOSSES: (Attach federal Form 4684)______________________________________ 18 +POST-SECONDARY EDUCATION TUITION DEDUCTION(S): (See Instructions) +19. TOTAL POST-SECONDARY EDUCATION TUITION DEDUCTION(S): [Attach AR1075(s)] ............................................. 19 +MISCELLANEOUS DEDUCTIONS SUBJECT TO 2% AGI LIMIT: (See Instructions) +00 +20. Unreimbursed employee business expenses: (Attach federal Form 2106). ................................... 20 +00 +21. Other expenses: (List type and amount)____________________________________________ 21 +00 +22. Add the amounts on lines 20 and 21. Enter the total:..................................................................... 22 +00 +23. Enter amount from Form AR1000F/AR1000NR, line 24(A) and 24(B):..... 23 +24. Multiply line 23 above by 2% (.02):................................................................................................. 24 + +00 +25. TOTAL MISCELLANEOUS DEDUCTIONS: (Subtract line 24 from line 22; If line 24 is more than line 22, enter 0).............. 25 +OTHER MISCELLANEOUS DEDUCTIONS: (See Instructions) +00 +26. Volunteer firefighter expenses:. ...................................................................................................... 26 +00 +27. Other miscellaneous deductions: (List type and amount)............................................................... 27 +28. TOTAL MISCELLANEOUS DEDUCTIONS NOT SUBJECT TO THE 2% AGI LIMITATION: (Add lines 26 and 27)........... 28 +TOTAL ITEMIZED DEDUCTIONS: +29. Add amounts on Lines 4, 7, 12, 17, 18,19, 25, and 28 and enter the total here:. ....................................................................29 + +00 + +00 + +00 + +00 +00 +00 + +00 + +00 +00 + +Complete lines 30 - 34 ONLY if Filing Status 4 or 5. + +YOUR +SPOUSE’S +Adjusted Gross Income +Adjusted Gross Income +00 30B +00 +30. Enter adjusted gross income from Form AR1000F/AR1000NR, line 24, Columns (A) and (B) here:....... 30A +00 +31. Total Arkansas adjusted gross income: (Add columns 30A and 30B from above)....................................................................31 +32. Divide the amount on line 30A above by the amount on line 31. Enter the percentage here:. .................................................32 +33. Multiply line 29 by the percentage on line 32. Enter here and on Form AR1000F/AR1000NR, line 25, Col. (A):........ (YOU) 33 +34. Subtract line 33 from line 29. Enter here and on Form AR1000F/AR1000NR, line 25, Column (B). If you and + your spouse are using Filing Status 5, enter on line 25, Col. (A) of your spouse’s return:............................................. (SPOUSE) 34 +Page AR3 (R 11/6/14) + +% +00 + +00 + + \ No newline at end of file diff --git a/source_conflicts/sources/us-hi/n11-instructions-2022-p19.txt b/source_conflicts/sources/us-hi/n11-instructions-2022-p19.txt new file mode 100644 index 00000000000..fea1bdc68c1 --- /dev/null +++ b/source_conflicts/sources/us-hi/n11-instructions-2022-p19.txt @@ -0,0 +1,191 @@ +Source: https://files.hawaii.gov/tax/forms/2022/n11ins.pdf#page=19 +Pages 19-19, text extracted with pdftotext (poppler), reading order. + +Line 21f +Miscellaneous Deductions +Hawaii did not adopt the federal provision that suspends all miscellaneous itemized deductions that are +subject to the 2% floor for tax years 2018 through 2025. +Complete Worksheet A-6 on page 32 to figure your +miscellaneous deductions. + +In General +Most miscellaneous deductions cannot be deducted in +full. You must subtract 2% of your adjusted gross income from the total. +Generally, the 2% limit applies to job expenses you +paid for which you were not reimbursed (line 23). The +limit also applies to tax preparation fees (line 24) and +certain expenses you paid to produce or collect taxable +income or certain tax-exempt income (line 25). +The 2% limit does not apply to certain other miscellaneous expenses that you may deduct. These expenses +can be deducted in full on line 30. Gambling losses +(to the extent of winnings) and certain job expenses of +handicapped employees can be deducted on line 30. See +the 2017 federal Publication 529, Miscellaneous Deductions, for more information. + +Expenses Subject to the 2% +Limit +Employee Business Expenses +Note: The 2022 standard mileage rate for business +use of your vehicle is 58.5 cents a mile (62.5 cents a +mile beginning July 1, 2022). +On Worksheet A-6, line 23, report job expenses you +paid for which you were not reimbursed. Complete the +2017 federal Form 2106 or 2106-EZ and attach it to +Form N-11 if: +1. You claim any travel, transportation, meal, or entertainment expenses for your job; or +2. Your employer paid you for any of your job expenses +reportable on Worksheet A-6, line 23. +Examples of expenses to include on line 23 of +Worksheet A-6 are: +• Travel, transportation, meal, or entertainment expenses. +• Union dues. +• Safety equipment, small tools, and supplies you +needed for your job. +• Uniforms required by your employer that are not +suitable for ordinary wear. +• Protective clothing required in your work, such as +hard hats, safety shoes, and glasses. +• Physical examinations required by your employer. +• Dues to professional organizations and chambers +of commerce. +• Subscriptions to professional journals. +• Fees to employment agencies and other costs to +look for a new job in your present occupation, even +if you do not get a new job. +• Certain business use of part of your home, but only +if you use that part regularly and exclusively for +business purposes and for the convenience of your +employer. For details, including limits that apply, +see the 2017 federal Publication 587, Business Use +of Your Home. +• Certain education expenses you paid that meet at +least one of the following two tests. + +1. The education is required by your employer or the +law to keep your present salary, status, or job. The +required education must serve a bona fide business +purpose of your employer. +2. The education maintains or improves skills needed +in your present work. +Some education expenses are not deductible. See Expenses You MAY NOT Deduct on this page. + +Tax Preparation Fees +On Worksheet A-6, line 24, enter the fees you paid +for preparation of your federal and Hawaii tax return, +including fees paid for filing your return electronically. + +Other Expenses +On Worksheet A-6, line 25, enter the total amount you +paid to produce or collect taxable income and certain +tax-exempt income, and manage or protect property +held for earning income. But do not include any personal expenses. Attach a statement showing the type +and amount of each expense to Form N-11. Examples +of these expenses are: +• Safe deposit box rental. +• Certain legal and accounting fees. +• Clerical help and office rent. +• Custodial (e.g., trust account) fees. +• Your share of the investment expenses of a regulated investment company. +• Certain losses on nonfederally insured deposits in +an insolvent or bankrupt financial institution. For +details, including limits that apply, see the 2017 +federal Publication 529. +• Casualty and theft losses of property used in performing services as an employee. +• Deduction for repayment of amounts under a claim +of right over $3,000. See Repayments in the 2017 +federal Publication 525, Taxable and Nontaxable +Income, for more information. +• Convenience fee charged by the card processor for +paying your income tax (including estimated tax +payments) by credit or debit card. The deduction is +claimed for the year in which the fee was charged +to your card. +• Expenses for royalties and other income derived from +any patents, copyrights, and trade secrets by an individual or a qualified high technology business. + +Expenses NOT Subject to the +2% Limit + +• Impairment-related work expenses of a disabled +person. +• Deduction for repayment of amounts under a claim +of right of $3,000 or less. See Repayments in the +2017 federal Publication 525, Taxable and Nontaxable Income, for more information. +List the type and amount of each expense and attach +a copy of the list to your return. Enter one total in the +amount space for line 30. For more information on these +expenses, see the 2017 federal Publication 529, Miscellaneous Deductions. + +Expenses You MAY NOT +Deduct +Some expenses are not deductible at all. Examples +are: +• Political contributions. +• Legal expenses for personal matters that do not produce taxable income. +• Lost or misplaced cash or property. +• Expenses for meals during regular or extra work +hours. +• The cost of entertaining friends. +• Commuting expenses. +• Travel expenses for employment away from home +if that period of employment exceeds one year. +• Travel as a form of education. +• Expenses of attending a seminar, convention, or +similar meeting unless it is related to your employment. +• Club dues. +• Expenses of adopting a child. +• Fines and penalties. +• Expenses of producing tax-exempt income, except +for expenses for royalties and other income derived +from any patents, copyrights, and trade secrets by +an individual or a qualified high technology business. +• Education that: +1. Is needed to meet the minimum educational requirements of your present trade or business, or +2. Is part of a program of study that will qualify you +for a new trade or business. + +Line 22 +Total Itemized Deductions + +Other Deductions + +Dependents + +List only the following expenses on Worksheet A-6, +line 30: +• Gambling losses, but only to the extent of gambling +winnings reported on federal Schedule 1 (Form +1040 or 1040-SR), line 8. + +If your parent (or someone else) can claim you as a +dependent on his or her return (even if that person chose +not to claim you), fill in the oval above line 21. If you are +claiming the standard deduction, see Standard Deduction for Dependents on page 20 to figure your standard +deduction. + +– Note: Hawaii adopted the federal provision +that defines losses from wagering transactions +to include any otherwise allowable deduction +incurred in carrying on wagering transactions +(e.g., traveling to and from a casino) for tax years +2018 through 2025. +• Casualty and theft losses of income-producing +property. +• Hawaii estate and transfer tax. +• Amortizable bond premium on bonds acquired before October 23, 1986. +• Certain unrecovered investment in an annuity (IRC +section 72(b)(3)). For details, see the 2017 federal +Publication 575, Pension and Annuity Income. + +Itemized Deductions +Hawaii did not adopt the federal provision that suspends the overall limitation on itemized deductions for +tax years 2018 through 2025. +Your state income tax will be less if the total of your +itemized deductions is larger than the standard deduction. To figure your itemized deductions, fill in lines 21a +to 21f. +Add lines 21a through 21f, and enter the result on line +22 if the amount on line 20 (Hawaii adjusted gross income) is $166,800 or less ($83,400 if married filing +separately). +Page 19 + + \ No newline at end of file diff --git a/source_conflicts/sources/us-hi/n11-instructions-2025-p19.txt b/source_conflicts/sources/us-hi/n11-instructions-2025-p19.txt new file mode 100644 index 00000000000..e88028843fc --- /dev/null +++ b/source_conflicts/sources/us-hi/n11-instructions-2025-p19.txt @@ -0,0 +1,192 @@ +Source: https://files.hawaii.gov/tax/forms/2025/n11ins.pdf#page=19 +Pages 19-19, text extracted with pdftotext (poppler), reading order. + +a financial institution but lost because of the insolvency +or bankruptcy of the institution. +If your property is covered by insurance, you must +file a timely insurance claim for reimbursement of your +loss. Otherwise, you cannot deduct the loss as a casualty +or theft loss. However, the part of the loss that is not +covered by insurance is still deductible. You can deduct +personal casualty or theft losses only to the extent that: +a. The amount of EACH separate casualty or theft loss is +more than $100, and +b. The total amount of ALL losses during the year (reduced by the $100 limit) is more than 10% of your +adjusted gross income. +Corrosive drywall losses. If you paid for repairs to +your personal residence or household appliances because of corrosive drywall, you may be able to deduct +those amounts paid. See federal Publication 547 for details. +Use Worksheet A-6, line 25, to deduct the costs of +proving that you had a property loss. Examples of these +costs are appraisal fees and photographs used to establish the amount of your loss. + +Losses You CANNOT Deduct + +• Money or property misplaced or lost. +• Accidental breaking of articles such as glassware or +china under normal conditions. +• Damage due to progressive deterioration (steady +weakening of a building due to normal wind and +weather conditions; termite or moth damage; damage or destruction of trees, shrubs, or other plants by +a fungus, disease, insects, worms, or similar pests). + +Line 21f +Miscellaneous Deductions +Hawaii did not adopt the federal provision that suspends all miscellaneous itemized deductions that are +subject to the 2% floor for tax years 2018 through 2025. +Complete Worksheet A-6 on page 32 to figure your +miscellaneous deductions. + +In General +Most miscellaneous deductions cannot be deducted in +full. You must subtract 2% of your adjusted gross income from the total. +Generally, the 2% limit applies to job expenses you +paid for which you were not reimbursed (line 23). The +limit also applies to tax preparation fees (line 24) and +certain expenses you paid to produce or collect taxable +income or certain tax-exempt income (line 25). +The 2% limit does not apply to certain other miscellaneous expenses that you may deduct. These expenses +can be deducted in full on line 30. Gambling losses +(to the extent of winnings) and certain job expenses of +handicapped employees can be deducted on line 30. See +the 2017 federal Publication 529, Miscellaneous Deductions, for more information. + +Expenses Subject to the 2% +Limit +Employee Business Expenses + +Note: The 2025 standard mileage rate for business +use of your vehicle is 70 cents a mile. +On Worksheet A-6, line 23, report job expenses you +paid for which you were not reimbursed. Complete the +2017 federal Form 2106 or 2106-EZ and attach it to +Form N-11 if: + +1. You claim any travel, transportation, meal, or entertainment expenses for your job; or +2. Your employer paid you for any of your job expenses +reportable on Worksheet A-6, line 23. +Examples of expenses to include on line 23 of +Worksheet A-6 are: +• Travel, transportation, meal, or entertainment expenses. +• Union dues. +• Safety equipment, small tools, and supplies you +needed for your job. +• Uniforms required by your employer that are not +suitable for ordinary wear. +• Protective clothing required in your work, such as +hard hats, safety shoes, and glasses. +• Physical examinations required by your employer. +• Dues to professional organizations and chambers +of commerce. +• Subscriptions to professional journals. +• Fees to employment agencies and other costs to +look for a new job in your present occupation, even +if you do not get a new job. +• Certain business use of part of your home, but only +if you use that part regularly and exclusively for +business purposes and for the convenience of your +employer. For details, including limits that apply, +see the 2017 federal Publication 587, Business Use +of Your Home. +• Certain education expenses you paid that meet at +least one of the following two tests. +1. The education is required by your employer or the +law to keep your present salary, status, or job. The +required education must serve a bona fide business +purpose of your employer. +2. The education maintains or improves skills needed +in your present work. +Some education expenses are not deductible. See Expenses You MAY NOT Deduct on this page. + +Tax Preparation Fees +On Worksheet A-6, line 24, enter the fees you paid +for preparation of your federal and Hawaii tax return, +including fees paid for filing your return electronically. + +Other Expenses +On Worksheet A-6, line 25, enter the total amount you +paid to produce or collect taxable income and certain +tax-exempt income, and manage or protect property +held for earning income. But do not include any personal expenses. Attach a statement showing the type +and amount of each expense to Form N-11. Examples +of these expenses are: +• Safe deposit box rental. +• Certain legal and accounting fees. +• Clerical help and office rent. +• Custodial (e.g., trust account) fees. +• Your share of the investment expenses of a regulated investment company. +• Certain losses on nonfederally insured deposits in +an insolvent or bankrupt financial institution. For +details, including limits that apply, see the 2017 +federal Publication 529. +• Casualty and theft losses of property used in performing services as an employee. +• Deduction for repayment of amounts under a claim +of right over $3,000. See Repayments in the 2017 +federal Publication 525, Taxable and Nontaxable +Income, for more information. + +• Convenience fee charged by the card processor for +paying your income tax (including estimated tax +payments) by credit or debit card. The deduction is +claimed for the year in which the fee was charged +to your card. +• Expenses for royalties and other income derived from +any patents, copyrights, and trade secrets by an individual or a qualified high technology business. + +Expenses NOT Subject to the +2% Limit +Other Deductions + +List only the following expenses on Worksheet A-6, +line 30: +• Gambling losses, but only to the extent of gambling +winnings reported on federal Schedule 1 (Form +1040 or 1040-SR), line 8. +– Note: Hawaii adopted the federal provision +that defines losses from wagering transactions +to include any otherwise allowable deduction +incurred in carrying on wagering transactions +(e.g., traveling to and from a casino) for tax years +2018 through 2025. +• Casualty and theft losses of income-producing +property. +• Hawaii estate and transfer tax. +• Amortizable bond premium on bonds acquired before October 23, 1986. +• Certain unrecovered investment in an annuity (IRC +section 72(b)(3)). For details, see the 2017 federal +Publication 575, Pension and Annuity Income. +• Impairment-related work expenses of a disabled +person. +• Deduction for repayment of amounts under a claim +of right of $3,000 or less. See Repayments in the +2017 federal Publication 525, Taxable and Nontaxable Income, for more information. +List the type and amount of each expense and attach +a copy of the list to your return. Enter one total in the +amount space for line 30. For more information on these +expenses, see the 2017 federal Publication 529, Miscellaneous Deductions. + +Expenses You MAY NOT +Deduct +Some expenses are not deductible at all. Examples +are: +• Political contributions. +• Legal expenses for personal matters that do not produce taxable income. +• Lost or misplaced cash or property. +• Expenses for meals during regular or extra work +hours. +• The cost of entertaining friends. +• Commuting expenses. +• Travel expenses for employment away from home +if that period of employment exceeds one year. +• Travel as a form of education. +• Expenses of attending a seminar, convention, or +similar meeting unless it is related to your employment. +• Club dues. +• Expenses of adopting a child. +• Fines and penalties. +• Expenses of producing tax-exempt income, except +for expenses for royalties and other income derived +from any patents, copyrights, and trade secrets by +Page 19 + + \ No newline at end of file diff --git a/source_conflicts/sources/us-md/resident-booklet-2025-p23.txt b/source_conflicts/sources/us-md/resident-booklet-2025-p23.txt new file mode 100644 index 00000000000..92937cb2e02 --- /dev/null +++ b/source_conflicts/sources/us-md/resident-booklet-2025-p23.txt @@ -0,0 +1,172 @@ +Source: https://www.marylandcomptroller.gov/content/dam/mdcomp/tax/instructions/2025/resident-booklet.pdf#page=23 +Pages 23-23, text extracted with pdftotext (poppler), reading order. + +a. CREDITS FOR INCOME TAXES PAID TO OTHER STATES. +If you have income subject to tax in Maryland and subject +to tax in another state and/or another state’s locality, you +may be eligible for a tax credit. Note: You must attach a +copy of Form 502CR and required documentation. If this is +not attached, no credit will be allowed. See Administrative +Release 42 for required documentation. + +Line 23. STATE POVERTY LEVEL CREDIT. If your earned income and federal adjusted gross income plus additions are below +the poverty level income for the number of persons in family/household on your federal tax return, you may be eligible for the poverty +level credit. You are not eligible for this credit if you checked filing +status 6 (dependent taxpayer) on your Maryland income tax return. +Generally, if your Maryland state tax exceeds 50% of your federal earned income credit and your earned income and federal +adjusted gross income are below the poverty income guidelines +from the STATE POVERTY LEVEL CREDIT WORKSHEET (18B), +you may claim a credit of 5% of your earned income. + +b. CREDIT FOR CHILD AND DEPENDENT CARE EXPENSES. **This credit is available to residents only. If you +were eligible for a Child and Dependent Care Credit on your +federal income tax return and your income is below certain +thresholds, you are entitled to a tax credit equal to a percentage of the federal credit. You may also be entitled to a +refundable credit. See Form 502CR Instructions. + +Complete the STATE POVERTY LEVEL CREDIT WORKSHEET +(18B) to calculate the amount to enter on Line 23 of Form 502. +This is not a refundable credit. + +c. QUALITY TEACHER INCENTIVE CREDIT. If you are a +qualified teacher who paid tuition to take graduate level +courses required to maintain certification, you may be eligible for a tax credit. See Form 502CR Instructions. + +STATE POVERTY LEVEL CREDIT WORKSHEET (18B) +If you checked filing status 6 on your Maryland return, you are not +eligible for this credit. + +d. CREDIT FOR AQUACULTURE OYSTER FLOATS. If you +purchased a new aquaculture oyster float during the tax +year, you may be entitled to a credit of up to $500 for the +cost of the float. See Form 502CR Instructions. + +1. Enter the amount from Line 7 of Form 502. +If you checked filing status 3 (married +filing separately) and you filed a joint +federal return, enter your joint federal +adjusted gross income plus any Maryland +additions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1. _____________ + +e. LONG-TERM CARE INSURANCE CREDIT. If you paid a +premium for a long-term care insurance policy for yourself +or certain Maryland resident family members, you may be +eligible for a tax credit. +f. CREDIT FOR PRESERVATION AND CONSERVATION +EASEMENTS. Individuals may be eligible for a tax credit for +an easement conveyed to the Maryland Environmental Trust, +the Maryland Agricultural Land Preservation Foundation, or +the Maryland Department of Natural Resources to preserve +open space, natural resources, agriculture, forest land, watersheds, significant ecosystems, view sheds or historic +properties. Individuals who are eligible to claim the Credit for +Preservation and Conservation Easements and who are not +PTE members must claim this credit on Part F of the Form +502CR. PTE members who are eligible for this credit must +electronically claim the credit on Form 500CR. + +2. Enter the total of your salary, wages, tips and +other employee compensation and net profit from +self-employment here, and on Line 1b of Form +502, if Line 1b is currently blank. (Do not +include a farm or business loss.). . . . . . . . . . . . . . . 2. _____________ +3. Find the number of persons in your family/ +household from the chart that is the same +as the number of persons entered on your +federal tax return. Enter the income level that +corresponds to the number of persons. . . . . . . . . . . 3. _____________ +4. Enter the amount from Line 1 or 2, +whichever is larger. Compare Lines 3 and 4. +If Line 4 is greater than or equal to Line 3, +STOP HERE. You do not qualify for this +credit. If Line 3 is greater than Line 4, +continue to Line 5. . . . . . . . . . . . . . . . . . . . . . . . . . 4. _____________ + +g. VENISON DONATION Individuals who hunt and harvest +antlerless deer and then donate the processed meat to an +organization exempt from taxation under § 501(c)(3) of +the Internal Revenue Code may claim a credit against their +State personal income tax. The credit amount is $75 per +donated deer. The maximum credit amount is $300 unless +the individual harvested the deer in accordance with a Deer +Management Permit. No portion of the credit can be carried +forward or exceed the amount incurred to butcher and process the donated deer. All individuals who claim the credit +must comply with State hunting laws and regulations. The +credit may be claimed on Part G of Form 502CR. + +5. Multiply Line 2 by 5% (.05). This is your +State Poverty Level Credit. Enter that +amount here and on Line 23 of Form 502. +(Part-year residents or members of the +military, see Instruction 26(o)) . . . . . . . . . . . . . . . . 5. _____________ + +POVERTY INCOME GUIDELINES +NUMBER OF PERSONS IN +FAMILY/HOUSEHOLD + +INCOME LEVEL + +1 + +$15,650 + +2 + +$21,150 + +3 + +$26,650 + +4 + +$32,150 + +5 + +$37,650 + +6 + +$43,150 + +7 + +$48,650 + +8 + +$54,150 + +h. COMMUNITY INVESTMENT TAX CREDIT. Businesses +that contribute to approved Neighborhood and Community Assistance Programs may be eligible for a tax credit of +50% of approved contributions with a maximum credit of +$250,000 on Form 500CR (See Line 25 Instructions, letter code d). Individuals who make a nonbusiness contribution may also be eligible for this tax credit, and may elect +to claim this credit on Part H of Form 502CR instead of +Form 500CR. The credit may not be claimed on both Form +500CR and Form 502CR. PTE members may claim this credit on Form 500CR (See Line 25 Instructions, code letter d). + +For families/households with more than 8 persons, add $5,500 for +each additional person. + +i. + +Line 24. OTHER INCOME TAX CREDITS FOR INDIVIDUALS. Enter the total of your income tax credits as listed below. +Complete and attach Form 502CR with Form 502. +Note: In the event of legislative changes (for example, emergency legislation or a veto override of legislation from a prior +legislative session) that retroactively affect tax year 2024, the +Comptroller will provide additional instruction on the use of +Form 502LU to claim nonrefundable credits and add that amount +to Line 24. +15 + +ENDOW MARYLAND TAX CREDIT. Businesses and individuals that donate $500 of cash or publicly traded securities to a +qualified permanent endowment fund at an eligible community +foundation may be eligible for a tax credit of 25% of the approved +donation with a maximum credit of $50,000 on Form 500CR +(See Line 25 instructions, code letter v). Individuals who make +an approved donation may also be eligible for this tax credit, +and may elect to claim this credit on Part I of Form 502CR instead of Form 500CR. The credit may not be claimed on both +Form 500CR and Form 502CR. PTE members may claim this +credit on Form 500CR (See Line 25 Instructions, code letter v). + + \ No newline at end of file diff --git a/source_conflicts/sources/us-oh/it1040-instructions-2025-p23.txt b/source_conflicts/sources/us-oh/it1040-instructions-2025-p23.txt new file mode 100644 index 00000000000..877520f5a73 --- /dev/null +++ b/source_conflicts/sources/us-oh/it1040-instructions-2025-p23.txt @@ -0,0 +1,90 @@ +Source: https://dam.assets.ohio.gov/image/upload/tax.ohio.gov/forms/ohio_individual/individual/2025/it1040-booklet.pdf#page=23 +Page 23, text extracted with pdftotext (poppler): left column, then right column below the page number (-x/-y/-W/-H crops). + +● 1/6 of prior year 6/6 add-backs, +of Internal Revenue Code sections 168(k) and 179 +depreciation adjustments. The deduction must be +taken in equal increments in consecutive tax years +and any unused portion from any given tax year is +not eligible to be carried forward. +You can only deduct amounts that you added back +in a prior year on your Ohio IT 1040. If you receive an +Ohio IT K-1 reporting a deduction, you must verify it +is consistent with your prior year add-back(s). You can +take this deduction even if you no longer directly or +indirectly own the asset. +Additionally, in tax years with an NOL, an NOL +carryback or an NOL carryforward, you cannot claim +this deduction. Instead, you must carry the deduction +forward to the next tax year in which you have no NOL, +carryback, or carryforward. +For more information, see the FAQs at tax.ohio.gov/faqIncomeDepreciation. See also R.C. 5747.01(A)(18). +Line 28 – Refund or Reimbursement for Itemized +Deductions +Deduct amounts included in your federal adjusted gross +income (AGI) that represent refunds or reimbursements +of expenses that you previously deducted on federal +Schedule A. Do not include any amounts that +were previously deducted on the Ohio Schedule of +Adjustments in any tax year. See R.C. 5747.01(A)(11)(a). +Example: Sue claimed an itemized deduction of $500 +for attorney fees on her 2023 federal Schedule A. In +2025 she received a reimbursement for $200 of those +fees from her attorney. She reported this $200 on her +2025 federal income tax return as other income. Sue is +entitled to deduct the $200 reimbursement on this line. +Line 29 – Repayment of Income Reported +Deduct amounts, described in section 1341(a)(2) of the +Internal Revenue Code, that you repaid in the current +tax year if: +● You recognized the amount as income on your federal +return in a prior year; +● You have not deducted this income on any other line +on your Ohio income tax return for any tax year; +● In the year you recognized the income, it did not qualify +for either the Ohio resident or nonresident credit; AND +● In the current tax year, you claimed either (i) an + + itemized deduction on your federal Schedule A for +the amount repaid OR (ii) a tax credit on your federal +1040 based upon the amount repaid. +See R.C. 5747.01(A)(12). +Line 30 – Wage Expense Not Deducted Due to the +Federal Work Opportunity Tax Credit +Deduct the amount you reported as your work +opportunity tax credit on your federal income tax +return. See R.C. 5747.01(A)(6). +Line 31 – Federal Conformity Deductions +This line is only for federal conformity adjustments. Do +not enter any federal Schedule A adjustments on this +line. For updates on Ohio conformity, see tax.ohio.gov/ +conformity. See also R.C. 5701.11. +Line 32 – Military Pay for Ohio Residents +Important: Nonresidents and resident servicemembers +stationed in Ohio are not eligible for this deduction. +Deduct military pay and allowances only if all of the +following are true: +● They are included in your federal AGI; +● You received them while stationed outside Ohio; +● You are a resident of Ohio; AND +● You were active duty service in the U.S. Army, Air +Force, Navy, Marine Corp, Coast Guard, Space +Force, or any other military service branch that is +designated by Congress as a part of the armed forces +of the United States or reserve components thereof, +or the National Guard. +For more information on taxation of military +servicemembers and their civilian spouses, see page +10. See also R.C. 5747.01(A)(21) and 5907.01(A)(1). +Line 33 – Nonresident Military and Civilian Spouse +Wages +Important: Ohio residents are not eligible for this +deduction. +Deduct military pay and allowances included in federal +AGI and earned by the military servicemember only if +the servicemember is a nonresident of Ohio. +Also deduct compensation earned in Ohio by a +nonresident civilian spouse if the spouse is in Ohio +solely because of the servicemember's military orders. + + \ No newline at end of file diff --git a/source_conflicts/sources/us-oh/rc-5747.01.html b/source_conflicts/sources/us-oh/rc-5747.01.html new file mode 100644 index 00000000000..1af6e4785cb --- /dev/null +++ b/source_conflicts/sources/us-oh/rc-5747.01.html @@ -0,0 +1,696 @@ + + + + + + + Section 5747.01 - Ohio Revised Code | Ohio Laws + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Skip to main content + + + + + + + + + + + + + + + +
+ +
+ +
+ + + +
+ +
+ +
+ +
+ +
+ + + + + + + +
+ +
+ +
+ +
+ +
+
+ + +
+ +
+ +
+ + + + + +
+ The Legislative Service Commission staff updates the Revised Code on an ongoing basis, as it completes its act review of enacted legislation. + Updates may be slower during some times of the year, depending on the volume of enacted legislation. +
+ + + +
+ +

Section 5747.01 | Definitions.

+ + + + + +
+ + + + + +
+ + + +
+ +
 
+ + + +
+ + + + + +
+ + + +
+ +

Except as otherwise expressly provided or clearly appearing from the context, any term used in this chapter that is not otherwise defined in this section has the same meaning as when used in a comparable context in the laws of the United States relating to federal income taxes or if not used in a comparable context in those laws, has the same meaning as in section 5733.40 of the Revised Code. Any reference in this chapter to the Internal Revenue Code includes other laws of the United States relating to federal income taxes.

As used in this chapter:

(A) "Adjusted gross income" or "Ohio adjusted gross income" means federal adjusted gross income, as defined and used in the Internal Revenue Code, adjusted as provided in this section:

(1) Add interest or dividends on obligations or securities of any state or of any political subdivision or authority of any state, other than this state and its subdivisions and authorities.

(2) Add interest or dividends on obligations of any authority, commission, instrumentality, territory, or possession of the United States to the extent that the interest or dividends are exempt from federal income taxes but not from state income taxes.

(3) Deduct interest or dividends on obligations of the United States and its territories and possessions or of any authority, commission, or instrumentality of the United States to the extent that the interest or dividends are included in federal adjusted gross income but exempt from state income taxes under the laws of the United States.

(4) Deduct disability and survivor's benefits to the extent included in federal adjusted gross income.

(5) Deduct the following, to the extent not otherwise deducted or excluded in computing federal or Ohio adjusted gross income:

(a) Benefits under Title II of the Social Security Act and tier 1 railroad retirement;

(b) Railroad retirement benefits, other than tier 1 railroad retirement benefits, to the extent such amounts are exempt from state taxation under federal law.

(6) Deduct the amount of wages and salaries, if any, not otherwise allowable as a deduction but that would have been allowable as a deduction in computing federal adjusted gross income for the taxable year, had the work opportunity tax credit allowed and determined under sections 38, 51, and 52 of the Internal Revenue Code not been in effect.

(7) Deduct any interest or interest equivalent on public obligations and purchase obligations to the extent that the interest or interest equivalent is included in federal adjusted gross income.

(8) Add any loss or deduct any gain resulting from the sale, exchange, or other disposition of public obligations to the extent that the loss has been deducted or the gain has been included in computing federal adjusted gross income.

(9) Deduct or add amounts, as provided under section 5747.70 of the Revised Code, related to contributions made to or tuition units purchased under a qualified tuition program established pursuant to section 529 of the Internal Revenue Code.

(10)(a) Deduct, to the extent not otherwise allowable as a deduction or exclusion in computing federal or Ohio adjusted gross income for the taxable year, the amount the taxpayer paid during the taxable year for medical care insurance and qualified long-term care insurance for the taxpayer, the taxpayer's spouse, and dependents. No deduction for medical care insurance under division (A)(10)(a) of this section shall be allowed either to any taxpayer who is eligible to participate in any subsidized health plan maintained by any employer of the taxpayer or of the taxpayer's spouse, or to any taxpayer who is entitled to, or on application would be entitled to, benefits under part A of Title XVIII of the "Social Security Act," 49 Stat. 620 (1935), 42 U.S.C. 301, as amended. For the purposes of division (A)(10)(a) of this section, "subsidized health plan" means a health plan for which the employer pays any portion of the plan's cost. The deduction allowed under division (A)(10)(a) of this section shall be the net of any related premium refunds, related premium reimbursements, or related insurance premium dividends received during the taxable year.

(b) Deduct, to the extent not otherwise deducted or excluded in computing federal or Ohio adjusted gross income during the taxable year, the amount the taxpayer paid during the taxable year, not compensated for by any insurance or otherwise, for medical care of the taxpayer, the taxpayer's spouse, and dependents, to the extent the expenses exceed seven and one-half per cent of the taxpayer's federal adjusted gross income.

(c) For purposes of division (A)(10) of this section, "medical care" has the meaning given in section 213 of the Internal Revenue Code, subject to the special rules, limitations, and exclusions set forth therein, and "qualified long-term care" has the same meaning given in section 7702B(c) of the Internal Revenue Code. Solely for purposes of division (A)(10)(a) of this section, "dependent" includes a person who otherwise would be a "qualifying relative" and thus a "dependent" under section 152 of the Internal Revenue Code but for the fact that the person fails to meet the income and support limitations under section 152(d)(1)(B) and (C) of the Internal Revenue Code.

(11)(a) Deduct any amount included in federal adjusted gross income solely because the amount represents a reimbursement or refund of expenses that in any year the taxpayer had deducted as an itemized deduction pursuant to section 63 of the Internal Revenue Code and applicable United States department of the treasury regulations. The deduction otherwise allowed under division (A)(11)(a) of this section shall be reduced to the extent the reimbursement is attributable to an amount the taxpayer deducted under this section in any taxable year.

(b) Add any amount not otherwise included in Ohio adjusted gross income for any taxable year to the extent that the amount is attributable to the recovery during the taxable year of any amount deducted or excluded in computing federal or Ohio adjusted gross income in any taxable year.

(12) Deduct any portion of the deduction described in section 1341(a)(2) of the Internal Revenue Code, for repaying previously reported income received under a claim of right, that meets both of the following requirements:

(a) It is allowable for repayment of an item that was included in the taxpayer's adjusted gross income for a prior taxable year and did not qualify for a credit under division (A) or (B) of section 5747.05 of the Revised Code for that year;

(b) It does not otherwise reduce the taxpayer's adjusted gross income for the current or any other taxable year.

(13) Deduct an amount equal to the deposits made to, and net investment earnings of, a medical savings account during the taxable year, in accordance with section 3924.66 of the Revised Code. The deduction allowed by division (A)(13) of this section does not apply to medical savings account deposits and earnings otherwise deducted or excluded for the current or any other taxable year from the taxpayer's federal adjusted gross income.

(14)(a) Add an amount equal to the funds withdrawn from a medical savings account during the taxable year, and the net investment earnings on those funds, when the funds withdrawn were used for any purpose other than to reimburse an account holder for, or to pay, eligible medical expenses, in accordance with section 3924.66 of the Revised Code;

(b) Add the amounts distributed from a medical savings account under division (A)(2) of section 3924.68 of the Revised Code during the taxable year.

(15) Add any amount claimed as a credit under section 5747.059 of the Revised Code to the extent that such amount satisfies either of the following:

(a) The amount was deducted or excluded from the computation of the taxpayer's federal adjusted gross income as required to be reported for the taxpayer's taxable year under the Internal Revenue Code;

(b) The amount resulted in a reduction of the taxpayer's federal adjusted gross income as required to be reported for any of the taxpayer's taxable years under the Internal Revenue Code.

(16) Deduct the amount contributed by the taxpayer to an individual development account program established by a county department of job and family services pursuant to sections 329.11 to 329.14 of the Revised Code for the purpose of matching funds deposited by program participants. On request of the tax commissioner, the taxpayer shall provide any information that, in the tax commissioner's opinion, is necessary to establish the amount deducted under division (A)(16) of this section.

(17)(a)(i) Subject to divisions (A)(17)(a)(iii), (iv), and (v) of this section, add five-sixths of the amount of depreciation expense allowed by subsection (k) of section 168 of the Internal Revenue Code, including the taxpayer's proportionate or distributive share of the amount of depreciation expense allowed by that subsection to a pass-through entity in which the taxpayer has a direct or indirect ownership interest.

(ii) Subject to divisions (A)(17)(a)(iii), (iv), and (v) of this section, add five-sixths of the amount of qualifying section 179 depreciation expense, including the taxpayer's proportionate or distributive share of the amount of qualifying section 179 depreciation expense allowed to any pass-through entity in which the taxpayer has a direct or indirect ownership interest.

(iii) Subject to division (A)(17)(a)(v) of this section, for taxable years beginning in 2012 or thereafter, if the increase in income taxes withheld by the taxpayer is equal to or greater than ten per cent of income taxes withheld by the taxpayer during the taxpayer's immediately preceding taxable year, "two-thirds" shall be substituted for "five-sixths" for the purpose of divisions (A)(17)(a)(i) and (ii) of this section.

(iv) Subject to division (A)(17)(a)(v) of this section, for taxable years beginning in 2012 or thereafter, a taxpayer is not required to add an amount under division (A)(17) of this section if the increase in income taxes withheld by the taxpayer and by any pass-through entity in which the taxpayer has a direct or indirect ownership interest is equal to or greater than the sum of (I) the amount of qualifying section 179 depreciation expense and (II) the amount of depreciation expense allowed to the taxpayer by subsection (k) of section 168 of the Internal Revenue Code, and including the taxpayer's proportionate or distributive shares of such amounts allowed to any such pass-through entities.

(v) If a taxpayer directly or indirectly incurs a net operating loss for the taxable year for federal income tax purposes, to the extent such loss resulted from depreciation expense allowed by subsection (k) of section 168 of the Internal Revenue Code and by qualifying section 179 depreciation expense, "the entire" shall be substituted for "five-sixths of the" for the purpose of divisions (A)(17)(a)(i) and (ii) of this section.

The tax commissioner, under procedures established by the commissioner, may waive the add-backs related to a pass-through entity if the taxpayer owns, directly or indirectly, less than five per cent of the pass-through entity.

(b) Nothing in division (A)(17) of this section shall be construed to adjust or modify the adjusted basis of any asset.

(c) To the extent the add-back required under division (A)(17)(a) of this section is attributable to property generating nonbusiness income or loss allocated under section 5747.20 of the Revised Code, the add-back shall be sitused to the same location as the nonbusiness income or loss generated by the property for the purpose of determining the credit under division (A) of section 5747.05 of the Revised Code. Otherwise, the add-back shall be apportioned, subject to one or more of the four alternative methods of apportionment enumerated in section 5747.21 of the Revised Code.

(d) For the purposes of division (A)(17)(a)(v) of this section, net operating loss carryback and carryforward shall not include the allowance of any net operating loss deduction carryback or carryforward to the taxable year to the extent such loss resulted from depreciation allowed by section 168(k) of the Internal Revenue Code and by the qualifying section 179 depreciation expense amount.

(e) For the purposes of divisions (A)(17) and (18) of this section:

(i) "Income taxes withheld" means the total amount withheld and remitted under sections 5747.06 and 5747.07 of the Revised Code by an employer during the employer's taxable year.

(ii) "Increase in income taxes withheld" means the amount by which the amount of income taxes withheld by an employer during the employer's current taxable year exceeds the amount of income taxes withheld by that employer during the employer's immediately preceding taxable year.

(iii) "Qualifying section 179 depreciation expense" means the difference between (I) the amount of depreciation expense directly or indirectly allowed to a taxpayer under section 179 of the Internal Revised Code, and (II) the amount of depreciation expense directly or indirectly allowed to the taxpayer under section 179 of the Internal Revenue Code as that section existed on December 31, 2002.

(18)(a) If the taxpayer was required to add an amount under division (A)(17)(a) of this section for a taxable year, deduct one of the following:

(i) One-fifth of the amount so added for each of the five succeeding taxable years if the amount so added was five-sixths of qualifying section 179 depreciation expense or depreciation expense allowed by subsection (k) of section 168 of the Internal Revenue Code;

(ii) One-half of the amount so added for each of the two succeeding taxable years if the amount so added was two-thirds of such depreciation expense;

(iii) One-sixth of the amount so added for each of the six succeeding taxable years if the entire amount of such depreciation expense was so added.

(b) If the amount deducted under division (A)(18)(a) of this section is attributable to an add-back allocated under division (A)(17)(c) of this section, the amount deducted shall be sitused to the same location. Otherwise, the deduction shall be apportioned using the apportionment factors for the taxable year in which the deduction is taken, subject to one or more of the four alternative methods of apportionment enumerated in section 5747.21 of the Revised Code.

(c) No deduction is available under division (A)(18)(a) of this section with regard to any depreciation allowed by section 168(k) of the Internal Revenue Code and by the qualifying section 179 depreciation expense amount to the extent that such depreciation results in or increases a federal net operating loss carryback or carryforward. If no such deduction is available for a taxable year, the taxpayer may carry forward the amount not deducted in such taxable year to the next taxable year and add that amount to any deduction otherwise available under division (A)(18)(a) of this section for that next taxable year. The carryforward of amounts not so deducted shall continue until the entire addition required by division (A)(17)(a) of this section has been deducted.

(19) Deduct, to the extent not otherwise deducted or excluded in computing federal or Ohio adjusted gross income for the taxable year, the amount the taxpayer received during the taxable year as reimbursement for life insurance premiums under section 5919.31 of the Revised Code.

(20) Deduct, to the extent not otherwise deducted or excluded in computing federal or Ohio adjusted gross income for the taxable year, the amount the taxpayer received during the taxable year as a death benefit paid by the adjutant general under section 5919.33 of the Revised Code.

(21) Deduct, to the extent included in federal adjusted gross income and not otherwise allowable as a deduction or exclusion in computing federal or Ohio adjusted gross income for the taxable year, military pay and allowances received by the taxpayer during the taxable year for active duty service in the armed forces of the United States, as defined in section 5907.01 of the Revised Code, or reserve components thereof or the national guard. The deduction may not be claimed for military pay and allowances received by the taxpayer while the taxpayer is stationed in this state.

(22) Deduct, to the extent not otherwise allowable as a deduction or exclusion in computing federal or Ohio adjusted gross income for the taxable year and not otherwise compensated for by any other source, the amount of qualified organ donation expenses incurred by the taxpayer during the taxable year, not to exceed ten thousand dollars. A taxpayer may deduct qualified organ donation expenses only once for all taxable years beginning with taxable years beginning in 2007.

For the purposes of division (A)(22) of this section:

(a) "Human organ" means all or any portion of a human liver, pancreas, kidney, intestine, or lung, and any portion of human bone marrow.

(b) "Qualified organ donation expenses" means travel expenses, lodging expenses, and wages and salary forgone by a taxpayer in connection with the taxpayer's donation, while living, of one or more of the taxpayer's human organs to another human being.

(23) Deduct, to the extent not otherwise deducted or excluded in computing federal or Ohio adjusted gross income for the taxable year, amounts received by the taxpayer as retired personnel pay for service in the uniformed services or reserve components thereof, or the national guard, or received by the surviving spouse or former spouse of such a taxpayer under the survivor benefit plan on account of such a taxpayer's death. If the taxpayer receives income on account of retirement paid under the federal civil service retirement system or federal employees retirement system, or under any successor retirement program enacted by the congress of the United States that is established and maintained for retired employees of the United States government, and such retirement income is based, in whole or in part, on credit for the taxpayer's uniformed service, the deduction allowed under this division shall include only that portion of such retirement income that is attributable to the taxpayer's uniformed service, to the extent that portion of such retirement income is otherwise included in federal adjusted gross income and is not otherwise deducted under this section. Any amount deducted under division (A)(23) of this section is not included in a taxpayer's adjusted gross income for the purposes of section 5747.055 of the Revised Code. No amount may be deducted under division (A)(23) of this section on the basis of which a credit was claimed under section 5747.055 of the Revised Code.

(24) Deduct, to the extent not otherwise deducted or excluded in computing federal or Ohio adjusted gross income for the taxable year, the amount the taxpayer received during the taxable year from the military injury relief fund created in section 5902.05 of the Revised Code.

(25) Deduct, to the extent not otherwise deducted or excluded in computing federal or Ohio adjusted gross income for the taxable year, the amount the taxpayer received as a veterans bonus during the taxable year from the Ohio department of veterans services as authorized by Section 2r of Article VIII, Ohio Constitution.

(26) Deduct, to the extent not otherwise deducted or excluded in computing federal or Ohio adjusted gross income for the taxable year, any income derived from a transfer agreement or from the enterprise transferred under that agreement under section 4313.02 of the Revised Code.

(27) Deduct, to the extent not otherwise deducted or excluded in computing federal or Ohio adjusted gross income for the taxable year, Ohio college opportunity or federal Pell grant amounts received by the taxpayer or the taxpayer's spouse or dependent pursuant to section 3333.122 of the Revised Code or 20 U.S.C. 1070a, et seq., and used to pay room or board furnished by the educational institution for which the grant was awarded at the institution's facilities, including meal plans administered by the institution. For the purposes of this division, receipt of a grant includes the distribution of a grant directly to an educational institution and the crediting of the grant to the enrollee's account with the institution.

(28) Deduct from the portion of an individual's federal adjusted gross income that is business income, to the extent not otherwise deducted or excluded in computing federal adjusted gross income for the taxable year, one hundred twenty-five thousand dollars for each spouse if spouses file separate returns under section 5747.08 of the Revised Code or two hundred fifty thousand dollars for all other individuals.

(29) Deduct, as provided under section 5747.78 of the Revised Code, contributions to ABLE savings accounts made in accordance with sections 113.50 to 113.56 of the Revised Code.

(30)(a) Deduct, to the extent not otherwise deducted or excluded in computing federal or Ohio adjusted gross income during the taxable year, all of the following:

(i) Compensation paid to a qualifying employee described in division (A)(14)(a) of section 5703.94 of the Revised Code to the extent such compensation is for disaster work conducted in this state during a disaster response period pursuant to a qualifying solicitation received by the employee's employer;

(ii) Compensation paid to a qualifying employee described in division (A)(14)(b) of section 5703.94 of the Revised Code to the extent such compensation is for disaster work conducted in this state by the employee during the disaster response period on critical infrastructure owned or used by the employee's employer;

(iii) Income received by an out-of-state disaster business for disaster work conducted in this state during a disaster response period, or, if the out-of-state disaster business is a pass-through entity, a taxpayer's distributive share of the pass-through entity's income from the business conducting disaster work in this state during a disaster response period, if, in either case, the disaster work is conducted pursuant to a qualifying solicitation received by the business.

(b) All terms used in division (A)(30) of this section have the same meanings as in section 5703.94 of the Revised Code.

(31) For a taxpayer who is a qualifying Ohio educator, deduct, to the extent not otherwise deducted or excluded in computing federal or Ohio adjusted gross income for the taxable year, the lesser of three hundred dollars or the amount of expenses described in subsections (a)(2)(D)(i) and (ii) of section 62 of the Internal Revenue Code paid or incurred by the taxpayer during the taxpayer's taxable year in excess of the amount the taxpayer is authorized to deduct for that taxable year under subsection (a)(2)(D) of that section.

(32) Deduct, to the extent not otherwise deducted or excluded in computing federal or Ohio adjusted gross income for the taxable year, amounts received by the taxpayer as a disability severance payment, computed under 10 U.S.C. 1212, following discharge or release under honorable conditions from the armed forces of the United States, as defined in section 5907.01 of the Revised Code.

(33) Deduct, to the extent not otherwise deducted or excluded in computing federal adjusted gross income or Ohio adjusted gross income, amounts not subject to tax due to an agreement entered into under division (A)(2) of section 5747.05 of the Revised Code.

(34) Deduct amounts as provided under section 5747.79 of the Revised Code related to the taxpayer's qualifying capital gains and deductible payroll.

To the extent a qualifying capital gain described under division (A)(34) of this section is business income, the taxpayer shall deduct those gains under this division before deducting any such gains under division (A)(28) of this section.

(35)(a) For taxable years beginning in or after 2026, deduct, to the extent not otherwise deducted or excluded in computing federal or Ohio adjusted gross income for the taxable year:

(i) One hundred per cent of the capital gain received by the taxpayer in the taxable year from a qualifying interest in an Ohio venture capital operating company attributable to the company's investments in Ohio businesses during the period for which the company was an Ohio venture operating company; and

(ii) Fifty per cent of the capital gain received by the taxpayer in the taxable year from a qualifying interest in an Ohio venture capital operating company attributable to the company's investments in all other businesses during the period for which the company was an Ohio venture operating company.

(b) Add amounts previously deducted by the taxpayer under division (A)(35)(a) of this section if the director of development certifies to the tax commissioner that the requirements for the deduction were not met.

(c) All terms used in division (A)(35) of this section have the same meanings as in section 122.851 of the Revised Code.

(d) To the extent a capital gain described in division (A)(35)(a) of this section is business income, the taxpayer shall apply that division before applying division (A)(28) of this section.

(36) Add, to the extent not otherwise included in computing federal or Ohio adjusted gross income for any taxable year, the taxpayer's proportionate share of the amount of the tax levied under section 5747.38 of the Revised Code and paid by an electing pass-through entity for the taxable year.

Notwithstanding any provision of the Revised Code to the contrary, the portion of the addition required by division (A)(36) of this section related to the apportioned business income of the pass-through entity shall be considered business income under division (B) of this section. Such addition is eligible for the deduction in division (A)(28) of this section, subject to the applicable dollar limitations, and the tax rate prescribed by division (A)(4)(a) of section 5747.02 of the Revised Code. The taxpayer shall provide, upon request of the tax commissioner, any documentation necessary to verify the portion of the addition that is business income under this division.

(37) Deduct, to the extent not otherwise deducted or excluded in computing federal or Ohio adjusted gross income for the taxable year, amounts delivered to a qualifying institution pursuant to section 3333.128 of the Revised Code for the benefit of the taxpayer or the taxpayer's spouse or dependent.

(38) Deduct, to the extent not otherwise deducted or excluded in computing federal or Ohio adjusted gross income for the taxable year, amounts received under the Ohio adoption grant program pursuant to section 5180.451 of the Revised Code.

(39) Deduct, to the extent included in federal adjusted gross income, income attributable to amounts provided to a taxpayer for any of the purposes for which an exclusion would have been authorized under section 139 of the Internal Revenue Code if the train derailment near the city of East Palestine on February 3, 2023, had been a qualified disaster pursuant to that section, or to compensate for lost business resulting from that derailment, if such amounts are provided by any of the following:

(a) A federal, state, or local government agency;

(b) A railroad company, as that term is defined in section 5727.01 of the Revised Code;

(c) Any subsidiary, insurer, or agent of a railroad company or any related person.

Notwithstanding any provision to the contrary, the derailment is not required to meet the definition of a "qualified disaster" pursuant to section 139 of the Internal Revenue Code to qualify for the deduction under this section.

(40) Deduct, to the extent included in federal adjusted gross income, income attributable to loan repayments on behalf of the taxpayer under the rural practice incentive program under section 3333.135 of the Revised Code.

(41) Add any income taxes deducted in computing federal or Ohio adjusted gross income to the extent the income taxes were derived from income subject to a tax levied in another state or the District of Columbia when such tax was enacted for purposes of complying with internal revenue service notice 2020-75.

Notwithstanding any provision of the Revised Code to the contrary, the portion of the addition required by division (A)(41) of this section related to the apportioned business income of the pass-through entity shall be considered business income under division (B) of this section. Such addition is eligible for the deduction in division (A)(28) of this section, subject to the applicable dollar limitations, and the tax rate prescribed by division (A)(4)(a) of section 5747.02 of the Revised Code. The taxpayer shall provide, upon request of the tax commissioner, any documentation necessary to verify the portion of the addition that is business income under this division.

(42) Deduct amounts contributed to a homeownership savings account and calculated pursuant to divisions (B) and (C) of section 5747.85 of the Revised Code.

(43) If the taxpayer is the account owner of a homeownership savings account, upon withdrawal or transfer of funds from the account, or closure of the account containing funds that are not used for eligible expenses, add the amount of such funds not used for an eligible expense. The addition required under this division shall not exceed the sum of the amounts deducted by the taxpayer for such account under division (A)(42) of this section in any taxable year and the amount of any funds deposited in the account by a contributor other than the account owner. As used in division (A)(43) of this section, "homeownership savings account," "contributor," "account owner," and "eligible expenses" have the same meanings as in section 5747.85 of the Revised Code.

(44) Deduct, to the extent not otherwise deducted or excluded in computing federal or Ohio adjusted gross income during the taxable year, up to seven hundred fifty dollars of contributions the taxpayer makes to a pregnancy resource center that meets the criteria in division (B) of section 5180.71 of the Revised Code.

(B) "Business income" means income, including gain or loss, arising from transactions, activities, and sources in the regular course of a trade or business and includes income, gain, or loss from real property, tangible property, and intangible property if the acquisition, rental, management, and disposition of the property constitute integral parts of the regular course of a trade or business operation. "Business income" includes income, including gain or loss, from a partial or complete liquidation of a business, including, but not limited to, gain or loss from the sale or other disposition of goodwill or the sale of an equity or ownership interest in a business.

As used in this division, the "sale of an equity or ownership interest in a business" means sales to which either or both of the following apply:

(1) The sale is treated for federal income tax purposes as the sale of assets.

(2) The seller materially participated, as described in 26 C.F.R. 1.469-5T, in the activities of the business during the taxable year in which the sale occurs or during any of the five preceding taxable years.

(C) "Nonbusiness income" means all income other than business income and may include, but is not limited to, compensation, rents and royalties from real or tangible personal property, capital gains, interest, dividends and distributions, patent or copyright royalties, or lottery winnings, prizes, and awards.

(D) "Compensation" means any form of remuneration paid to an employee for personal services.

(E) "Fiduciary" means a guardian, trustee, executor, administrator, receiver, conservator, or any other person acting in any fiduciary capacity for any individual, trust, or estate.

(F) "Fiscal year" means an accounting period of twelve months ending on the last day of any month other than December.

(G) "Individual" means any natural person.

(H) "Internal Revenue Code" means the "Internal Revenue Code of 1986," 100 Stat. 2085, 26 U.S.C.A. 1, as amended.

(I) "Resident" means any of the following:

(1) An individual who is domiciled in this state, subject to section 5747.24 of the Revised Code;

(2) The estate of a decedent who at the time of death was domiciled in this state. The domicile tests of section 5747.24 of the Revised Code are not controlling for purposes of division (I)(2) of this section.

(3) A trust that, in whole or part, resides in this state. If only part of a trust resides in this state, the trust is a resident only with respect to that part.

For the purposes of division (I)(3) of this section:

(a) A trust resides in this state for the trust's current taxable year to the extent, as described in division (I)(3)(d) of this section, that the trust consists directly or indirectly, in whole or in part, of assets, net of any related liabilities, that were transferred, or caused to be transferred, directly or indirectly, to the trust by any of the following:

(i) A person, a court, or a governmental entity or instrumentality on account of the death of a decedent, but only if the trust is described in division (I)(3)(e)(i) or (ii) of this section;

(ii) A person who was domiciled in this state for the purposes of this chapter when the person directly or indirectly transferred assets to an irrevocable trust, but only if at least one of the trust's qualifying beneficiaries is domiciled in this state for the purposes of this chapter during all or some portion of the trust's current taxable year;

(iii) A person who was domiciled in this state for the purposes of this chapter when the trust document or instrument or part of the trust document or instrument became irrevocable, but only if at least one of the trust's qualifying beneficiaries is a resident domiciled in this state for the purposes of this chapter during all or some portion of the trust's current taxable year. If a trust document or instrument became irrevocable upon the death of a person who at the time of death was domiciled in this state for purposes of this chapter, that person is a person described in division (I)(3)(a)(iii) of this section.

(b) A trust is irrevocable to the extent that the transferor is not considered to be the owner of the net assets of the trust under sections 671 to 678 of the Internal Revenue Code.

(c) With respect to a trust other than a charitable lead trust, "qualifying beneficiary" has the same meaning as "potential current beneficiary" as defined in section 1361(e)(2) of the Internal Revenue Code, and with respect to a charitable lead trust "qualifying beneficiary" is any current, future, or contingent beneficiary, but with respect to any trust "qualifying beneficiary" excludes a person or a governmental entity or instrumentality to any of which a contribution would qualify for the charitable deduction under section 170 of the Internal Revenue Code.

(d) For the purposes of division (I)(3)(a) of this section, the extent to which a trust consists directly or indirectly, in whole or in part, of assets, net of any related liabilities, that were transferred directly or indirectly, in whole or part, to the trust by any of the sources enumerated in that division shall be ascertained by multiplying the fair market value of the trust's assets, net of related liabilities, by the qualifying ratio, which shall be computed as follows:

(i) The first time the trust receives assets, the numerator of the qualifying ratio is the fair market value of those assets at that time, net of any related liabilities, from sources enumerated in division (I)(3)(a) of this section. The denominator of the qualifying ratio is the fair market value of all the trust's assets at that time, net of any related liabilities.

(ii) Each subsequent time the trust receives assets, a revised qualifying ratio shall be computed. The numerator of the revised qualifying ratio is the sum of (1) the fair market value of the trust's assets immediately prior to the subsequent transfer, net of any related liabilities, multiplied by the qualifying ratio last computed without regard to the subsequent transfer, and (2) the fair market value of the subsequently transferred assets at the time transferred, net of any related liabilities, from sources enumerated in division (I)(3)(a) of this section. The denominator of the revised qualifying ratio is the fair market value of all the trust's assets immediately after the subsequent transfer, net of any related liabilities.

(iii) Whether a transfer to the trust is by or from any of the sources enumerated in division (I)(3)(a) of this section shall be ascertained without regard to the domicile of the trust's beneficiaries.

(e) For the purposes of division (I)(3)(a)(i) of this section:

(i) A trust is described in division (I)(3)(e)(i) of this section if the trust is a testamentary trust and the testator of that testamentary trust was domiciled in this state at the time of the testator's death for purposes of the taxes levied under Chapter 5731. of the Revised Code.

(ii) A trust is described in division (I)(3)(e)(ii) of this section if the transfer is a qualifying transfer described in any of divisions (I)(3)(f)(i) to (vi) of this section, the trust is an irrevocable inter vivos trust, and at least one of the trust's qualifying beneficiaries is domiciled in this state for purposes of this chapter during all or some portion of the trust's current taxable year.

(f) For the purposes of division (I)(3)(e)(ii) of this section, a "qualifying transfer" is a transfer of assets, net of any related liabilities, directly or indirectly to a trust, if the transfer is described in any of the following:

(i) The transfer is made to a trust, created by the decedent before the decedent's death and while the decedent was domiciled in this state for the purposes of this chapter, and, prior to the death of the decedent, the trust became irrevocable while the decedent was domiciled in this state for the purposes of this chapter.

(ii) The transfer is made to a trust to which the decedent, prior to the decedent's death, had directly or indirectly transferred assets, net of any related liabilities, while the decedent was domiciled in this state for the purposes of this chapter, and prior to the death of the decedent the trust became irrevocable while the decedent was domiciled in this state for the purposes of this chapter.

(iii) The transfer is made on account of a contractual relationship existing directly or indirectly between the transferor and either the decedent or the estate of the decedent at any time prior to the date of the decedent's death, and the decedent was domiciled in this state at the time of death for purposes of the taxes levied under Chapter 5731. of the Revised Code.

(iv) The transfer is made to a trust on account of a contractual relationship existing directly or indirectly between the transferor and another person who at the time of the decedent's death was domiciled in this state for purposes of this chapter.

(v) The transfer is made to a trust on account of the will of a testator who was domiciled in this state at the time of the testator's death for purposes of the taxes levied under Chapter 5731. of the Revised Code.

(vi) The transfer is made to a trust created by or caused to be created by a court, and the trust was directly or indirectly created in connection with or as a result of the death of an individual who, for purposes of the taxes levied under Chapter 5731. of the Revised Code, was domiciled in this state at the time of the individual's death.

(g) The tax commissioner may adopt rules to ascertain the part of a trust residing in this state.

(J) "Nonresident" means an individual or estate that is not a resident. An individual who is a resident for only part of a taxable year is a nonresident for the remainder of that taxable year.

(K) "Pass-through entity" has the same meaning as in section 5733.04 of the Revised Code.

(L) "Return" means the notifications and reports required to be filed pursuant to this chapter for the purpose of reporting the tax due and includes declarations of estimated tax when so required.

(M) "Taxable year" means the calendar year or the taxpayer's fiscal year ending during the calendar year, or fractional part thereof, upon which the adjusted gross income is calculated pursuant to this chapter.

(N) "Taxpayer" means any person subject to the tax imposed by section 5747.02 of the Revised Code or any pass-through entity that makes the election under division (D) of section 5747.08 of the Revised Code.

(O) "Dependents" means dependents as defined in the Internal Revenue Code.

(P) "Principal county of employment" means, in the case of a nonresident, the county within the state in which a taxpayer performs services for an employer or, if those services are performed in more than one county, the county in which the major portion of the services are performed.

(Q) As used in sections 5747.50 to 5747.55 of the Revised Code:

(1) "Subdivision" means any county, municipal corporation, park district, or township.

(2) "Essential local government purposes" includes all functions that any subdivision is required by general law to exercise, including like functions that are exercised under a charter adopted pursuant to the Ohio Constitution.

(R) "Overpayment" means any amount already paid that exceeds the figure determined to be the correct amount of the tax.

(S) "Taxable income" or "Ohio taxable income" applies only to estates and trusts, and means federal taxable income, as defined and used in the Internal Revenue Code, adjusted as follows:

(1) Add interest or dividends, net of ordinary, necessary, and reasonable expenses not deducted in computing federal taxable income, on obligations or securities of any state or of any political subdivision or authority of any state, other than this state and its subdivisions and authorities, but only to the extent that such net amount is not otherwise includible in Ohio taxable income and is described in either division (S)(1)(a) or (b) of this section:

(a) The net amount is not attributable to the S portion of an electing small business trust and has not been distributed to beneficiaries for the taxable year;

(b) The net amount is attributable to the S portion of an electing small business trust for the taxable year.

(2) Add interest or dividends, net of ordinary, necessary, and reasonable expenses not deducted in computing federal taxable income, on obligations of any authority, commission, instrumentality, territory, or possession of the United States to the extent that the interest or dividends are exempt from federal income taxes but not from state income taxes, but only to the extent that such net amount is not otherwise includible in Ohio taxable income and is described in either division (S)(1)(a) or (b) of this section;

(3) Add the amount of personal exemption allowed to the estate pursuant to section 642(b) of the Internal Revenue Code;

(4) Deduct interest or dividends, net of related expenses deducted in computing federal taxable income, on obligations of the United States and its territories and possessions or of any authority, commission, or instrumentality of the United States to the extent that the interest or dividends are exempt from state taxes under the laws of the United States, but only to the extent that such amount is included in federal taxable income and is described in either division (S)(1)(a) or (b) of this section;

(5) Deduct the amount of wages and salaries, if any, not otherwise allowable as a deduction but that would have been allowable as a deduction in computing federal taxable income for the taxable year, had the work opportunity tax credit allowed under sections 38, 51, and 52 of the Internal Revenue Code not been in effect, but only to the extent such amount relates either to income included in federal taxable income for the taxable year or to income of the S portion of an electing small business trust for the taxable year;

(6) Deduct any interest or interest equivalent, net of related expenses deducted in computing federal taxable income, on public obligations and purchase obligations, but only to the extent that such net amount relates either to income included in federal taxable income for the taxable year or to income of the S portion of an electing small business trust for the taxable year;

(7) Add any loss or deduct any gain resulting from sale, exchange, or other disposition of public obligations to the extent that such loss has been deducted or such gain has been included in computing either federal taxable income or income of the S portion of an electing small business trust for the taxable year;

(8) Except in the case of the final return of an estate, add any amount deducted by the taxpayer on both its Ohio estate tax return pursuant to section 5731.14 of the Revised Code, and on its federal income tax return in determining federal taxable income;

(9)(a) Deduct any amount included in federal taxable income solely because the amount represents a reimbursement or refund of expenses that in a previous year the decedent had deducted as an itemized deduction pursuant to section 63 of the Internal Revenue Code and applicable treasury regulations. The deduction otherwise allowed under division (S)(9)(a) of this section shall be reduced to the extent the reimbursement is attributable to an amount the taxpayer or decedent deducted under this section in any taxable year.

(b) Add any amount not otherwise included in Ohio taxable income for any taxable year to the extent that the amount is attributable to the recovery during the taxable year of any amount deducted or excluded in computing federal or Ohio taxable income in any taxable year, but only to the extent such amount has not been distributed to beneficiaries for the taxable year.

(10) Deduct any portion of the deduction described in section 1341(a)(2) of the Internal Revenue Code, for repaying previously reported income received under a claim of right, that meets both of the following requirements:

(a) It is allowable for repayment of an item that was included in the taxpayer's taxable income or the decedent's adjusted gross income for a prior taxable year and did not qualify for a credit under division (A) or (B) of section 5747.05 of the Revised Code for that year.

(b) It does not otherwise reduce the taxpayer's taxable income or the decedent's adjusted gross income for the current or any other taxable year.

(11) Add any amount claimed as a credit under section 5747.059 of the Revised Code to the extent that the amount satisfies either of the following:

(a) The amount was deducted or excluded from the computation of the taxpayer's federal taxable income as required to be reported for the taxpayer's taxable year under the Internal Revenue Code;

(b) The amount resulted in a reduction in the taxpayer's federal taxable income as required to be reported for any of the taxpayer's taxable years under the Internal Revenue Code.

(12) Deduct any amount, net of related expenses deducted in computing federal taxable income, that a trust is required to report as farm income on its federal income tax return, but only if the assets of the trust include at least ten acres of land satisfying the definition of "land devoted exclusively to agricultural use" under section 5713.30 of the Revised Code, regardless of whether the land is valued for tax purposes as such land under sections 5713.30 to 5713.38 of the Revised Code. If the trust is a pass-through entity investor, section 5747.231 of the Revised Code applies in ascertaining if the trust is eligible to claim the deduction provided by division (S)(12) of this section in connection with the pass-through entity's farm income.

Except for farm income attributable to the S portion of an electing small business trust, the deduction provided by division (S)(12) of this section is allowed only to the extent that the trust has not distributed such farm income.

(13) Add the net amount of income described in section 641(c) of the Internal Revenue Code to the extent that amount is not included in federal taxable income.

(14) Add or deduct the amount the taxpayer would be required to add or deduct under division (A)(17) or (18) of this section if the taxpayer's Ohio taxable income was computed in the same manner as an individual's Ohio adjusted gross income is computed under this section.

(15) Add, to the extent not otherwise included in computing taxable income or Ohio taxable income for any taxable year, the taxpayer's proportionate share of the amount of the tax levied under section 5747.38 of the Revised Code and paid by an electing pass-through entity for the taxable year.

(16) Add any income taxes deducted in computing federal taxable income or Ohio taxable income to the extent the income taxes were derived from income subject to a tax levied in another state or the District of Columbia when such tax was enacted for purposes of complying with internal revenue service notice 2020-75.

(T) "School district income" and "school district income tax" have the same meanings as in section 5748.01 of the Revised Code.

(U) As used in divisions (A)(7), (A)(8), (S)(6), and (S)(7) of this section, "public obligations," "purchase obligations," and "interest or interest equivalent" have the same meanings as in section 5709.76 of the Revised Code.

(V) "Limited liability company" means any limited liability company formed under former Chapter 1705. of the Revised Code as that chapter existed prior to February 11, 2022, Chapter 1706. of the Revised Code, or the laws of any other state.

(W) "Pass-through entity investor" means any person who, during any portion of a taxable year of a pass-through entity, is a partner, member, shareholder, or equity investor in that pass-through entity.

(X) "Banking day" has the same meaning as in section 1304.01 of the Revised Code.

(Y) "Month" means a calendar month.

(Z) "Quarter" means the first three months, the second three months, the third three months, or the last three months of the taxpayer's taxable year.

(AA)(1) "Modified business income" means the business income included in a trust's Ohio taxable income after such taxable income is first reduced by the qualifying trust amount, if any.

(2) "Qualifying trust amount" of a trust means capital gains and losses from the sale, exchange, or other disposition of equity or ownership interests in, or debt obligations of, a qualifying investee to the extent included in the trust's Ohio taxable income, but only if the following requirements are satisfied:

(a) The book value of the qualifying investee's physical assets in this state and everywhere, as of the last day of the qualifying investee's fiscal or calendar year ending immediately prior to the date on which the trust recognizes the gain or loss, is available to the trust.

(b) The requirements of section 5747.011 of the Revised Code are satisfied for the trust's taxable year in which the trust recognizes the gain or loss.

Any gain or loss that is not a qualifying trust amount is modified business income, qualifying investment income, or modified nonbusiness income, as the case may be.

(3) "Modified nonbusiness income" means a trust's Ohio taxable income other than modified business income, other than the qualifying trust amount, and other than qualifying investment income, as defined in section 5747.012 of the Revised Code, to the extent such qualifying investment income is not otherwise part of modified business income.

(4) "Modified Ohio taxable income" applies only to trusts, and means the sum of the amounts described in divisions (AA)(4)(a) to (c) of this section:

(a) The fraction, calculated under section 5747.013, and applying section 5747.231 of the Revised Code, multiplied by the sum of the following amounts:

(i) The trust's modified business income;

(ii) The trust's qualifying investment income, as defined in section 5747.012 of the Revised Code, but only to the extent the qualifying investment income does not otherwise constitute modified business income and does not otherwise constitute a qualifying trust amount.

(b) The qualifying trust amount multiplied by a fraction, the numerator of which is the sum of the book value of the qualifying investee's physical assets in this state on the last day of the qualifying investee's fiscal or calendar year ending immediately prior to the day on which the trust recognizes the qualifying trust amount, and the denominator of which is the sum of the book value of the qualifying investee's total physical assets everywhere on the last day of the qualifying investee's fiscal or calendar year ending immediately prior to the day on which the trust recognizes the qualifying trust amount. If, for a taxable year, the trust recognizes a qualifying trust amount with respect to more than one qualifying investee, the amount described in division (AA)(4)(b) of this section shall equal the sum of the products so computed for each such qualifying investee.

(c)(i) With respect to a trust or portion of a trust that is a resident as ascertained in accordance with division (I)(3)(d) of this section, its modified nonbusiness income.

(ii) With respect to a trust or portion of a trust that is not a resident as ascertained in accordance with division (I)(3)(d) of this section, the amount of its modified nonbusiness income satisfying the descriptions in divisions (B)(2) to (5) of section 5747.20 of the Revised Code, except as otherwise provided in division (AA)(4)(c)(ii) of this section. With respect to a trust or portion of a trust that is not a resident as ascertained in accordance with division (I)(3)(d) of this section, the trust's portion of modified nonbusiness income recognized from the sale, exchange, or other disposition of a debt interest in or equity interest in a section 5747.212 entity, as defined in section 5747.212 of the Revised Code, without regard to division (A) of that section, shall not be allocated to this state in accordance with section 5747.20 of the Revised Code but shall be apportioned to this state in accordance with division (B) of section 5747.212 of the Revised Code without regard to division (A) of that section.

If the allocation and apportionment of a trust's income under divisions (AA)(4)(a) and (c) of this section do not fairly represent the modified Ohio taxable income of the trust in this state, the alternative methods described in division (C) of section 5747.21 of the Revised Code may be applied in the manner and to the same extent provided in that section.

(5)(a) Except as set forth in division (AA)(5)(b) of this section, "qualifying investee" means a person in which a trust has an equity or ownership interest, or a person or unit of government the debt obligations of either of which are owned by a trust. For the purposes of division (AA)(2)(a) of this section and for the purpose of computing the fraction described in division (AA)(4)(b) of this section, all of the following apply:

(i) If the qualifying investee is a member of a qualifying controlled group on the last day of the qualifying investee's fiscal or calendar year ending immediately prior to the date on which the trust recognizes the gain or loss, then "qualifying investee" includes all persons in the qualifying controlled group on such last day.

(ii) If the qualifying investee, or if the qualifying investee and any members of the qualifying controlled group of which the qualifying investee is a member on the last day of the qualifying investee's fiscal or calendar year ending immediately prior to the date on which the trust recognizes the gain or loss, separately or cumulatively own, directly or indirectly, on the last day of the qualifying investee's fiscal or calendar year ending immediately prior to the date on which the trust recognizes the qualifying trust amount, more than fifty per cent of the equity of a pass-through entity, then the qualifying investee and the other members are deemed to own the proportionate share of the pass-through entity's physical assets which the pass-through entity directly or indirectly owns on the last day of the pass-through entity's calendar or fiscal year ending within or with the last day of the qualifying investee's fiscal or calendar year ending immediately prior to the date on which the trust recognizes the qualifying trust amount.

(iii) For the purposes of division (AA)(5)(a)(iii) of this section, "upper level pass-through entity" means a pass-through entity directly or indirectly owning any equity of another pass-through entity, and "lower level pass-through entity" means that other pass-through entity.

An upper level pass-through entity, whether or not it is also a qualifying investee, is deemed to own, on the last day of the upper level pass-through entity's calendar or fiscal year, the proportionate share of the lower level pass-through entity's physical assets that the lower level pass-through entity directly or indirectly owns on the last day of the lower level pass-through entity's calendar or fiscal year ending within or with the last day of the upper level pass-through entity's fiscal or calendar year. If the upper level pass-through entity directly and indirectly owns less than fifty per cent of the equity of the lower level pass-through entity on each day of the upper level pass-through entity's calendar or fiscal year in which or with which ends the calendar or fiscal year of the lower level pass-through entity and if, based upon clear and convincing evidence, complete information about the location and cost of the physical assets of the lower pass-through entity is not available to the upper level pass-through entity, then solely for purposes of ascertaining if a gain or loss constitutes a qualifying trust amount, the upper level pass-through entity shall be deemed as owning no equity of the lower level pass-through entity for each day during the upper level pass-through entity's calendar or fiscal year in which or with which ends the lower level pass-through entity's calendar or fiscal year. Nothing in division (AA)(5)(a)(iii) of this section shall be construed to provide for any deduction or exclusion in computing any trust's Ohio taxable income.

(b) With respect to a trust that is not a resident for the taxable year and with respect to a part of a trust that is not a resident for the taxable year, "qualifying investee" for that taxable year does not include a C corporation if both of the following apply:

(i) During the taxable year the trust or part of the trust recognizes a gain or loss from the sale, exchange, or other disposition of equity or ownership interests in, or debt obligations of, the C corporation.

(ii) Such gain or loss constitutes nonbusiness income.

(6) "Available" means information is such that a person is able to learn of the information by the due date plus extensions, if any, for filing the return for the taxable year in which the trust recognizes the gain or loss.

(BB) "Qualifying controlled group" has the same meaning as in section 5733.04 of the Revised Code.

(CC) "Related member" has the same meaning as in section 5733.042 of the Revised Code.

(DD)(1) For the purposes of division (DD) of this section:

(a) "Qualifying person" means any person other than a qualifying corporation.

(b) "Qualifying corporation" means any person classified for federal income tax purposes as an association taxable as a corporation, except either of the following:

(i) A corporation that has made an election under subchapter S, chapter one, subtitle A, of the Internal Revenue Code for its taxable year ending within, or on the last day of, the investor's taxable year;

(ii) A subsidiary that is wholly owned by any corporation that has made an election under subchapter S, chapter one, subtitle A of the Internal Revenue Code for its taxable year ending within, or on the last day of, the investor's taxable year.

(2) For the purposes of this chapter, unless expressly stated otherwise, no qualifying person indirectly owns any asset directly or indirectly owned by any qualifying corporation.

(EE) For purposes of this chapter and Chapter 5751. of the Revised Code:

(1) "Trust" does not include a qualified pre-income tax trust.

(2) A "qualified pre-income tax trust" is any pre-income tax trust that makes a qualifying pre-income tax trust election as described in division (EE)(3) of this section.

(3) A "qualifying pre-income tax trust election" is an election by a pre-income tax trust to subject to the tax imposed by section 5751.02 of the Revised Code the pre-income tax trust and all pass-through entities of which the trust owns or controls, directly, indirectly, or constructively through related interests, five per cent or more of the ownership or equity interests. The trustee shall notify the tax commissioner in writing of the election on or before April 15, 2006. The election, if timely made, shall be effective on and after January 1, 2006, and shall apply for all tax periods and tax years until revoked by the trustee of the trust.

(4) A "pre-income tax trust" is a trust that satisfies all of the following requirements:

(a) The document or instrument creating the trust was executed by the grantor before January 1, 1972;

(b) The trust became irrevocable upon the creation of the trust; and

(c) The grantor was domiciled in this state at the time the trust was created.

(FF) "Uniformed services" means all of the following:

(1) "Armed forces of the United States" as defined in section 5907.01 of the Revised Code;

(2) The commissioned corps of the national oceanic and atmospheric administration;

(3) The commissioned corps of the public health service.

(GG) "Taxable business income" means the amount by which an individual's business income that is included in federal adjusted gross income exceeds the amount of business income the individual is authorized to deduct under division (A)(28) of this section for the taxable year.

(HH) "Employer" does not include a franchisor with respect to the franchisor's relationship with a franchisee or an employee of a franchisee, unless the franchisor agrees to assume that role in writing or a court of competent jurisdiction determines that the franchisor exercises a type or degree of control over the franchisee or the franchisee's employees that is not customarily exercised by a franchisor for the purpose of protecting the franchisor's trademark, brand, or both. For purposes of this division, "franchisor" and "franchisee" have the same meanings as in 16 C.F.R. 436.1.

(II) "Modified adjusted gross income" means Ohio adjusted gross income plus any amount deducted under divisions (A)(28) and (34) of this section for the taxable year.

(JJ) "Qualifying Ohio educator" means an individual who, for a taxable year, qualifies as an eligible educator, as that term is defined in section 62 of the Internal Revenue Code, and who holds a certificate, license, or permit described in Chapter 3319. or section 3301.071 of the Revised Code.

(KK) "Professional employer organization," "professional employer organization agreement," and "professional employer organization reporting entity" have the same meanings as in section 4125.01 of the Revised Code.

(LL) "Alternate employer organization" and "alternate employer organization agreement" have the same meanings as in section 4133.01 of the Revised Code.

(MM) "Casino gaming" has the same meaning as in section 3772.01 of the Revised Code, "lottery sports gaming" has the same meaning as in section 3770.23 of the Revised Code, "sports gaming" has the same meaning as in section 3775.01 of the Revised Code, and "video lottery terminal" has the same meaning as in section 3770.21 of the Revised Code.

+ + + +
+ + + + +

Last updated March 30, 2026 at 9:13 AM

+ + +
+ + + +
+ + + +
+ +

Available Versions of this Section

+ + + +
+ + + + + + + +
+ + + + + +
+ + + + + +
+ +
 
+ +
+ +
+ + +
+
+ + + + + + \ No newline at end of file