Method

Control over reporting

These are the validation rules the data must satisfy before it is published. They run inside the load transaction, not in a test suite nobody blocks on: a critical failure rolls the load back and the previous vintage stays live.

Assertions evaluated
709
Last run 2026-09-19 04:54
Passing
702
99.0% of assertions
Failing
7
Published as findings, not suppressed
Controls defined
76
Each names its assertion, rationale and authority

The control suite

Severity determines what a failure does. Critical means the extract is unusable and the load is refused. High and moderate mean the finding is published alongside the data it concerns.

SBR-01

Status of budgetary resources foots

critical · blocks loadPass6/6 pass

Asserts. Obligations incurred plus unobligated balance equals total budgetary resources, within 0.1%.

Why. The status section of the SBR must equal the resources section. A break means the extract has dropped or double-counted a TAS.

Authority · OMB Circular A-136; DoD FMR Vol 6A

PassFY2021: obligations + unobligated is 0.0000% from total budgetary resources.
PassFY2022: obligations + unobligated is 0.0000% from total budgetary resources.
PassFY2023: obligations + unobligated is 0.0000% from total budgetary resources.
PassFY2024: obligations + unobligated is 0.0000% from total budgetary resources.
PassFY2025: obligations + unobligated is 0.0000% from total budgetary resources.
PassFY2026: obligations + unobligated is 0.0000% from total budgetary resources.
SBR-02

Budgetary resources components foot

highPass6/6 pass

Asserts. Appropriated authority, unobligated balance brought forward, adjustments, and other budgetary resources sum to total budgetary resources, within 0.5%.

Why. Proves the resources waterfall shown on the execution page is complete. Note that the source's other-budgetary-resources column already rolls up borrowing authority, contract authority and spending authority from offsetting collections; adding those separately double-counts them.

Authority · OMB Circular A-136

PassFY2021: resource components sum to within 0.0000% of the reported total.
PassFY2022: resource components sum to within 0.0000% of the reported total.
PassFY2023: resource components sum to within 0.0000% of the reported total.
PassFY2024: resource components sum to within 0.0000% of the reported total.
PassFY2025: resource components sum to within 0.0000% of the reported total.
PassFY2026: resource components sum to within 0.0000% of the reported total.
SBR-03

Outlays do not exceed resources

highPass6/6 pass

Asserts. Gross outlays are less than or equal to total budgetary resources.

Why. An outlay above available resources indicates a scope or sign error, not an Antideficiency event in this dataset.

Authority · 31 U.S.C. 1341 context; DoD FMR Vol 3

PassFY2021: gross outlays are 84.7% of total budgetary resources.
PassFY2022: gross outlays are 83.2% of total budgetary resources.
PassFY2023: gross outlays are 79.4% of total budgetary resources.
PassFY2024: gross outlays are 78.0% of total budgetary resources.
PassFY2025: gross outlays are 74.0% of total budgetary resources.
PassFY2026: gross outlays are 54.6% of total budgetary resources.
TIE-01

File A and File B obligations agree

highFail5/6 pass

Asserts. Obligations incurred per File B are within 0.5% of File A for the same scope, fiscal year and submission period.

Why. File A and File B are separate submissions of the same execution at different grain. A variance is a cross-system reconciliation finding to be published and explained, not a reason to withhold the data - so this control reports rather than blocks.

Authority · Treasury USSGL; OMB Circular A-136

PassFY2021: File B obligations are above File A by 0.243% (File A 1144.2B, File B 1146.9B, both FY2021P12).
FailFY2022: File B obligations are below File A by 1.632% (File A 1209.7B, File B 1189.9B, both FY2022P12).
PassFY2023: File B obligations are above File A by 0.001% (File A 1330.5B, File B 1330.5B, both FY2023P12).
PassFY2024: File B obligations are above File A by 0.135% (File A 1391.5B, File B 1393.4B, both FY2024P12).
PassFY2025: File B obligations are below File A by 0.028% (File A 1451.5B, File B 1451.1B, both FY2025P12).
PassFY2026: File B obligations are below File A by 0.021% (File A 1363.6B, File B 1363.3B, both FY2026P10). File B's 1,505 PARK-replicated rows are counted once.
FILEB-01

File B rows are distinct program activities

highFail5/6 pass

Asserts. No File B row repeats an obligation figure already published against another program activity for the same Treasury account, object class, funding source and emergency fund code.

Why. File B's activity identifier changed from program_activity_code to the Program Activity Reporting Key in FY2026 and the account's object-class figure is repeated against every PARK rather than split across them. Added up as published it counts the same money once per key. The extract counts a replicated group once; this control reports how many rows that was and what it was worth, so the repair is published rather than assumed.

Authority · OMB Circular A-11 program activity reporting; Treasury USAspending File B specification

PassFY2021: every File B row is a distinct program activity code at account, object class, funding source and emergency fund (22,382 rows, 12,027 distinct).
PassFY2022: every File B row is a distinct program activity code at account, object class, funding source and emergency fund (24,871 rows, 12,462 distinct).
PassFY2023: every File B row is a distinct program activity code at account, object class, funding source and emergency fund (25,477 rows, 13,004 distinct).
PassFY2024: every File B row is a distinct program activity code at account, object class, funding source and emergency fund (26,069 rows, 13,374 distinct).
PassFY2025: every File B row is a distinct program activity code at account, object class, funding source and emergency fund (26,799 rows, 13,728 distinct).
FailFY2026: 1,505 of 26,280 File B rows repeat a figure already published against another program activity reporting key for the same account and object class. Summing as published gives 1363.3B against 1363.3B at the real grain, 0.0% too high.
SCOPE-01

Department scope excludes non-Department agencies

critical · blocks loadPass1/1 pass

Asserts. No DOW-scope figure includes agency identifier code 011.

Why. File A carries five agency codes. Including the Executive Office of the President in a Department total overstates it materially.

Authority · Treasury Account Symbol structure; OMB agency codes

PassNo Department-scope figure includes agency code 011 (Executive Office of the President).
REC-01

Linkage cannot exceed the population

highPass6/6 pass

Asserts. File C account-linked contract obligations do not exceed award-file obligations for the same fiscal year.

Why. Linkage above 100% would mean the subset is larger than the set, indicating a scope mismatch between the two chains.

Authority · USASpending DATA Act submission model

PassFY2021: File C snapshot FY2021P06 (of 11 periods held) covers 5.9% of award-file obligations.
PassFY2022: File C snapshot FY2022P06 (of 11 periods held) covers 2.0% of award-file obligations.
PassFY2023: File C snapshot FY2023P12 (of 11 periods held) covers 4.0% of award-file obligations.
PassFY2024: File C snapshot FY2024P06 (of 11 periods held) covers 0.9% of award-file obligations.
PassFY2025: File C snapshot FY2025P09 (of 11 periods held) covers 2.6% of award-file obligations.
PassFY2026: File C snapshot FY2026P03 (of 8 periods held) covers 1.1% of award-file obligations.
VIN-01

Every load carries a vintage

critical · blocks loadPass1/1 pass

Asserts. Every current dm_load row has a non-null vintage and extraction timestamp.

Why. A figure without a vintage cannot be defended, reproduced, or compared against a later extract.

Authority · Internal reporting standard

PassEvery current load carries a vintage and an extraction timestamp.
PART-01

Incomplete fiscal years are flagged

highPass6/6 pass

Asserts. Any fiscal year whose submission period is not P12 is marked as partial.

Why. An in-progress year shown beside closed years reads as collapsed execution unless it is labelled.

Authority · Internal reporting standard

PassFY2021 (FY2021P12) is not flagged partial.
PassFY2022 (FY2022P12) is not flagged partial.
PassFY2023 (FY2023P12) is not flagged partial.
PassFY2024 (FY2024P12) is not flagged partial.
PassFY2025 (FY2025P12) is not flagged partial.
PassFY2026 (FY2026P10) is flagged partial.
DEF-01

Every definition carries an authority

moderatePass1/1 pass

Asserts. Every published definition names at least one authoritative source.

Why. A definitions registry without citations is an opinion, not a standard.

Authority · Internal reporting standard

Pass78 of 78 published definitions name an authority.
AWD-01

Dimensional cuts do not exceed the fiscal-year total

highPass48/48 pass

Asserts. For each dimension, the sum of the retained top-N buckets does not exceed that fiscal year's award total.

Why. Guards the double-counting failure mode where a record increments more than one bucket.

Authority · Internal reporting standard

PassFY2021 set_aside: retained buckets total 100.0% of the fiscal-year award total.
PassFY2021 state: retained buckets total 89.9% of the fiscal-year award total.
PassFY2021 sub_agency: retained buckets total 100.0% of the fiscal-year award total.
PassFY2021 extent_competed: retained buckets total 100.0% of the fiscal-year award total.
PassFY2021 naics: retained buckets total 75.7% of the fiscal-year award total.
PassFY2021 pricing: retained buckets total 100.0% of the fiscal-year award total.
PassFY2021 psc: retained buckets total 50.6% of the fiscal-year award total.
PassFY2021 recipient: retained buckets total 42.4% of the fiscal-year award total.
PassFY2022 set_aside: retained buckets total 100.0% of the fiscal-year award total.
PassFY2022 sub_agency: retained buckets total 100.0% of the fiscal-year award total.
PassFY2022 state: retained buckets total 89.7% of the fiscal-year award total.
PassFY2022 recipient: retained buckets total 40.3% of the fiscal-year award total.
PassFY2022 psc: retained buckets total 51.4% of the fiscal-year award total.
PassFY2022 pricing: retained buckets total 100.0% of the fiscal-year award total.
PassFY2022 naics: retained buckets total 76.9% of the fiscal-year award total.
PassFY2022 extent_competed: retained buckets total 100.0% of the fiscal-year award total.
PassFY2023 sub_agency: retained buckets total 100.0% of the fiscal-year award total.
PassFY2023 extent_competed: retained buckets total 100.0% of the fiscal-year award total.
PassFY2023 naics: retained buckets total 77.9% of the fiscal-year award total.
PassFY2023 pricing: retained buckets total 100.0% of the fiscal-year award total.
PassFY2023 psc: retained buckets total 50.4% of the fiscal-year award total.
PassFY2023 recipient: retained buckets total 43.3% of the fiscal-year award total.
PassFY2023 set_aside: retained buckets total 100.0% of the fiscal-year award total.
PassFY2023 state: retained buckets total 88.9% of the fiscal-year award total.
PassFY2024 extent_competed: retained buckets total 100.0% of the fiscal-year award total.
PassFY2024 sub_agency: retained buckets total 100.0% of the fiscal-year award total.
PassFY2024 state: retained buckets total 88.0% of the fiscal-year award total.
PassFY2024 set_aside: retained buckets total 100.0% of the fiscal-year award total.
PassFY2024 recipient: retained buckets total 39.6% of the fiscal-year award total.
PassFY2024 psc: retained buckets total 47.4% of the fiscal-year award total.
PassFY2024 pricing: retained buckets total 100.0% of the fiscal-year award total.
PassFY2024 naics: retained buckets total 76.3% of the fiscal-year award total.
PassFY2025 sub_agency: retained buckets total 100.0% of the fiscal-year award total.
PassFY2025 state: retained buckets total 89.0% of the fiscal-year award total.
PassFY2025 set_aside: retained buckets total 100.0% of the fiscal-year award total.
PassFY2025 recipient: retained buckets total 44.1% of the fiscal-year award total.
PassFY2025 psc: retained buckets total 52.6% of the fiscal-year award total.
PassFY2025 pricing: retained buckets total 100.0% of the fiscal-year award total.
PassFY2025 naics: retained buckets total 77.3% of the fiscal-year award total.
PassFY2025 extent_competed: retained buckets total 100.0% of the fiscal-year award total.
PassFY2026 state: retained buckets total 91.0% of the fiscal-year award total.
PassFY2026 sub_agency: retained buckets total 100.0% of the fiscal-year award total.
PassFY2026 set_aside: retained buckets total 100.0% of the fiscal-year award total.
PassFY2026 recipient: retained buckets total 48.3% of the fiscal-year award total.
PassFY2026 psc: retained buckets total 54.9% of the fiscal-year award total.
PassFY2026 pricing: retained buckets total 100.0% of the fiscal-year award total.
PassFY2026 naics: retained buckets total 80.3% of the fiscal-year award total.
PassFY2026 extent_competed: retained buckets total 100.0% of the fiscal-year award total.
ASSIST-01

Assistance dimensional cuts do not exceed the fiscal-year total

highFail29/30 pass

Asserts. For each dimension, the sum of the retained top-N buckets does not exceed that fiscal year's assistance total.

Why. Same double-counting guard as AWD-01 (contract awards), applied to the assistance dimension cuts.

Authority · Internal reporting standard

