_getJsProxy attempts to cache proxy on the object itself. However to probe if there is a cached proxy it uses normal o[propertyName] access which traverses prototype chain.
If prototype of the object was proxied this probe will return proxy cached on the prototype leading to hard to debug bugs.
Probe should either use getOwnPropertyDescriptor or be guarded with hasOwnProperty.
var jsProxy = JS('', '#[#]', o, propertyName);
_getJsProxy attempts to cache proxy on the object itself. However to probe if there is a cached proxy it uses normal o[propertyName] access which traverses prototype chain.
If prototype of the object was proxied this probe will return proxy cached on the prototype leading to hard to debug bugs.
Probe should either use getOwnPropertyDescriptor or be guarded with hasOwnProperty.