Parent
Scope
Implement the pinned side-effect-controlled property reads:
JSC__JSValue__fastGetDirect_JSC__JSValue__fastGetJSC__JSValue__fastGetOwnBun__JSObject__getCodePropertyVMInquiry(Bun core only)
Acceptance criteria
- Pin all 24
BuiltinNamebyte values, includingSymbol.asyncIterator, and reject out-of-range IDs safely. fastGetDirect_reads only direct own data storage and returns empty for absence/accessors without walking prototypes or invoking user code.fastGetOwnperforms exactGetOwnPropertyslot resolution, including own accessors and Proxy descriptor behavior, and returns empty for absence/exception.fastGetuses the existing Bun-compatible Object.prototype-cutoff lookup and returns deleted for absence, empty for exception, and presentundefinedunchanged.- Bun's
codeVM inquiry rejects null/proxy receivers, walks data properties without invoking accessors/custom hooks, and returns empty for absence or non-pure slots. - Focused coverage includes all 24 IDs, Symbol identity, direct/own/inherited distinctions, Object.prototype cutoff, accessors, proxies, present undefined, invalid IDs, sibling realms, foreign values, and first-exception preservation.
- Inventories, README/API evidence, and parent trackers are regenerated from checked-in results.