PassFY2021 recipient: retained buckets total 28.3% of the fiscal-year assistance total.
PassFY2021 cfda: retained buckets total 97.1% of the fiscal-year assistance total.
PassFY2021 assistance_type: retained buckets total 100.0% of the fiscal-year assistance total.
PassFY2021 sub_agency: retained buckets total 100.0% of the fiscal-year assistance total.
PassFY2021 state: retained buckets total 79.7% of the fiscal-year assistance total.
PassFY2022 recipient: retained buckets total 32.7% of the fiscal-year assistance total.
PassFY2022 cfda: retained buckets total 97.5% of the fiscal-year assistance total.
PassFY2022 assistance_type: retained buckets total 100.0% of the fiscal-year assistance total.
PassFY2022 sub_agency: retained buckets total 100.0% of the fiscal-year assistance total.
PassFY2022 state: retained buckets total 81.2% of the fiscal-year assistance total.
FailFY2023 cfda: retained buckets total 106.7% of the fiscal-year assistance total.
PassFY2023 state: retained buckets total 79.9% of the fiscal-year assistance total.
PassFY2023 sub_agency: retained buckets total 100.0% of the fiscal-year assistance total.
PassFY2023 recipient: retained buckets total 36.8% of the fiscal-year assistance total.
PassFY2023 assistance_type: retained buckets total 100.0% of the fiscal-year assistance total.
PassFY2024 cfda: retained buckets total 97.1% of the fiscal-year assistance total.
PassFY2024 state: retained buckets total 79.7% of the fiscal-year assistance total.
PassFY2024 sub_agency: retained buckets total 100.0% of the fiscal-year assistance total.
PassFY2024 assistance_type: retained buckets total 100.0% of the fiscal-year assistance total.
PassFY2024 recipient: retained buckets total 32.5% of the fiscal-year assistance total.
PassFY2025 recipient: retained buckets total 36.9% of the fiscal-year assistance total.
PassFY2025 sub_agency: retained buckets total 100.0% of the fiscal-year assistance total.
PassFY2025 state: retained buckets total 78.6% of the fiscal-year assistance total.
PassFY2025 cfda: retained buckets total 96.4% of the fiscal-year assistance total.
PassFY2025 assistance_type: retained buckets total 100.0% of the fiscal-year assistance total.
PassFY2026 state: retained buckets total 81.1% of the fiscal-year assistance total.
PassFY2026 assistance_type: retained buckets total 100.0% of the fiscal-year assistance total.
PassFY2026 cfda: retained buckets total 98.1% of the fiscal-year assistance total.
PassFY2026 recipient: retained buckets total 46.9% of the fiscal-year assistance total.
PassFY2026 sub_agency: retained buckets total 100.0% of the fiscal-year assistance total.
PROG-01

Every program measure names a program and a vintage

critical · blocks loadPass1/1 pass

Asserts. Every row in dm_program_fy carries a non-empty program_code that exists in dm_program_dim, and hangs off a dm_load row with a vintage.

Why. A program-level figure with no program identity or no vintage cannot be cited, corrected, or reproduced. This is the same provenance rule the rest of the site enforces by shape, asserted here because the program tables are the first cut keyed to a budget line rather than an account.

Authority · Internal reporting standard

PassEvery program measure names a program that exists in the registry, and carries a vintage.
PROG-02

No program obligation is apportioned across the accounts named on it

critical · blocks loadPass72/72 pass

Asserts. For every fiscal year, the sum of dm_program_account.obligation for a program does not exceed that program's fiscal-year obligation.

Why. federal_accounts_funding_this_award lists every account funding an award and states no split. Summing a program's obligations by account would fabricate an apportionment the source does not contain -- the specific error this table exists to make impossible.

Authority · Internal reporting standard

PassFY2021 program 180: named account sets total 97.4% of the program's obligations.
PassFY2021 program 178: named account sets total 79.6% of the program's obligations.
PassFY2021 program 493: named account sets total 100.0% of the program's obligations.
PassFY2021 program 198: named account sets total 85.0% of the program's obligations.
PassFY2021 program 223: named account sets total 99.7% of the program's obligations.
PassFY2021 program 387: named account sets total 89.9% of the program's obligations.
PassFY2021 program 390: named account sets total 26.6% of the program's obligations.
PassFY2021 program ZSF: named account sets total 63.3% of the program's obligations.
PassFY2021 program CAA: named account sets total 79.7% of the program's obligations.
PassFY2021 program 555: named account sets total 99.2% of the program's obligations.
PassFY2021 program 516: named account sets total 99.5% of the program's obligations.
PassFY2021 program 505: named account sets total 99.9% of the program's obligations.
PassFY2022 program 178: named account sets total 75.8% of the program's obligations.
PassFY2022 program 390: named account sets total 2.7% of the program's obligations.
PassFY2022 program 493: named account sets total 100.0% of the program's obligations.
PassFY2022 program 505: named account sets total 100.0% of the program's obligations.
PassFY2022 program 180: named account sets total 96.9% of the program's obligations.
PassFY2022 program 516: named account sets total 99.9% of the program's obligations.
PassFY2022 program 555: named account sets total 94.2% of the program's obligations.
PassFY2022 program ZSF: named account sets total 66.3% of the program's obligations.
PassFY2022 program CAA: named account sets total 84.5% of the program's obligations.
PassFY2022 program 387: named account sets total 69.1% of the program's obligations.
PassFY2022 program 223: named account sets total 99.8% of the program's obligations.
PassFY2022 program 198: named account sets total 84.5% of the program's obligations.
PassFY2023 program ZSF: named account sets total 79.1% of the program's obligations.
PassFY2023 program 198: named account sets total 77.1% of the program's obligations.
PassFY2023 program 180: named account sets total 8.6% of the program's obligations.
PassFY2023 program 178: named account sets total 66.0% of the program's obligations.
PassFY2023 program CAA: named account sets total 88.6% of the program's obligations.
PassFY2023 program 555: named account sets total 40.5% of the program's obligations.
PassFY2023 program 516: named account sets total 99.9% of the program's obligations.
PassFY2023 program 505: named account sets total 100.0% of the program's obligations.
PassFY2023 program 493: named account sets total 100.0% of the program's obligations.
PassFY2023 program 390: named account sets total 2.3% of the program's obligations.
PassFY2023 program 387: named account sets total 82.3% of the program's obligations.
PassFY2023 program 223: named account sets total 96.9% of the program's obligations.
PassFY2024 program 178: named account sets total 70.3% of the program's obligations.
PassFY2024 program 180: named account sets total 16.1% of the program's obligations.
PassFY2024 program 198: named account sets total 34.6% of the program's obligations.
PassFY2024 program 223: named account sets total 97.9% of the program's obligations.
PassFY2024 program ZSF: named account sets total 70.8% of the program's obligations.
PassFY2024 program 387: named account sets total 83.3% of the program's obligations.
PassFY2024 program 390: named account sets total 0.2% of the program's obligations.
PassFY2024 program 555: named account sets total 23.4% of the program's obligations.
PassFY2024 program CAA: named account sets total 91.1% of the program's obligations.
PassFY2024 program 505: named account sets total 10.5% of the program's obligations.
PassFY2024 program 516: named account sets total 37.9% of the program's obligations.
PassFY2024 program 493: named account sets total 99.9% of the program's obligations.
PassFY2025 program 223: named account sets total 99.8% of the program's obligations.
PassFY2025 program 555: named account sets total 7.6% of the program's obligations.
PassFY2025 program 390: named account sets total 0.5% of the program's obligations.
PassFY2025 program 493: named account sets total 99.1% of the program's obligations.
PassFY2025 program 516: named account sets total 78.1% of the program's obligations.
PassFY2025 program 505: named account sets total 2.3% of the program's obligations.
PassFY2025 program 178: named account sets total 68.2% of the program's obligations.
PassFY2025 program ZSF: named account sets total 59.5% of the program's obligations.
PassFY2025 program 180: named account sets total 11.2% of the program's obligations.
PassFY2025 program 198: named account sets total 7.5% of the program's obligations.
PassFY2025 program CAA: named account sets total 82.3% of the program's obligations.
PassFY2025 program 387: named account sets total 80.5% of the program's obligations.
PassFY2026 program 516: named account sets total 100.0% of the program's obligations.
PassFY2026 program 493: named account sets total 100.0% of the program's obligations.
PassFY2026 program 390: named account sets total 0.2% of the program's obligations.
PassFY2026 program 387: named account sets total 58.9% of the program's obligations.
PassFY2026 program 223: named account sets total 99.9% of the program's obligations.
PassFY2026 program 198: named account sets total 8.7% of the program's obligations.
PassFY2026 program 180: named account sets total 13.1% of the program's obligations.
PassFY2026 program 178: named account sets total 44.8% of the program's obligations.
PassFY2026 program ZSF: named account sets total 53.1% of the program's obligations.
PassFY2026 program CAA: named account sets total 69.4% of the program's obligations.
PassFY2026 program 555: named account sets total 3.5% of the program's obligations.
PassFY2026 program 505: named account sets total 0.0% of the program's obligations.
PROG-03

Account-traceable share travels with every program obligation total

highPass72/72 pass

Asserts. Every dm_program_fy row carries traceable_obligation and untraceable_obligation summing to its obligation, with traceable_pct consistent with them.

Why. A program obligation published without the share of it that names a funding account reads as reconciled when it is not. In FY2025 only 7.6% of F-35 obligations name an account, so the total alone is the misleading figure and the pair is the honest one.

Authority · Internal reporting standard

PassFY2021 program 505: 99.9% of obligations name a funding Treasury account.
PassFY2021 program 493: 100.0% of obligations name a funding Treasury account.
PassFY2021 program 390: 26.6% of obligations name a funding Treasury account.
PassFY2021 program 387: 89.9% of obligations name a funding Treasury account.
PassFY2021 program 223: 99.7% of obligations name a funding Treasury account.
PassFY2021 program 198: 85.8% of obligations name a funding Treasury account.
PassFY2021 program 180: 97.4% of obligations name a funding Treasury account.
PassFY2021 program 178: 82.6% of obligations name a funding Treasury account.
PassFY2021 program ZSF: 66.3% of obligations name a funding Treasury account.
PassFY2021 program CAA: 85.1% of obligations name a funding Treasury account.
PassFY2021 program 555: 99.2% of obligations name a funding Treasury account.
PassFY2021 program 516: 99.5% of obligations name a funding Treasury account.
PassFY2022 program 516: 99.9% of obligations name a funding Treasury account.
PassFY2022 program 493: 100.0% of obligations name a funding Treasury account.
PassFY2022 program 390: 2.7% of obligations name a funding Treasury account.
PassFY2022 program 387: 69.1% of obligations name a funding Treasury account.
PassFY2022 program 223: 99.8% of obligations name a funding Treasury account.
PassFY2022 program 198: 84.7% of obligations name a funding Treasury account.
PassFY2022 program 180: 96.9% of obligations name a funding Treasury account.
PassFY2022 program 178: 77.6% of obligations name a funding Treasury account.
PassFY2022 program ZSF: 68.0% of obligations name a funding Treasury account.
PassFY2022 program CAA: 91.0% of obligations name a funding Treasury account.
PassFY2022 program 555: 94.1% of obligations name a funding Treasury account.
PassFY2022 program 505: 100.0% of obligations name a funding Treasury account.
PassFY2023 program 516: 99.9% of obligations name a funding Treasury account.
PassFY2023 program 555: 40.5% of obligations name a funding Treasury account.
PassFY2023 program CAA: 96.8% of obligations name a funding Treasury account.
PassFY2023 program ZSF: 83.0% of obligations name a funding Treasury account.
PassFY2023 program 178: 67.1% of obligations name a funding Treasury account.
PassFY2023 program 180: 8.6% of obligations name a funding Treasury account.
PassFY2023 program 198: 77.2% of obligations name a funding Treasury account.
PassFY2023 program 223: 96.9% of obligations name a funding Treasury account.
PassFY2023 program 387: 82.3% of obligations name a funding Treasury account.
PassFY2023 program 390: 2.3% of obligations name a funding Treasury account.
PassFY2023 program 493: 100.0% of obligations name a funding Treasury account.
PassFY2023 program 505: 100.0% of obligations name a funding Treasury account.
PassFY2024 program ZSF: 72.3% of obligations name a funding Treasury account.
PassFY2024 program 178: 70.7% of obligations name a funding Treasury account.
PassFY2024 program 180: 16.1% of obligations name a funding Treasury account.
PassFY2024 program 198: 34.6% of obligations name a funding Treasury account.
PassFY2024 program 223: 97.9% of obligations name a funding Treasury account.
PassFY2024 program 387: 83.3% of obligations name a funding Treasury account.
PassFY2024 program 390: -0.2% of obligations name a funding Treasury account.
PassFY2024 program 493: 99.9% of obligations name a funding Treasury account.
PassFY2024 program 505: 10.5% of obligations name a funding Treasury account.
PassFY2024 program 516: 37.9% of obligations name a funding Treasury account.
PassFY2024 program 555: 23.4% of obligations name a funding Treasury account.
PassFY2024 program CAA: 97.2% of obligations name a funding Treasury account.
PassFY2025 program 390: -0.5% of obligations name a funding Treasury account.
PassFY2025 program 178: 68.0% of obligations name a funding Treasury account.
PassFY2025 program 387: 80.5% of obligations name a funding Treasury account.
PassFY2025 program 180: 11.2% of obligations name a funding Treasury account.
PassFY2025 program 223: 99.8% of obligations name a funding Treasury account.
PassFY2025 program 198: 7.6% of obligations name a funding Treasury account.
PassFY2025 program ZSF: 59.9% of obligations name a funding Treasury account.
PassFY2025 program CAA: 86.5% of obligations name a funding Treasury account.
PassFY2025 program 555: 7.6% of obligations name a funding Treasury account.
PassFY2025 program 516: 78.1% of obligations name a funding Treasury account.
PassFY2025 program 505: 2.3% of obligations name a funding Treasury account.
PassFY2025 program 493: 99.1% of obligations name a funding Treasury account.
PassFY2026 program 387: 58.9% of obligations name a funding Treasury account.
PassFY2026 program 493: 100.0% of obligations name a funding Treasury account.
PassFY2026 program 390: -0.2% of obligations name a funding Treasury account.
PassFY2026 program 180: 13.1% of obligations name a funding Treasury account.
PassFY2026 program 178: 44.8% of obligations name a funding Treasury account.
PassFY2026 program 198: 8.7% of obligations name a funding Treasury account.
PassFY2026 program 223: 99.9% of obligations name a funding Treasury account.
PassFY2026 program ZSF: 53.3% of obligations name a funding Treasury account.
PassFY2026 program CAA: 70.3% of obligations name a funding Treasury account.
PassFY2026 program 555: 3.5% of obligations name a funding Treasury account.
PassFY2026 program 516: 100.0% of obligations name a funding Treasury account.
PassFY2026 program 505: 0.0% of obligations name a funding Treasury account.
PROG-04

Accounts outside Department scope are disclosed, not dropped

highPass1/1 pass

Asserts. Where an account outside agency codes 097/021/017/057 is named on a program's obligations, dm_program_account records it in out_of_scope_accounts rather than omitting the row.

