Revisions Ledger — Methodology

In brief

Revisions Ledger

What it tells you
The ledger is a descriptive record of how first prints settled.
How to read it
Each series’ first print against its value at the yardstick’s end: the gap is the revision. There is no score and no band.
When it updates
Vintages are re-read nightly; a first print gets its verdict once it settles, at the yardstick’s end, and is written once.
What it can’t do
The dossiers cover the series with a usable vintage archive, and the floors are honest: a naive recomputation gives different figures.
Does it work?
It makes no call the Scorecard grades; its record is in the validation section.

Method unchanged since Sep 23, 2026 · what changed then · full methodology below

First prints are drafts

Economic data is published before it is finished. The first print of a number is an estimate built from partial source data; the agencies then revise it — for months, sometimes for decades. The worst quarter of the financial crisis is the clearest case in our own archive: 2008Q4 real GDP first printed at an annualized −3.80%. A year later the record said −5.37%. Three years later it said −8.89% — the advance estimate had missed more than five points of the collapse. The vintage standing today says −8.47%. Anyone who made a judgment in February 2009 made it against a draft.

Every number on the ledger is first-print vs the value three years later — the +3y yardstick — from the archived record. Nothing is restated from memory: every value is read from the vintage that actually stood on a given day.

The news-number basis, series by series

The ledger compares like with like. The "news number" is the figure the release actually led with, computed within a single vintage snapshot — the value standing for the month and for the prior month, from the same day's archive. Quarterly SAAR figures are computed from the same-vintage level pair, ((cur/prev)⁴ − 1) × 100.

seriesFRED idnews basisledger beginsrevision anatomy
Nonfarm payrollsPAYEMSm/m change in jobs, thousands1955-06monthly rounds, then annual benchmarks against unemployment-insurance records
Personal incomePInominal m/m %1966-02monthly rounds, then annual and comprehensive NIPA revisions
Retail salesRSAFSnominal m/m %2001-07monthly rounds, then annual benchmarks against the retail census
Industrial productionINDPROindex m/m %1928-01monthly rounds, then annual revisions
Core PCE pricesPCEPILFEprice index m/m %2000-09monthly rounds, then annual NIPA revisions
Real GDP growthGDPC1real SAAR from the same-vintage level pair1992Q2advance → second → third estimates, then annual and comprehensive revisions
Corporate profits after taxCPATAX% level change q/q1981Q1no advance print — profits enter later in the estimate cycle
Gross domestic incomeGDInominal SAAR from the same-vintage level pair2013Q2arrives later still; its early estimates settle hard

The +3y yardstick

"Settled" has to mean something fixed, or the ledger would be rewritten every time an agency runs a benchmark. We freeze each observation at first vintage + 3 years. The 2008Q4 case shows why: at +1 year the record still said −5.37 — only about three-fifths of the eventual collapse on the books. At +3 years it said −8.89, within half a point of the −8.47 standing today, seventeen years and many benchmark rounds later. Three years captures the bulk of settling; waiting longer buys little and costs the ledger its stability. A settled value is written once and never touched again; observations younger than three years carry no settled row — "not yet settled" is an honest state, not a gap.

Honest floors — why our numbers differ from naive recomputations

The ALFRED archives begin mid-history: payrolls vintages start in 1955, personal income in 1966, retail sales in 2001. For observations BEFORE a series' archive floor, the oldest value on file is not a first print at all — it is a modern restatement, and its "revision" is near zero by construction. A naive recomputation across the whole archive counts those fake firsts and drags the typical revision toward zero:

payrolls +3y medianbasis
+3knaive — every archived observation, fake firsts included
+19kfloored — first prints only, the ledger's display basis

The ledger structurally excludes pre-floor observations from every table. If you recompute our numbers without the floors, you will get the first row — and it will be wrong about what first prints do.

The bases — nominal, real, and the site's own constructions

Each dossier carries a basis chip because the eight series do not share one. Personal income, retail sales, corporate profits, and GDI are nominal — the ledger revises what the agencies published, so it stays on the published basis. Core PCE is a price index; payrolls is a jobs count; industrial production is an output index. The one exception is GDP: its headline concept is real growth, so the ledger's GDP is GDPC1, the real series — the real-SAAR exception, stated on the chip. The site's GDP page shows the growth rate the government publishes directly; the ledger works the same figure out from the level of GDP at two points in the same archived snapshot. It does that because the published growth rate has too little archive behind it to measure revisions from. The two routes give the same quantity, which is why the GDP page and this one carry the same basis chip. None of these are the site's derived real_* constructions (like the real 10y yield), which deflate one published series by another; the ledger never mixes a derived construction into a revision comparison.

