Astrelis
Methodology · the payload contract behind the audited statements

FQHC audited-statements payload: the contract (astrelis.fqhc_audit/3)

This page is the contract document the audited-statements section, its twin and its JSON-LD cite, rendered from docs/FQHC_AUDIT_PAYLOAD_CONTRACT.md in the site's repository at build time. The source itself is registered on the data-sources page as SRC-FAC-001.

WEB-05, 2026-10-21 (supersedes astrelis.fqhc_audit/2 of FAC-05, 2026-10-12, and /1 of WEB-02 D5). The health center template renders an "Audited financial statements" section above its Medicare cost-report appendix when, and only when, a file data/generated/fqhc_audit/<id>.json exists for the page's id (the CCN the profile is keyed by). The file is built by scripts/build-fqhc-audit.mjs (quarterly.mjs stage 6n) from the frozen FAC-11 template snapshot under data/sources/fac_audits_fac11/ (written by scripts/_fac11_snapshot.mjs from the fac-audits repository, read only; every source file's sha256 and the fac-audits commit are in its MANIFEST.json); the site reads it with lib/fqhcAudit.ts and computes nothing from it. A file that does not parse, whose schema is not astrelis.fqhc_audit/3, or that carries no organization, is treated as absent.

The reader is one implementation; the twin (<profile URL>.md), the JSON-LD and the page all read the same file through it, and every code the template carries is turned into words in that one file (D-38: a client page prints labels only).

What changed from version 2

Top level

FieldTypeMeaning
schemastring, exactly astrelis.fqhc_audit/3the contract version; any other value makes the file invisible
idstringthe profile id the file is keyed by (the FQHC CCN); must equal the file name
source.systemstringFederal Audit Clearinghouse (FAC), single audits as filed
source.templatestringnames the FAC-11 template and the orders applied to it
source.fac_audits_commitstring or nullthe fac-audits commit the snapshot was taken from
source.snapshotobjectpath, frozen_at, and files (the sha256 of every snapshot file)
source.built_atISO datethe day the payload was built
organizationsarrayone object per crosswalk row that attaches this profile, identifier-verified rows first

Organization object

FieldTypeMeaning
keystringthe template's organization key: the filed EIN, else UEI:<uei>, else REPORT:<report_id>
name, statestringthe filed auditee name and state
basisstringNONPROFIT, GOVERNMENTAL or NONPROFIT_AS_FILED (printed in words)
entity_scopestring or nullNONPROFIT_ENTITY or PART_OF_GOVERNMENT (printed in words)
crosswalk.match_statusstringthe template's match status (MATCHED on every row the payload carries)
crosswalk.match_methodstring or nullthe tier or rule, in the template's own words (exact name and state (FACLAND tier 1), name and state, own name, ...)
crosswalk.identity_statusstringIDENTIFIER_VERIFIED, NAME_INFERRED (the page prints "matched by name"), SHARED_CCN, IDENTIFIER_CONFLICT
crosswalk.profile_attachmentstring or nullPROFILE on a row FACRT-03 added for one profile by name
crosswalk.ein_check, dataset_ein_confidence, candidate_count, ccn_claimed_by_organizations, formula, provider_sourceas the template carries themthe evidence behind the match
status.cohort_statusstring or nullDIRECT_AWARD, PASS_THROUGH_ONLY, NO_FQHC_AWARD_ROWS, UNRESOLVED
status.governmental_unit_statusstring or nullNOT_APPLICABLE, HEALTH_UNIT, NON_HEALTH_UNIT, NO_UNIT_SELECTED
status.hrsa_grant_number, latest_tie_status, latest_audit_year, years_on_file, ties_full_years, holds_a_ties_full_year_in_the_last_three, organization_key_label, cohort_status_basisas the template carries themthe organization row
reportsarraythe three newest non-superseded reports, newest first
mediansobject or nullbasis, audit_year (the newest report's) and rows: every median row for that basis and year (ratio, population, n, value, label, reason, n_non_health_unit)

Report object

FieldTypeMeaning
report_idstringthe FAC report id; fac_url is https://app.fac.gov/dissemination/summary/<report_id>
audit_year, fy_end_date, entity_scope, basis, sourceas filedthe report's own fields
status.tie_statusstringTIES_FULL, TIES_BOTH_NOT_LINKED, TIES_BALANCE_ONLY, TIES_INCOME_ONLY, DOES_NOT_TIE, NO_STATEMENT_READ (printed in words)
status.reconciliation_statusstring or nullARITHMETICALLY_RECONCILED or NOT_ARITHMETICALLY_RECONCILED
status.report_award_statusstring or nullDIRECT, PASS_THROUGH_ONLY, NOT_FQHC_COHORT, AWARD_ROWS_NOT_IN_LAYER
status.balance_period_column_status, income_period_column_statusstring or nullthe printed column-header year test
status.net_assets_total_basisstring or nullwhat total net assets was read from
status.governmental_unit_status, governmental_unit_status_basisstring or nullthe unit the governmental statements were read for
status.units_multiplier, tolerance, first_failing_test, reasonas the template carries themthe tie test's parameters
linesarrayevery template line of the report in template order
ratiosarrayevery template ratio of the report

Line object

FieldTypeMeaning
line_idstringthe template line id (B01..B19 and I01..I20 for nonprofit bases; G01..G17 for governmental); never printed
template_linestringthe line's name as the template prints it (printed)
statement, sectionstringbalance or income, and the template's section
valuenumber or nulldollars as the statement prints them, the units multiplier applied; null when absent
labelstringEXTRACTED (read from a statement line), DERIVED (summed from extracted lines, formula on file), ABSENT (reason on file)
members, footing_remaindernumber or nulla derived line's member count and remainder
page, line_label_verbatim, line_source, formula, reasonas the template carries themthe evidence: the PDF page, the caption as printed, native text or OCR, the formula, the absence reason

Ratio object

ratio (printed in words), value, label, reason, formula, plausibility_status (PLAUSIBLE, OUT_OF_RANGE with plausible_range printed, NOT_COMPUTED), as the template carries them. A ratio out of its possible range is kept as computed and says so.

What the page prints, and what it never does

build 2321a4fc37a7 · 2026-10-22 · dev