Why. SCOPE-01 keeps agency 011 out of Department budgetary totals, and that is right for budget. On the execution side, Foreign Military Sales trust dollars (011-8242) sit on the same F-35 contract actions as Department appropriations. Dropping those rows would hide why a program's obligations are not comparable to its appropriation.

Authority · Internal reporting standard

Pass11 account sets naming an out-of-scope account (1.59B) are disclosed with the accounts named.
PROG-05

In-progress program years are flagged period-to-date

moderatePass6/6 pass

Asserts. A program fiscal year is flagged partial exactly when it is the newest fiscal year in the current contract vintage.

Why. The newest year in the warehouse is always period-to-date. An unflagged partial year reads as a collapse in program spending rather than a year still being reported.

Authority · Internal reporting standard

PassFY2021 is not flagged period-to-date (newest year in the current contract vintage is FY2026).
PassFY2022 is not flagged period-to-date (newest year in the current contract vintage is FY2026).
PassFY2023 is not flagged period-to-date (newest year in the current contract vintage is FY2026).
PassFY2024 is not flagged period-to-date (newest year in the current contract vintage is FY2026).
PassFY2025 is not flagged period-to-date (newest year in the current contract vintage is FY2026).
PassFY2026 is flagged period-to-date (newest year in the current contract vintage is FY2026).
PROG-06

Program-dimension coverage of the contract file is published

highPass6/6 pass

Asserts. dm_program_coverage carries one row per fiscal year in which attributed and unattributed obligations sum to the fiscal-year total, and attributed_pct is consistent with them.

Why. FPDS records 'no acquisition program' as the explicit code 000 with description NONE rather than as a null, so a null test finds almost nothing and makes program tagging look complete. It is not: roughly three quarters of DoD contract dollars carry no program at all. Publishing the coverage denominator stops the program pages from implying they cover the file.

Authority · Internal reporting standard

PassFY2021: 18.4% of contract obligations carry an acquisition program code across 252 programs; the rest are FPDS code 000 (NONE).
PassFY2022: 19.2% of contract obligations carry an acquisition program code across 286 programs; the rest are FPDS code 000 (NONE).
PassFY2023: 24.8% of contract obligations carry an acquisition program code across 317 programs; the rest are FPDS code 000 (NONE).
PassFY2024: 19.9% of contract obligations carry an acquisition program code across 390 programs; the rest are FPDS code 000 (NONE).
PassFY2025: 25.3% of contract obligations carry an acquisition program code across 418 programs; the rest are FPDS code 000 (NONE).
PassFY2026: 24.7% of contract obligations carry an acquisition program code across 335 programs; the rest are FPDS code 000 (NONE).
EXH-01

The three-year restatement structure survives the load

critical · blocks loadPass10/10 pass

Asserts. For every fiscal year in dm_exhibit_program_fy, the number of distinct fy_role values equals the number of President's Budget books held that cover that year (a year is covered by the books for pb = fy, fy+1 and fy+2).

Why. Each -1 book restates three fiscal years in three roles: prior-year actuals, current-year enacted, budget-year request. A fiscal year therefore appears in three successive books with three different numbers, and the difference between them is the restatement history -- the one thing these exhibits carry that exists in no other source here. Any de-duplication that leaves a year with fewer roles than the books we hold would silently destroy it, so the load is blocked rather than published.

Authority · DoD Financial Management Regulation Volume 2A/2B, exhibit formats

PassFY2018 is restated in all 1 President's Budget book(s) that cover it (1 distinct role kept).
PassFY2019 is restated in all 2 President's Budget book(s) that cover it (2 distinct roles kept).
PassFY2020 is restated in all 3 President's Budget book(s) that cover it (3 distinct roles kept).
PassFY2021 is restated in all 3 President's Budget book(s) that cover it (3 distinct roles kept).
PassFY2022 is restated in all 3 President's Budget book(s) that cover it (3 distinct roles kept).
PassFY2023 is restated in all 3 President's Budget book(s) that cover it (3 distinct roles kept).
PassFY2024 is restated in all 3 President's Budget book(s) that cover it (3 distinct roles kept).
PassFY2025 is restated in all 3 President's Budget book(s) that cover it (3 distinct roles kept).
PassFY2026 is restated in all 2 President's Budget book(s) that cover it (2 distinct roles kept).
PassFY2027 is restated in all 1 President's Budget book(s) that cover it (1 distinct role kept).
EXH-02

Every fiscal-year role is derived from the book it was read from

critical · blocks loadPass1/1 pass

Asserts. For every row in dm_exhibit_line and dm_exhibit_program_fy, fy_role equals prior_actual when fiscal_year = pb_year - 2, enacted when fiscal_year = pb_year - 1, request when fiscal_year = pb_year, and other otherwise.

Why. The role is what turns a number into a claim: the same $6.9 billion is a request in one book, an enactment in the next and an actual in the third. If the role were inferred from a column heading it would drift with the heading, so it is derived arithmetically from the book year and this control asserts nothing overrode it.

Authority · Internal reporting standard

PassEvery exhibit row's role — actual, enacted or request — is derived from the book year it was read from.
EXH-03

Memo-only lines are flagged and never enter a total

critical · blocks loadPass1/1 pass

Asserts. No row of dm_exhibit_line with is_memo = false belongs to the P-1R exhibit or carries a cost type naming a memo non-add.

Why. The P-1R exhibit is National Guard and Reserve equipment already counted inside the P-1 lines, and R-1 rows outside total obligation authority are the same kind of restatement. Both are kept rather than dropped, because a total that silently omits an exhibit cannot be explained on the page; that only works if the flag is right, which is what this asserts.

Authority · DoD Financial Management Regulation Volume 2A, P-1R exhibit

Pass6820 memo rows (437.4B of reserve, guard and non-TOA restatement) are flagged and held out of every total.
EXH-04

The per-line rollup foots to the exhibit rows it came from

critical · blocks loadPass1/1 pass

Asserts. For every budget line, book year and fiscal year, dm_exhibit_program_fy.amount_k equals the sum of dm_exhibit_line.amount_k for the same key, within a thousandth of a percent.

Why. The rollup is what the page reads; the line rows are what the exhibit published. A rollup that does not foot to its own detail is a fabricated figure with a citation attached, which is worse than no figure, so the load is blocked.

Authority · Internal reporting standard

PassAll 46,195 rolled-up budget-line figures foot to the exhibit rows they came from.
EXH-05

Every fiscal-year figure names the exhibit column it came from

critical · blocks loadPass1/1 pass

Asserts. Every row of dm_exhibit_line carries a total_basis of total_column, sole_column or sum_of_components and a non-empty total_column label.

Why. The exhibits change shape between eras -- Base and OCO, Less Supplementals, Discretionary and Reconciliation -- and the broadest figure for a year is not always in the same place. Two rules pick it, and which one fired changes what the number means, so the basis is recorded per row and asserted here rather than assumed.

Authority · Internal reporting standard

PassEvery exhibit figure names the column it came from: 30,870 sole column, 19,561 total column, 188 sum of components.
EXH-06

The Treasury-account crosswalk is shaped and its coverage stated

critical · blocks loadPass1/1 pass

Asserts. Every non-null treasury_account in dm_exhibit_program is three digits, a hyphen and four digits, and the share of budget lines that resolved to one is reported.

Why. The exhibit account symbol (1506N) and the Treasury account symbol (017-1506) differ only by the organisation letter, and that crosswalk is the whole bridge from a budget line to the execution files. A malformed symbol would join to nothing and read as an execution gap rather than as a parsing failure, so the shape is asserted and the coverage published beside it.

Authority · Treasury Financial Manual, agency and account symbols

Pass100.0% of budget lines (3,063 of 3,063) resolve to a Treasury account, and every one is well formed.
EXH-07

Weapons-book linkage is disclosed, not implied

moderatePass1/1 pass

Asserts. Every row of dm_exhibit_weapon_link names a match_method and the evidence it rests on, and the share of the newest book's weapon systems that reached a budget line is reported.

Why. Neither the weapons book nor the -1 exhibits carry the other's key, so every link here is derived. Publishing derived links without the evidence would let a reader mistake a name-similarity match for a Department-published mapping. Systems that reached no budget line are counted rather than hidden, because that count is the honest measure of how far this crosswalk goes.

Authority · Program Acquisition Cost by Weapon System, DoD Comptroller

Pass61 of 86 weapon systems in the newest book reach a budget line (71%); every link names the evidence it rests on.
EXH-08

The exhibit request totals tie to the Department's own weapons book

critical · blocks loadPass14/14 pass

Asserts. For every President's Budget year whose Program Acquisition Cost by Weapon System book states an investment breakdown, the non-memo P-1 request lines total the procurement figure it publishes and the non-memo R-1 request lines total the RDT&E figure, each within half of the last printed digit.

Why. Every other control here asks whether the extract is consistent with itself. This one asks whether it is right: the weapons book totals the same request from the same submission, so a disagreement means the extract has gained or lost money, not that the sources differ. It is what caught the P-1 advance-procurement subtotal being counted alongside the by-year detail it summarises -- a $14.4 billion double count in PB2026 alone that no internal check could have seen.

Authority · Program Acquisition Cost by Weapon System, DoD Comptroller, Introduction

PassPB2020 procurement: the P1 lines total $143.1B, the figure the Department publishes in Program Acquisition Cost by Weapon System.
PassPB2020 rdte: the R1 lines total $104.3B, the figure the Department publishes in Program Acquisition Cost by Weapon System.
PassPB2021 rdte: the R1 lines total $106.6B, the figure the Department publishes in Program Acquisition Cost by Weapon System.
PassPB2021 procurement: the P1 lines total $136.9B, the figure the Department publishes in Program Acquisition Cost by Weapon System.
PassPB2022 rdte: the R1 lines total $112.0B, the figure the Department publishes in Program Acquisition Cost by Weapon System.
PassPB2022 procurement: the P1 lines total $133.6B, the figure the Department publishes in Program Acquisition Cost by Weapon System.
PassPB2023 procurement: the P1 lines total $145.9B, the figure the Department publishes in Program Acquisition Cost by Weapon System.
PassPB2023 rdte: the R1 lines total $130.1B, the figure the Department publishes in Program Acquisition Cost by Weapon System.
PassPB2024 rdte: the R1 lines total $145.0B, the figure the Department publishes in Program Acquisition Cost by Weapon System.
PassPB2024 procurement: the P1 lines total $170.0B, the figure the Department publishes in Program Acquisition Cost by Weapon System.
PassPB2025 rdte: the R1 lines total $143.2B, the figure the Department publishes in Program Acquisition Cost by Weapon System.
PassPB2025 procurement: the P1 lines total $167.5B, the figure the Department publishes in Program Acquisition Cost by Weapon System.
PassPB2026 procurement: the P1 lines total $205.2B, the figure the Department publishes in Program Acquisition Cost by Weapon System.
PassPB2026 rdte: the R1 lines total $179.1B, the figure the Department publishes in Program Acquisition Cost by Weapon System.
EXH-09

Every budget-line to program-code link names its evidence

critical · blocks loadPass1/1 pass

Asserts. Every row of dm_exhibit_program_link carries a match_method of designator or exact_name, non-empty evidence, and a budget line that exists in dm_exhibit_program.

Why. This crosswalk is the step that lets an appropriation be followed into a contract, which makes a wrong link worse than no link: it would put one program's contracts under another program's budget line. Nothing weaker than a shared type designator is accepted, an ambiguous designator produces no row, and every accepted row states what it rests on so a reader can reject one without distrusting the rest.

Authority · Internal reporting standard

Pass58 budget lines reach 19 of 40 FPDS acquisition program codes on a shared type designator or an identical name; nothing weaker is accepted, so a line with no link has none rather than a plausible one.
WBC-01

Each weapon system's cost table foots to its own printed total

highPass1/1 pass

Asserts. For every weapon system and fiscal year, the appropriation blocks extracted from the page sum to the total the page prints, within the greater of $0.6M and 0.2%. At least 97% of system-years must foot.

Why. The Program Acquisition Cost by Weapon System book prints a total beneath the appropriation blocks it is made of, so a page that does not foot has been read wrongly. The book changes shape between eras -- Base/OCO in PB2020-21, Discretionary/Mandatory in PB2026 -- and a column assigned to the wrong year publishes an OCO or reconciliation add as a whole year. A small number of pages are typeset so tightly that a figure cannot be assigned to a column at all; those are named rather than absorbed, which is why this is a threshold rather than an absolute.

Authority · Program Acquisition Cost by Weapon System, FY2020-FY2026 President's Budget

Pass1599 of 1613 weapon-system years foot to the total printed on the same page (99.1%). The 14 that do not are pages whose figures cannot be assigned to a column with confidence; they are kept and named rather than absorbed.
WBC-02

A weapon system's budget lines never exceed its published cost

highFail0/1 pass

Asserts. For each weapon system and book year, the non-memo request on every budget line tied to that system is compared with the system total the weapons book publishes. Neither direction is repaired; both are published on the system.

Why. This is the per-system form of EXH-08 and the only check on the weapon crosswalk that reaches outside the extract. A shortfall means the crosswalk has not found some of the system's spares, modification or support lines -- their titles carry no designator to tie back -- which is why no programme total on this site is presented as complete. An excess means a budget line is broader than the programme: the Next Generation Squad Weapon ammunition line funds ammunition the weapons-book page excludes, and one R-1 program element can fund several systems. The exhibits publish no split inside a line, so nothing here apportions one. The control exists to state the gap on the page beside the figures; it must never be satisfied by dropping links until the two numbers agree, which would be fitting the crosswalk to the answer.

Authority · Program Acquisition Cost by Weapon System; P-1 and R-1 exhibits, FY2020-FY2027

Fail45 of 57 system-years reach less than the Department publishes for the system — the crosswalk cannot tie back spares, modification and support lines whose titles name no system. 6 reach MORE, because a budget line can be broader than one programme (the NGSW ammunition line, one R-1 element funding several systems), and the exhibits publish no split inside a line for anything here to apportion. Both gaps are shown on the system, and neither is closed by dropping links until the figures agree.
WBC-03

Every search abbreviation is one the weapons book itself expands

moderatePass1/1 pass

