Source document

docs/qa_reports/snapshot/PROVENANCE.md

Served verbatim from the project repository. Internal working document conventions apply: documents may reference file paths, branch names, and findings-ledger anchors from the repo.

Snapshot charter chronic-absenteeism provenance (ledger A.19 at full scale)

2026-06-10. Question: are the NYC School Quality Snapshot's CHARTER chronic-absenteeism (CA) values an independent series, or do they trace to the same NYSED/SIRS pipeline our site already serves charters from?

Companion artifacts (this folder): provenance-stats.json (all numbers below), provenance-pairs.csv (per charter school-year assembly), build_provenance.py (reproducible; reads the repo read-only plus two psql \copy extracts .tmp_*.csv).

Scope. 278 DB charters × Snapshot report years 2019/2021/2022/2023 (= school years 2018-19, 2020-21, 2021-22, 2022-23; 2019-20 has no NYSED publication). Snapshot values from data/quality/snapshot-values.json (student_chronic_absent, whole percents — 842/842 integers) plus the raw cached feeds (data/reference/snapshot/{EMS,HS}/<yr>/<dbn>.json) for the enrollment varname and feed-type routing. NYSED side from the committed data/sources/nysed/SRC*_{EM,HS}_CA_nyc.csv (All Students rows, own-year precedence, same as the loader). BEDS→DBN: schools.nysed_beds_code (260 BEDS) + the loader's name/relocation passes ported (20 + 7); 35 BEDS unmatched — the full list (in provenance-stats.json .inputs.unmatched_beds) was reviewed: all are schools absent from the schools directory (post-2020 openings like KIPP Beyond / Amber Inwood / Zeta Mount Eden, SA Bronx-5 / NYC-numbered sites, or closed schools like Roads 1), so none can have a Snapshot value and none can enter a pairwise test. Pairs with a Snapshot value AND at least one NYSED band rate: n = 139 / 218 / 228 / 238 by year, 823 total — in the expected 150–240/yr range.

Cross-check of the assembly: served chronic_absenteeism_rate (subgroup ALL) vs my pooled EM+HS reconstruction — 889 overlapping cells, 0 mismatches, max |diff| = 0.0. So candidate basis (d) "served" ≡ (c) "NYSED combined" by construction, confirmed empirically; the tables below report them separately only for completeness.

1. Candidate-basis agreement (Snapshot − basis, percentage points)

StratumBasisn≤0.5pp≤1.0pp≤1.5ppmedian |diff|median diffp10 / p90r
All(a) NYSED EM band74517.1%31.8%42.4%1.89−0.56−10.9 / +2.9
All(b) NYSED HS band2519.6%15.9%21.9%8.35−4.35−36.8 / +7.5
All(c) combined EM+HS79615.7%27.9%37.8%2.29−0.89−17.5 / +2.9
All(d) served value79615.7%27.9%37.8%2.29−0.89−17.5 / +2.9
EMS-feed (n=710)EM band71017.6%33.1%44.2%1.79−0.57−10.2 / +2.50.785
EMS-feedHS band1401.4%4.3%7.9%11.02−8.48
HS-feed (n=111)HS band11119.8%30.6%39.6%2.52−1.47−32.4 / +1.60.680
HS-feedEM band355.7%5.7%5.7%13.05+1.5

The matched-band basis (EM for EMS-feed schools, HS for HS-feed) dominates the crossed bands, as expected, but even the best basis agrees within ±1.0pp for only ~31–33% of school-years.

Report-year alignment verified (not an artifact of a lagged year): on the 489 EMS-feed pairs where both year y and y−1 EM rates exist, same-year median |diff| = 1.81pp vs lag-one-year 8.94pp.

2. K-inclusion test (Snapshot enrollment vs NYSED EM ENROLLMENT)

Scope: EMS-feed charters whose served grades top out at grade 8 (so Snapshot "enrollment" and the NYSED EM band cover the same school, differing only in K; no charter in the DB lists PK). Surplus = snapshot_enrollment − NYSED_EM_enrollment, as % of snapshot enrollment:

Groupnsurplus > 0surplus > 5%median surplusmedian surplus %p10 / p90 %
Serves K50495.8%80.2%+46.5 students+9.8%+2.6 / +18.1
No K9025.6%14.4%−7.0 students−2.4%−18.3 / +8.1

The contrast is the test (per-grade data does not exist for charters): K-serving charters carry a systematic ~one-grade enrollment surplus over NYSED's grades-1–8 band; non-K charters do not. Verified: the Snapshot's enrollment field is K-inclusive relative to NYSED's EM band. The A.19 anchor reproduces exactly at scale: 84X704 KIPP Academy Charter School, 2023 — Snapshot 29% / 851 vs NYSED EM 31.7% / 770.

Caveat (no-speculation): this verifies the enrollment varname's basis, not directly the CA denominator. And K-inclusion does not explain the CA rate differences: charters serving no K (grades wholly inside 1–8) agree with the EM band no better — median |diff| 2.95pp, r 0.83 (n=82) vs 1.87pp, r 0.76 for K-serving (n=485). If the Snapshot were the NYSED band ± a K term, the no-K stratum would match within rounding. It does not.

3. Exactness vs whole-percent rounding

Snapshot CA is published as whole percents, so a republication of NYSED's band rate would equal round(band) essentially always. Observed share where Snapshot = round(basis):

