[GH-ISSUE #3453] [Bug] capture_electron_scenario waits for the full 60 s startup deadline when the target's EnableNodeCliInspectArguments fuse is disabled #1295

Closed
opened 2026-10-16 21:03:52 +00:00 by bsakaguchi · 0 comments
Owner

Originally created by @gkobayashi0 on GitHub (Oct 14, 2026).
Original GitHub issue: https://github.com/morluto/rea/issues/3453

Before submitting

  • I searched the open and closed issues for a related report.
  • I removed credentials, tokens, private paths, and sensitive target data.

Area

Process capture or runtime observation

Observed behavior

I ran capture-electron-scenario against a packaged macOS Electron 42.5.2 app whose EnableNodeCliInspectArguments fuse is disabled (confirmed with rea inspect-electron-fuses). Playwright launched the app with --inspect=0 --remote-debugging-port=0 -r electron-active-hook.cjs. The app started normally and printed DevTools listening on ws://127.0.0.1:…, but the Node inspector never came up. REA then failed after about 60 s with electron.launch: Timeout 59499ms exceeded and the generic message "Run rea doctor and review the reported details".

Source check: src/browser/PlaywrightElectronActiveProvider.ts does not consult the fuse reader before launching (source-derived).

Reproduction

Ran once.

  1. rea inspect-electron-fuses /Applications/<App>.app reports EnableNodeCliInspectArguments: disabled (and RunAsNode: disabled).
  2. rea capture-electron-scenario with executable_path set to the app's Contents/MacOS/<App>, application_path set to its app.asar, --user-data-dir=<scratch> in args, one wait action.
  3. Observe the 60 s timeout.

Expected behavior

Fail before launch with a scope refusal that names the fuse, for example "this binary ignores Inspector flags (EnableNodeCliInspectArguments disabled); active capture cannot attach. Use the passive CDP tools, or a stock Electron runtime with the extracted app". The fuse reader already exists, so the check looks cheap. The rea doctor advice does not apply to this case.

Impact and scope

Packaged production apps commonly disable this fuse, so active capture likely fails the same way on many real targets. The cost is a 60 s wait, an unnecessary launch of the target (which runs its startup side effects), and a misleading remediation message.

REA version

Source ca7450b (local build of main)

Runtime and platform

Node 24.21.0; macOS 26 (Darwin 25.6.0) arm64

Originally created by @gkobayashi0 on GitHub (Oct 14, 2026). Original GitHub issue: https://github.com/morluto/rea/issues/3453 ### Before submitting - [x] I searched the open and closed issues for a related report. - [x] I removed credentials, tokens, private paths, and sensitive target data. ### Area Process capture or runtime observation ### Observed behavior I ran `capture-electron-scenario` against a packaged macOS Electron 42.5.2 app whose `EnableNodeCliInspectArguments` fuse is disabled (confirmed with `rea inspect-electron-fuses`). Playwright launched the app with `--inspect=0 --remote-debugging-port=0 -r electron-active-hook.cjs`. The app started normally and printed `DevTools listening on ws://127.0.0.1:…`, but the Node inspector never came up. REA then failed after about 60 s with `electron.launch: Timeout 59499ms exceeded` and the generic message "Run `rea doctor` and review the reported details". Source check: `src/browser/PlaywrightElectronActiveProvider.ts` does not consult the fuse reader before launching (source-derived). ### Reproduction Ran once. 1. `rea inspect-electron-fuses /Applications/<App>.app` reports `EnableNodeCliInspectArguments: disabled` (and `RunAsNode: disabled`). 2. `rea capture-electron-scenario` with `executable_path` set to the app's `Contents/MacOS/<App>`, `application_path` set to its `app.asar`, `--user-data-dir=<scratch>` in `args`, one `wait` action. 3. Observe the 60 s timeout. ### Expected behavior Fail before launch with a scope refusal that names the fuse, for example "this binary ignores Inspector flags (EnableNodeCliInspectArguments disabled); active capture cannot attach. Use the passive CDP tools, or a stock Electron runtime with the extracted app". The fuse reader already exists, so the check looks cheap. The `rea doctor` advice does not apply to this case. ### Impact and scope Packaged production apps commonly disable this fuse, so active capture likely fails the same way on many real targets. The cost is a 60 s wait, an unnecessary launch of the target (which runs its startup side effects), and a misleading remediation message. ### REA version Source `ca7450b` (local build of main) ### Runtime and platform Node 24.21.0; macOS 26 (Darwin 25.6.0) arm64
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#1295
No description provided.