Asserts. Every row in the alias table names a system that exists in the weapons book, quotes the phrase the expansion was read from, and was made by one of the two recorded methods.

Why. The alias table is what lets a search for 'JSF' find the F-35. Its risk is not arithmetic -- no figure is ever aggregated through it -- but that an abbreviation quietly starts meaning something the Department never wrote. So an alias exists only where the book expands it into the system's own name, sharing two or more significant words with it, and the sentence is carried on the row so a reader can reject one alias without distrusting the rest. The same evidence test the weapon crosswalk uses.

Authority · Program Acquisition Cost by Weapon System, FY2020-FY2026

Pass117 search abbreviations, every one of them a phrase the weapons book itself expands into the named system, quoted on the row. No synonym is invented here.
FILEC-01

The File C figure is never published without the snapshots it was chosen over

highPass1/1 pass

Asserts. Every fiscal year with a published File C linkage figure carries its full submission-period series, and the published period appears in that series flagged as chosen.

Why. The published linkage figure is the product of a choice: the warehouse holds four File C snapshots per fiscal year and the extract publishes the one with the most rows, on the reasoning that it is the most complete copy held. That is a defensible rule and it is still a rule. This control is a shape rather than a check, in the sense PROG-03 is: it makes it structurally impossible for a page to render the headline without the rejected alternatives beside it, because a reader who cannot see the alternatives cannot know the headline was chosen.

Authority · DATA Act File C (award financial), USASpending account-level submissions

PassAll 6 fiscal years carry the full File C submission-period series behind the figure published for them, with the published period flagged inside it. The headline cannot be rendered without the snapshots it was chosen over.
FILEC-02

How far the linkage figure moves between snapshots of the same year

highFail3/6 pass

Asserts. For each fiscal year, the linkage percentage is computed from every substantive File C snapshot held and the spread between the highest and lowest is published. A spread wider than a factor of two is reported as a finding.

Why. This control measures the size of the choice FILEC-01 exposes. Reading FY2022 at period 3 gives 1.4% linkage and at period 12 gives 11.6% — the same warehouse, the same year, an eight-fold difference. Where the spread is that wide, comparing one year's figure with another's is comparing two arbitrary picks, and a falling or rising line drawn through them measures the picks rather than the Department. The control does not fail because the data is wrong; it fails to stop the site asserting a trend the files cannot carry. It must never be satisfied by narrowing the series until the spread closes.

Authority · DATA Act File C (award financial); FPDS-NG contract actions

FailFY2021: reading a different File C snapshot of the same year puts linkage anywhere between 1.7% and 7.8% — a factor of 4.7. The published figure is one of 4 defensible answers, so no year-over-year trend in linkage is supportable from these files.
FailFY2022: reading a different File C snapshot of the same year puts linkage anywhere between 1.4% and 11.6% — a factor of 8.3. The published figure is one of 4 defensible answers, so no year-over-year trend in linkage is supportable from these files.
FailFY2023: reading a different File C snapshot of the same year puts linkage anywhere between 0.9% and 4.0% — a factor of 4.5. The published figure is one of 4 defensible answers, so no year-over-year trend in linkage is supportable from these files.
PassFY2024: 4 snapshots put linkage between 0.9% and 1.3%, within a factor of two of each other.
PassFY2025: only one substantive File C snapshot is held, so the linkage figure has no alternative to be compared against and no spread can be measured.
PassFY2026: only one substantive File C snapshot is held, so the linkage figure has no alternative to be compared against and no spread can be measured.
PB-01

Each display sheet foots to the total the workbook prints on it

critical · blocks loadPass42/42 pass

Asserts. For every exhibit sheet and fiscal year, the rows counted into total obligation authority plus the rows set aside as memo equal the 'Total of Displayed Rows' figure the workbook itself states for that column, to within one thousand dollars.

Why. The memo rules on these seven exhibits are not one rule -- P-1R is a whole memo exhibit, P-1 hides memo cost types and an advance-procurement subtotal inside Add rows, R-1 and O-1 put rows outside total obligation authority, C-1 publishes a reconciliation breakout of projects already in the year sheet, and M-1's identically-flagged rows are negative reimbursable offsets the published total includes. Argued one at a time they are assertions. Checked against the footer the Department prints on each sheet they are verifiable: a rule that drops a row it should not, or keeps one it should not, stops matching immediately. Twenty-eight sheet-years across the FY2026 and FY2027 books tie exactly, and the single failure found while building this control was a real row -- $24K on account 5286A with every line-item column blank -- that a 'skip rows with no line item' guard was silently discarding.

Authority · DoD Comptroller "-1" display workbooks, 'Total of Displayed Rows' line

PassPB2026 R1 Exhibit R-1, FY2024: the published lines sum to $0.000M from the sheet's own published total.
PassPB2026 P1R Exhibit P-1R, FY2024: the published lines sum to $0.000M from the sheet's own published total.
PassPB2026 M1 Exhibit M-1, FY2024: the published lines sum to $0.000M from the sheet's own published total.
PassPB2026 O1 OM Title plus Indefinite, FY2024: the published lines sum to $0.000M from the sheet's own published total.
PassPB2026 P1 Exhibit P-1, FY2024: the published lines sum to $0.000M from the sheet's own published total.
PassPB2026 RF1 RF-1 Title, FY2024: the published lines sum to $0.000M from the sheet's own published total.
PassPB2026 C1 FY 2024, FY2024: the published lines sum to $0.000M from the sheet's own published total.
PassPB2027 C1 FY 2025, FY2025: the published lines sum to $0.000M from the sheet's own published total.
PassPB2026 M1 Exhibit M-1, FY2025: the published lines sum to $0.000M from the sheet's own published total.
PassPB2027 M1 Exhibit M-1, FY2025: the published lines sum to $0.000M from the sheet's own published total.
PassPB2026 P1 Exhibit P-1, FY2025: the published lines sum to $0.000M from the sheet's own published total.
PassPB2027 O1 OM Title plus Indefinite, FY2025: the published lines sum to $0.000M from the sheet's own published total.
PassPB2027 P1R Exhibit P-1R, FY2025: the published lines sum to $0.000M from the sheet's own published total.
PassPB2026 P1R Exhibit P-1R, FY2025: the published lines sum to $0.000M from the sheet's own published total.
PassPB2027 P1 Exhibit P-1, FY2025: the published lines sum to $0.000M from the sheet's own published total.
PassPB2026 R1 Exhibit R-1, FY2025: the published lines sum to $0.000M from the sheet's own published total.
PassPB2026 C1 FY 2025, FY2025: the published lines sum to $0.000M from the sheet's own published total.
PassPB2027 RF1 RF-1 Title, FY2025: the published lines sum to $0.000M from the sheet's own published total.
PassPB2026 O1 OM Title plus Indefinite, FY2025: the published lines sum to $0.000M from the sheet's own published total.
PassPB2026 RF1 RF-1 Title, FY2025: the published lines sum to $0.000M from the sheet's own published total.
PassPB2027 R1 Exhibit R-1, FY2025: the published lines sum to $0.000M from the sheet's own published total.
PassPB2027 M1 Exhibit M-1, FY2026: the published lines sum to $0.000M from the sheet's own published total.
PassPB2027 P1R Exhibit P-1R, FY2026: the published lines sum to $0.000M from the sheet's own published total.
PassPB2027 P1 Exhibit P-1, FY2026: the published lines sum to $0.000M from the sheet's own published total.
PassPB2026 O1 OM Title plus Indefinite, FY2026: the published lines sum to $0.000M from the sheet's own published total.
PassPB2026 P1 Exhibit P-1, FY2026: the published lines sum to $0.000M from the sheet's own published total.
PassPB2026 P1R Exhibit P-1R, FY2026: the published lines sum to $0.000M from the sheet's own published total.
PassPB2026 R1 Exhibit R-1, FY2026: the published lines sum to $0.000M from the sheet's own published total.
PassPB2026 C1 FY 2026, FY2026: the published lines sum to $0.000M from the sheet's own published total.
PassPB2026 RF1 RF-1 Title, FY2026: the published lines sum to $0.000M from the sheet's own published total.
PassPB2027 C1 FY 2026, FY2026: the published lines sum to $0.000M from the sheet's own published total.
PassPB2026 M1 Exhibit M-1, FY2026: the published lines sum to $0.000M from the sheet's own published total.
PassPB2027 O1 OM Title plus Indefinite, FY2026: the published lines sum to $0.000M from the sheet's own published total.
PassPB2027 RF1 RF-1 Title, FY2026: the published lines sum to $0.000M from the sheet's own published total.
PassPB2027 R1 Exhibit R-1, FY2026: the published lines sum to $0.000M from the sheet's own published total.
PassPB2027 C1 FY 2027, FY2027: the published lines sum to $0.000M from the sheet's own published total.
PassPB2027 RF1 RF-1 Title, FY2027: the published lines sum to $0.000M from the sheet's own published total.
PassPB2027 P1 Exhibit P-1, FY2027: the published lines sum to $0.000M from the sheet's own published total.
PassPB2027 O1 OM Title plus Indefinite, FY2027: the published lines sum to $0.000M from the sheet's own published total.
PassPB2027 M1 Exhibit M-1, FY2027: the published lines sum to $0.000M from the sheet's own published total.
PassPB2027 P1R Exhibit P-1R, FY2027: the published lines sum to $0.000M from the sheet's own published total.
PassPB2027 R1 Exhibit R-1, FY2027: the published lines sum to $0.000M from the sheet's own published total.
PB-02

Discretionary and mandatory foot to the year's total

critical · blocks loadPass42/42 pass

Asserts. For every exhibit and fiscal year, the sum of the discretionary and mandatory figures equals the sum of the totals, to within one thousand dollars.

Why. Discretionary is derived by subtracting the mandatory columns from the year's total rather than by adding the columns that look discretionary. Several exhibits publish alternative measures of one figure side by side -- C-1 prints Authorization, Authorization of Appropriation, Appropriation and Total Obligation Authority for the same project -- and adding those as components put every construction project's discretionary figure at three times its own total. This control is what stops that class of error returning: subtraction cannot produce a split that does not foot, so a failure here means the total column itself was picked wrongly.

Authority · DoD Comptroller "-1" display workbooks

PassPB2026 C1 FY2024: discretionary plus mandatory is $0.000M from the total.
PassPB2026 RF1 FY2024: discretionary plus mandatory is $0.000M from the total.
PassPB2026 R1 FY2024: discretionary plus mandatory is $0.000M from the total.
PassPB2026 P1R FY2024: discretionary plus mandatory is $0.000M from the total.
PassPB2026 P1 FY2024: discretionary plus mandatory is $0.000M from the total.
PassPB2026 O1 FY2024: discretionary plus mandatory is $0.000M from the total.
PassPB2026 M1 FY2024: discretionary plus mandatory is $0.000M from the total.
PassPB2026 C1 FY2025: discretionary plus mandatory is $0.000M from the total.
PassPB2026 M1 FY2025: discretionary plus mandatory is $0.000M from the total.
PassPB2026 O1 FY2025: discretionary plus mandatory is $0.000M from the total.
PassPB2026 P1 FY2025: discretionary plus mandatory is $0.000M from the total.
PassPB2026 P1R FY2025: discretionary plus mandatory is $0.000M from the total.
PassPB2026 R1 FY2025: discretionary plus mandatory is $0.000M from the total.
PassPB2026 RF1 FY2025: discretionary plus mandatory is $0.000M from the total.
PassPB2027 C1 FY2025: discretionary plus mandatory is $0.000M from the total.
PassPB2027 M1 FY2025: discretionary plus mandatory is $0.000M from the total.
PassPB2027 O1 FY2025: discretionary plus mandatory is $0.000M from the total.
PassPB2027 P1 FY2025: discretionary plus mandatory is $0.000M from the total.
PassPB2027 P1R FY2025: discretionary plus mandatory is $0.000M from the total.
PassPB2027 R1 FY2025: discretionary plus mandatory is $0.000M from the total.
PassPB2027 RF1 FY2025: discretionary plus mandatory is $0.000M from the total.
PassPB2027 P1 FY2026: discretionary plus mandatory is $0.000M from the total.
PassPB2026 C1 FY2026: discretionary plus mandatory is $0.000M from the total.
PassPB2027 C1 FY2026: discretionary plus mandatory is $0.000M from the total.
PassPB2026 M1 FY2026: discretionary plus mandatory is $0.000M from the total.
PassPB2027 R1 FY2026: discretionary plus mandatory is $0.000M from the total.
PassPB2026 O1 FY2026: discretionary plus mandatory is $0.000M from the total.
PassPB2027 M1 FY2026: discretionary plus mandatory is $0.000M from the total.
PassPB2026 P1 FY2026: discretionary plus mandatory is $0.000M from the total.
PassPB2027 P1R FY2026: discretionary plus mandatory is $0.000M from the total.
PassPB2026 P1R FY2026: discretionary plus mandatory is $0.000M from the total.
PassPB2027 O1 FY2026: discretionary plus mandatory is $0.000M from the total.
PassPB2026 R1 FY2026: discretionary plus mandatory is $0.000M from the total.
PassPB2027 RF1 FY2026: discretionary plus mandatory is $0.000M from the total.
PassPB2026 RF1 FY2026: discretionary plus mandatory is $0.000M from the total.
PassPB2027 RF1 FY2027: discretionary plus mandatory is $0.000M from the total.
PassPB2027 C1 FY2027: discretionary plus mandatory is $0.000M from the total.
PassPB2027 M1 FY2027: discretionary plus mandatory is $0.000M from the total.
PassPB2027 O1 FY2027: discretionary plus mandatory is $0.000M from the total.
PassPB2027 P1 FY2027: discretionary plus mandatory is $0.000M from the total.
PassPB2027 P1R FY2027: discretionary plus mandatory is $0.000M from the total.
PassPB2027 R1 FY2027: discretionary plus mandatory is $0.000M from the total.
PB-03

P-1R never enters a counted total

highPass1/1 pass

Asserts. No P-1R row is counted into total obligation authority in any book or fiscal year.

