You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Implement the shared pinned Home/Bun JSC__JSValue__getIfPropertyExistsFromPath export with the exact observable behavior of Bun revision 4982b91e, then promote it from pending to implemented in both checked-in inventories.
Parent: #134
Profile umbrella: #140
Home profile: #163
Bun profile: #164
Acceptance criteria
String paths follow the pinned UTF-16 parser exactly: [, ], and . are separators; empty, leading/trailing/consecutive-dot, separator-only, bracket, and Unicode cases preserve Bun/JSC behavior.
Array paths accept only string and number elements, obtain length once with ToLength, perform indexed Get in order (including holes/prototypes/proxies), and use exact JavaScript number-to-string property keys.
Every traversed value is boxed with ToObject; inherited properties, accessors, proxies, and primitive receivers behave observably like the pinned implementation.
Present undefined remains distinct from an absent path; property lookup performs one observable Get per segment and does not introduce a separate has trap.
Abrupt completion and pre-existing pending exceptions are first-wins and return the private empty sentinel; invalid or foreign boundary inputs fail deterministically.
Focused runtime coverage and the combined private ABI consumer fixture link and execute the export.
Home/Bun inventories, ABI documentation, parent trackers, and README counts are updated from the committed evidence.
The relevant batched ABI audits and tests pass before closure.
Pinned reference
src/jsc/bindings/bindings.cpp at Bun revision 4982b91e, function JSC__JSValue__getIfPropertyExistsFromPath. Array traversal delegates to JSC forEachInArrayLike, i.e. ToLength followed by indexed Get for each entry.
Completion evidence
Code: 2d169b1d — exact UTF-16 string grammar, JSC-style array-like traversal, one-Get segment lookup, VM ownership, and exception handling.
Documentation: 860bd259 — README, ABI, API, and Home integration evidence/counts.
Goal
Implement the shared pinned Home/Bun
JSC__JSValue__getIfPropertyExistsFromPathexport with the exact observable behavior of Bun revision4982b91e, then promote it from pending to implemented in both checked-in inventories.Parent: #134
Profile umbrella: #140
Home profile: #163
Bun profile: #164
Acceptance criteria
[,], and.are separators; empty, leading/trailing/consecutive-dot, separator-only, bracket, and Unicode cases preserve Bun/JSC behavior.lengthonce withToLength, perform indexedGetin order (including holes/prototypes/proxies), and use exact JavaScript number-to-string property keys.ToObject; inherited properties, accessors, proxies, and primitive receivers behave observably like the pinned implementation.undefinedremains distinct from an absent path; property lookup performs one observableGetper segment and does not introduce a separatehastrap.Pinned reference
src/jsc/bindings/bindings.cppat Bun revision4982b91e, functionJSC__JSValue__getIfPropertyExistsFromPath. Array traversal delegates to JSCforEachInArrayLike, i.e.ToLengthfollowed by indexedGetfor each entry.Completion evidence
2d169b1d— exact UTF-16 string grammar, JSC-style array-like traversal, one-Get segment lookup, VM ownership, and exception handling.860bd259— README, ABI, API, and Home integration evidence/counts.36a617b3; this ABI-only slice did not regenerate performance scores.