Corrections

The entries currently published here concern the track record. This is not an exhaustive history of incidents across the site.

Correction policy

Entries are append-only. Original wording is retained; subsequent corrections are dated follow-ups, not silent edits. Quantitative claims carry their recorded SQL and measurement time.

This is a dated archive, not a current remeasurement. Narratives, counts, and queries below are reproduced as recorded. References to "this page" in the original narratives refer to the track record at the time of the entry. A recorded query is not proof of every archived count; query corrections require a separate dated follow-up.

Presentation correction,

The previous track-record template appended "carried the wrong sector" to every entry. That phrase applies only to the sector correction. Descriptions now come from each entry. The date above is the work-order date, not a production-deployment date.

Track-record archive

Effective

#unadjusted-corporate-actions-in-published-means

Measured at . Historical values, not current counts.

Original narrative and recorded follow-ups

Every mean forward return published on this page was overstated, and the largest ones were overstated by a multiple. The cause: a small number of rows whose forward window spans a split or reverse split the price series was never adjusted for. HCWC closed at $0.2352 on 2026-08-28 and at $7.53 on 2026-09-01, a single-session factor of 32.02, and then traded $7.12, $6.99, $7.00. That is a change in share count, not a 4,598% return. Nobody held a position that multiplied 48 times in a month. Removing rows whose window spans such an event moves the highest-qualified 1M mean from +21.06% to +4.67%, on 14 affected rows out of 1,411 -- one percent of the sample carrying three quarters of the published figure. Upper range moves +7.61% to +3.37%, Middle +13.19% to +5.71%, Lower +30.03% to +10.29%, and Lowest +75.62% to +5.51%. Every classification moves down. An existing quarantine reason, forward_return_out_of_range, could not catch this: its ceiling is 9,999.99%, so a 4,598% return is inside the bound. That constant stops arithmetic overflow and was never going to stop a corporate action. The detector added with this correction reads our own stored price series and refuses any window containing a single-session price factor at or beyond 5x in either direction, which no continuous market produces. It takes no view on which corporate action occurred; it only declines to call the window a return. Six hundred admitted registry rows across 55 tickers contain such a window, 259 of them resolved. Seven of the 55 are mega-caps -- AMAT, AMD, AXP, GE, HD, KLAC, MU -- where a five-fold single session is not a split but a bad print in our own stored series, which is disqualifying on the same grounds and is its own open defect. The rule is stated rather than tuned, and it lowers every number it touches, including the one this page led with. This entry said, from 2026-09-07, that every mean forward return published on this page was overstated. That was measured for the 1M column and written about the whole page. Measured for the 3M column on 2026-09-08 with the same query at 90 days: Middle range +9.72% becomes +9.77% once its 24 discontinuity-spanning rows are removed, and Upper range +9.52% becomes +10.35% once its 9 are -- both understated, not overstated. Lower range +3.85% becomes +3.57%. Two of the eight published means moved the other way, so the sentence was broader than its evidence and is left as first written, earlier in this entry, so a reader can see it. The highest-qualified 3M cell has one row and is not published.

Affected registered rows
600
Admitted rows total (denominator)
91319
Affected resolved rows
259
Resolved rows total (denominator)
30691
Affected resolved rows by classification
ClassificationRows
Highest qualified14
Upper range53
Middle range101
Lower range56
Lowest range35

Affected tickers

AEHL, AEMD, AMAT, AMD, APUS, ARTL, AXP, BIAF, BIYA, BNRG, BRCC, BYAH, BYND, CCHH, CLDI, CLGN, CPOP, CSAI, CXAI, CYCU, DBGI, ELAB, FEED, FFAI, FGL, GAME, GCTK, GE, GLMD, GRML, GRNQ, HAO, HCWC, HD, IMCC, IPW, JDZG, JUNS, KAPA, KLAC, LEXX, LGCL, LGVN, LIMN, MBAI, MBRX, MU, MVIS, MYSZ, NCT, NRDY, NXL, OMH, ONFO, PLAG

Recorded SQL; not re-run for this publication.

The recorded query filters to resolved 30-day rows; it does not independently reproduce the full affected-row count recorded above. That count awaits a corrected replay.

