Self-contained worklist — 45 failing. Snapshot 2026-07-03 full sweep (perry 0.5.1218, node v26.3.0). Everything you need is in this issue; no history to read, no re-measure to start.
Intl.DateTimeFormat option-validation negatives (invalid dateStyle/calendar/offset → RangeError) + formatRange/formatRangeToParts. Crate: perry-stdlib (intl).
Setup (any box)
git clone https://github.com/PerryTS/perry && cd perry
cargo build --release -p perry -p perry-runtime-static -p perry-stdlib-static
git clone --depth 1 https://github.com/tc39/test262 vendor/test262 # checkout test-compat/test262/pinned-sha.txt
# node on PATH (differential oracle). See test-compat/test262/README.md.
Measure/verify: scripts/test262_subset.py --root vendor/test262 --dir intl402/DateTimeFormat --jobs 8 (the .failures.txt sidecar lists failures; diff before/after for zero-regression).
Failure reasons
| n |
reason |
| 4 |
Uncaught exception: PlainDateTime with hour Expected Sa |
| 4 |
Uncaught exception: relatedYear component of 2000-01-01 |
| 3 |
Perry ran clean; Node rejected (missed negative) |
| 3 |
Uncaught exception: Expected SameValue(«false», «true») |
| 2 |
(no output) |
| 2 |
Uncaught exception: no fractionalSecondDigits Expected |
| 2 |
Uncaught exception: Expected SameValue(«0», «1») to be |
| 1 |
Uncaught exception: bangla should fall back to an avail |
| 1 |
TypeError: Cannot convert object to primitive value |
| 1 |
Uncaught exception: Locale ja-JP-u-cu-usd is affected b |
| 1 |
Uncaught exception: return value of Intl.DateTimeFormat |
| 1 |
Uncaught exception: Expected true but got false |
All 45 failing cases (path — reason)
intl402/DateTimeFormat/constructor-options-calendar-future-fallback.js Uncaught exception: bangla should fall back to an available calendar
intl402/DateTimeFormat/constructor-options-order.js (no output)
intl402/DateTimeFormat/date-time-options.js TypeError: Cannot convert object to primitive value
intl402/DateTimeFormat/ignore-invalid-unicode-ext-values.js Uncaught exception: Locale ja-JP-u-cu-usd is affected by key cu; value USD. Expe
intl402/DateTimeFormat/intl-legacy-constructed-symbol-on-unwrap.js (no output)
intl402/DateTimeFormat/intl-legacy-constructed-symbol-property.js Uncaught exception: return value of Intl.DateTimeFormat constructor Expected Sam
intl402/DateTimeFormat/intl-legacy-constructed-symbol.js Uncaught exception: Expected true but got false
intl402/DateTimeFormat/offset-timezone-no-unicode-minus-sign.js Perry ran clean; Node rejected (missed negative)
intl402/DateTimeFormat/prototype/format/fractionalSecondDigits.js Uncaught exception: no fractionalSecondDigits Expected SameValue(«"1:02:03 AM"»,
intl402/DateTimeFormat/prototype/format/numbering-system.js Uncaught exception: en-US: display with fractionalSecondDigits Expected SameValu
intl402/DateTimeFormat/prototype/format/proleptic-gregorian-calendar.js Uncaught exception: Formatted year doesn't contain expected year – expected 1,97
intl402/DateTimeFormat/prototype/format/temporal-objects-no-time-clip-non-latin-numerals.js Uncaught exception: max date should include day 13 in Arabic-Indic digits, got:
intl402/DateTimeFormat/prototype/format/temporal-objects-not-overlapping-options.js Uncaught exception: PlainDateTime with hour Expected SameValue(«"12 PM"», «"7 PM
intl402/DateTimeFormat/prototype/formatRange/en-US.js Uncaught exception: Expected SameValue(«"Jan 3, 2019 – Jan 5, 2019"», «"Jan 3 –
intl402/DateTimeFormat/prototype/formatRange/fractionalSecondDigits.js Uncaught exception: no fractionalSecondDigits Expected SameValue(«"1:02:03 AM"»,
intl402/DateTimeFormat/prototype/formatRange/temporal-objects-not-overlapping-options.js Uncaught exception: PlainDateTime with hour Expected SameValue(«"12 PM"», «"7 PM
intl402/DateTimeFormat/prototype/formatRange/temporal-objects-resolved-time-zone.js Uncaught exception: plain datetimes Expected SameValue(«"8/4/2021, 12:30:45 AM –
intl402/DateTimeFormat/prototype/formatRange/to-datetime-formattable-with-different-arg-kinds.js Uncaught exception: Expected SameValue(«0», «1») to be true
intl402/DateTimeFormat/prototype/formatRangeToParts/chinese-calendar-dates.js Uncaught exception: relatedYear component of 2000-01-01T00:00Z formatted in chin
intl402/DateTimeFormat/prototype/formatRangeToParts/dangi-calendar-dates.js Uncaught exception: relatedYear component of 2000-01-01T00:00Z formatted in dang
intl402/DateTimeFormat/prototype/formatRangeToParts/en-US.js Uncaught exception: Expected SameValue(«11», «7») to be true
intl402/DateTimeFormat/prototype/formatRangeToParts/fractionalSecondDigits.js Uncaught exception: Expected SameValue(«5», «3») to be true
intl402/DateTimeFormat/prototype/formatRangeToParts/pattern-on-calendar.js Uncaught exception: Expected SameValue(«false», «true») to be true
intl402/DateTimeFormat/prototype/formatRangeToParts/temporal-objects-not-overlapping-options.js Uncaught exception: PlainDateTime with hour Expected SameValue(«"[{\"type\":\"ho
intl402/DateTimeFormat/prototype/formatRangeToParts/temporal-objects-resolved-time-zone.js Uncaught exception: Expected [Object {type: "month", value: "8", source: "startR
intl402/DateTimeFormat/prototype/formatRangeToParts/to-datetime-formattable-with-different-arg-kinds.js Uncaught exception: Expected SameValue(«0», «1») to be true
intl402/DateTimeFormat/prototype/formatToParts/chinese-calendar-dates.js Uncaught exception: relatedYear component of 2000-01-01T00:00Z formatted in chin
intl402/DateTimeFormat/prototype/formatToParts/compare-to-temporal-lunisolar.js Uncaught exception: date = 2049-03-03[u-ca=chinese], monthCode Expected SameValu
intl402/DateTimeFormat/prototype/formatToParts/compare-to-temporal.js Uncaught exception: date = 2050-01-31[u-ca=buddhist], year Expected SameValue(«2
intl402/DateTimeFormat/prototype/formatToParts/dangi-calendar-dates.js Uncaught exception: relatedYear component of 2000-01-01T00:00Z formatted in dang
intl402/DateTimeFormat/prototype/formatToParts/fractionalSecondDigits.js Uncaught exception: length should be 3, no fractionalSecondDigits round down Exp
intl402/DateTimeFormat/prototype/formatToParts/lunisolar-leap-months.js Uncaught exception: chinese calendar date should have year part Expected SameVal
intl402/DateTimeFormat/prototype/formatToParts/offset-timezone-correct.js Uncaught exception: hour in +0301 time zone: Expected SameValue(«"3"», «"6"») to
intl402/DateTimeFormat/prototype/formatToParts/pattern-on-calendar.js Uncaught exception: Expected SameValue(«false», «true») to be true
intl402/DateTimeFormat/prototype/formatToParts/related-year-zh.js Uncaught exception: actual[0].type should be yearName Expected SameValue(«"year"
intl402/DateTimeFormat/prototype/formatToParts/related-year.js Uncaught exception: Expected SameValue(«false», «true») to be true
intl402/DateTimeFormat/prototype/formatToParts/temporal-objects-not-overlapping-options.js Uncaught exception: PlainDateTime with hour Expected SameValue(«"[{\"type\":\"ho
intl402/DateTimeFormat/prototype/resolvedOptions/calendar.js Uncaught exception: Resolved calendar Expected SameValue(«"ethiopic-amete-alem"»
intl402/DateTimeFormat/prototype/resolvedOptions/hourCycle-default.js Perry ran clean; Node rejected (missed negative)
intl402/DateTimeFormat/prototype/resolvedOptions/resolved-calendar-unicode-extensions-and-options.js Uncaught exception: Resolved calendar for locale=en-u-ca-iso8601 with calendar=i
intl402/DateTimeFormat/prototype/resolvedOptions/resolved-hour-cycle-unicode-extensions-and-options.js Uncaught exception: Resolved locale for locale=en-u-hc-h23 with hourCycle=h11 Ex
intl402/DateTimeFormat/prototype/resolvedOptions/resolved-locale-with-hc-unicode.js Uncaught exception: hour12 and hourCycle options and hc Unicode extension value
intl402/DateTimeFormat/prototype/resolvedOptions/resolved-numbering-system-unicode-extensions-and-options.js Uncaught exception: Resolved numberingSystem for locale=en-u-nu-arab with number
intl402/DateTimeFormat/subclassing.js TypeError: undefined is not a function
intl402/DateTimeFormat/timezone-legacy-non-iana.js Perry ran clean; Node rejected (missed negative)
Workflow
Pick a coherent single-root subcluster, localize (cargo run --release -- f.ts --trace hir --focus <fn> / --trace llvm), fix, verify listed cases pass AND re-run the slice for zero regressions. Code-only PR (no Cargo.toml/Cargo.lock version bump, no CLAUDE.md Current-Version, no CHANGELOG — maintainer folds metadata). cargo fmt --all -- --check + bash scripts/check_file_size.sh must pass (files < 2000 lines). Reference this issue. Never reference internal infrastructure hostnames.
Self-contained worklist — 45 failing. Snapshot 2026-07-03 full sweep (perry 0.5.1218, node v26.3.0). Everything you need is in this issue; no history to read, no re-measure to start.
Intl.DateTimeFormatoption-validation negatives (invalid dateStyle/calendar/offset → RangeError) + formatRange/formatRangeToParts. Crate: perry-stdlib (intl).Setup (any box)
Measure/verify:
scripts/test262_subset.py --root vendor/test262 --dir intl402/DateTimeFormat --jobs 8(the.failures.txtsidecar lists failures; diff before/after for zero-regression).Failure reasons
All 45 failing cases (path — reason)
Workflow
Pick a coherent single-root subcluster, localize (
cargo run --release -- f.ts --trace hir --focus <fn>/--trace llvm), fix, verify listed cases pass AND re-run the slice for zero regressions. Code-only PR (no Cargo.toml/Cargo.lock version bump, no CLAUDE.md Current-Version, no CHANGELOG — maintainer folds metadata).cargo fmt --all -- --check+bash scripts/check_file_size.shmust pass (files < 2000 lines). Reference this issue. Never reference internal infrastructure hostnames.