Months like this one — the conditioned counts

Each dossier's box splits the record by the four-stage regime at the DATA month, joined on that month (quarterlies join on their mid-quarter month). The highlighted row is the stage the site reads today; the counts themselves never move with it.

The stage is read point-in-time — as it stood when the print landed, not as the revised record later called it — at least 85% first-published from Sep 2016; earlier years partly use today's revised data, read only once it had been published (how much). That is deliberate and it is the only honest basis for this box: a reader conditioning today's print on a stage can only use the stage that is knowable today. This paragraph used to say the box split by "the regime that the DATA month later proved to be in — the site's settled monthly timeline". Both halves were wrong. The stored timeline was measured against both bases and differs from the point-in-time record in none of its 543 months and from the revised record in 72 — it was always point-in-time, and the prose understated what the box can honestly claim.

A row built on fewer than twelve observations says so instead of showing a number: a count that thin is an anecdote, not a record.

Span vs step — how benchmarks are counted

Benchmark revisions arrive as level wedges, and the size you quote depends on how you measure. The March 2024 payroll benchmark is the worked example: measured as a single vintage step, the level fell −589k on the day the benchmark was incorporated — February 7, 2025, the day U.S. Bureau of Labor Statistics published The Employment Situation — January 2025, the release that carried the annual benchmark revision; measured as the span from the first print's vintage (April 5, 2024) to that same day, −616k — the interim monthly rounds absorb the difference. Both figures are read off the archived PAYEMS vintages in this ledger's own store. The ledger counts benchmark-class wedges as SPAN, dated at incorporation. It carries the single-step figure as a note where the two differ materially. (The famous "−818k" from August 2024 was the PRELIMINARY March-over-March announcement — an announcement, not a vintage event; it never appears in the vintage record and so never appears here.)

The great-revisions register's admission bar

A revision enters the register when |first → settled| clears the series' own 95th percentile. The bar is per-series because the units are not comparable: a 0.11pp core PCE revision and a 220k payrolls revision are both once-in-twenty events in their own distributions, and the register ranks by that own-percentile — never by raw size across series. The native-units column rides beside the rank so you can still see the magnitudes.

Recognition — when the data admitted it

For each modern recession we record the first vintage in which the data conceded it: payrolls' first negative print near the start, and real GDP's first vintage showing the opening quarter negative. The asymmetry is the finding. Payrolls said "recession" nearly in real time every cycle — March 2001's −86k printed on 2001-04-06; January 2008's −17k printed on 2008-02-01. Real GDP conceded 2001 only at the July 2002 annual revision (16 months late) and 2008 only in July 2009 (18 months). And 2001 carries its own asymmetry: NOMINAL GDP never admitted the 2001 recession at any vintage — its opening quarter never printed negative; only the real series' did. The year 2020 is the exception that proves the scale: a collapse large enough that the advance estimate caught it in real time.

Corrected October 3, 2026: the table had dated 1990, 2008 and 2020 by a later month's print. Each payroll date now follows the rule above — the first month from the recession's start whose first print was negative. The finding is unchanged, and each date is earlier than before.

The contrast row

Core PCE is on the ledger to show what a quiet series looks like: 162 of its 277 settled observations moved less than 0.05pp — at display precision, they did not move at all. Revisions are a property of how a series is built, not of economic statistics in general; the ledger shows the loud and the quiet on the same yardstick.

Limitations

The floors are real constraints: nothing before a series' archive floor can appear anywhere on the page, and the floors differ by decades across the eight series. Observations younger than +3 years are not yet settled and carry no verdict. Conditioned counts are counts — small denominators are flagged, and none of them are probabilities. The ledger is a descriptive record of how first prints settled. It is never a forecast of how the next print will settle.

Validation

This is the Revisions Ledger's validation record, kept with its methodology. The Validation page sets it beside every other feature's.

What the record says — and how it was tested

1. First prints lean with the cycle