Why. The P-1R exhibit is National Guard and Reserve equipment already carried inside the P-1 lines. It is retained rather than dropped so its absence from a total can be explained on the page, but a single unflagged row would add its money to procurement twice. The FY2027 book puts $6.6B in this exhibit.

Authority · DoD Comptroller P-1R exhibit, cost types marked (MEMO NON ADD)

PassNo P-1R row is counted into a total. The exhibit holds $9.7B of equipment already inside the P-1 lines.
PB-04

Every C-1 reconciliation project is inside its year sheet, not beside it

highPass2/2 pass

Asserts. Every project on a C-1 Mandatory Reconciliation sheet appears in that fiscal year's C-1 sheet, and the year sheet's amount is at least the reconciliation amount.

Why. The reconciliation sheets look like additional money and are not: on the FY2027 book all 25 projects appear in the FY 2027 sheet, 19 at the identical amount and 6 as part of a larger project total. Adding the sheet would have counted $2.68B twice in FY2027 and $4.90B in FY2026. This control is the evidence for treating those sheets as a breakout, and it fails the moment a future book stops behaving that way -- which is exactly when the rule would need revisiting.

Authority · DoD Comptroller C-1 display workbook, year sheets and Mandatory Reconciliation sheets

PassPB2027 FY2026: 40 of 40 reconciliation projects carrying $4.90B are inside the year sheet at no less than the reconciliation amount, so the sheet is a breakout rather than money beside it.
PassPB2027 FY2027: 24 of 24 reconciliation projects carrying $2.68B are inside the year sheet at no less than the reconciliation amount, so the sheet is a breakout rather than money beside it.
PB-05

Every counted display row resolves to a Treasury account

moderatePass2/2 pass

Asserts. Every row counted into total obligation authority carries an exhibit account symbol that resolves to a Treasury agency and account.

Why. The account symbol is the only key these display tables share with the execution files, and the organisation letter is the whole of the difference between '2020A' and '021-2020'. A row that does not resolve is a row the request can be read for but never traced to what was obligated against it, so the count is published rather than left as a silent gap in every crosswalk downstream.

Authority · DoD Comptroller "-1" display workbooks; Treasury Account Symbol structure

PassPB2026: 8251 of 8251 counted rows resolve their exhibit account symbol to a Treasury agency and account.
PassPB2027: 8314 of 8314 counted rows resolve their exhibit account symbol to a Treasury agency and account.
EXEC-01

File B detail adds up to the obligation total the site publishes

critical · blocks loadPass6/6 pass

Asserts. For every fiscal year, the sum of obligations across the account-level File B extract equals the Department obligation total already published on the execution page, to within 0.01%.

Why. A detail table that does not foot to its own total is worse than no detail table: every drill-down built on it would quietly disagree with the figure printed above it, and a reader has no way to tell which of the two is wrong. The detail and the total are produced by the same grain and replication rules, so any difference here means those rules were applied twice differently.

Authority · USASpending File B; DoD FY2025 Agency Financial Report

PassFY2021: account-level File B detail is 0.0000% from the Department obligation total the execution page publishes.
PassFY2022: account-level File B detail is 0.0000% from the Department obligation total the execution page publishes.
PassFY2023: account-level File B detail is 0.0000% from the Department obligation total the execution page publishes.
PassFY2024: account-level File B detail is 0.0000% from the Department obligation total the execution page publishes.
PassFY2025: account-level File B detail is 0.0000% from the Department obligation total the execution page publishes.
PassFY2026: account-level File B detail is 0.0000% from the Department obligation total the execution page publishes.
EXEC-02

Every detail row is counted once

critical · blocks loadPass3/3 pass

Asserts. For each fiscal year carrying detail, the sum of obligations across detail rows equals that year's obligation total, to within 0.01%.

Why. From the FY2026 submission File B identifies a program activity by reporting key rather than by code, and where an account holds several keys it repeats the account's object-class figure against each one instead of splitting it. At detail grain that defect is worse than in a total: a drill-down would show the same money under four different keys and a reader would have no way to know. Rows that differ only by reporting key and repeat one figure become one row, and this control is what proves the collapse neither lost nor duplicated a dollar.

Authority · USASpending File B, FY2026 P09 submission

PassFY2024: 25,808 detail rows (0 PARK-replicated source rows counted once) sum to within 0.0000% of the year's obligations.
PassFY2025: 26,137 detail rows (0 PARK-replicated source rows counted once) sum to within 0.0000% of the year's obligations.
PassFY2026: 24,352 detail rows (1,505 PARK-replicated source rows counted once) sum to within 0.0000% of the year's obligations.
EXEC-03

How much of the year expires on 30 September

moderatePass6/6 pass

Asserts. For each fiscal year, obligations are split by period of availability and the share whose availability could not be resolved is published; more than 1% unresolved is reported.

Why. Annual appropriations expire on 30 September and cannot be obligated afterwards; multi-year and no-year authority can. It is the single most decision-relevant attribute in the file in September and it is not published as a field -- it has to be read off the beginning and ending periods of availability. An obligation rate that mixes the two answers no question at all, so the split is measured and the unresolved remainder is stated rather than folded into either side.

Authority · 31 U.S.C. 1502; DoD FMR Volume 3

PassFY2021: $592.0B of obligations are on annual authority that expires 30 September; 0.00% of the year could not have its period of availability resolved.
PassFY2022: $612.3B of obligations are on annual authority that expires 30 September; 0.00% of the year could not have its period of availability resolved.
PassFY2023: $677.3B of obligations are on annual authority that expires 30 September; 0.00% of the year could not have its period of availability resolved.
PassFY2024: $740.6B of obligations are on annual authority that expires 30 September; 0.00% of the year could not have its period of availability resolved.
PassFY2025: $748.6B of obligations are on annual authority that expires 30 September; 0.00% of the year could not have its period of availability resolved.
PassFY2026: $682.7B of obligations are on annual authority that expires 30 September; 0.00% of the year could not have its period of availability resolved.
TIME-01

The day-by-day curve foots to the contract obligation total

critical · blocks loadPass6/6 pass

Asserts. For every fiscal year, the sum of the daily contract obligation curve equals the contract obligation total published for that year, to within 0.01%.

Why. The daily curve is the spine of every pace comparison, year-end share and September projection on the execution page. If it does not foot to the total the site already publishes, every figure drawn from it is wrong by the same amount and none of them would look wrong on their own.

Authority · USASpending contract award files (FPDS-NG)

PassFY2021: the day-by-day curve sums to within 0.0000% of the contract obligation total, through day 365.
PassFY2022: the day-by-day curve sums to within 0.0000% of the contract obligation total, through day 365.
PassFY2023: the day-by-day curve sums to within 0.0000% of the contract obligation total, through day 365.
PassFY2024: the day-by-day curve sums to within 0.0000% of the contract obligation total, through day 366.
PassFY2025: the day-by-day curve sums to within 0.0000% of the contract obligation total, through day 365.
PassFY2026: the day-by-day curve sums to within 0.0000% of the contract obligation total, through day 308 (year in progress).
TIME-02

Every signal names its baseline, its evidence and its method

highPass1/1 pass

Asserts. Every execution signal is computed against at least three of its own category's fiscal years, and every one carries the evidence it was computed from and the method that produced it.

Why. A deviation measured against one or two prior years is an anecdote with a z-score printed on it. Three is the minimum at which a median means anything, and a signal that cannot name the years behind it cannot be argued with. The deviation is also capped: a category whose prior years are nearly identical has a scale near zero, and dividing by it produced a z of 416 -- a number that says nothing except that the denominator was small. A capped value means far outside the category's own history, and the page says so rather than printing it as a measurement.

Authority · Robust statistics: median and scaled median absolute deviation

Pass1221 of 1221 signals are computed against at least three of the category's own years and every one names its evidence and method; 5 report a deviation at the cap, which means far outside the category’s own history rather than a measurement.
TIME-03

The year in progress is marked, everywhere

highPass6/6 pass

Asserts. Every fiscal year records whether it is complete, the last action date observed, and how many whole fiscal months it covers, and the completeness flag agrees with the observed day count.

Why. The live fiscal year is shorter than the years it is compared with. Reading its total beside a closed year's shows a collapse that is only the calendar, and it is the easiest mistake on the site to make silently. Every pace comparison here runs over whole months only, and this control is what guarantees the page has the information it needs to say so.

Authority · USASpending contract award files; submission period conventions

PassFY2021: complete, last action 2021-09-30, 12 whole fiscal months observed.
PassFY2022: complete, last action 2022-09-30, 12 whole fiscal months observed.
PassFY2023: complete, last action 2023-09-30, 12 whole fiscal months observed.
PassFY2024: complete, last action 2024-09-30, 12 whole fiscal months observed.
PassFY2025: complete, last action 2025-09-30, 12 whole fiscal months observed.
PassFY2026: in progress, last action 2026-08-04, 7 whole fiscal months observed.
TIME-04

The extent of the contract file is derived from where the data is, not from its latest date

critical · blocks loadPass6/6 pass

Asserts. Every fiscal year publishes a reporting frontier no later than its last action date, the count of whole months observed agrees with whether the year is complete, and fewer than 20% of the year's actions fall after the frontier.

Why. The FY2026 extract runs to 2026-08-04 and is substantially complete only to the end of April: October through April carry 280,000 to 400,000 actions a month, May carries 75,000, and June, July and August carry 180 between them. Taking the maximum action date as the extent of the file was wrong in three ways at once — the cumulative curve ran flat for three months, the year reported ten whole months observed where it had seven, and every pace comparison and September projection measured seven real months of the live year against ten of every prior year. That put each sub-agency's pace at 68–99% of its own norm when the true figures are 104–127%: not a cosmetic error but the opposite conclusion, on a page built to support a decision. The frontier is the end of the last fiscal month, counting consecutively from October, that carries at least half the median month's action count. Consecutively, because a gap in the middle of a year is a hole in the data rather than the end of it, and treating it as the end would hide the hole. The 20% bound on the excluded tail is what distinguishes cutting off the end of a file from cutting into it.

Authority · USASpending contract award files (FPDS-NG); warehouse vintage extraction dates

PassFY2021: 12 whole months observed, frontier 2021-09-30, last action dated 2021-09-30; nothing falls after it.
PassFY2022: 12 whole months observed, frontier 2022-09-30, last action dated 2022-09-30; nothing falls after it.
PassFY2023: 12 whole months observed, frontier 2023-09-30, last action dated 2023-09-30; nothing falls after it.
PassFY2024: 12 whole months observed, frontier 2024-09-30, last action dated 2024-09-30; nothing falls after it.
PassFY2025: 12 whole months observed, frontier 2025-09-30, last action dated 2025-09-30; nothing falls after it.
PassFY2026: 7 whole months observed, frontier 2026-04-30, last action dated 2026-08-04; 75,264 straggler actions (2.98% of the year, $9038.9M) fall after it and are excluded from every pace and projection.
CUR-01

How far behind the published record this load is

highPass2/2 pass

Asserts. The submission period held by the account files is the newest monthly period revealed on the public submission calendar. Where it is not, the gap in periods is published.

Why. This is not a check on the extract but on its age, and it is the one the rest of the execution page depends on: a page about the year being executed that silently trails the published record by a month is presenting last month as this month. Measured on 2026-09-10 the warehouse held FY2026 P09, covering June and revealed 2026-07-31, while FY2026 P10 covering July had been revealed on 2026-09-01 and was not in it -- because the warehouse snapshot was taken on 21 August. Nothing on the site could say so. The control reports rather than blocks: a stale load is still the best available answer and refusing it would leave the site with an older one.

Authority · USASpending submission periods; OMB Circular A-11 reporting windows

PassFile A (Statement of Budgetary Resources) holds FY2026P10, which is the newest submission published.
PassFile B (execution detail) holds FY2026P10, which is the newest submission published.
POA-01

Every account is filed under the program year its symbol states

highPass6/6 pass

Asserts. For every File A and File B account in Department scope, the beginning and ending periods of availability carried by the extract equal the two years written into the Treasury account symbol, and every account without a program year is a no-year account.

Why. The program-year view splits a fiscal year's execution by the year the money was appropriated for: FY2026's File B carries FY2025 procurement still being obligated, expired FY2025 operation and maintenance taking its adjustments, and FY2026 money, and an execution rate that mixes them answers no question a program office asks. The year is taken from the published period-of-availability columns. The account symbol writes the same two years independently, so this control re-derives them from the symbol rather than reading the extract's own answer back: where the two disagree, every figure on that account is filed under the wrong program year.

Authority · Treasury Financial Manual, Volume I, Part 2, Chapter 1500 (Treasury Account Symbol components); 31 U.S.C. 1502(a) (a fixed-period appropriation is available only for obligations incurred within its period of availability)

PassFY2021: all 1,581 File A and File B accounts carry the program year their Treasury account symbol states; every account without one is no-year.
PassFY2022: all 1,619 File A and File B accounts carry the program year their Treasury account symbol states; every account without one is no-year.
PassFY2023: all 1,665 File A and File B accounts carry the program year their Treasury account symbol states; every account without one is no-year.
PassFY2024: all 1,681 File A and File B accounts carry the program year their Treasury account symbol states; every account without one is no-year.
PassFY2025: all 1,769 File A and File B accounts carry the program year their Treasury account symbol states; every account without one is no-year.
PassFY2026: all 1,807 File A and File B accounts carry the program year their Treasury account symbol states; every account without one is no-year.
POA-02

The program-year split adds up to the Statement of Budgetary Resources

critical · blocks loadPass6/6 pass

Asserts. For every fiscal year, File A's account-level resources, obligations and unobligated balance sum to the Department Statement of Budgetary Resources to within 0.01%, File B's accounts sum to the year's File B obligations, and no File B account lacks the dimension row that carries its program year.

Why. The program-year chart rates obligations against the resources of the same accounts. If File A's account table drops accounts, every rate is measured over too little money; if a File B account has no dimension row, its obligations fall out of every program year and the parts stop adding up to the total printed above them. Both failures are silent on the page, and a drill-down that does not foot to its own total is worse than none, so this blocks the load.

