The analysis counted zero bridges. The app exposes 51 methods.
Описание и применение
REA удалось выявить 51 метод в мосте ElectronFiddle после изоляции и корректировки minified‑кода, подтверждая, что статический анализ может быть точным при правильной настройке.
Задача
Determine how a desktop app’s window communicates with its main process and identify exposed bridges and IPC operations.
Результат
REA initially missed the app’s own bridge due to heap budget and unknown node handling. By isolating the preload file and correcting the webpack alias, REA accurately reported 1 bridge with 51 members and 48 dynamic IPC operations, confirming the static analysis matches the source.
Рабочий процесс
- 1. Download Electron Fiddle macOS arm64 zip and extract app.asar.
- 2. Run
npx -y rea-agents@latest analyze-javascript-application /abs/path/app.asar --json > fiddle.jsonto analyze the bundle. - 3. Review REA JSON summary for context bridges and IPC counts.
- 4. Identify missing bridge due to unknown nodes and heap budget limits.
- 5. Copy the preload file to a separate folder and re‑run REA on it alone.
- 6. Modify the minified require alias to
require("electron")and re‑run REA. - 7. Verify the bridge and IPC counts match the source code.
- 8. Compare results with unbundled source for validation.
Доказательства
REA inventoried 89 files, parsed 71 JavaScript files and visited 2,386,900 syntax nodes without executing a line of the app.
The preload that defines the bridge is a 9,768-byte file. REA parsed it completely, then attached two unknown nodes to it.
I changed one expression in my copy, _(288) to require("electron")... context_bridge_apis: 1 (ElectronFiddle, 51 members, 0 unknown) ipc.operations: 48 ipc.dynamic_channel_operations: 48
- Дата записи: 2026-10-12T18:56:05.655Z