Comparisonn= rounded basiswithin ±0.5pp
EMS-feed vs EM band71017.5%17.6%
EMS-feed vs combined68914.8%15.0%
HS-feed vs HS band11119.8%19.8%
HS-feed vs combined10720.6%20.6%
All vs best of EM/HS/combined82319.2%

Verified: the Snapshot's charter CA values are not whole-percent roundings of NYSED's published band (or combined) rates — ~80% of values match no NYSED-derivable number even within rounding. Reinforcing this, the Snapshot carries CA values in 39 charter school-years (19/7/4/9 across 2019/2021/2022/2023) where NYSED's public file is suppressed or unreported, and the public file's suppressed cells cannot produce them.

District-school benchmark (what "computed by DOE with its own rules" looks like)

Same comparison for district (non-84) schools, where the Snapshot is known to be DOE-computed from DOE's own attendance system:

n=rounded≤1.0pp≤1.5ppmedian |diff|median diffr
District EMS-feed vs EM band3,70921.9%41.2%54.5%1.33+1.070.993
District HS-feed vs HS band1,54627.6%44.8%55.8%1.24−0.790.902
Charter EMS-feed vs EM band71017.5%33.1%44.2%1.79−0.570.785
Charter HS-feed vs HS band11119.8%30.6%39.6%2.52−1.470.680

District-school exactness is also low (~22–28%) — i.e., even where DOE computes from its own microdata, the Snapshot is not NYSED's number. Charters look like the same kind of relationship at the median, but with a much weaker correlation: district EMS r is 0.990–0.994 every year, charter EMS r is 0.73–0.83 every year (2019: 0.83, 2021: 0.73, 2022: 0.79, 2023: 0.80). The charter Snapshot series is genuinely noisier against NYSED than the district one; why is not established.

4. Success Academy and the DATA_REP_FLAG=N outage census

  • All 31 SA schools in the DB have Snapshot CA values in 2021–2023 and all 31 are null in both 2024 and 2025 (zero exceptions). In 2024, 30/31 are "report exists, CA = N/A" and 1/31 has no Snapshot report at all — so the wink-out is specifically the CA chain, not report non-publication. (SA's NYSED DATA_REP_FLAG=N starts in YEAR 2024, per A.13.)
  • Full overlap table, charters present in both sources (DRF exists 2021+):
YearnDRF=N & Snapshot nullDRF=N & Snapshot valueDRF=Y & Snapshot nullDRF=Y & Snapshot value
2021220002218
2022231201228
2023241300238
20242404408188
20252363306197

82/82 DRF=N charter school-years have no Snapshot CA value — zero counterexamples in five years. A school that stops reporting attendance to the state never has a Snapshot CA value.

  • Other networks/schools that wink out the same way (all "report exists, CA N/A"): Zeta (NYC 1 & 2, from 2022), NYC Charter School of the Arts (from 2023), and a 2024 wave — South Bronx Classical I–IV, La Cima, Imagine Me Leadership, Brooklyn RISE, Inwood Academy, Peninsula Prep, NYC Montessori, Neighborhood Charter Bronx — plus Girls Prep (NY & Bronx) and Boys Prep in 2025. SA is the largest but not a special case.

5. Verdict

Verified:

  1. The Snapshot's charter CA values are computed, not copied: they are not whole-percent roundings of NYSED's published EM/HS/combined rates (~17–20% rounding-match vs ~100% expected for republication), they appear where NYSED's public file is suppressed, and their enrollment basis is K-inclusive where NYSED's is grades-1–8 (95.8% positive surplus for K-serving charters, median +9.8% ≈ one grade; non-K charters ~0). Year alignment Snapshot-report-year = school-year-end confirmed.
  2. The difference from NYSED is not just K-arithmetic: no-K pure-band charters disagree as much as K-serving ones.
  3. Reporting outages co-move perfectly with the state chain: 82/82 DATA_REP_FLAG=N charter school-years (2021–2025) have no Snapshot CA value, across at least five networks; all 31 SA schools wink out exactly when their SIRS reporting stops, with the Snapshot report itself still published.
  4. Our served charter values are exactly NYSED's combined bands (889 cells, 0 mismatches), so any Snapshot-vs-served comparison is a Snapshot-vs-NYSED comparison.

Not established: the Snapshot's exact computation basis for charters (denominator rules, enrollment-day thresholds, data as-of date — A.6's accountability-cohort hypothesis remains open); whether DOE receives charter attendance through the NYSED/SIRS chain itself or through a parallel direct submission that fails for the same schools at the same time (the 82/82 co-movement cannot distinguish "shared pipeline" from "shared school behavior feeding two pipelines"); and why charter Snapshot↔NYSED correlation (r 0.73–0.83) is so much weaker than district (r 0.99).

Practical rating: PARTIALLY independent as a charter cross-check.

  • Can catch: gross serving errors (wrong school join, year misalignment, scale errors) — it is an independently computed number correlating ~0.7–0.8 with the served series; coverage gaps (it sometimes has values where NYSED suppresses).
  • Cannot catch: anything originating in the charters' state attendance reporting itself — when the state chain fails, the Snapshot goes dark in lockstep, so upstream missingness or garbage would plausibly propagate to both publishers; and it cannot arbitrate discrepancies smaller than a few points, because its own basis differs from NYSED's by unestablished rules (median ~1.8pp, only ~40% within ±1.5pp even on the matched band).