Authority · OMB Circular A-11, Section 130 (SF 133 / Statement of Budgetary Resources line structure); Treasury USSGL

PassFY2021: File A accounts sum to the Statement of Budgetary Resources for total resources, obligations and unobligated balance, and every File B account is filed under a program year, to within 0.0000%.
PassFY2022: File A accounts sum to the Statement of Budgetary Resources for total resources, obligations and unobligated balance, and every File B account is filed under a program year, to within 0.0000%.
PassFY2023: File A accounts sum to the Statement of Budgetary Resources for total resources, obligations and unobligated balance, and every File B account is filed under a program year, to within 0.0000%.
PassFY2024: File A accounts sum to the Statement of Budgetary Resources for total resources, obligations and unobligated balance, and every File B account is filed under a program year, to within 0.0000%.
PassFY2025: File A accounts sum to the Statement of Budgetary Resources for total resources, obligations and unobligated balance, and every File B account is filed under a program year, to within 0.0000%.
PassFY2026: File A accounts sum to the Statement of Budgetary Resources for total resources, obligations and unobligated balance, and every File B account is filed under a program year, to within 0.0000%.
DR-01

Direct and reimbursable execution are split correctly

critical · blocks loadPass6/6 pass

Asserts. For every fiscal year, direct and reimbursable File B obligations agree between the stage totals and the account rollups to within 0.01%; no account rollup lacks the split or splits to more than its own total; and for every year carrying detail, each account's direct and reimbursable figures equal its detail rows summed by their own funding source.

Why. File B marks every row direct or reimbursable, and the site now reports execution as direct by default. A reimbursable obligation is work an account performs for a customer and is paid back for; when the customer is another Department account the same work is also that customer's direct obligation, so adding the two overstates the Department's own execution. A split that does not foot is worse than no split, because every direct figure on the site would then disagree with its own total. The control recomputes the split from tables it was not written into, and a missing split fails it rather than being read as zero.

Authority · OMB Circular A-11, Section 130 (direct and reimbursable obligations reported separately on the SF 133); DATA Act File B element direct_or_reimbursable_funding_source

PassFY2021: direct $931.0B and reimbursable $215.9B agree between the stage totals and the account rollups.
PassFY2022: direct $961.4B and reimbursable $228.5B agree between the stage totals and the account rollups.
PassFY2023: direct $1116.2B and reimbursable $214.3B agree between the stage totals and the account rollups.
PassFY2024: direct $1175.7B and reimbursable $217.7B agree between the stage totals and the account rollups, and account by account with 799 accounts' detail rows.
PassFY2025: direct $1238.2B and reimbursable $212.9B agree between the stage totals and the account rollups, and account by account with 826 accounts' detail rows.
PassFY2026: direct $1176.0B and reimbursable $187.3B agree between the stage totals and the account rollups, and account by account with 856 accounts' detail rows.
DR-02

How much of File B is reimbursable

highPass6/6 pass

Asserts. For every fiscal year the reimbursable share of File B obligations and the account carrying the most of it are published; more than 0.1% of obligations with no funding source is reported.

Why. This is a measurement, not a check on the extract: it is the size of the overstatement a direct-plus-reimbursable total would carry. FY2025: $212.9B of $1,451.1B (14.7%), $152.0B of it in the Defense Working Capital Fund. A handful of rows each year carry no funding source; they stay in the total and in neither side, and their amount is stated rather than assumed away.

Authority · OMB Circular A-11, Section 20 (reimbursable obligations and offsetting collections); DoD FMR Volume 11B (working capital funds)

PassFY2021: $215.9B of $1146.9B File B obligations (18.8%) are reimbursable and are not counted as direct execution; the largest share sits in Defense Working Capital Fund, Defense ($126.0B). Every dollar carries a funding source.
PassFY2022: $228.5B of $1189.9B File B obligations (19.2%) are reimbursable and are not counted as direct execution; the largest share sits in Defense Working Capital Fund, Defense ($142.1B). Every dollar carries a funding source.
PassFY2023: $214.3B of $1330.5B File B obligations (16.1%) are reimbursable and are not counted as direct execution; the largest share sits in Defense Working Capital Fund, Defense ($152.8B). Every dollar carries a funding source.
PassFY2024: $217.7B of $1393.4B File B obligations (15.6%) are reimbursable and are not counted as direct execution; the largest share sits in Defense Working Capital Fund, Defense ($157.3B). Every dollar carries a funding source.
PassFY2025: $212.9B of $1451.1B File B obligations (14.7%) are reimbursable and are not counted as direct execution; the largest share sits in Defense Working Capital Fund, Defense ($152.0B). Every dollar carries a funding source.
PassFY2026: $187.3B of $1363.3B File B obligations (13.7%) are reimbursable and are not counted as direct execution; the largest share sits in Defense Working Capital Fund, Defense ($146.4B). Every dollar carries a funding source.
RAW-01

Raw samples are the files the figures come from, column for column

critical · blocks loadPass3/3 pass

Asserts. Every raw sample record carries exactly one value per column of its file and the records are numbered 1 to min(5, file rows); every file a current load's figures come from -- File A, File B, File C contracts, contract and assistance transactions, and each (PB year, exhibit) workbook with a line in the load -- has a sample; and the File A and File B sample records carry the submission period the published statements are labelled with, and the contract sample is the vintage the contract figures use.

Why. The raw-data page exists so a reader can check a figure against the record it started from and see what a file does and does not carry -- that File A has no direct/reimbursable flag and File B does, for instance. A sample that shifts a value one column over, stops one file short, or comes from a different vintage than the figures would make that check say the wrong thing with the authority of raw data. The control recomputes structure from the rows themselves, coverage from the loads and exhibit lines the sample did not produce, and currency from the published statements.

Authority · DATA Act Information Model Schema (Files A-C element names); OMB M-17-04 data quality; GAO-14-704G Green Book principle 13 (use quality information)

Pass11 checks: the File A and File B sample records carry the same submission period the published statements do, and the contract sample is the vintage the contract figures use.
PassAll 37 files this load's figures come from have a raw sample, and so does the submission calendar.
Pass40 files, 200 records: every record carries exactly one value per column of its file, numbered 1 to 5.
JB-01

A book's format history is kept at (book, PB year)

critical · blocks loadPass20/20 pass

Asserts. Every book header's year span and edition count re-count in SQL from the edition rows, and every edition's distinct section titles and time-sensitive titles re-count from the section rows.

Why. A justification book identity spans up to twenty-nine President's Budgets and each edition restates its own format: DISA's OP-5 printed 'C. Reconciliation of Increases and Decreases' from PB2012 to PB2021 and has not since. That drift exists in no single book and is the reason this corpus is held at (book_key, pb_year). A GROUP BY that drops pb_year averages twenty-nine years into a book that was never published and reads like a tidy-up, so the header is re-counted against its own detail rather than trusted.

Authority · DoD FMR Volume 2A/2B (budget formulation and presentation); the published justification books themselves

Passom: 601 books over 1,415 editions, and every book's year span and every edition's section count re-count in SQL to what the extract published.
Passrevolving: 3 books over 3 editions, and every book's year span and every edition's section count re-count in SQL to what the extract published.
Passother: 2 books over 2 editions, and every book's year span and every edition's section count re-count in SQL to what the extract published.
Passderf: 2 books over 2 editions, and every book's year span and every edition's section count re-count in SQL to what the extract published.
Passmrap: 1 books over 3 editions, and every book's year span and every edition's section count re-count in SQL to what the extract published.
Passdpa: 1 books over 1 editions, and every book's year span and every edition's section count re-count in SQL to what the extract published.
Passamend: 1 books over 1 editions, and every book's year span and every edition's section count re-count in SQL to what the extract published.
Passnsip: 5 books over 23 editions, and every book's year span and every edition's section count re-count in SQL to what the extract published.
Passchemdemil: 8 books over 9 editions, and every book's year span and every edition's section count re-count in SQL to what the extract published.
Passoverview: 9 books over 45 editions, and every book's year span and every edition's section count re-count in SQL to what the extract published.
Passfh: 12 books over 29 editions, and every book's year span and every edition's section count re-count in SQL to what the extract published.
Passoco: 15 books over 16 editions, and every book's year span and every edition's section count re-count in SQL to what the extract published.
Passbrac: 45 books over 78 editions, and every book's year span and every edition's section count re-count in SQL to what the extract published.
Passdwcf: 82 books over 139 editions, and every book's year span and every edition's section count re-count in SQL to what the extract published.
Passmilcon: 109 books over 463 editions, and every book's year span and every edition's section count re-count in SQL to what the extract published.
Passproc: 162 books over 468 editions, and every book's year span and every edition's section count re-count in SQL to what the extract published.
Passdash1: 275 books over 584 editions, and every book's year span and every edition's section count re-count in SQL to what the extract published.
Passdhp: 337 books over 547 editions, and every book's year span and every edition's section count re-count in SQL to what the extract published.
Passrdte: 384 books over 699 editions, and every book's year span and every edition's section count re-count in SQL to what the extract published.
Passgreenbook: 4 books over 28 editions, and every book's year span and every edition's section count re-count in SQL to what the extract published.
JB-02

The skeleton re-derives from the sections it was measured from

highPass1/1 pass

Asserts. For every skeleton row, the editions it was seen in, the editions the book has, and the recency-weighted share all re-derive in SQL from the section rows and the edition weights, to within 0.15 percentage points.

Why. The skeleton is what a drafter is shown as the shape of their book, and it is weighted towards recent editions on purpose (half-life three years) so a section printed in every book since PB2020 outranks one dropped a decade ago. The published figure came from the extract's own observation lists; this control recomputes it from the rows that were actually written, which is the independent path. A skeleton measured over the wrong set of editions, or one carrying weights from before a new book landed, differs here.

Authority · Component editorial standard; measured from the published books

PassEvery skeleton row re-derives from its own book's section rows and edition weights: the years it was seen in, the years the book has, and the recency-weighted share all recompute in SQL to within 0.15 points.
JB-03

Exemplar text is current and traceable to a page

moderatePass1/1 pass

Asserts. Every exemplar passage comes from one of its own book's two most recent editions, belongs to a book marked current, and names the file and page it was read from.

Why. Bodies are held for current books only: the archive is several gigabytes of text and none of it belongs in a page database. The window is the BOOK's own last two editions, not the corpus's — a book published in PB2027 whose previous edition was PB2025 is current and both of its editions are usable material, while a book last published in PB2009 contributes structure and measurement and no text at all, which the page says rather than implies. What must never happen is an untraceable paragraph: an exemplar a drafter cannot follow back to a published page is an anonymous piece of prose, which is what this feature exists not to produce.

Authority · Site rule: every figure and every quoted passage names its source and vintage

Pass1,370 exemplar passages across 120 current books, every one taken from that book's own two most recent editions and naming the file and page it was read from. Older editions contribute structure and measurement, not text.
NFR-01

Per-entity NFR rows foot to the published total

critical · blocks loadPass6/6 pass

Asserts. For every fiscal year published at entity grain, the entity NFR counts sum exactly to the total the same report states.

Why. The report prints both the table and its own total, so the total is a check the source supplies against the transcription. FY2018 fails it by 4 and is therefore withheld at entity grain.

Authority · DoD OIG annual audit-result reports

PassFY2019: 14 entity rows sum to 3,472 against a published total of 3,472.
PassFY2020: 14 entity rows sum to 3,559 against a published total of 3,559.
PassFY2021: 14 entity rows sum to 3,368 against a published total of 3,368.
PassFY2022: 13 entity rows sum to 2,984 against a published total of 2,984.
PassFY2023: 14 entity rows sum to 3,213 against a published total of 3,213.
PassFY2024: 13 entity rows sum to 2,848 against a published total of 2,848.
NFR-02

New plus reissued equals issued

highPass7/7 pass

Asserts. Where a year states the split, new NFRs plus prior-year NFRs reissued equals the total issued.

Why. The two figures are printed in different places in each report. Requiring them to reconcile catches a year read from the wrong sentence.

Authority · DoD OIG annual audit-result reports

PassFY2018: 2,410 new plus 0 reissued is 2,410 against 2,410 issued.
PassFY2019: 1,575 new plus 1,897 reissued is 3,472 against 3,472 issued.
PassFY2020: 918 new plus 2,641 reissued is 3,559 against 3,559 issued.
PassFY2021: 690 new plus 2,678 reissued is 3,368 against 3,368 issued.
PassFY2022: 479 new plus 2,505 reissued is 2,984 against 2,984 issued.
PassFY2023: 569 new plus 2,644 reissued is 3,213 against 3,213 issued.
PassFY2024: 551 new plus 2,297 reissued is 2,848 against 2,848 issued.
NFR-03

The roster matches the stated weakness count

critical · blocks loadPass7/7 pass

Asserts. For every year a roster is published, the number of roster rows equals the Agency-Wide material weakness count stated in the report.

Why. A roster short by one is how a renamed weakness turns into a closure. FY2023 states 28 and prints no roster, so it publishes a count and no rows.

Authority · DoD OIG annual audit-result reports

PassFY2018: the roster holds 20 material weaknesses against 20 stated in the report.
PassFY2019: the roster holds 25 material weaknesses against 25 stated in the report.
PassFY2020: the roster holds 26 material weaknesses against 26 stated in the report.
PassFY2021: the roster holds 28 material weaknesses against 28 stated in the report.
PassFY2022: the roster holds 28 material weaknesses against 28 stated in the report.
PassFY2024: the roster holds 28 material weaknesses against 28 stated in the report.
PassFY2025: the roster holds 26 material weaknesses against 26 stated in the report.
NFR-04

Every audit-risk object is complete and cited

critical · blocks loadPass26/26 pass

Asserts. Each material weakness object carries all ten elements, and every element carries a citation.

Why. An element missing from an object renders as a silent gap. An uncited element is an assertion, and nothing on this site reaches a page without its source.