Recorded SQL
with px as (select symbol, snapshot_at::date as d, price, price / nullif(lag(price) over (partition by symbol order by snapshot_at),0) as f from score_snapshots where price is not null), events as (select distinct symbol, d from px where f >= 5 or f <= 0.2), reg as (select r.ticker, r.trading_day, r.band, s.forward_return_30d as ret from score_track_record_cohort_registry_effective r join score_snapshots s on s.id = r.source_snapshot_id where r.cohort_status = 'admitted' and s.forward_return_30d is not null), flagged as (select reg.*, exists (select 1 from events e where e.symbol = reg.ticker and e.d > reg.trading_day and e.d <= reg.trading_day + 30) as spans_split from reg) select count(*) filter (where spans_split) as affected_rows, count(*) filter (where spans_split and ret is not null) as affected_resolved_rows, count(*) as admitted_rows_total, count(*) filter (where ret is not null) as resolved_rows_total, band, avg(ret) as mean_published, avg(ret) filter (where not spans_split) as mean_clean, (select count(*) from score_track_record_cohort_registry_effective where cohort_status = 'admitted') as admitted_rows_total, (select count(*) from reg) as resolved_rows_total from flagged group by band

Effective

#sector-6324-managed-care

Measured at . Historical values, not current counts.

Original narrative and recorded follow-ups

SEC SIC 6324 is "Hospital and Medical Service Plans". Veridion's SIC-to-sector crosswalk sent the whole 6000-6499 band to Financials, so nine managed-care insurers, UnitedHealth among them, carried Financials as their published sector. The crosswalk was corrected on 2026-09-03 and a deploy gate now fails any build in which a company's sector contradicts its SEC business code. What this did not change: the Veridion Score. Sector reaches the composite only by deciding whether a peer cohort may be used at all, and these rows were sector-sourced from SIC throughout, so that gate was open before the correction and after it. Valuation peers are selected by market-capitalisation tier rather than sector, and the hype peer cohort reads the curated universe, which already carried these issuers as Health Care. The scores on these rows are unchanged by the correction. The published sector was wrong, and that is what is corrected here. Nine issuers are affected, not the eight this entry first named: OSCR carries the same SEC code and was omitted from the first count. This entry also said, from 2026-09-04 to 2026-09-07, that none of the affected rows had resolved and that no forward return had landed on any registered row. Both were false when written. 106 of the affected rows had already resolved, inside a registry of 30,691 resolved rows -- the same total this page prints in its own header. The two figures were the only ones in this entry the published query never computed, so nobody could check them and nobody did. Every figure below is now produced by that query.

Affected registered rows
273
Admitted rows total (denominator)
91319
Affected resolved rows
106
Resolved rows total (denominator)
30691
Affected resolved rows by classification
ClassificationRows
Highest qualified22
Upper range50
Middle range31
Lower range3
Lowest range0

Affected tickers

ALHC, CI, CLOV, CNC, ELV, HUM, MOH, OSCR, UNH

Recorded SQL; not re-run for this publication.

Recorded SQL
with affected as (select distinct symbol as ticker from score_snapshots where sector_sic_code = 6324), reg as (select r.ticker, r.trading_day, r.band, s.forward_return_30d from score_track_record_cohort_registry_effective r join score_snapshots s on s.id = r.source_snapshot_id where r.cohort_status = 'admitted') select (select count(*) from reg) as admitted_rows_total, (select count(*) from reg r join affected a using (ticker)) as affected_rows, (select count(*) from reg where forward_return_30d is not null) as resolved_rows_total, (select count(*) from reg r join affected a using (ticker) where r.forward_return_30d is not null) as affected_resolved_rows, (select count(distinct ticker) from affected) as affected_tickers, (select count(distinct r.trading_day) from reg r join affected a using (ticker)) as affected_days, (select json_object_agg(band, n) from (select r.band, count(*) filter (where r.forward_return_30d is not null) as n from reg r join affected a using (ticker) group by r.band) b) as affected_resolved_by_band
Weekly Veridion brief

Rating changes, public disclosure activity, methodology notes, and product updates. One email per week. No advertising list resale.