[PR #2756] [MERGED] fix(javascript): retain configuration reads before member access #5367

Closed
opened 2026-10-31 01:06:05 +00:00 by bsakaguchi · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/morluto/rea/pull/2756
Author: @xu91102
Created: 10/13/2026
Status: ✅ Merged
Merged: 10/13/2026
Merged by: @morluto

Base: main ← Head: fix/configuration-member-read-evidence


📝 Commits (4)

  • e61d106 fix(javascript): retain configuration reads before member access
  • eb848c7 test(javascript): own runtime controls and tighten evidence assertions
  • 88f84eb test(apple): keep dyld slice regression portable
  • 622548c chore: merge upstream CI baseline fixes

📊 Changes

3 files changed (+81 additions, -17 deletions)

View changed files

📝 src/domain/javascript/javascriptSemanticDataEffectHelpers.ts (+0 -9)
📝 src/domain/javascript/javascriptSemanticDataEffects.ts (+3 -8)
➕ tests/acceptance/applications/javascriptConfigurationReadsCli.test.ts (+78 -0)

📄 Description

REA dropped configuration evidence when a process.env/argv read was followed by property access, a method call, or optional access. Admit the inner read at the shared provenance boundary regardless of its later consumer. Preserve exact keys and unknown values, exclude shadowed process/local lookalikes, and retain direct binding edges only for direct reads. Remove superseded parent/member-object plumbing after checking all consumers. Real Node controls and public CLI/MCP cover the transformed and direct cases.

Fixes #2575

Validation on 622548ccc9e7d32ec2eed891f0ab652bc894bf53:

  • 8 relevant files / 204 tests passed, including real public CLI/MCP, Node controls and producer regressions.
  • npm run check and npm run verify:test-discovery passed (1057 files discovered once).
  • Local self-review: Standards PASS / Spec PASS.
  • Upstream main's release-preflight and portable x64 Mach-O fixture fixes are integrated; there is no duplicate fixture contribution in this PR.

CI for this final merge commit is pending. Local checks run on macOS arm64; their source-analysis controls do not claim a Linux run or an installed Electron application's execution.


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/morluto/rea/pull/2756 **Author:** [@xu91102](https://github.com/xu91102) **Created:** 10/13/2026 **Status:** ✅ Merged **Merged:** 10/13/2026 **Merged by:** [@morluto](https://github.com/morluto) **Base:** `main` ← **Head:** `fix/configuration-member-read-evidence` --- ### 📝 Commits (4) - [`e61d106`](https://github.com/morluto/rea/commit/e61d106679eed04b66febb1d92335556efda9bda) fix(javascript): retain configuration reads before member access - [`eb848c7`](https://github.com/morluto/rea/commit/eb848c75d0d7271f1b5ca06720818362517be3ca) test(javascript): own runtime controls and tighten evidence assertions - [`88f84eb`](https://github.com/morluto/rea/commit/88f84eb6523e7ae45de257e2ebe70c45bf6688e9) test(apple): keep dyld slice regression portable - [`622548c`](https://github.com/morluto/rea/commit/622548ccc9e7d32ec2eed891f0ab652bc894bf53) chore: merge upstream CI baseline fixes ### 📊 Changes **3 files changed** (+81 additions, -17 deletions) <details> <summary>View changed files</summary> 📝 `src/domain/javascript/javascriptSemanticDataEffectHelpers.ts` (+0 -9) 📝 `src/domain/javascript/javascriptSemanticDataEffects.ts` (+3 -8) ➕ `tests/acceptance/applications/javascriptConfigurationReadsCli.test.ts` (+78 -0) </details> ### 📄 Description REA dropped configuration evidence when a process.env/argv read was followed by property access, a method call, or optional access. Admit the inner read at the shared provenance boundary regardless of its later consumer. Preserve exact keys and unknown values, exclude shadowed process/local lookalikes, and retain direct binding edges only for direct reads. Remove superseded parent/member-object plumbing after checking all consumers. Real Node controls and public CLI/MCP cover the transformed and direct cases. Fixes #2575 Validation on `622548ccc9e7d32ec2eed891f0ab652bc894bf53`: - 8 relevant files / 204 tests passed, including real public CLI/MCP, Node controls and producer regressions. - `npm run check` and `npm run verify:test-discovery` passed (1057 files discovered once). - Local self-review: Standards PASS / Spec PASS. - Upstream main's release-preflight and portable x64 Mach-O fixture fixes are integrated; there is no duplicate fixture contribution in this PR. CI for this final merge commit is pending. Local checks run on macOS arm64; their source-analysis controls do not claim a Linux run or an installed Electron application's execution. --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
bsakaguchi 2026-10-31 01:06:05 +00:00
bsakaguchi changed title from [PR #2756] [MERGED] fix(javascript): retain configuration reads before member access to [PR #2756] fix(javascript): retain configuration reads before member access 2026-11-03 13:29:26 +00:00
bsakaguchi changed title from [PR #2756] fix(javascript): retain configuration reads before member access to [PR #2756] [MERGED] fix(javascript): retain configuration reads before member access 2026-11-03 14:31:14 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
morluto/rea#5367
No description provided.