Passaccess: 10 of 10 elements, all cited.
Passleases: 10 of 10 elements, all cited.
Passoms: 10 of 10 elements, all cited.
Passoversight_dod: 10 of 10 elements, all cited.
Passrealprop: 10 of 10 elements, all cited.
Passrecon_outlays: 10 of 10 elements, all cited.
Passsecurity_mgmt: 10 of 10 elements, all cited.
Passinventory: 10 of 10 elements, all cited.
Passintragov: 10 of 10 elements, all cited.
Passinterface: 10 of 10 elements, all cited.
Passgross_costs: 10 of 10 elements, all cited.
Passgpppe: 10 of 10 elements, all cited.
Passgfp: 10 of 10 elements, all cited.
Passservice_org: 10 of 10 elements, all cited.
Passsod: 10 of 10 elements, all cited.
Passunsupported_adj: 10 of 10 elements, all cited.
Passuot: 10 of 10 elements, all cited.
Passfin_systems_it: 10 of 10 elements, all cited.
Passfbwt: 10 of 10 elements, all cited.
Passenv: 10 of 10 elements, all cited.
Passelc: 10 of 10 elements, all cited.
Passearned_rev: 10 of 10 elements, all cited.
Passconfig_mgmt: 10 of 10 elements, all cited.
Passbudgetary: 10 of 10 elements, all cited.
Passap: 10 of 10 elements, all cited.
Passjsf: 10 of 10 elements, all cited.
NFR-05

The outcome element re-derives from the roster

highPass26/26 pass

Asserts. Recomputing each object from the roster rows gives the same last roster year, the same number of roster years present, and the same open or not-open state.

Why. The outcome is the one element the extract computes rather than transcribes. A control that read the computed value back would restate it; this one derives it again from dm_nfr_mw and compares.

Passuot: last on the roster FY2025, present in 7 roster years, recorded as "open" -- re-derived from the roster and agrees.
Passleases: last on the roster FY2025, present in 2 roster years, recorded as "open" -- re-derived from the roster and agrees.
Passaccess: last on the roster FY2025, present in 5 roster years, recorded as "open" -- re-derived from the roster and agrees.
Passap: last on the roster FY2025, present in 7 roster years, recorded as "open" -- re-derived from the roster and agrees.
Passbudgetary: last on the roster FY2025, present in 7 roster years, recorded as "open" -- re-derived from the roster and agrees.
Passconfig_mgmt: last on the roster FY2025, present in 2 roster years, recorded as "open" -- re-derived from the roster and agrees.
Passearned_rev: last on the roster FY2025, present in 6 roster years, recorded as "open" -- re-derived from the roster and agrees.
Passelc: last on the roster FY2025, present in 7 roster years, recorded as "open" -- re-derived from the roster and agrees.
Passenv: last on the roster FY2025, present in 7 roster years, recorded as "open" -- re-derived from the roster and agrees.
Passfbwt: last on the roster FY2025, present in 7 roster years, recorded as "open" -- re-derived from the roster and agrees.
Passfin_systems_it: last on the roster FY2025, present in 7 roster years, recorded as "open" -- re-derived from the roster and agrees.
Passgfp: last on the roster FY2025, present in 7 roster years, recorded as "open" -- re-derived from the roster and agrees.
Passgpppe: last on the roster FY2025, present in 7 roster years, recorded as "open" -- re-derived from the roster and agrees.
Passgross_costs: last on the roster FY2025, present in 7 roster years, recorded as "open" -- re-derived from the roster and agrees.
Passinterface: last on the roster FY2025, present in 3 roster years, recorded as "open" -- re-derived from the roster and agrees.
Passintragov: last on the roster FY2025, present in 7 roster years, recorded as "open" -- re-derived from the roster and agrees.
Passinventory: last on the roster FY2025, present in 7 roster years, recorded as "open" -- re-derived from the roster and agrees.
Passjsf: last on the roster FY2025, present in 6 roster years, recorded as "open" -- re-derived from the roster and agrees.
Passoms: last on the roster FY2025, present in 7 roster years, recorded as "open" -- re-derived from the roster and agrees.
Passoversight_dod: last on the roster FY2025, present in 7 roster years, recorded as "open" -- re-derived from the roster and agrees.
Passrealprop: last on the roster FY2025, present in 6 roster years, recorded as "open" -- re-derived from the roster and agrees.
Passrecon_outlays: last on the roster FY2025, present in 6 roster years, recorded as "open" -- re-derived from the roster and agrees.
Passsecurity_mgmt: last on the roster FY2025, present in 2 roster years, recorded as "open" -- re-derived from the roster and agrees.
Passservice_org: last on the roster FY2025, present in 6 roster years, recorded as "open" -- re-derived from the roster and agrees.
Passsod: last on the roster FY2025, present in 5 roster years, recorded as "open" -- re-derived from the roster and agrees.
Passunsupported_adj: last on the roster FY2025, present in 7 roster years, recorded as "open" -- re-derived from the roster and agrees.
CAL-01

The appropriation calendar is coherent

critical · blocks loadPass6/6 pass

Asserts. Every fiscal year in the calendar has either a full-year enactment or a full-year continuing resolution; no enactment is dated before its own fiscal year begins; every span ends on or after it starts; and no lapse in appropriations overlaps a day the full-year act was already in force.

Why. Every timing statement on /execution/timeline is read against these dates, so a wrong date does not produce a wrong date -- it produces a wrong finding about execution. The dates are curated and cited, which is exactly the kind of input that needs a machine check rather than a reviewer's eye. Day counts are derived in SQL from these dates and never stored, so the arithmetic cannot drift from them.

Authority · Public laws cited on each row

PassFY2021: one full-year anchor, every span forward in time, the enactment inside its own year and no lapse after it.
PassFY2022: one full-year anchor, every span forward in time, the enactment inside its own year and no lapse after it.
PassFY2023: one full-year anchor, every span forward in time, the enactment inside its own year and no lapse after it.
PassFY2024: one full-year anchor, every span forward in time, the enactment inside its own year and no lapse after it.
PassFY2025: one full-year anchor, every span forward in time, the enactment inside its own year and no lapse after it.
PassFY2026: one full-year anchor, every span forward in time, the enactment inside its own year and no lapse after it.
TL-01

The dated timeline foots to the contract timing extract

critical · blocks loadPass6/6 pass

Asserts. For each fiscal year, the observed months of the Department-level timeline sum to the contract obligation the timing extract measured to the same reporting frontier.

Why. The two extracts read the same contract file through different code -- the timing step aggregates by day in pyarrow, the timeline step aggregates by month in Python -- so this compares two independent implementations rather than restating one. A control that read either extract's own answer back would be a restatement with a pass printed on it.

PassFY2021: the monthly timeline and the daily timing extract agree on the same contract file to within 0.00000%.
PassFY2022: the monthly timeline and the daily timing extract agree on the same contract file to within 0.00000%.
PassFY2023: the monthly timeline and the daily timing extract agree on the same contract file to within 0.00000%.
PassFY2024: the monthly timeline and the daily timing extract agree on the same contract file to within 0.00000%.
PassFY2025: the monthly timeline and the daily timing extract agree on the same contract file to within 0.00000%.
PassFY2026: the monthly timeline and the daily timing extract agree on the same contract file to within 0.00000%.
TL-02

Fund-holder rows reconcile to their own months

highPass6/6 pass

Asserts. Each fund holder's yearly contract obligation equals the sum of its own observed monthly rows, and the fund holders carried never exceed the Department total for the year.

Why. The fund holder is the only dimension on this site that names WHS, MDA and SOCOM, and it is carried for the twenty largest holders a year. A holder total that does not equal its own months means the ranking and the curve disagree, and the page draws both.

PassFY2021: all 20 fund holders equal the sum of their own months, leaving $1.2B in the unranked tail.
PassFY2022: all 20 fund holders equal the sum of their own months, leaving $1.4B in the unranked tail.
PassFY2023: all 20 fund holders equal the sum of their own months, leaving $1.4B in the unranked tail.
PassFY2024: all 20 fund holders equal the sum of their own months, leaving $1.9B in the unranked tail.
PassFY2025: all 20 fund holders equal the sum of their own months, leaving $1.8B in the unranked tail.
PassFY2026: all 20 fund holders equal the sum of their own months, leaving $0.7B in the unranked tail.
TL-03

The pre-enactment pace index re-derives from the months and the calendar

highPass5/5 pass

Asserts. Recomputing the index in SQL -- the average observed month before the full-year act, divided by the year's own average observed month -- reproduces the published value for every complete year.

Why. This index is the finding the page rests on, so it gets an implementation that does not share a line of code with the one that produced it. It is also the figure most easily got wrong: a raw share of the year is not comparable between years, because the years differ both in how long the continuing resolution ran and in how many months are observed at all.

PassFY2021: the pre-enactment pace index re-derives to 0.7264 against a published 0.7264.
PassFY2022: the pre-enactment pace index re-derives to 0.8436 against a published 0.8436.
PassFY2023: the pre-enactment pace index re-derives to 0.6485 against a published 0.6485.
PassFY2024: the pre-enactment pace index re-derives to 0.7695 against a published 0.7695.
PassFY2026: the pre-enactment pace index re-derives to 0.8056 against a published 0.8056.
MOD-01

The modelled months foot to the File A total they distribute

critical · blocks loadPass5/5 pass

Asserts. Each modelled group's twelve months sum to its stated annual obligation, and that annual obligation equals the current-year obligation File A reports for the same year, appropriation and agency.

Why. The model's only claim is that it redistributes a measured annual total across the months. The second half of this assertion is the one that matters: it ties the model back to the source it says it is distributing, so a model that has quietly drifted onto a different population fails rather than merely failing to add up.

PassFY2021: all 31 modelled groups sum to their annual total and that total is File A's own current-year obligation.
PassFY2022: all 32 modelled groups sum to their annual total and that total is File A's own current-year obligation.
PassFY2023: all 31 modelled groups sum to their annual total and that total is File A's own current-year obligation.
PassFY2024: all 31 modelled groups sum to their annual total and that total is File A's own current-year obligation.
PassFY2025: all 30 modelled groups sum to their annual total and that total is File A's own current-year obligation.
MOD-02

Nothing is modelled for a year in progress

critical · blocks loadPass6/6 pass

Asserts. No modelled row exists for a fiscal year whose contract file is observed for fewer than twelve months.

Why. File B's figure for a year in progress is period-to-date at one submission and the contract shape stops at the reporting frontier. Spreading the first across the second produces a monthly figure that belongs to neither period, and it would look exactly like a measurement. The year in progress gets the observed layers and no model.

PassFY2021: a complete year, 372 modelled rows.
PassFY2022: a complete year, 384 modelled rows.
PassFY2023: a complete year, 372 modelled rows.
PassFY2024: a complete year, 372 modelled rows.
PassFY2025: a complete year, 360 modelled rows.
PassFY2026: observed for 7 months and correctly carries no modelled rows.
COV-01

Every layer publishes what it can see

highPass6/6 pass

Asserts. Each fiscal year carries all five coverage measures, no numerator exceeds its denominator, and the current-year sample coverage is published for every year the sample is drawn on.

Why. The dated cut by colour of money and programme year is a sample whose size moves from 8.5% to 23.0% across these years. Published without its coverage it reads as a measurement of the Department, which it is not. This control is what stops the coverage silently going missing from a row the page then draws anyway.

PassFY2021: all four coverage measures published; the programme-year sample covers 5.7% of dated contract dollars.
PassFY2022: all four coverage measures published; the programme-year sample covers 6.5% of dated contract dollars.
PassFY2023: all four coverage measures published; the programme-year sample covers 5.9% of dated contract dollars.
PassFY2024: all four coverage measures published; the programme-year sample covers 5.0% of dated contract dollars.
PassFY2025: all four coverage measures published; the programme-year sample covers 3.6% of dated contract dollars.
PassFY2026: all four coverage measures published; the programme-year sample covers 1.2% of dated contract dollars.
CHN-01

The chain's own-year obligations tie to File A

critical · blocks loadPass6/6 pass

Asserts. For every fiscal year and component, the obligations on the chain's analytic units equal File A's obligations on accounts whose programme year is that fiscal year.

Why. Every lag, ramp and recommendation on the page is read against these units. If the unit table has drifted onto a different population -- all programme years instead of the year's own money is the easy way to do it -- then every figure downstream is describing something other than what it is labelled.

Authority · OMB Circular A-136 (Statement of Budgetary Resources)

PassFY2021: the chain's own-year obligations tie to File A within 0.00000%.
PassFY2022: the chain's own-year obligations tie to File A within 0.00000%.
PassFY2023: the chain's own-year obligations tie to File A within 0.00000%.
PassFY2024: the chain's own-year obligations tie to File A within 0.00000%.
PassFY2025: the chain's own-year obligations tie to File A within 0.00000%.
PassFY2026: the chain's own-year obligations tie to File A within 0.00000%.
CHN-02

The authority curve opens on 1 October and ends on the enacted amount

critical · blocks loadPass6/6 pass

Asserts. Every unit's authority steps begin on the first day of the fiscal year, carry no authority through a lapse in appropriations, and where a full-year act exists end on File A's own budget authority appropriated for that unit.

Why. The authority curve is derived, not published, so both of its endpoints have to be pinned to File A figures and the rule only allowed to shape what runs between them. A curve carrying money through a lapse would assert the Department had authority it did not have.

Authority · 31 U.S.C. 1341; public laws cited on the calendar

PassFY2021: all 37 authority curves open on 1 October, carry nothing through a lapse, and end on File A's own enacted amount.
PassFY2022: all 37 authority curves open on 1 October, carry nothing through a lapse, and end on File A's own enacted amount.
PassFY2023: all 36 authority curves open on 1 October, carry nothing through a lapse, and end on File A's own enacted amount.
PassFY2024: all 36 authority curves open on 1 October, carry nothing through a lapse, and end on File A's own enacted amount.
PassFY2025: all 36 authority curves open on 1 October, carry nothing through a lapse, and end on File A's own enacted amount.
PassFY2026: all 35 authority curves open on 1 October, carry nothing through a lapse, and end on File A's own enacted amount.
CHN-03

No day is assigned to a step that was never waited on