Splitting every revision by the four-stage regime at its data month, read point-in-time — at least 85% first-published from Sep 2016; earlier years partly use today's revised data, read only once it had been published (how much), the direction of the revision moves with the stage. Payrolls is the clearest case and the gradient runs across all four stages, significant at every one of them (p < 0.000001). The per-stage counts sit on each dossier's box on the ledger page.

This is the one conditional finding the record supports, and it is usable in real time: the stage is knowable the month it happens, so a reader can apply it to a print landing today.

2. Revisions are not larger near turns

The obvious hypothesis — that revisions get bigger when the economy turns — was tested against a bar fixed before anything was computed. The median absolute revision within six months of a turn had to be at least 1.5× the rest of the record, on at least three of the 5 recessions. It failed on 7 of 8 series. Two series are revised less near turns than away from them. The single pass clears the bar only on the turns its own record reaches, which is reported as the judgment call it is rather than counted as a win.

3. An episode of revisions does not warn of a turn

If an episode of downward revisions during an expansion signalled a turn, it would be a rare thing — a warning knowable the day it is published. It was tested 4 ways, on the site's own Momentum gauge and on payrolls, at two episode lengths, against a five-part bar fixed in advance. A turn here is a month the site's own stage left Expansion — 10 of them on the site's own stage record, against the 5 recessions, whose starts and ends are the turns of the test above. All 4 failed. The best version fired 63 times to catch 8 of the 10 turns, at a hit rate barely above the rate of simply guessing in any expansion month, and the site's existing stress signal reached every turn it shares first.

One result is worth keeping from the failure: the placement of those episodes is genuinely non-random with respect to turns — it beat 500 shuffles that preserved their own lengths and spacing. That is a real statistical fact and it is not enough to make an alarm, which is the difference between significance and usefulness.

A surviving signal would also have had an independence problem. Four of the eight series here move five of the nine inputs to the Momentum gauge the stage is classified on. So a revision-based warning would partly be the same arithmetic arriving one release early.

4. The gauges built on this data move too

The same question asked of the site's three composites: none of them is biased, but none is precise either. Momentum's first read moves by three points or more in nearly half of all months. The Inflation Regime either does not move at all or moves a long way. The stage itself changes in 72 of 543 months, and about half of those changes are an Expansion that settles as a Slowdown. The counts are on the Regimes methodology, beside the stage they are about.

The great-revisions register

Every revision that cleared its own series' 95th percentile — 184 of them. Ranked by each series' OWN percentile, never raw units across series; benchmark-class level wedges are measured as SPAN and dated at incorporation.

