Self-contained worklist — 42 failing. Snapshot 2026-07-01 full sweep (perry 0.5.1209, node v26.3.0). Everything you need is in this issue; no history to read, no re-measure to start.
Object ToObject boxing, assign source-prop error propagation, descriptor edge cases, seal/freeze + proxy. Overlaps #3986. Crate: perry-runtime (object).
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 built-ins/Object --jobs 8 (the .failures.txt sidecar lists failures; diff before/after for zero-regression).
Failure reasons
| n |
reason |
| 10 |
(no output) |
| 5 |
Uncaught exception: Expected a TypeError to be thrown b |
| 3 |
[perry] dynamic Function refused (AOT) — 0 arg(s); body |
| 2 |
Uncaught exception: result !== true |
| 2 |
Uncaught exception: hasProperty !== true |
| 2 |
Uncaught exception: obj.prop Expected SameValue(«undefi |
| 2 |
Uncaught exception: Expected true but got false |
| 1 |
Uncaught exception: Actual [1, 2, 3] and expected [1, 2 |
| 1 |
Uncaught exception: Actual [0, foo] and expected [0, fo |
| 1 |
Uncaught exception: Expected SameValue(«undefined», «10 |
| 1 |
Uncaught exception: arrObj.hasOwnProperty("prop") Expec |
| 1 |
Uncaught exception: Expected SameValue(«undefined», «"d |
All 42 failing cases (path — reason)
built-ins/Object/assign/target-Array.js Uncaught exception: Actual [1, 2, 3] and expected [1, 2] should have the same co
built-ins/Object/create/15.2.3.5-4-15.js Uncaught exception: result !== true
built-ins/Object/create/properties-arg-to-object-non-empty-string.js Uncaught exception: Expected a TypeError to be thrown but no exception was throw
built-ins/Object/defineProperties/15.2.3.7-2-16.js Uncaught exception: result !== true
built-ins/Object/defineProperties/15.2.3.7-6-a-150.js (no output)
built-ins/Object/defineProperties/15.2.3.7-6-a-151.js (no output)
built-ins/Object/defineProperties/15.2.3.7-6-a-17.js Uncaught exception: hasProperty !== true
built-ins/Object/defineProperties/15.2.3.7-6-a-20.js Uncaught exception: hasProperty !== true
built-ins/Object/defineProperties/proxy-no-ownkeys-returned-keys-order.js Uncaught exception: Actual [0, foo] and expected [0, foo, Symbol()] should have
built-ins/Object/defineProperty/15.2.3.6-4-116.js (no output)
built-ins/Object/defineProperty/15.2.3.6-4-154.js (no output)
built-ins/Object/defineProperty/15.2.3.6-4-155.js (no output)
built-ins/Object/defineProperty/15.2.3.6-4-243-2.js Uncaught exception: Expected a TypeError to be thrown but no exception was throw
built-ins/Object/defineProperty/15.2.3.6-4-410.js Uncaught exception: Expected SameValue(«undefined», «1001») to be true
built-ins/Object/defineProperty/15.2.3.6-4-417.js Uncaught exception: obj.prop Expected SameValue(«undefined», «1001») to be true
built-ins/Object/defineProperty/15.2.3.6-4-579.js Uncaught exception: arrObj.hasOwnProperty("prop") Expected SameValue(«true», «fa
built-ins/Object/defineProperty/15.2.3.6-4-586.js Uncaught exception: Expected SameValue(«undefined», «"data"») to be true
built-ins/Object/defineProperty/15.2.3.6-4-593.js Uncaught exception: obj.prop Expected SameValue(«undefined», «"data"») to be tru
built-ins/Object/defineProperty/15.2.3.6-4-594.js Uncaught exception: obj.hasOwnProperty("prop") Expected SameValue(«true», «false
built-ins/Object/defineProperty/15.2.3.6-4-596.js Uncaught exception: Expected SameValue(«"unlikelyValue"», «"data"») to be true
built-ins/Object/defineProperty/15.2.3.6-4-625gs.js Uncaught exception: this.prop should take precedence over Object.prototype.prop
built-ins/Object/defineProperty/symbol-data-property-default-strict.js Uncaught exception: Expected a TypeError to be thrown but no exception was throw
built-ins/Object/entries/observable-operations.js (no output)
built-ins/Object/freeze/frozen-object-contains-symbol-properties-strict.js Uncaught exception: Expected a TypeError to be thrown but no exception was throw
built-ins/Object/getOwnPropertyDescriptors/observable-operations.js Uncaught exception: log Expected SameValue(«"|ownKeys|getOwnPropertyDescriptor:a
built-ins/Object/getOwnPropertySymbols/order-after-define-property.js Uncaught exception: Actual [Symbol(b), Symbol(a)] and expected [Symbol(a), Symbo
built-ins/Object/internals/DefineOwnProperty/consistent-writable-regexp-dollar1.js TypeError: Cannot read properties of undefined (reading 'writable')
built-ins/Object/isExtensible/15.2.3.13-2-13.js Uncaught exception: e Expected SameValue(«false», «true») to be true
built-ins/Object/preventExtensions/15.2.3.10-3-13.js Uncaught exception: Expected true but got false
built-ins/Object/preventExtensions/15.2.3.10-3-3.js Uncaught exception: Expected true but got false
built-ins/Object/preventExtensions/symbol-object-contains-symbol-properties-strict.js Uncaught exception: Expected a TypeError to be thrown but no exception was throw
built-ins/Object/prototype/S15.2.4_A1_T2.js Uncaught exception: The result of evaluating (e instanceof TypeError) is expecte
built-ins/Object/prototype/S15.2.4_A4.js Uncaught exception: `new Object.prototype` throws a TypeError exception Expected
built-ins/Object/prototype/isPrototypeOf/arg-is-proxy.js (no output)
built-ins/Object/prototype/toLocaleString/S15.2.4.3_A1.js (no output)
built-ins/Object/prototype/toLocaleString/primitive_this_value_getter.js Uncaught exception: Expected SameValue(«"object"», «"boolean"») to be true
built-ins/Object/seal/seal-arrowfunction.js [perry] dynamic Function refused (AOT) — 0 arg(s); body[..160]=""
built-ins/Object/seal/seal-asyncarrowfunction.js [perry] dynamic Function refused (AOT) — 0 arg(s); body[..160]=""
built-ins/Object/seal/seal-asyncfunction.js [perry] dynamic Function refused (AOT) — 0 arg(s); body[..160]=""
built-ins/Object/setPrototypeOf/success.js TypeError: Cannot convert undefined or null to object
built-ins/Object/values/observable-operations.js (no output)
built-ins/Object/values/order-after-define-property.js (no output)
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 — 42 failing. Snapshot 2026-07-01 full sweep (perry 0.5.1209, node v26.3.0). Everything you need is in this issue; no history to read, no re-measure to start.
Object ToObject boxing, assign source-prop error propagation, descriptor edge cases, seal/freeze + proxy. Overlaps #3986. Crate: perry-runtime (object).
Setup (any box)
Measure/verify:
scripts/test262_subset.py --root vendor/test262 --dir built-ins/Object --jobs 8(the.failures.txtsidecar lists failures; diff before/after for zero-regression).Failure reasons
All 42 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.