highPass6/6 pass

Asserts. The assumed steps of each chain sum to that unit's own measured residual, the measured endpoints carry no day count, and a unit whose execution preceded its authority is assigned no assumed days at all.

Why. The interior of the distribution chain is published in no file, so the only discipline available is that the assumption divides a measured quantity and never invents one. Where execution ran ahead of the authority -- on the continuing resolution, or on carried-in balances -- there is no wait to divide, and filling the steps in anyway would manufacture a delay that did not happen.

Authority · DoD FMR Volume 3

PassFY2021: every assumed split sums to its own measured residual, and no unit assigns days to a step where execution preceded the authority.
PassFY2022: every assumed split sums to its own measured residual, and no unit assigns days to a step where execution preceded the authority.
PassFY2023: every assumed split sums to its own measured residual, and no unit assigns days to a step where execution preceded the authority.
PassFY2024: every assumed split sums to its own measured residual, and no unit assigns days to a step where execution preceded the authority.
PassFY2025: every assumed split sums to its own measured residual, and no unit assigns days to a step where execution preceded the authority.
PassFY2026: every assumed split sums to its own measured residual, and no unit assigns days to a step where execution preceded the authority.
CHN-04

Execution quantiles stay inside what was observed

highPass6/6 pass

Asserts. Every timing cell has d10 <= d50 <= d90, no quantile falls past the last day that cell was observed for, the same-point comparison window is no longer than any year's own observation, and every row is labelled as an upper bound.

Why. The ramp is measured on the fraction of contract dollars that name their Treasury account, so it is censored by construction and the label is not decoration. The window check is the one that matters: a live year's median is taken over fewer days, and comparing it against a closed year's full-year median reads as the live year running early when all it is doing is stopping sooner.

PassFY2021: all 136 cells have ordered quantiles inside their own observation, compare over a window no year exceeds, and are labelled as upper bounds.
PassFY2022: all 135 cells have ordered quantiles inside their own observation, compare over a window no year exceeds, and are labelled as upper bounds.
PassFY2023: all 141 cells have ordered quantiles inside their own observation, compare over a window no year exceeds, and are labelled as upper bounds.
PassFY2024: all 138 cells have ordered quantiles inside their own observation, compare over a window no year exceeds, and are labelled as upper bounds.
PassFY2025: all 126 cells have ordered quantiles inside their own observation, compare over a window no year exceeds, and are labelled as upper bounds.
PassFY2026: all 78 cells have ordered quantiles inside their own observation, compare over a window no year exceeds, and are labelled as upper bounds.
CHN-05

The continuing-resolution sensitivity re-derives from its own points

highPass54/54 pass

Asserts. Expanding each published slope's stored observations and taking the median of every pairwise slope in SQL reproduces the published days-per-30-continuing-resolution-days.

Why. This slope is the figure a senior decision rests on -- what another month of continuing resolution does to execution -- so it gets an implementation that shares no code with the one that produced it. It is also the figure most easily got wrong: with five or six observations a least-squares slope is set by whichever year is furthest out, and two of these six years are unusual ones.

Pass057 All colours (d50): re-derived 0.39 days per 30 CR days against a published 0.40.
Pass057 All colours (d10): re-derived -2.37 days per 30 CR days against a published -2.40.
Pass021 RDT&E (d50): re-derived -1.35 days per 30 CR days against a published -1.30.
Pass021 RDT&E (d10): re-derived -14.54 days per 30 CR days against a published -14.50.
Pass021 Procurement (d50): re-derived 3.13 days per 30 CR days against a published 3.10.
Pass021 Procurement (d10): re-derived 1.73 days per 30 CR days against a published 1.70.
Pass021 Operation and maintenance (d50): re-derived -2.91 days per 30 CR days against a published -2.90.
Pass021 Operation and maintenance (d10): re-derived 0.79 days per 30 CR days against a published 0.80.
Pass021 Military personnel (d50): re-derived 3.35 days per 30 CR days against a published 3.30.
Pass021 Military personnel (d10): re-derived 0.39 days per 30 CR days against a published 0.40.
Pass021 Military construction (d50): re-derived 1.52 days per 30 CR days against a published 1.50.
Pass021 Military construction (d10): re-derived 1.73 days per 30 CR days against a published 1.70.
Pass021 Family housing (d50): re-derived 12.53 days per 30 CR days against a published 12.50.
Pass021 Family housing (d10): re-derived 11.52 days per 30 CR days against a published 11.50.
Pass021 All colours (d50): re-derived -2.72 days per 30 CR days against a published -2.70.
Pass021 All colours (d10): re-derived 0.88 days per 30 CR days against a published 0.90.
Pass017 RDT&E (d50): re-derived 1.18 days per 30 CR days against a published 1.20.
Pass017 RDT&E (d10): re-derived 5.40 days per 30 CR days against a published 5.40.
Pass017 Procurement (d50): re-derived -4.38 days per 30 CR days against a published -4.40.
Pass017 Procurement (d10): re-derived -2.38 days per 30 CR days against a published -2.40.
Pass017 Operation and maintenance (d50): re-derived -3.95 days per 30 CR days against a published -3.90.
Pass017 Operation and maintenance (d10): re-derived 0.75 days per 30 CR days against a published 0.80.
Pass017 Military construction (d50): re-derived 13.57 days per 30 CR days against a published 13.60.
Pass017 Military construction (d10): re-derived -9.80 days per 30 CR days against a published -9.80.
Pass017 Family housing (d50): re-derived 27.11 days per 30 CR days against a published 27.10.
Pass017 Family housing (d10): re-derived -16.42 days per 30 CR days against a published -16.40.
Pass017 All colours (d50): re-derived -1.03 days per 30 CR days against a published -1.00.
Pass017 All colours (d10): re-derived 1.41 days per 30 CR days against a published 1.40.
Pass057 Operation and maintenance (d50): re-derived 2.83 days per 30 CR days against a published 2.80.
Pass057 Procurement (d10): re-derived 1.67 days per 30 CR days against a published 1.70.
Pass057 Procurement (d50): re-derived -1.85 days per 30 CR days against a published -1.80.
Pass057 RDT&E (d10): re-derived -5.53 days per 30 CR days against a published -5.50.
Pass057 RDT&E (d50): re-derived 0.11 days per 30 CR days against a published 0.10.
Pass097 All colours (d10): re-derived -1.06 days per 30 CR days against a published -1.10.
Pass097 All colours (d50): re-derived -4.02 days per 30 CR days against a published -4.00.
Pass097 Defense Health Program (d10): re-derived -1.73 days per 30 CR days against a published -1.70.
Pass097 Defense Health Program (d50): re-derived 1.26 days per 30 CR days against a published 1.30.
Pass097 Operation and maintenance (d10): re-derived -1.50 days per 30 CR days against a published -1.50.
Pass097 Operation and maintenance (d50): re-derived -0.35 days per 30 CR days against a published -0.40.
Pass097 Other (d10): re-derived -7.31 days per 30 CR days against a published -7.30.
Pass097 Other (d50): re-derived -7.80 days per 30 CR days against a published -7.80.
Pass097 Procurement (d10): re-derived -5.00 days per 30 CR days against a published -5.00.
Pass097 Procurement (d50): re-derived -1.29 days per 30 CR days against a published -1.30.
Pass097 RDT&E (d10): re-derived -15.18 days per 30 CR days against a published -15.20.
Pass097 RDT&E (d50): re-derived -5.33 days per 30 CR days against a published -5.30.
PassDOW All colours (d10): re-derived 0.76 days per 30 CR days against a published 0.80.
PassDOW All colours (d50): re-derived -3.37 days per 30 CR days against a published -3.40.
Pass057 Operation and maintenance (d10): re-derived -2.48 days per 30 CR days against a published -2.50.
Pass057 Military personnel (d50): re-derived -11.38 days per 30 CR days against a published -11.40.
Pass057 Military personnel (d10): re-derived -4.14 days per 30 CR days against a published -4.10.
Pass057 Military construction (d50): re-derived -30.18 days per 30 CR days against a published -30.20.
Pass057 Military construction (d10): re-derived -8.26 days per 30 CR days against a published -8.30.
Pass057 Family housing (d50): re-derived -0.54 days per 30 CR days against a published -0.50.
Pass057 Family housing (d10): re-derived 4.54 days per 30 CR days against a published 4.50.
CHN-06

Rollups equal the cells they are built from

critical · blocks loadPass6/6 pass

Asserts. Each component total equals the sum of its own colours of money, and the Department total equals the sum of its components.

Why. The page now answers three different questions -- how is this account doing, how is this component doing, how is the Department doing -- from one set of rows. Every measure involved is additive across File A accounts, so a rollup that does not foot is a rollup built from the wrong population, and a reader comparing a component figure against the Department figure would be comparing two different things.

PassFY2021: every component total equals the sum of its own colours of money, and the Department total equals the sum of its components.
PassFY2022: every component total equals the sum of its own colours of money, and the Department total equals the sum of its components.
PassFY2023: every component total equals the sum of its own colours of money, and the Department total equals the sum of its components.
PassFY2024: every component total equals the sum of its own colours of money, and the Department total equals the sum of its components.
PassFY2025: every component total equals the sum of its own colours of money, and the Department total equals the sum of its components.
PassFY2026: every component total equals the sum of its own colours of money, and the Department total equals the sum of its components.
CHN-07

The process model is built from its own steps

critical · blocks loadPass6/6 pass

Asserts. Each chain's published minimum, likely and maximum equal the sums of its applicable steps; every step has min <= likely <= max; and the two measured endpoints carry no duration.

Why. The model's whole claim is that it is assembled from the documented process rather than fitted to the observation it is compared against. A total that does not equal its own steps would mean it had been adjusted, which is precisely the failure the earlier flat-share version of this page had. Keeping the measured endpoints at zero duration is what stops a measurement being absorbed into an estimate.

Authority · 31 U.S.C. 1513(b)(1); DoD FMR Volume 3, Chapter 2

PassFY2021: all 62 chains sum to their own steps, every step is ordered, and the two measured endpoints carry no duration.
PassFY2022: all 58 chains sum to their own steps, every step is ordered, and the two measured endpoints carry no duration.
PassFY2023: all 60 chains sum to their own steps, every step is ordered, and the two measured endpoints carry no duration.
PassFY2024: all 58 chains sum to their own steps, every step is ordered, and the two measured endpoints carry no duration.
PassFY2025: all 26 chains sum to their own steps, every step is ordered, and the two measured endpoints carry no duration.
PassFY2026: all 42 chains sum to their own steps, every step is ordered, and the two measured endpoints carry no duration.
CHN-08

Every execution shape is a real cumulative curve

highPass6/6 pass

Asserts. Each archetype's stored shape runs from at or above zero to one by the twelfth fiscal month, and every shape carries the comparison window it was cut to.

Why. The archetypes are discovered by clustering, so the only way to know the clustering saw what it was meant to see is to check the inputs. A shape that does not reach one is a truncated year that was not normalised, and clustering those together with complete years would sort by how long the year was observed rather than by when its money moved.

PassFY2021: all 29 cumulative shapes run from zero to one across 3 archetypes, each cut to its own comparison window.
PassFY2022: all 29 cumulative shapes run from zero to one across 3 archetypes, each cut to its own comparison window.
PassFY2023: all 29 cumulative shapes run from zero to one across 3 archetypes, each cut to its own comparison window.
PassFY2024: all 28 cumulative shapes run from zero to one across 3 archetypes, each cut to its own comparison window.
PassFY2025: all 25 cumulative shapes run from zero to one across 3 archetypes, each cut to its own comparison window.
PassFY2026: all 21 cumulative shapes run from zero to one across 2 archetypes, each cut to its own comparison window.
CHN-09

Anomaly baselines re-derive from the unit's own history

highPass3/3 pass

Asserts. Recomputing each baseline in SQL as the median of that unit's own earlier values reproduces the published baseline.

Why. A deviation is only meaningful against the right baseline, and the commonest way to get this wrong is to compare a category against a Department-wide average when these categories differ by three orders of magnitude. This recomputes the baseline from the values themselves rather than reading back the column the extract wrote.

PassFY2024: all 25 anomaly baselines re-derive as the median of the unit's own earlier years.
PassFY2025: all 24 anomaly baselines re-derive as the median of the unit's own earlier years.
PassFY2026: all 21 anomaly baselines re-derive as the median of the unit's own earlier years.
GATE-01

Every legislative gate carries its citation and an honest scope

highPass1/1 pass

Asserts. Every gate names a citation and an authority, a measured scope appears only where a Treasury account carries the gate, and a gate with no measured scope says why.

Why. These are quotations from public law and from congressional statements, and a page that characterises what Congress required had better be able to show where. The scope rule matters just as much: a gate whose money cannot be isolated in File A gets no number, because an estimated scope on a legislative requirement reads as a finding about Congress rather than about this site's data.

Authority · Annual Department of Defense Appropriations Act and its joint explanatory statement

PassAll 9 gates carry a citation and an authority, 4 of them actually bar obligation, and a measured scope appears only where a Treasury account carries the gate.
RES-01

The research paper resolves to its own evidence

critical · blocks loadPass1/1 pass

Asserts. Every figure the paper's prose refers to resolves to an evidence row of this load, each finding declares exactly the figures its own sentences use, and every recommendation names a finding that exists.

Why. The paper argues from numbers, and an argument whose numbers have gone stale is worse than no argument, because it reads exactly like a current one. The prose is therefore stored with named placeholders rather than numbers and resolved against this load's own evidence at render time -- so the failure mode is not a wrong figure but an unresolvable one, and this control blocks the load rather than letting the page print a brace. The declared-set check exists because the page and this control both read the placeholders column, and a stale column would make the join agree with itself while disagreeing with the sentence. The recommendation check exists because a recommendation separated from the finding that justified it is an opinion wearing evidence's clothes.

Authority · This site's own publication standard

PassAll 41 figure references across 9 findings and 13 recommendations resolve to one of 41 evidence rows, every finding declares exactly the figures its own prose uses, and every recommendation names a finding that exists.