@@ -17,6 +17,44 @@ TypeScript/UI worklets.
1717
1818## Latest Update - 2026-06-30
1919
20+ ### 2026-06-30 02:42 EDT - JS subclass setters invoke prototype accessors directly on V8
21+
22+ - Scope check:
23+ - Still generic NativeScript runtime behavior required by the RN-module
24+ branch. No RNS-specific native implementation and no direct-engine backend
25+ refactor work.
26+ - Simulator-only rule remains active; no physical devices were used.
27+ - CI finding:
28+ - GitHub Actions run `28424196438` on `241c9943` kept setup, FFI boundary
29+ check, native build, CLI build, and macOS tests green.
30+ - iOS still had one failure:
31+ `ApiTests.js SpecialCaseProperty_When_CustomSelector_ImplementedInJS`.
32+ - `ApiTests.js NSMutableArrayMethods` still passed.
33+ - The failed assertion still showed repeated `getter` output with no
34+ `setter:true`, which means V8 did not continue from a native host setter
35+ miss into the JS prototype setter for this native-instance path.
36+ - Change:
37+ - JS-extended object property writes now invoke JS prototype setters directly
38+ before native metadata/runtime setters on every backend, matching the
39+ getter-side direct resolution behavior.
40+ - Plain unknown JS fields still use the existing expando/fallback behavior;
41+ only an actual JS prototype setter is invoked early.
42+ - Source coverage now guards that setter invocation is not gated by
43+ `NATIVESCRIPT_NATIVE_API_HOST_EXPLICIT_OVERRIDE` and still happens before
44+ native writable-property dispatch.
45+ - Verification:
46+ - Focused construction/property guard test passed:
47+ `node packages/react-native/test/runtime-instance-selector-base-dispatch.test.js`.
48+ - Runtime RN JS tests passed:
49+ `for f in packages/react-native/test/*.test.js; do node "$f" || exit 1; done`.
50+ - `git diff --check` passed.
51+ - `npm run check:ffi-boundaries` passed.
52+ - Existing generated macOS project compile/link passed with
53+ `xcodebuild -project dist/intermediates/macos/NativeScript.xcodeproj ...`.
54+ - Still next:
55+ - Commit/push this direct-setter fix and watch fresh PR CI. If iOS goes
56+ green, resume the RNS simulator parity sweep from this handoff.
57+
2058### 2026-06-30 02:10 EDT - JS subclass setters prefer prototype accessors before native setters
2159
2260- Scope check:
0 commit comments