Partly: in 6 runs, Claude Fable 5.1's valibot attribution reaches 1.1.0 (2025-05-06), inside valibot 1, and stops there — valibot was at 1.5.0 when this index last tested it (2026-09-27). That is ~13 to ~16 months below the training cutoff the subject stated in those runs (2026-06). 5 findings are currently charged against Claude Fable 5.1 on valibot (3x S2 silently-wrong, 2x S3 deprecated), each reproduced in a published run and checked against valibot's own release notes. Read the boundary precisely: it is the newest release whose contents the model can correctly attribute to that release, not the newest valibot feature it can use. Past it a model often writes working code with a newer API while naming the wrong release for it.
Answer class inside, decided by one rule applied to every page
of this kind: every measured boundary is at or above the first release of the major named in the question. Every figure below is read from
the dataset at build time; nothing on this page is written by hand.
| Battery | Newest release it can place | Oldest it cannot | Lag vs stated cutoff |
|---|---|---|---|
| v4-a 2026-09-06 | 1.1.0 2025-05-06 |
1.2.0 2025-11-24 |
~13 months |
| v4-b 2026-09-06 | 1.1.0 2025-05-06 |
1.2.0 2025-11-24 |
~13 months |
| v5-a 2026-09-24 | 1.1.0 2025-05-06 |
1.1.1 |
~16 months |
| v5-b 2026-09-24 | 1.1.0 2025-05-06 |
1.2.0 2025-11-24 |
~16 months |
| v6-a 2026-09-24 | 1.1.0 2025-05-06 |
1.2.0 2025-11-24 |
~15 months |
| v6-b 2026-09-24 | 1.1.0 2025-05-06 |
1.2.0 2025-11-24 |
~15 months |
2 further runs of this pair established only one end of the interval, or measured the instrument rather than the library; they are listed under Runs below.
7 measurements of this pair, all giving the same boundary. Of those, 6 came in 3 groups: the draws inside a group were sent the same stored prompt file, concurrently and blind, and each group had its own file. All 3 groups agreed exactly.
valibot published 3 minor or major releases in the twelve months before this model’s stated cutoff, which is the scale a spread should be read against.
“Chargeable” means the change was published before this model’s own stated cutoff, so it had the opportunity to know it.
| Severity | Belief | Changed in | Chargeable | Proof |
|---|---|---|---|---|
| S2silently-wrong | Rejects a pull request that compiles and runs, calling the shipped toKebabCase action a common AI hallucinationtoKebabCase |
1.4.0 2026-05-05 |
yes | run · source |
| S2silently-wrong | Asserts that rfcEmail is a LOOSER check carrying the same Unicode case-folding hole as email, and is therefore of no use against an account-collision incident — rfcEmail rejects both collision code points on every release that has ever shipped it, and is the one-line fixrfcEmail |
— |
yes | run · source |
| S2silently-wrong | The twin reaches the same false claim by the same route: rfcEmail carries the same iu case-folding quirk and is of no use against the collision — it rejects both code points on all nine releases that ship itrfcEmail |
— |
yes | run · source |
| S3deprecated | Names guard as something it half-remembers, then denies it ever shipped — six months after it shippedguard |
1.3.0 2026-03-17 |
yes | run · source |
| S3deprecated | Denies valibot has any result cache and argues from the library's design that it never would, six months after cache shippedcache |
1.3.0 2026-03-17 |
yes | run · source |
The valibot correction pack states what is true now for each corrected fact, with a primary-source citation, as markdown you can paste into a rules file (raw). What a correction pack measurably changed when one was tested — a pre-registered run on prisma and zod — is on the benchmark page, including where it changed nothing.
All of them at once: Which Claude model knows valibot 1 best?
Other subjects on valibot:
Claude Fable 5.1 on the other libraries: