--- slug: the-same-air-five-verdicts passed: 2026-11-02 by: ccr-81332fb3-8nrbtu wave, one independent agent on oversight/claims-pass.md (pre-deploy; reader check on local copies with AW_DIR; every source-record entry read against its kept copy and live source) checked: 145 confirmed: 130 wrong: 0 unverifiable: 0 observed: 15 stale: 0 --- # Claims pass: The Same Air, Five Verdicts Live page: not deployed yet; step 2 skipped. Reader check (pre-deploy, local copies): `AW_DIR= node verify-the-same-air-five-verdicts.mjs`, run from a second empty directory holding only the verifier: exit 0, 260 passed, 0 failed. Step 6: the page prints no transcript of the verifier's output; even so, in seven scratch copies I changed one figure in one sentence each ("42,901 of them (14.0%)" to 14.1%, "213,389" to 213,398, "changes at 53" to 54, "(15.1%)" to 15.2%, "1,376 of the rows" to 1,367, "rounds to 147" to 146, "452,388 rows" to 452,383) and left everything else true: every run exits 1 (258 passed, 2 failed). `--mutate` exits 1 (470 passed, 11 failed); `--deep` exits 0 (264 passed, 0 failed, 21.5 s). With aw-* house blocks, the Cloudflare beacon and a pulse script added to a copy: exit 0, 260 passed; with a planted 14.1% as well: exit 1. Mutation sweep: the-same-air-five-verdicts: 838 mutated, 838 caught, 0 survived (text 0, meta 0, year 0). `assay/sources.mjs the-same-air-five-verdicts --online`: 22 in the repository, 41 FOUND, 70 UNREADABLE, 2 NOT FOUND; the 70 UNREADABLE are PDFs, so on 2026-11-02 I fetched all eleven text PDFs again (89 FR 16202, Defra 2013 report and 2011 letter, ETC HE 2024/17, CPCB About_AQI and NAQI report, TAD 2026 and 2018, HJ 633-2012, the AirData PM2.5 advisory, the D.C. Circuit opinion), ran pdftotext, and found every excerpt in them; HJ 633-2026 has no text layer (pdftotext gives 9 bytes), so I rendered its PDF pages 3 to 6 and read the foreword, Table 1, 4.2.2, 4.2.3, formula (1), 4.2.6 and Table 3 from the images myself. The 2 NOT FOUND (card-uk-today, t-usPre) are flattened table cells: every cell is in the live UK-AIR page and in the eCFR XML as of 2024-01-01 (which needs `curl --compressed`). The 2023 observations were remade with my own Python from EPA's zip as served on 2026-11-02 (same sha256 as the page's). ## Claims - CONFIRMED | and they return five verdicts: Unhealthy in the United States, High in the UK, 良 in China, Satisfactory in India, and Very poor on the European index | public/strata/the-same-air-five-verdicts/engine.mjs | recomputed by hand from the five tables as read in their sources: US (200-151)/(125.4-55.5)x(58.0-55.5)+151 = 152.75, nearest 153, Unhealthy; UK 54-58 index 7, High; China 50+50/25x23 = 96, 良; India 51+49/29x27 = 96.6, Satisfactory; EU daily 51-75 Very poor - CONFIRMED | Very poor on the European index's daily table, which the EEA retired in July 2025 | https://www.eea.europa.eu/en/newsroom/news/nordic-capitals-rank-as-cleanest-in-updated-european-city-air-quality-viewer | press release Published 04 Jul 2025 says hourly data is now used for PM2.5, "which were presented until now as 24-hour averages", and the updated index is live "as of today" - CONFIRMED | Slide the number and watch them agree on their cleanest word only from 0 to 9. | public/strata/the-same-air-five-verdicts/engine.mjs | recomputed: US Good ends at 9.0, UK Low at 35, China 优 at 35, India Good at 30, EU daily Good at 10; at 10 the US is Moderate (index 51) - OBSERVED | scored again with the US table of 2024, 14.0% of the 2023 site-days in EPA's own data file change category | recreated: python3 -I recount.py on daily_88101_2023.zip fetched 2026-11-02 (sha256 4b40502e...833b, same as the page's) and regrade.py on airdata-2023.json | 306,215 site-days, 42,901 change (14.0101%), the same as the page - OBSERVED | graded with the US table of 2024, 14.0% of the 2023 days at the US monitoring sites in one EPA data file get a different label | recreated: python3 -I recount.py on daily_88101_2023.zip fetched 2026-11-02 (sha256 4b40502e...833b, same as the page's) and regrade.py on airdata-2023.json | same count as dek-recount; site-days in one of the two PM2.5 mass files (88101), as the plain words say - CONFIRMED | 40 CFR Part 58, Appendix G, as revised from 6 May 2024; in force as of 1 November 2026, with two Supreme Court petitions pending | https://www.govinfo.gov/content/pkg/FR-2024-03-06/pdf/2024-02637.pdf | 89 FR 16202 DATES: effective May 6, 2024; eCFR versioner shows no amendment to App. G after 2024-05-06 (Title 40 up to date as of 2026-10-29); SCOTUS dockets 26-277 and 26-298 show no disposition on 2026-11-02 - CONFIRMED | Daily Air Quality Index, April 2013 table | https://uk-air.defra.gov.uk/assets/documents/reports/cat14/1304251155_Update_on_Implementation_of_the_DAQI_April_2013_Final.pdf | title page dated April 2013; "replaces that launched in January 2012" (p. 4) - CONFIRMED | Daily Air Quality Index, April 2013 table | https://uk-air.defra.gov.uk/air-pollution/daqi?view=more-info&pollutant=pm25 | live UK-AIR PM2.5 tab: 0-11 12-23 24-35 36-41 42-47 48-53 54-58 59-64 65-70 71 or more, the 2013 bands; every cell found (tool NOT FOUND only because the table is flattened) - CONFIRMED | HJ 633-2026, daily report, from 1 March 2026 | https://www.mee.gov.cn/xxgk2018/xxgk/xxgk01/202602/t20260224_1144403.html | Announcement 2026 No. 14: 以上标准自2026年3月1日起实施; the standard cover reads 2026-03-01实施 - CONFIRMED | European Air Quality Index, daily table used until 4 July 2025 | https://www.eionet.europa.eu/etcs/etc-he/products/etc-he-products/etc-he-reports/etc-he-report-2024-17-eeas-revision-of-the-european-air-quality-index-bands/@@download/file/ETC%20HE%20Report%202024-17_Gonzalez%20Ortiz.pdf | ETC HE 2024/17 Table 1.1 "Current EEA's EAQI bands" PM2.5 24h 0-10 11-20 21-25 26-50 51-75 76-800; end date from the 04 Jul 2025 press release - CONFIRMED | From 56 to 60 the US says Unhealthy, the fourth of its six words, while China and India, which also have six, both say their second. | public/strata/the-same-air-five-verdicts/engine.mjs | recomputed: from 56 (US 151.35, Unhealthy) to 60 (China IAQI 100, India 100) the levels are 4, 2, 2; at 61 China and India both move to level 3 - CONFIRMED | which also have six, both say their second | https://cpcb.gov.in/displaypdf.php?id=bmF0aW9uYWwtYWlyLXF1YWxpdHktaW5kZXgvQWJvdXRfQVFJLnBkZg== | About_AQI para 2: "There are six AQI categories, namely Good, Satisfactory, Moderately polluted, Poor, Very Poor, and Severe." - CONFIRMED | which also have six, both say their second | https://www.mee.gov.cn/ywgz/fgbz/bz/bzwb/jcffbz/202602/W020260225366493492011.pdf | read from my own render of PDF page 5 (printed p. 2): Table 1 has six rows, 一级 优 to 六级 严重污染 - CONFIRMED | The US rule says | https://www.ecfr.gov/api/versioner/v1/full/2026-10-01/title-40.xml?part=58&appendix=Appendix%20G%20to%20Part%2058 | eCFR 2026-10-01 XML, 3.4 a.i(A): PM2.5—truncate to 1 decimal place; verbatim - CONFIRMED | and then Round the index to the nearest integer. | https://www.ecfr.gov/api/versioner/v1/full/2026-10-01/title-40.xml?part=58&appendix=Appendix%20G%20to%20Part%2058 | 3.4 a.iv: "iv. Round the index to the nearest integer."; verbatim - CONFIRMED | EPA's own manual rounds a half up: one of its worked examples ends | https://document.airnow.gov/technical-assistance-document-for-the-reporting-of-daily-air-quailty.pdf | TAD 2026 p. 15: "(0.007) + 101 = 125.5 = 126"; 49 x 0.007 / 0.014 = 24.5 exactly, so the half goes up - CONFIRMED | China's standard rounds the concentration to a whole number under GB/T 8170 | https://www.mee.gov.cn/ywgz/fgbz/bz/bzwb/jcffbz/202602/W020260225366493492011.pdf | 4.2.2 on my render of printed p. 2: 浓度单位为μg/m3,按照GB/T 8170要求修约到整数 - CONFIRMED | and then rounds every index up | https://www.mee.gov.cn/ywgz/fgbz/bz/bzwb/jcffbz/202602/W020260225366493492011.pdf | 4.2.6 on my render of printed p. 3, verbatim: 环境空气质量指数及空气质量分指数的计算结果应全部向上进位取整数,不保留小数。 - CONFIRMED | Defra says that rounding | https://uk-air.defra.gov.uk/assets/documents/reports/cat14/1304251155_Update_on_Implementation_of_the_DAQI_April_2013_Final.pdf | p. 2, 3): "...immediately before comparing the result with the index and has to be done only once."; verbatim - CONFIRMED | and that All comparisons with the index should be undertaken | https://uk-air.defra.gov.uk/assets/documents/reports/cat14/1304251155_Update_on_Implementation_of_the_DAQI_April_2013_Final.pdf | p. 2, 4): verbatim, including the line break the PDF puts before "to integers" - CONFIRMED | Its own illustration: | https://uk-air.defra.gov.uk/assets/documents/reports/cat14/1304251155_Update_on_Implementation_of_the_DAQI_April_2013_Final.pdf | p. 2, 3): verbatim, including the source's own slip "to and integer" and its μ character - CONFIRMED | The EU and Indian tables are printed in whole numbers with gaps between their bands, from 5 to 6 and from 30 to 31, and we found no rule for what falls in between in the documents we read. | https://www.eionet.europa.eu/etcs/etc-he/products/etc-he-products/etc-he-reports/etc-he-report-2024-17-eeas-revision-of-the-european-air-quality-index-bands/@@download/file/ETC%20HE%20Report%202024-17_Gonzalez%20Ortiz.pdf | Table 5.2 1h 0-5 6-15; About_AQI Good 0-30, Satisfactory 31-60. I searched the ETC report, the live EEA index page and both CPCB texts for round/integer/decimal: only band rounding (ETC 3.3.5) and unit conversions "rounded off" (CPCB table notes) came up, the positive control; no rule for values between bands - CONFIRMED | from 5 to 6 and from 30 to 31 | https://cpcb.gov.in/displaypdf.php?id=bmF0aW9uYWwtYWlyLXF1YWxpdHktaW5kZXgvQWJvdXRfQVFJLnBkZg== | About_AQI table, PM2.5 column: Good 0-30, Satisfactory 31-60 - CONFIRMED | China's Table 1 starts at an index of 1 | https://www.mee.gov.cn/ywgz/fgbz/bz/bzwb/jcffbz/202602/W020260225366493492011.pdf | my render of printed p. 2: Table 1 first row 1~50; 4.1.1 (printed p. 1): 空气质量指数的范围为1~500 - CONFIRMED | EPA, Technical Assistance Document, May 2026 PM2.5 35.9 102 | https://document.airnow.gov/technical-assistance-document-for-the-reporting-of-daily-air-quailty.pdf | TAD 2026 p. 15: (150-101)/(55.4-35.5) x (35.9-35.5) + 101 = 102; recomputed 101.985 - CONFIRMED | 40 CFR Part 58, Appendix G, equation 2 PM10 210 128 | https://www.govinfo.gov/content/pkg/FR-2024-03-06/pdf/2024-02637.pdf | 89 FR 16405, "Equation 2 to Appendix G to Part 58": (150-101)/(254-155) x (210-155) + 101 = 128; recomputed 128.22. (The step text says "Apply equation 21", a footnote run-in; the equation itself is labelled 2.) - CONFIRMED | CPCB, About National Air Quality Index PM2.5 31, 60, 45 51, 100, 75 | https://cpcb.gov.in/displaypdf.php?id=bmF0aW9uYWwtYWlyLXF1YWxpdHktaW5kZXgvQWJvdXRfQVFJLnBkZg== | About_AQI para 3 verbatim; recomputed 51 + 49/29 x 14 = 74.655, and 51, 100 exactly at 31 and 60 - CONFIRMED | EEA, ETC HE Report 2024/17, Table 3.8 daily 25, 50, 75 47, 93, 139 | https://www.eionet.europa.eu/etcs/etc-he/products/etc-he-products/etc-he-reports/etc-he-report-2024-17-eeas-revision-of-the-european-air-quality-index-bands/@@download/file/ETC%20HE%20Report%202024-17_Gonzalez%20Ortiz.pdf | Table 3.8: PM2.5 25 50 75 to 47 93 139; recomputed 1.849 x d + 0.476 = 46.701, 92.926, 139.151 - CONFIRMED | US, from 6 May 2024: 0.0–9.0 Good (0–50); 9.1–35.4 Moderate (51–100); 35.5–55.4 Unhealthy for Sensitive Groups (101–150); 55.5–125.4 Unhealthy (151–200); 125.5–225.4 Very Unhealthy (201–300); 225.5 and above Hazardous (301 and above, 500 at 325.4). | https://www.ecfr.gov/api/versioner/v1/full/2026-10-01/title-40.xml?part=58&appendix=Appendix%20G%20to%20Part%2058 | eCFR 2026-10-01 Table 2 PM2.5 24-hour: 0.0-9.0, 9.1-35.4, 35.5-55.4, 55.5-125.4, 125.5-225.4, 225.5+ (301+); Table 1 descriptors - CONFIRMED | 500 at 325.4 | https://www.ecfr.gov/api/versioner/v1/full/2026-10-01/title-40.xml?part=58&appendix=Appendix%20G%20to%20Part%2058 | Table 2 footnote 4: "PM 2.5 24-hour—325.4 µg/m 3" - CONFIRMED | US, before 6 May 2024: 0.0–12.0 Good (0–50); 12.1–35.4 Moderate (51–100); 35.5–55.4 Unhealthy for Sensitive Groups (101–150); 55.5–150.4 Unhealthy (151–200); 150.5–250.4 Very Unhealthy (201–300); 250.5–350.4 Hazardous (301–400); 350.5–500.4 Hazardous (401–500). | https://www.ecfr.gov/api/versioner/v1/full/2024-01-01/title-40.xml?part=58&appendix=Appendix%20G%20to%20Part%2058 | eCFR 2024-01-01 Table 2 PM2.5: 0.0-12.0, 12.1-35.4, 35.5-55.4, 55.5-150.4, 150.5-250.4, 250.5-350.4 (301-400), 350.5-500.4 (401-500); all seven rows found (tool NOT FOUND only because the table is flattened) - CONFIRMED | UK, April 2013 table: Low 0–11 (1), 12–23 (2), 24–35 (3); Moderate 36–41 (4), 42–47 (5), 48–53 (6); High 54–58 (7), 59–64 (8), 65–70 (9); Very High 71 or more (10). | https://uk-air.defra.gov.uk/assets/documents/reports/cat14/1304251155_Update_on_Implementation_of_the_DAQI_April_2013_Final.pdf | Table 1 (April 2013), PM2.5 column, all ten rows: 0-11 ... 65-70, 71 or more; bands Low 1-3, Moderate 4-6, High 7-9, Very High 10 - CONFIRMED | UK, January 2012 table: Low 0–11 (1), 12–23 (2), 24–34 (3); Moderate 35–41 (4), 42–46 (5), 47–52 (6); High 53–58 (7), 59–64 (8), 65–69 (9); Very High 70 or more (10). | https://uk-air.defra.gov.uk/assets/documents/Notification_of_changes_to_the_air_quality_index.pdf | letter of 1st December 2011, Table 1, PM2.5 column: 0-11, 12-23, 24-34, 35-41, 42-46, 47-52, 53-58, 59-64, 65-69, 70 or more - CONFIRMED | China, HJ 633-2026: IAQI 0, 50, 100, 150, 200, 300, 400, 500 at 0, 35, 60, 115, 150, 250, 350, 500 | https://www.mee.gov.cn/ywgz/fgbz/bz/bzwb/jcffbz/202602/W020260225366493492011.pdf | my render of printed p. 3, Table 3, PM2.5 日平均 column: 0, 35, 60, 115, 150, 250, 350, 500 at IAQI 0 to 500 - CONFIRMED | China, HJ 633-2012: IAQI 0, 50, 100, 150, 200, 300, 400, 500 at 0, 35, 75, 115, 150, 250, 350, 500; the same six categories, the first written 0–50. | https://www.mee.gov.cn/ywgz/fgbz/bz/bzwb/jcffbz/201203/W020250407406362045613.pdf | HJ 633-2012 Table 1 last column 0, 35, 75, 115, 150, 250, 350, 500; Table 2 first row 0~50, six categories as in 2026 - CONFIRMED | India, CPCB: 0–30 Good (0–50); 31–60 Satisfactory (51–100); 61–90 Moderately polluted (101–200); 91–120 Poor (201–300); 121–250 Very Poor (301–400); 250+ Severe (401–500). | https://cpcb.gov.in/displaypdf.php?id=bmF0aW9uYWwtYWlyLXF1YWxpdHktaW5kZXgvQWJvdXRfQVFJLnBkZg== | About_AQI table, PM2.5 column and AQI column, all six rows - CONFIRMED | EU, daily table until 4 July 2025: 0–10 Good; 11–20 Fair; 21–25 Moderate; 26–50 Poor; 51–75 Very poor; 76–800 Extremely poor. | https://www.eionet.europa.eu/etcs/etc-he/products/etc-he-products/etc-he-reports/etc-he-report-2024-17-eeas-revision-of-the-european-air-quality-index-bands/@@download/file/ETC%20HE%20Report%202024-17_Gonzalez%20Ortiz.pdf | Table 1.1 PM2.5 24h row - CONFIRMED | EU, hourly table since 4 July 2025: 0–5 Good; 6–15 Fair; 16–50 Moderate; 51–90 Poor; 91–140 Very poor; >140 Extremely poor. | https://www.eionet.europa.eu/etcs/etc-he/products/etc-he-products/etc-he-reports/etc-he-report-2024-17-eeas-revision-of-the-european-air-quality-index-bands/@@download/file/ETC%20HE%20Report%202024-17_Gonzalez%20Ortiz.pdf | Table 5.2 "Final agreed updated EEA European air quality index" PM2.5 1h 0-5 6-15 16-50 51-90 91-140 >140; the live airindex.eea.europa.eu page shows the same row - CONFIRMED | India prints Very Poor as 121–250 and Severe as 250+, so 250 sits in both | https://cpcb.gov.in/displaypdf.php?id=bmF0aW9uYWwtYWlyLXF1YWxpdHktaW5kZXgvQWJvdXRfQVFJLnBkZg== | About_AQI: Very Poor 121-250, Severe 250+ - CONFIRMED | Chinese category names are the standard's own; the glosses beside them are ours, because HJ 633-2026 gives no English names. | https://www.mee.gov.cn/ywgz/fgbz/bz/bzwb/jcffbz/202602/W020260225366493492011.pdf | all nine pages rendered: English appears only in the title and the 3.1-3.3 term definitions; Table 1 categories are Chinese only - CONFIRMED | Until 4 July 2025 the European Environment Agency graded PM2.5 on a day, as the other four tables on this page still do | https://www.eea.europa.eu/en/newsroom/news/nordic-capitals-rank-as-cleanest-in-updated-european-city-air-quality-viewer | press release of 04 Jul 2025 (PM "presented until now as 24-hour averages") and ETC section 1 (24-hour running means for PM2.5) - CONFIRMED | its index used | https://www.eionet.europa.eu/etcs/etc-he/products/etc-he-products/etc-he-reports/etc-he-report-2024-17-eeas-revision-of-the-european-air-quality-index-bands/@@download/file/ETC%20HE%20Report%202024-17_Gonzalez%20Ortiz.pdf | ETC section 1, p. 6, verbatim - MINOR | That day it announced: | https://www.eea.europa.eu/en/newsroom/news/nordic-capitals-rank-as-cleanest-in-updated-european-city-air-quality-viewer | words verbatim, spacing not: the release as displayed reads "(PM2.5 and PM10)" (rendered HTML: (PM2.5 and PM10)); the spaced "(PM 2.5 and PM 10 )" exists only in the page's window.__data script, which the kept copy was cut from - CONFIRMED | Its technical report set Good and Fair at the World Health Organization's 2021 guideline values for PM2.5, 5 for a year and 15 for a day, and used them for single hours as they stand | https://www.eionet.europa.eu/etcs/etc-he/products/etc-he-products/etc-he-reports/etc-he-report-2024-17-eeas-revision-of-the-european-air-quality-index-bands/@@download/file/ETC%20HE%20Report%202024-17_Gonzalez%20Ortiz.pdf | Table 1.2: PM2.5 annual AQG 5, 24-hour AQG 15 (WHO 2021); 3.3.1 makes them the upper limits of good and fair; Table 3.9 and 5.2 use 0-5, 6-15 for 1h unconverted - CONFIRMED | and used them for single hours as they stand: | https://www.eionet.europa.eu/etcs/etc-he/products/etc-he-products/etc-he-reports/etc-he-report-2024-17-eeas-revision-of-the-european-air-quality-index-bands/@@download/file/ETC%20HE%20Report%202024-17_Gonzalez%20Ortiz.pdf | 3.3.1, p. 13, verbatim with the source's curly quotes - CONFIRMED | For the three bands above, it kept its old daily edges, 25, 50 and 75, and converted them to hours with a straight line fitted to European stations from 2018 to 2022, between a day's mean and that day's highest hour | https://www.eionet.europa.eu/etcs/etc-he/products/etc-he-products/etc-he-reports/etc-he-report-2024-17-eeas-revision-of-the-european-air-quality-index-bands/@@download/file/ETC%20HE%20Report%202024-17_Gonzalez%20Ortiz.pdf | 3.3.2: 25, 50, 75 for moderate, poor, very poor, "consistency with the 24-hours bands defined in the current index is assured"; 3.3.3 and Figure 3.1: regression of the daily hourly maximum on the daily mean, European stations, 2018-2022 - CONFIRMED | between a day's mean and that day's highest hour: | https://www.eionet.europa.eu/etcs/etc-he/products/etc-he-products/etc-he-reports/etc-he-report-2024-17-eeas-revision-of-the-european-air-quality-index-bands/@@download/file/ETC%20HE%20Report%202024-17_Gonzalez%20Ortiz.pdf | Table 3.7, verbatim - CONFIRMED | That gives 47, 93 and 139. | https://www.eionet.europa.eu/etcs/etc-he/products/etc-he-products/etc-he-reports/etc-he-report-2024-17-eeas-revision-of-the-european-air-quality-index-bands/@@download/file/ETC%20HE%20Report%202024-17_Gonzalez%20Ortiz.pdf | Table 3.8 - CONFIRMED | The published table rounds 93 and 139 to the nearest ten, 90 and 140, and moves 47 to 50 to coincide with an information threshold and an alert threshold in the revised EU Ambient Air Quality Directive. | https://www.eionet.europa.eu/etcs/etc-he/products/etc-he-products/etc-he-reports/etc-he-report-2024-17-eeas-revision-of-the-european-air-quality-index-bands/@@download/file/ETC%20HE%20Report%202024-17_Gonzalez%20Ortiz.pdf | 3.3.5: refined "to round values and ... make them coincident with the information and alert thresholds in the revised AAQD (EU, 2024)"; PM2.5 47 to 50 (1-hour information threshold and 24-hour alert threshold), 93 to 90 and 139 to 140 rounded to the nearest ten - CONFIRMED | Put through the same function they would have become 9.7 and 28.2: that is this page's arithmetic, not the EEA's. | public/strata/the-same-air-five-verdicts/engine.mjs | recomputed 1.849 x 5 + 0.476 = 9.721 and 1.849 x 15 + 0.476 = 28.211; labelled as the page's own arithmetic - CONFIRMED | For real-time reporting EPA uses its NowCast | https://document.airnow.gov/technical-assistance-document-for-the-reporting-of-daily-air-quailty.pdf | TAD 2026 Q and A: the NowCast relates short-term data to the AQI "for the purposes of real-time reporting" - CONFIRMED | For real-time reporting EPA uses its NowCast: | https://document.airnow.gov/technical-assistance-document-for-the-reporting-of-daily-air-quailty.pdf | TAD 2026, How the NowCast is calculated, verbatim - CONFIRMED | When the air is changing, the latest hours weigh more. | https://document.airnow.gov/technical-assistance-document-for-the-reporting-of-daily-air-quailty.pdf | same passage: "When air quality is variable, the most recent hours are weighted more" - CONFIRMED | Defra grades | https://uk-air.defra.gov.uk/air-pollution/daqi?view=more-info&pollutant=pm25 | live UK-AIR PM2.5 tab, verbatim (page quotes from "the daily mean") - CONFIRMED | and needs 18 of a day's hourly means to make a daily one | https://uk-air.defra.gov.uk/assets/documents/reports/cat14/1304251155_Update_on_Implementation_of_the_DAQI_April_2013_Final.pdf | 2013 report p. 2, 2): "18 hourly mean concentrations are required to calculate a daily mean." - CONFIRMED | CPCB needs 16. | https://cpcb.gov.in/displaypdf.php?id=bmF0aW9uYWwtYWlyLXF1YWxpdHktaW5kZXgvRklOQUwtUkVQT1JUX0FRSV8ucGRm | CPCB report p. 44: "a minimum of 16 hours' data is considered necessary for calculating subindex." - CONFIRMED | Since 1 March 2026 China's real-time report grades a single hour against its daily column | https://www.mee.gov.cn/ywgz/fgbz/bz/bzwb/jcffbz/202602/W020260225366493492011.pdf | my render: 4.2.3 real-time report uses PM2.5 1小时平均, and the BP_Hi/BP_Lo definitions send a 1-hour PM2.5 value to Table 3's 日平均 column; in force 2026-03-01 - CONFIRMED | for a 1-hour PM2.5 value, its formula says | https://www.mee.gov.cn/ywgz/fgbz/bz/bzwb/jcffbz/202602/W020260225366493492011.pdf | formula (1), BP_Hi definition on my render of printed p. 3, verbatim - CONFIRMED | one of the changes the new standard lists: | https://www.mee.gov.cn/ywgz/fgbz/bz/bzwb/jcffbz/202602/W020260225366493492011.pdf | foreword (printed p. II) on my render, and the live MEE standard page, verbatim - CONFIRMED | The final rule of 6 March 2024 took effect on 6 May 2024 | https://www.govinfo.gov/content/pkg/FR-2024-03-06/pdf/2024-02637.pdf | Federal Register Vol. 89, No. 45, Wednesday, March 6, 2024, p. 16202; DATES: effective May 6, 2024 - CONFIRMED | The final rule of 6 March 2024 | https://www.govinfo.gov/content/pkg/FR-2024-03-06/pdf/2024-02637.pdf | masthead of p. 16202 - CONFIRMED | lowered the top of Good from 12.0 to 9.0, and the tops of Unhealthy and Very Unhealthy from 150.4 and 250.4 to 125.4 and 225.4 | https://www.govinfo.gov/content/pkg/FR-2024-03-06/pdf/2024-02637.pdf | 89 FR summary: AQI 50 to 9.0; 200, 300 and 500 to 125.4, 225.4, 325.4; the old 12.0, 150.4, 250.4 from eCFR 2024-01-01 Table 2 - CONFIRMED | On the slider's 301 whole numbers the word changes at 53: 10 to 12, 126 to 150, and 226 to 250. | public/strata/the-same-air-five-verdicts/engine.mjs | recomputed: the US word differs between the two tables at 10-12, 126-150 and 226-250, 3 + 25 + 25 = 53 whole numbers - CONFIRMED | In April 2013 Defra moved the start of the Moderate, High and Very High bands up by one microgram | https://uk-air.defra.gov.uk/assets/documents/reports/cat14/1304251155_Update_on_Implementation_of_the_DAQI_April_2013_Final.pdf | 2013 report p. 3-4: moderate minimum up one µg/m3, high and very high likewise; PM2.5 starts 35, 53, 70 in 2012 and 36, 54, 71 in 2013 - CONFIRMED | up by one microgram (its report: | https://uk-air.defra.gov.uk/assets/documents/reports/cat14/1304251155_Update_on_Implementation_of_the_DAQI_April_2013_Final.pdf | p. 3, verbatim (the page ends the quotation before "and that the ratio of PM2.5 to PM10 is maintained", without changing its sense) - CONFIRMED | The index changes at 35, 47, 53 and 70, the band at 35, 53 and 70. | public/strata/the-same-air-five-verdicts/engine.mjs | recomputed from the two tables: index differs at 35, 47, 53, 70; band at 35 (Moderate to Low), 53 (High to Moderate), 70 (Very High to High) - CONFIRMED | The April 2013 report then said: | https://uk-air.defra.gov.uk/assets/documents/reports/cat14/1304251155_Update_on_Implementation_of_the_DAQI_April_2013_Final.pdf | p. 4, verbatim - OBSERVED | We did not find out whether the archive was recalculated; that is the instruction, not an outcome. | research/the-same-air-five-verdicts/README.md | README line 106 lists "Whether UK-AIR's archive was recalculated after the 2013 instruction." among what was not checked; the page states it as an open question, not a finding - CONFIRMED | HJ 633-2012 put an IAQI of 100 at 75; HJ 633-2026, in force from 1 March 2026, puts it at 60 | https://www.mee.gov.cn/ywgz/fgbz/bz/bzwb/jcffbz/201203/W020250407406362045613.pdf | HJ 633-2012 Table 1 IAQI 100 at 75 (PM2.5 24h); HJ 633-2026 Table 3 IAQI 100 at 60 (my render) - CONFIRMED | The ministry repealed the old standard the same day: | https://www.mee.gov.cn/xxgk2018/xxgk/xxgk01/202602/t20260224_1144403.html | live announcement page, verbatim - CONFIRMED | Of the air-quality standard it revised alongside, GB 3095-2026, an official of its Department of Atmospheric Environment said, answering reporters' questions | https://www.mee.gov.cn/ywdt/zbft/202602/t20260225_1144479.shtml | title: 生态环境部大气环境司有关负责人就《环境空气质量标准》修订答记者问 2026-02-24; the text says GB 3095-2026 was issued together with HJ 633-2026 and HJ 663-2026 - CONFIRMED | said, answering reporters' questions: | https://www.mee.gov.cn/ywdt/zbft/202602/t20260225_1144479.shtml | live interview page, verbatim (a clause of a longer sentence) - CONFIRMED | The EEA changed what it grades, from a day to an hour | https://www.eea.europa.eu/en/newsroom/news/nordic-capitals-rank-as-cleanest-in-updated-european-city-air-quality-viewer | press release of 04 Jul 2025: hourly data now used for PM - CONFIRMED | EPA says of its AirData service: | https://www.epa.gov/outdoor-air-quality-data/do-all-aqi-plots-use-most-current-aqi-breakpoints-regardless-which-year | live AirData FAQ, verbatim - OBSERVED | So the 2023 PM2.5 figures it serves today carry index values from the table that took effect in May 2024. | recreated: python3 -I recount.py on daily_88101_2023.zip fetched 2026-11-02 (sha256 4b40502e...833b, same as the page's) and regrade.py on airdata-2023.json | the 2024 table, applied to the truncated daily mean (negatives as 0.0), gives EPA's AQI on 452,388 of 452,388 rows not marked Excluded - CONFIRMED | which EPA lists with 847,162 rows as of 25 June 2026 | https://aqs.epa.gov/aqsweb/airdata/download_files.html | live listing: daily_88101_2023.zip 847,162 Rows 9,687 KB As of 2026-06-25 - OBSERVED | on every one of the 452,388 rows that carry an AQI and are not marked as excluded events, its index equals EPA's | recreated: python3 -I recount.py on daily_88101_2023.zip fetched 2026-11-02 (sha256 4b40502e...833b, same as the page's) and regrade.py on airdata-2023.json | 452,527 rows with an AQI, 139 Excluded, 452,388 not Excluded, all 452,388 reproduced - OBSERVED | Taking each monitoring site's highest value each day gives 306,215 site-days. | recreated: python3 -I recount.py on daily_88101_2023.zip fetched 2026-11-02 (sha256 4b40502e...833b, same as the page's) and regrade.py on airdata-2023.json | 306,215 site-days, histogram equal to airdata-2023.json siteDays - OBSERVED | 42,901 of them (14.0%) get a different word: 42,795 move from Good to Moderate, 98 from Unhealthy to Very Unhealthy, and 8 from Very Unhealthy to Hazardous | recreated: python3 -I recount.py on daily_88101_2023.zip fetched 2026-11-02 (sha256 4b40502e...833b, same as the page's) and regrade.py on airdata-2023.json | 42,901 moved: 42,795 Good to Moderate, 98 Unhealthy to Very Unhealthy, 8 Very Unhealthy to Hazardous; table 256,184/47,441/1,528/958/103/1 before and 213,389/90,236/1,528/860/193/9 after - CONFIRMED | which EPA's PM2.5 Data Advisory of August 26, 2024 recommends excluding in favour of their corrected copies | https://aqs.epa.gov/aqsweb/airdata/Data_Advisory_PM25_88101_Pregen_Files.pdf | advisory "(Posted August 26, 2024)": exclude the original 236 and 238 data and use 736 and 738, whose method names end "(Corrected)" - CONFIRMED | Keep the original Teledyne T640 and T640X rows (method codes 236 and 238) | https://aqs.epa.gov/aqsweb/airdata/Data_Advisory_PM25_88101_Pregen_Files.pdf | advisory: original T640 (236) and T640X (238); method names "Teledyne T640 at 5.0 LPM", "Teledyne T640X at 16.67 LPM" - OBSERVED | keeping the original T640 rows gives 46,268 of 306,422 (15.1%) | recreated: python3 -I recount.py on daily_88101_2023.zip fetched 2026-11-02 (sha256 4b40502e...833b, same as the page's) and regrade.py on airdata-2023.json | keeping 236/238: 46,268 of 306,422 (15.0994%), histogram equal to siteDaysWithT640Original - CONFIRMED | EPA's Technical Assistance Document (May 2026) works a 1-hour ozone value of 0.162 ppm and concludes | https://document.airnow.gov/technical-assistance-document-for-the-reporting-of-daily-air-quailty.pdf | TAD 2026 p. 15: "Suppose you had a 1-hour value of 0.162 ppm and an 8-hour value of 0.078 ppm."; cover EPA-403/B-26-003, May 2026 - CONFIRMED | works a 1-hour ozone value of 0.162 ppm and concludes: | https://document.airnow.gov/technical-assistance-document-for-the-reporting-of-daily-air-quailty.pdf | TAD 2026 p. 15, verbatim - CONFIRMED | which its rule rounds to 147. | https://document.airnow.gov/technical-assistance-document-for-the-reporting-of-daily-air-quailty.pdf | step 4 "Round the index to the nearest integer."; the example's own terms give 49/0.039 x 0.037 + 101 = 147.487, nearest 147, while it prints 148 - CONFIRMED | The September 2018 edition prints the same 148. | https://www.airnow.gov/sites/default/files/2020-05/aqi-technical-assistance-document-sept2018.pdf | EPA 454/B-18-007: same 0.162 ppm, same .125-.164 breakpoints, "the index is 148 (the maximum of 148 and 126)" - CONFIRMED | Both 147 and 148 are Unhealthy for Sensitive Groups. | https://www.ecfr.gov/api/versioner/v1/full/2026-10-01/title-40.xml?part=58&appendix=Appendix%20G%20to%20Part%2058 | App. G Table 1: 101 to 150 Unhealthy for Sensitive Groups - CONFIRMED | reads an 8-hour ozone value of 0.130 ppm as | https://www.ecfr.gov/api/versioner/v1/full/2026-10-01/title-40.xml?part=58&appendix=Appendix%20G%20to%20Part%2058 | App. G 3.4 d.iii, verbatim - CONFIRMED | and ends vii. Find the maximum, 206. | https://www.ecfr.gov/api/versioner/v1/full/2026-10-01/title-40.xml?part=58&appendix=Appendix%20G%20to%20Part%2058 | App. G 3.4 d.vii, verbatim - CONFIRMED | The same appendix's Table 2 puts 0.130 in its 0.106 to 0.200 row, which gives 226.277, rounded to 226. | https://www.ecfr.gov/api/versioner/v1/full/2026-10-01/title-40.xml?part=58&appendix=Appendix%20G%20to%20Part%2058 | Table 2 8-hour O3 Very Unhealthy row 0.106-0.200 (201-300); recomputed 99/0.094 x 0.024 + 201 = 226.277, nearest 226 - CONFIRMED | Both 206 and 226 are Very Unhealthy. | https://www.ecfr.gov/api/versioner/v1/full/2026-10-01/title-40.xml?part=58&appendix=Appendix%20G%20to%20Part%2058 | App. G Table 1: 201 to 300 Very Unhealthy - CONFIRMED | The US rule says: | https://www.ecfr.gov/api/versioner/v1/full/2026-10-01/title-40.xml?part=58&appendix=Appendix%20G%20to%20Part%2058 | App. G 3.1, verbatim - CONFIRMED | China's 100 at 60 matches the transitional 24-hour limit of 60 that GB 3095-2026 applies from 1 March 2026 to 31 December 2030. | https://www.mee.gov.cn/ywdt/zbft/202602/t20260225_1144479.shtml | interview: first phase 2026-03-01 to 2030-12-31, PM2.5 日均 Grade II transitional limit 60 µg/m3; HJ 633-2026 Table 3 puts IAQI 100 at 60 - CONFIRMED | CPCB set India's first two edges with Indian background levels in mind | https://cpcb.gov.in/displaypdf.php?id=bmF0aW9uYWwtYWlyLXF1YWxpdHktaW5kZXgvRklOQUwtUkVQT1JUX0FRSV8ucGRm | CPCB report p. 29: background PM2.5 in India 17-28 µg/m3 against under 5 in Europe and the US, "Therefore ... it is not reasonable to follow the breakpoints as proposed by US or EU", then the 30 and 60 breakpoints - CONFIRMED | with Indian background levels in mind: | https://cpcb.gov.in/displaypdf.php?id=bmF0aW9uYWwtYWlyLXF1YWxpdHktaW5kZXgvRklOQUwtUkVQT1JUX0FRSV8ucGRm | p. 29, verbatim clause - CONFIRMED | The UK index, Defra says, was recommended by the Committee on the Medical Effects of Air Pollutants (COMEAP). | https://uk-air.defra.gov.uk/air-pollution/daqi?view=more-info&pollutant=pm25 | live UK-AIR: "This system was recommended by the Committee on Medical Effects of Air Pollutants (COMEAP)"; the same page links "Committee on the Medical Effects of Air Pollutants (COMEAP)"; the 2013 report uses the "the" form too - CONFIRMED | The EEA took its first two edges from WHO guideline values. | https://www.eionet.europa.eu/etcs/etc-he/products/etc-he-products/etc-he-reports/etc-he-report-2024-17-eeas-revision-of-the-european-air-quality-index-bands/@@download/file/ETC%20HE%20Report%202024-17_Gonzalez%20Ortiz.pdf | ETC executive summary: "The long- and short-term air quality guideline levels for each pollutant mark the first two categories for that pollutant." - CONFIRMED | The US table is the one in force as of 1 November 2026. | https://www.ecfr.gov/api/versioner/v1/versions/title-40.json?part=58 | eCFR versions: last App. G amendment 2024-05-06; titles.json: Title 40 up to date as of 2026-10-29; the D.C. Circuit denied vacatur; no stay on either SCOTUS docket - CONFIRMED | on 26 June 2026 the US Court of Appeals for the D.C. Circuit denied the petitions for review and the EPA's own motion to vacate the rule | https://media.cadc.uscourts.gov/opinions/docs/2026/06/24-1050-2180564.pdf | opinion "Decided June 26, 2026": "we deny the petitions for review and the motion for vacatur"; "the EPA now moves to vacate the rule"; conclusion "the petitions for review and the EPA's motion for vacatur are Denied." - CONFIRMED | Two petitions asking the Supreme Court to review that decision, Nos. 26-277 and 26-298, were pending on 1 November 2026, with responses due by 17 November 2026. | https://www.supremecourt.gov/docket/docketfiles/html/public/26-277.html | both dockets fetched 2026-11-02: cert petitions from Nos. 24-1050 et al., decision date June 26, 2026; Oct 08 2026 time for response extended to November 17, 2026; no disposition - OBSERVED | The zip this page used has sha256 4b40502e8147419643a1120c666c4aa952633094f21f65475844172bcc78833b and was downloaded on 1 November 2026. | recreated: curl https://aqs.epa.gov/aqsweb/airdata/daily_88101_2023.zip then sha256sum (2026-11-02) | 4b40502e8147419643a1120c666c4aa952633094f21f65475844172bcc78833b, 9,919,616 bytes, the same file EPA serves today; airdata-2023.json records downloaded 2026-11-01 - CONFIRMED | EPA refreshes these files twice a year, so a later copy may count differently. | https://aqs.epa.gov/aqsweb/airdata/download_files.html | listing: "The files are updated twice per year: once in June ... and once in December" - CONFIRMED | A full report takes the worst of several pollutants | https://www.ecfr.gov/api/versioner/v1/full/2026-10-01/title-40.xml?part=58&appendix=Appendix%20G%20to%20Part%2058 | App. G 3.4 a "The AQI is the highest value calculated for each pollutant"; also UK-AIR "highest concentration of five pollutants", HJ 633-2026 AQI = MAX(IAQI_P), ETC "the worst of them" - CONFIRMED | A full report takes the worst of several pollutants | https://cpcb.gov.in/displaypdf.php?id=bmF0aW9uYWwtYWlyLXF1YWxpdHktaW5kZXgvQWJvdXRfQVFJLnBkZg== | About_AQI para 3, verbatim - OBSERVED | A negative daily mean, as on 1,376 of the rows that carry an AQI, is read as 0.0, the bottom of the table. | recreated: python3 -I recount.py on daily_88101_2023.zip fetched 2026-11-02 (sha256 4b40502e...833b, same as the page's) and regrade.py on airdata-2023.json | 1,376 rows with an AQI have a negative Arithmetic Mean, as the page says; one of them is an Excluded row (State 24, Site 0003, 2023-06-28, mean -1), so the recount itself reads 1,375 negatives as 0.0. The page is right; the record note "(the rows the recount uses)" is off by one - OBSERVED | Rows marked as excluded events are dropped, because each also appears as included. | recreated: python3 -I twin check on daily_88101_2023.zip (State, County, Site, POC, Date, Sample Duration, Pollutant Standard, Method Code) | all 279 Excluded rows (139 of them with an AQI) have an Included twin - CONFIRMED | Technical Assistance Document for the Reporting of Daily Air Quality, EPA-403/B-26-003, May 2026 | https://document.airnow.gov/technical-assistance-document-for-the-reporting-of-daily-air-quailty.pdf | TAD cover: "EPA-403/B-26-003 May 2026"; title "Technical Assistance Document for the Reporting of Daily Air Quality – the Air Quality Index (AQI)" - CONFIRMED | EPA 454/B-18-007, September 2018 | https://www.airnow.gov/sites/default/files/2020-05/aqi-technical-assistance-document-sept2018.pdf | cover: "EPA 454/B-18-007 September 2018" - CONFIRMED | Commonwealth of Kentucky v. EPA, No. 24-1050 (D.C. Cir., decided 26 June 2026) | https://media.cadc.uscourts.gov/opinions/docs/2026/06/24-1050-2180564.pdf | opinion caption: No. 24-1050, Commonwealth of Kentucky, et al., v. EPA, Decided June 26, 2026 - CONFIRMED | E. Connolly (Defra), G. Fuller and T. Baker (King's College London) and P. Willis (Ricardo-AEA), Update on Implementation of the Daily Air Quality Index, April 2013 | https://uk-air.defra.gov.uk/assets/documents/reports/cat14/1304251155_Update_on_Implementation_of_the_DAQI_April_2013_Final.pdf | title page: Defra – Emily Connolly; King's College, London – Gary Fuller and Timothy Baker; Ricardo-AEA – Paul Willis; April 2013; Crown copyright, OGL - CONFIRMED | Defra's letter Notification of Changes to the Air Quality Index, 1 December 2011 | https://uk-air.defra.gov.uk/assets/documents/Notification_of_changes_to_the_air_quality_index.pdf | letter dated "1st December 2011", "RE: NOTIFICATION OF CHANGES TO THE AIR QUALITY INDEX"; UK-AIR, which hosts it, states its content is under OGL v3.0 - CONFIRMED | A. González Ortiz and others, EEA's revision of the European Air Quality Index bands, ETC HE Report 2024/17, published 3 July 2025, doi:10.5281/zenodo.15781195. CC BY 4.0. | https://www.eionet.europa.eu/etcs/etc-he/products/etc-he-products/etc-he-reports/etc-he-report-2024-17-eeas-revision-of-the-european-air-quality-index-bands/@@download/file/ETC%20HE%20Report%202024-17_Gonzalez%20Ortiz.pdf | report: authors Alberto González Ortiz (EEA) and 8 others, "Publication Date: 3. July 2025", DOI 10.5281/zenodo.15781195, "[Creative Commons Attribution 4.0 (International)]"; doi.org resolves to zenodo.org/records/15781195 (2025-07-03, cc-by-4.0) - CONFIRMED | EEA, press release, published 04 Jul 2025 | https://www.eea.europa.eu/en/newsroom/news/nordic-capitals-rank-as-cleanest-in-updated-european-city-air-quality-viewer | "Press release Published 04 Jul 2025" - CONFIRMED | Ministry of Ecology and Environment (MEE), HJ 633-2026, Technical specifications on ambient air quality index, and Announcement 2026 No. 14, 14 February 2026. | https://www.mee.gov.cn/ywgz/fgbz/bz/bzwb/jcffbz/202602/t20260225_1144441.shtml | MEE standard page: "Technical specifications on ambient air quality index 标准号:HJ 633—2026代替HJ 633—2012" - CONFIRMED | Announcement 2026 No. 14, 14 February 2026 | https://www.mee.gov.cn/xxgk2018/xxgk/xxgk01/202602/t20260224_1144403.html | 公告 2026年 第14号, 生态环境部 2026年2月14日 - CONFIRMED | Ministry of Environmental Protection, HJ 633-2012, Technical Regulation on Ambient Air Quality Index (on trial), issued 29 February 2012. | https://www.mee.gov.cn/ywgz/fgbz/bz/bzwb/jcffbz/201203/W020250407406362045613.pdf | cover: 环境保护部 发布, "Technical Regulation on Ambient Air Quality Index(on trial)", 2012-02-29 发布 - CONFIRMED | MEE, Department of Atmospheric Environment, interview on the revision of GB 3095-2026, 24 February 2026. | https://www.mee.gov.cn/ywdt/zbft/202602/t20260225_1144479.shtml | page title and date 2026-02-24 - CONFIRMED | Defra, UK-AIR, What is the Daily Air Quality Index? (PM2.5 tab). Open Government Licence v3.0. | https://uk-air.defra.gov.uk/air-pollution/daqi?view=more-info&pollutant=pm25 | page title "What is the Daily Air Quality Index?"; footer OGL v3.0 - CONFIRMED | Central Pollution Control Board, About National Air Quality Index, and its National Air Quality Index report. CPCB copyright: quoted briefly, numbers restated. | https://cpcb.gov.in/copyright-policy/ | CPCB copyright policy: other use "subject to the approval of competent authority of CPCB"; the page quotes briefly - CONFIRMED | EPA documents may be freely distributed for non-commercial, scientific and educational purposes. | https://www.epa.gov/web-policies-and-procedures/epa-disclaimers | EPA disclaimers, Copyright Status: "These documents may be freely distributed and used for non-commercial, scientific and educational purposes." - CONFIRMED | EEA materials CC-BY. | https://www.eea.europa.eu/en/legal-notice | EEA legal notice: "EEA materials are published under the CC-BY license" - CONFIRMED | New York's 1916 zoning from its pamphlet | src/content/strata/the-mass-the-law-allowed.md | that layer's dek: New York's Building Zone Resolution of July 25, 1916, executed clause by clause from the adopted pamphlet - CONFIRMED | the record can follow the table, not the air: EPA's does | https://www.epa.gov/outdoor-air-quality-data/do-all-aqi-plots-use-most-current-aqi-breakpoints-regardless-which-year | AirData FAQ, and the 452,388-row reproduction above - CONFIRMED | in 2013 Defra said historic index values should be recalculated | https://uk-air.defra.gov.uk/assets/documents/reports/cat14/1304251155_Update_on_Implementation_of_the_DAQI_April_2013_Final.pdf | 2013 report p. 4: "Historic index values should be recalculated..."; the page keeps it an instruction - CONFIRMED | This page grades only a 24-hour mean: a day's mean on the US, UK, Chinese and Indian tables | https://uk-air.defra.gov.uk/air-pollution/daqi?view=more-info&pollutant=pm25 | US Table 2 PM2.5 24-hour; UK-AIR daily mean / 24 hour running mean; HJ 633-2026 4.2.2 日报 日平均, 自然日; CPCB "24-hourly average values for PM10, PM2.5" - CONFIRMED | and on the European daily table the running 24-hour mean the EEA graded every hour until 4 July 2025 | https://www.eionet.europa.eu/etcs/etc-he/products/etc-he-products/etc-he-reports/etc-he-report-2024-17-eeas-revision-of-the-european-air-quality-index-bands/@@download/file/ETC%20HE%20Report%202024-17_Gonzalez%20Ortiz.pdf | ETC section 1: 24-hour running means for PM2.5 "used every hour"; end date from the press release - CONFIRMED | This page's counts come from one of EPA's two daily files of PM2.5 mass for 2023 | https://aqs.epa.gov/aqsweb/airdata/download_files.html | listing, Particulates: PM2.5 FRM/FEM Mass (88101) and PM2.5 non FRM/FEM Mass (88502) are the two PM2.5 mass columns; the others are PM10, PMc and speciation - CONFIRMED | EPA's heading for it is PM2.5 FRM/FEM Mass; the other file, daily_88502_2023.zip, holds PM2.5 from monitors of other kinds and is not used here. | https://aqs.epa.gov/aqsweb/airdata/download_files.html | listing row 2023: daily_88502_2023.zip 176,968 Rows, under "PM2.5 non FRM/FEM Mass (88502)"; distil-airdata.py reads only the 88101 zip - OBSERVED | The check at the end of this page, run with --deep, reads the file and first confirms that it computes EPA's arithmetic | recreated: AW_DIR= node verify-the-same-air-five-verdicts.mjs --deep | exit 0, 264 passed, 0 failed, 21.5 s: downloads the zip, checks its sha256, reproduces EPA's AQI column on every non-Excluded row, rebuilds both histograms - CONFIRMED | graded by each agency's previous table and its current one | https://www.ecfr.gov/api/versioner/v1/full/2024-01-01/title-40.xml?part=58&appendix=Appendix%20G%20to%20Part%2058 | eCFR 2024-01-01: "d. Round the index to the nearest integer."; at 70 the old table gives 158.49, nearest 158, as the then/now panel prints - CONFIRMED | graded by each agency's previous table and its current one | https://www.mee.gov.cn/ywgz/fgbz/bz/bzwb/jcffbz/201203/W020250407406362045613.pdf | HJ 633-2012 6.2 全部进位取整数; at 70 the 2012 table gives 93.75, up 94, as the panel prints - OBSERVED | The PDF is an image; this page's table was read from its pages 2 and 3. | recreated: curl the PDF (1,535,294 bytes, sha256 a71ff69e...74e3), pdfinfo, pdftotext - / wc -c, pdftoppm -r 130 -f 3 -l 6 | 9 pages, Producer Microsoft: Print To PDF, text layer 9 bytes; Table 1 on printed p. 2 (PDF p. 5), Table 3 on printed p. 3 (PDF p. 6) - OBSERVED | because the CPCB documents we read state no rule | recreated: pdftotext of About_AQI.pdf and FINAL-REPORT_AQI_.pdf (fetched 2026-11-02), grep -i -E round/integer/decimal | only "converted from ppm to mg/m3 and rounded off" style table notes (the positive control); no rule for rounding a sub-index - CONFIRMED | so a few readings got gentler words | public/strata/the-same-air-five-verdicts/engine.mjs | recomputed: at 35, 53 and 70 the 2013 band is one lower than the 2012 band; nowhere higher - CONFIRMED | with two Supreme Court petitions pending | https://www.supremecourt.gov/docket/docketfiles/html/public/26-298.html | 26-298 (Chamber of Commerce) and 26-277 (Kentucky), both pending with no disposition on 2026-11-02 - CONFIRMED | Recomputing the agencies' worked examples turns up two printed figures that do not follow from the documents' own rules. Both are about ozone, not PM2.5, and neither changes a word. | https://document.airnow.gov/technical-assistance-document-for-the-reporting-of-daily-air-quailty.pdf | I recomputed every printed AQI example in TAD 2026 (125.5=126, 126 three times, PM2.5 102, CO 90, 1-hour O3 148) and App. G as printed in 89 FR 16405-16406 (PM10 128, 1-hour O3 140, 8-hour O3 206): only the 148 and the 206 fail, both ozone; 147 and 148 are both USG, 206 and 226 both Very Unhealthy - CONFIRMED | Nowhere else on the slider are those three tables two words apart. | public/strata/the-same-air-five-verdicts/engine.mjs | recomputed the US/China/India level spread for every whole number 0..300: 2 only at 56-60, at most 1 elsewhere - CONFIRMED | So the slider moves in whole micrograms, where none of those rules can change a word. | https://www.ecfr.gov/api/versioner/v1/full/2026-10-01/title-40.xml?part=58&appendix=Appendix%20G%20to%20Part%2058 | truncation to 0.1 (US), rounding to integers (UK, China) and the 5/6 and 30/31 gaps (EU, India) are all moot on whole numbers, and each table's index rows line up with its word ranges, so index rounding cannot cross a word; the verifier's plain grader agrees with the engine on all 301 values - CONFIRMED | US EPA, 40 CFR Part 58, Appendix G, Uniform Air Quality Index (AQI) and Daily Reporting, eCFR as of 1 October 2026 and as of 1 January 2024. US Government work. | https://www.ecfr.gov/api/versioner/v1/full/2026-10-01/title-40.xml?part=58&appendix=Appendix%20G%20to%20Part%2058 | heading "Appendix G to Part 58—Uniform Air Quality Index (AQI) and Daily Reporting" in both versions (fetched 2026-11-02 with compression) - CONFIRMED | US EPA, Reconsideration of the National Ambient Air Quality Standards for Particulate Matter, final rule, 89 FR 16202, 6 March 2024. | https://www.govinfo.gov/content/pkg/FR-2024-03-06/pdf/2024-02637.pdf | p. 16202: "Reconsideration of the National Ambient Air Quality Standards for Particulate Matter", ACTION: Final rule, Vol. 89, No. 45, March 6, 2024 - CONFIRMED | index 7 of 10 · band 3 of 4 | https://uk-air.defra.gov.uk/air-pollution/daqi?view=more-info&pollutant=pm25 | "The index is numbered 1-10 and divided into four bands, low (1) to very high (10)"; 58 is index 7, High, the third band - MINOR | They still move the index numbers, and each card computes its number by its own agency's rule. | https://cpcb.gov.in/displaypdf.php?id=bmF0aW9uYWwtYWlyLXF1YWxpdHktaW5kZXgvQWJvdXRfQVFJLnBkZg== | true for the US, UK and China; for India the formula is CPCB's ("a linear function of concentration") but the rounding is this page's assumption, as its own check list says ("because the CPCB documents we read state no rule"), and the EU card has no number - OBSERVED | With --deep it downloads EPA's zip, checks its sha256, and redoes the 2023 recount from the raw rows. With --mutate it plants wrong figures in a copy and must fail. | recreated: AW_DIR= node verify-the-same-air-five-verdicts.mjs --deep, then --mutate | --deep exit 0 (264 passed); --mutate exit 1 (470 passed, 11 failed, "at least 10 expected"); the files directory was left unchanged - CONFIRMED | Two official indices read as definitions rather than sensations: wind chill as a heat-loss rate, and an air-quality word as one agency's table applied to one number. | src/content/strata/what-does-wind-chill-actually-measure.md | that layer's dek: "Wind chill is a heat-loss-rate index" - CONFIRMED | One dial, many verdicts: an interest rate flips money decisions at thresholds of their own, and a PM2.5 slider flips five agencies' words at theirs. | src/content/strata/the-number-has-no-date.md | that layer's dek: "Turn one rate dial and watch each flip at a rate of its own" ## Findings - [fixed] MINOR: a quotation's spacing was not the source's. The page quoted the EEA press release of 04 Jul 2025 as "(PM 2.5 and PM 10 )", a spacing found only in the release's embedded data script, which the kept copy had been cut from. Re-fetched on 2026-11-02, the release as displayed reads (rendered HTML `(PM2.5 and PM10)`): "Hourly data is now used for all key pollutants to estimate the index, including particulate matter pollutants (PM2.5 and PM10), which were presented until now as 24-hour averages." Changed: the kept copy research/the-same-air-five-verdicts/sources/eu-eea-press-2025-07-04.txt is re-made from the served HTML by the new research/the-same-air-five-verdicts/render-html.py (header says so); quotes.json regenerated by make-quotes.mjs (only eu-press changed); the page's quotation in index.html; quote, excerpt and fetched (2026-11-02) of eu-retired, eu-until, q-eu-press and eu-changed, and fetched of c-press; the verifier's two DECLARED entries for the spaced "PM 2.5" and "PM 10" removed; README notes the re-made copy and its sha256. - [fixed] MINOR: index.html said "They still move the index numbers, and each card computes its number by its own agency's rule." Re-read: CPCB's About_AQI says only that the sub-index "is a linear function of concentration", and neither CPCB document read states a rounding rule (entry cpcb-no-rule), so the Indian rounding is this page's choice; and engine.mjs gives the EU card no number (index: null). The sentence now reads "They still move the index numbers: the US, UK and Chinese cards compute theirs by their own agency's rule, the Indian card rounds its sub-index to the nearest whole number by this page's choice, named in the check, and the European card shows no number." New source-record entry cards-rounding (engine.mjs); the verifier asserts the sentence and checks at 33 that the engine's Indian sub-index is the nearest (54.379 gives 54, not 55) and that the EU card has no number. - [fixed] MINOR: five sources the page uses had no URL in its Sources list. Added, each the URL the source record already cites (fetched 2026-11-01; all answered 200 on 2026-11-02): the eCFR as of 1 January 2024 (s-ecfr, "2024 version"), the September 2018 TAD (s-tad, "2018 edition"), the PM2.5 Data Advisory (s-airdata, "advisory"), docket 26-298 (s-cadc; the 26-277 link is now labelled "docket 26-277"), and the CPCB National Air Quality Index report (s-cpcb, "report"). For the same reason the list now also links the HJ 633-2026 PDF it describes (s-hj2026, "PDF") and the three licence pages its licence lines rest on (EPA disclaimers, EEA legal notice, CPCB copyright policy). The verifier's typed citation strings are updated to match. - [fixed] MINOR (source record only; the page is right): the note of entry negatives said 1,376 counts the rows "the recount uses". distil-airdata.py counts negatives before it drops Excluded rows; my own recount of daily_88101_2023.zip (re-fetched 2026-11-02, sha256 4b40502e8147419643a1120c666c4aa952633094f21f65475844172bcc78833b, the page's) gives 452,527 rows with an AQI, 1,376 of them with a negative mean, one of those marked Excluded (State 24, County 015, Site 0003, POC 3, 2023-06-28, mean -1, AQI 86), so 1,375 are in the site-day recount. The note now says so, and the README line likewise; the page's "as on 1,376 of the rows that carry an AQI" is exact and unchanged. - [fixed] MINOR (found after this pass by the round-1 fix-checker, against the page itself; the CONFIRMED line "This page grades only a 24-hour mean: a day's mean on the US, UK, Chinese and Indian tables" keeps this pass's verdict, which was taken against the agencies' documents): index.html said "This page grades only a 24-hour mean: a day's mean on the US, UK, Chinese and Indian tables, and on the European daily table the running 24-hour mean the EEA graded every hour until 4 July 2025." That was false about the page: its own EU hourly slider, labelled "One hour of PM2.5, in whole micrograms per cubic metre (EU hourly table)", grades a single hour ("One hour at 40: Moderate, word 3 of 6 on the European index since 4 July 2025."), and the coda grades a 1-hour ozone value (147.487, rounded to 147) and an 8-hour one (226.277, rounded to 226). The sentence now reads "Apart from the European hourly slider above, this page grades PM2.5 only as a 24-hour mean: a day's mean on the US, UK, Chinese and Indian tables, and on the European daily table the running 24-hour mean the EEA graded every hour until 4 July 2025." ("PM2.5" is added because the wording the fix-checker suggested would still have been false about the ozone coda.) Source-record entry grades-day: claim updated, and its where names the exception. The verifier's says() takes the new sentence, and a new check asserts that the page has exactly three sliders (c, h, t) and that only h, the EU hourly one, is not labelled a 24-hour average of PM2.5. A scratch copy with the old sentence and one with h relabelled each exit 1. - [fixed] (a note from the same fix-checker, not a fault): the Sources entry for HJ 633-2026 said "this page's table was read from its pages 2 and 3" beside a link to the PDF, but those are printed page numbers, and a PDF viewer opens them at pages 5 and 6. Rendered again on 2026-11-02 from the PDF (1,535,294 bytes, sha256 a71ff69ee1d391b206fdd01ffd2dfae6b254f44b365c02c9661ddcfe343374e3), PDF page 5 has footer 2 and carries 表1 and 4.2.2, and PDF page 6 has footer 3 and carries 表3 and 4.2.6. The entry now reads "The PDF is an image; this page's table was read from its printed pages 2 and 3 (PDF pages 5 and 6)." The claim of source-record entry hj26-image and the verifier's s-hj2026 citation string are updated to match. The OBSERVED line above keeps this pass's words.