periodseriesfirst → settledΔ (native)own pct
Jan 2023Retail sales+2.96 → +4.37+1.41p97.8
Q1 2023Corporate profits (CPATAX)−6.80 → +3.86+10.66p97.1
Q1 2023GDI (the gap register)+1.70 → +7.05+5.35p100.0
Nov 2022Core PCE (the contrast row)+0.17 → +0.29+0.12p96.0
Oct 2022Core PCE (the contrast row)+0.22 → +0.36+0.14p98.2
Jul 2022Personal income+0.22 → +0.94+0.73p97.0
Jul 2022Core PCE (the contrast row)+0.08 → +0.23+0.14p98.9
Mar 2022Retail sales+0.50 → +2.10+1.60p98.1
Jan 2022Retail sales+3.75 → +1.82−1.93p100.0
Dec 2021Nonfarm payrolls+199k → +566k+367kp99.5
Dec 2021Retail sales−1.91 → −0.82+1.09p95.5
Nov 2021Nonfarm payrolls+210k → +631k+421kp99.9
Oct 2021Nonfarm payrolls+531k → +860k+329kp98.9
Sep 2021Nonfarm payrolls+194k → +480k+286kp98.3
Aug 2021Nonfarm payrolls+235k → +465k+230kp95.7
Mar 2021Retail sales+9.82 → +10.93+1.11p95.9
Feb 2021Core PCE (the contrast row)+0.09 → +0.22+0.13p97.5
Jan 2021Nonfarm payrolls+49k → +398k+349kp99.3
Jan 2021Retail sales+5.29 → +3.47−1.82p99.3
Q1 2021Corporate profits (CPATAX)−0.79 → +12.32+13.12p98.2
Dec 2020Retail sales−0.68 → +0.98+1.67p98.9
Oct 2020Personal income−0.65 → +0.07+0.72p96.8
Sep 2020Nonfarm payrolls+661k → +961k+300kp98.4
Aug 2020Nonfarm payrolls+1,371k → +1,735k+364kp99.4
Jul 2020Nonfarm payrolls+1,763k → +1,444k−319kp98.7
Jul 2020Personal income+0.35 → +1.03+0.68p96.5
Jun 2020Nonfarm payrolls+4,800k → +4,565k−235kp96.1
Jun 2020Personal income−1.11 → −0.22+0.88p98.3
Jun 2020Retail sales+7.50 → +8.58+1.07p95.1
May 2020Retail sales+17.69 → +19.01+1.33p97.0
Apr 2020Personal income+10.51 → +11.74+1.23p98.7
Apr 2020Retail sales−16.45 → −14.62+1.83p99.6
Apr 2020Industrial production−11.25 → −13.38−2.13p97.3
Q2 2020Real GDP growth−32.90 → −29.86+3.05p97.6
Mar 2020Nonfarm payrolls−701k → −1,427k−726kp100.0
Q1 2020GDI (the gap register)−2.70 → +1.26+3.96p95.1
Q1 2015Real GDP growth+0.25 → +3.24+2.99p96.0
Q1 2014GDI (the gap register)−1.02 → +3.90+4.92p97.6
Jan 2013Personal income−3.62 → −5.39−1.77p99.1
Nov 2012Personal income+0.64 → +1.25+0.61p95.4
Oct 2012Personal income+0.00 → +0.87+0.86p98.0
Jan 2012Personal income+0.28 → +1.04+0.76p97.1
Q1 2011Real GDP growth+1.75 → −1.29−3.04p96.8
Mar 2010Core PCE (the contrast row)+0.08 → +0.22+0.14p98.6
Jan 2010Personal income+0.09 → +0.92+0.82p97.5
Jan 2010Core PCE (the contrast row)+0.01 → +0.13+0.13p97.1
Oct 2009Core PCE (the contrast row)+0.19 → +0.33+0.14p97.8
Sep 2009Retail sales−1.49 → −2.61−1.12p96.3
Feb 2009Personal income−0.24 → −1.08−0.84p97.8
Jan 2009Nonfarm payrolls−598k → −818k−220kp95.0
Jan 2009Personal income+0.37 → −1.11−1.48p98.8
Q1 2009Corporate profits (CPATAX)+1.11 → +29.39+28.28p100.0
Dec 2008Personal income−0.21 → −1.14−0.93p98.6
Nov 2008Nonfarm payrolls−533k → −802k−269kp97.6
Nov 2008Personal income−0.17 → −0.83−0.66p96.2
Nov 2008Retail sales−1.76 → −3.14−1.38p97.4
Oct 2008Nonfarm payrolls−240k → −509k−269kp97.6
Oct 2008Personal income+0.35 → −0.46−0.81p97.4
Oct 2008Retail sales−2.77 → −3.92−1.15p96.6
Q4 2008Real GDP growth−3.80 → −8.89−5.09p100.0
Q4 2008Corporate profits (CPATAX)−10.71 → −26.49−15.78p98.8
Sep 2008Nonfarm payrolls−159k → −434k−275kp97.8
Jul 2008Core PCE (the contrast row)+0.27 → +0.15−0.12p96.4
Q3 2008Real GDP growth−0.25 → −3.66−3.41p98.4
Jan 2007Personal income+0.97 → +0.33−0.64p96.1
Sep 2005Personal income+1.70 → +3.52+1.82p99.3
Aug 2005Personal income−0.05 → −2.26−2.21p99.4
Jul 2005Personal income+0.29 → +0.86+0.58p95.1
Jan 2004Core PCE (the contrast row)+0.10 → +0.26+0.17p99.3
Q2 2003Corporate profits (CPATAX)+15.92 → +5.50−10.42p96.5
Jan 2003Retail sales−0.93 → +0.67+1.60p98.5
Feb 2002Core PCE (the contrast row)+0.09 → +0.21+0.11p95.3
Q1 2002Corporate profits (CPATAX)−2.45 → +8.94+11.39p97.6
Nov 2001Core PCE (the contrast row)+0.15 → +0.27+0.12p96.8
Oct 2001Core PCE (the contrast row)+1.17 → +0.79−0.38p99.6
Sep 2001Core PCE (the contrast row)−0.90 → −0.51+0.39p100.0
May 2001Core PCE (the contrast row)−0.06 → +0.05+0.12p95.7
Jan 2001Nonfarm payrolls+268k → −9k−277kp97.9
Sep 2000Personal income+1.08 → +0.47−0.62p95.5
Jan 2000Personal income+0.73 → +1.52+0.79p97.3
Q1 2000Real GDP growth+5.39 → +2.56−2.83p95.2
Q1 2000Corporate profits (CPATAX)+3.36 → −5.68−9.03p95.3
Dec 1999Personal income+0.32 → +0.91+0.59p95.2
Sep 1999Nonfarm payrolls−8k → +235k+243kp96.6
Q2 1997Real GDP growth+2.16 → +5.89+3.73p99.2
Feb 1996Nonfarm payrolls+705k → +479k−226kp95.4
May 1994Nonfarm payrolls+191k → +411k+220kp95.0
Apr 1994Personal income+0.45 → +1.33+0.89p98.4
Jan 1994Personal income−0.28 → −4.04−3.77p99.9
Dec 1993Personal income+0.60 → +3.12+2.53p99.6
Aug 1993Nonfarm payrolls−39k → +215k+254kp96.8
Aug 1993Personal income+1.31 → +0.64−0.67p96.4
Apr 1993Personal income+0.02 → +1.58+1.56p99.0
Jan 1993Personal income+0.47 → −3.83−4.30p100.0
Dec 1992Personal income+0.98 → +3.60+2.62p99.7
Q1 1990Corporate profits (CPATAX)−3.37 → +6.76+10.14p95.9
Jan 1988Personal income+0.32 → −0.33−0.64p96.0
Dec 1987Personal income+0.75 → +1.63+0.88p98.1
Jan 1987Nonfarm payrolls+448k → +223k−225kp95.2
Jan 1986Nonfarm payrolls+566k → +165k−401kp99.8
Oct 1985Nonfarm payrolls+414k → +166k−248kp96.7
Sep 1983Nonfarm payrolls+733k → +1,125k+392kp99.6
Q1 1983Corporate profits (CPATAX)+12.20 → +32.68+20.48p99.4
Nov 1982Personal income+0.38 → +1.07+0.69p96.7
Jul 1982Nonfarm payrolls−17k → −345k−328kp98.8
Oct 1981Personal income+0.58 → −0.04−0.62p95.7
Jul 1981Nonfarm payrolls+383k → +124k−259kp97.2
Apr 1981Nonfarm payrolls−220k → +98k+318kp98.5
Jan 1981Nonfarm payrolls+374k → +115k−259kp97.2
May 1980Nonfarm payrolls−180k → −463k−283kp98.2
Apr 1980Nonfarm payrolls−479k → −206k+273kp97.7
Mar 1980Nonfarm payrolls−140k → +83k+223kp95.1
Jan 1980Personal income+0.56 → +1.19+0.63p95.8
Sep 1978Nonfarm payrolls−58k → +173k+231kp95.9
Jun 1977Nonfarm payrolls+135k → +373k+238kp96.3
Jun 1975Industrial production+0.36 → +2.37+2.01p97.1
Dec 1974Industrial production−2.79 → −4.48−1.69p95.9
Jan 1974Nonfarm payrolls−259k → −4k+255kp97.0
Jan 1973Nonfarm payrolls+197k → +417k+220kp95.0
Dec 1972Nonfarm payrolls+24k → +254k+230kp95.7
Jun 1972Nonfarm payrolls+16k → +251k+235kp96.1
Feb 1972Personal income+0.55 → +1.38+0.83p97.7
Jun 1971Nonfarm payrolls−310k → −31k+279kp98.1
Apr 1961Nonfarm payrolls+335k → +98k−237kp96.2
Aug 1959Nonfarm payrolls−178k → −522k−344kp99.0
Dec 1958Nonfarm payrolls−89k → +140k+229kp95.5
Nov 1958Nonfarm payrolls+187k → +450k+263kp97.3
Jun 1958Industrial production+1.56 → +3.27+1.71p96.0
Dec 1955Nonfarm payrolls−150k → +198k+348kp99.1
Jun 1955Nonfarm payrolls+116k → +357k+241kp96.5
Sep 1954Industrial production−2.42 → +0.81+3.23p99.5
Feb 1954Industrial production−1.60 → +0.00+1.60p95.1
Aug 1953Industrial production+2.15 → −0.73−2.88p98.8
Jul 1953Industrial production−3.73 → +0.74+4.47p99.8
Aug 1952Industrial production+10.99 → +6.96−4.04p99.7
Jul 1952Industrial production−5.42 → −2.54+2.88p98.9
Jun 1952Industrial production−5.61 → −0.84+4.77p100.0
Jan 1952Industrial production+0.00 → +1.68+1.68p95.7
Aug 1951Industrial production+2.35 → −0.84−3.19p99.4
Aug 1950Industrial production+4.06 → +6.63+2.57p98.3
Mar 1950Industrial production+2.22 → +3.89+1.67p95.6
Sep 1949Industrial production+0.59 → +2.35+1.76p96.3
Dec 1948Industrial production+1.55 → −1.54−3.08p99.2
Sep 1945Industrial production−8.02 → −10.22−2.19p97.7
Dec 1943Industrial production−0.81 → −2.43−1.62p95.4
Oct 1942Industrial production+1.62 → +3.37+1.74p96.1
Aug 1942Industrial production+1.67 → +3.55+1.89p96.6
Mar 1942Industrial production+0.00 → +1.64+1.64p95.6
Jun 1941Industrial production+4.67 → +2.50−2.17p97.6
Mar 1941Industrial production+1.42 → +3.40+1.98p97.0
Jun 1940Industrial production+7.55 → +4.27−3.27p99.6
Mar 1940Industrial production−5.50 → −2.59+2.92p99.0
Feb 1940Industrial production−8.40 → −4.92+3.49p99.7
Jan 1940Industrial production−7.03 → −2.40+4.63p99.9
Dec 1939Industrial production+3.23 → +0.81−2.42p98.1
Oct 1939Industrial production+8.11 → +6.14−1.97p96.9
Jul 1939Industrial production+4.08 → +1.94−2.14p97.4
Apr 1939Industrial production−6.12 → −3.96+2.16p97.5
Feb 1939Industrial production−2.97 → +0.00+2.97p99.1
Jan 1939Industrial production−2.88 → +0.00+2.88p99.0
Nov 1938Industrial production+7.29 → +4.17−3.12p99.3
Oct 1938Industrial production+5.49 → +3.23−2.27p97.8
Jul 1938Industrial production+7.79 → +6.17−1.62p95.3
Jan 1938Industrial production−3.57 → −1.15+2.42p98.2
Dec 1937Industrial production−5.62 → −8.42−2.80p98.7
Aug 1937Industrial production+2.63 → +0.00−2.63p98.4
Jan 1936Industrial production−5.77 → −3.96+1.81p96.4
Aug 1935Industrial production+0.00 → +2.33+2.33p98.0
Dec 1934Industrial production+16.22 → +14.67−1.55p95.0
Dec 1931Industrial production−1.39 → +1.37+2.76p98.6
Nov 1930Industrial production−4.55 → −2.27+2.27p97.9
Sep 1930Industrial production−2.17 → +0.00+2.17p97.7
Apr 1930Industrial production+1.92 → +0.00−1.92p96.8
Feb 1930Industrial production+2.91 → +0.94−1.97p97.0
Nov 1929Industrial production−9.40 → −6.78+2.62p98.3
Sep 1929Industrial production−1.63 → +0.00+1.63p95.5
Aug 1929Industrial production−0.81 → −2.42−1.61p95.2
Apr 1929Industrial production+3.36 → +1.68−1.68p95.8
Jan 1929Industrial production+3.54 → +0.85−2.69p98.5
Nov 1928Industrial production−1.75 → +0.00+1.75p96.3
Oct 1928Industrial production+0.00 → +1.75+1.75p96.3
Mar 1928Industrial production−0.91 → +0.93+1.84p96.5
Feb 1928Industrial production+3.77 → +1.89−1.89p96.7
Jan 1928Industrial production+7.07 → +4.95−2.12p97.2

Provenance

Vintages come from ALFRED (the St. Louis Fed's archival FRED), re-read nightly. The derived tables are incremental and write-once: new first prints append, and each observation's settled value is written exactly once when its +3y birthday passes. The pipeline's anchor rows are reproduced digit-exact from the archives in the test suite on every run. They are 2008-11 payrolls −533k → −802k, 2020-04 personal income +10.51 → +11.74, 2008Q4 GDP −3.80 → −8.89, and the 2008-02-01 payrolls recognition date.