mirror of
https://github.com/morluto/rea.git
synced 2026-11-05 06:45:22 +00:00
Closed
opened 2026-10-15 18:25:45 +00:00 by bsakaguchi
·
4 comments
No Branch/Tag specified
main
codex/procedure-reference-stacked
release-please--branches--main--components--rea-agents
release-please--branches--main--components--rea-agents--release-notes
codex/kuna-independent-retry
codex/byte-search-overlay-coverage
codex/open-failure-target-receipt
codex/kuna-xref-evidence
codex/ghidra-ambiguous-procedure-recovery
codex/function-source-bundle
codex/trace-function-integration-prototype
codex/snapshot-source-closure
codex/recorded-evidence-array-pages
codex/evidence-recovery-redesign
codex/trace-feature-address-scope
codex/call-discovery-scope
codex/ghidra-literal-candidate-evidence
codex/decompile-directory-independent-retry
codex/retry-provenance-base
codex/value-flow-capability-experiment
codex/ghidra-containing-instruction
cursor/readme-discord-button-ef9f
dependabot/github_actions/actions/setup-node-7.1.0
dependabot/github_actions/actions/upload-artifact-7.0.2
dependabot/npm_and_yarn/npm-minor-and-patch-d8d97ce6df
codex/kuna-1989
fix/8559-native-ui-fixture-ownership
fix/8555-go-verifier-mcp-ownership
codex/provider-capability-recovery
fix/8642-rizin-target-stdin
codex/ghidra-memory-effect-scope
codex/ghidra-annotation-entry-selector
codex/ghidra-readonly-recovery
codex/ghidra-regex-verifier-recovery
codex/evidence-discovery-view-guidance
fix/8545-bulk-append-overflow
fix/8428-navigation-refusal-alternatives
codex/address-context-recovery
codex/matching-member-limitations
codex/unknown-scope-contract
codex/evidence-view-guidance
feat/8373-native-trace-views
codex/ghidra-snapshot-verifier-binding
codex/elf-export-visibility
codex/evidence-view-recovery
codex/native-reference-cli-help
codex/provider-candidate-observation-scope
codex/kuna-session-verification
codex/ghidra-switch-lifetime-guidance
codex/pseudocode-paging-discovery
codex/clarify-evidence-view-support
codex/kuna-xrefs-selector-recovery
codex/context-capacity-recovery
codex/evidence-closure-large-links
codex/same-function-evidence-identity
codex/ghidra-verifier-inspected-jdk
codex/audit-guided-workflows
codex/crash-prompt-retained-dossiers
codex/analysis-view-error-recovery
codex/kuna-verifier-target-selection
codex/ghidra-selected-project-call-coverage
codex/docs-native-analysis-scope
codex/ghidra-java-socket-boundary
codex/ghidra-retained-snapshot-verifier
codex/ghidra-search-inventory-facts
fix/8284-zero-argument-parameter-bindings
fix/8198-ui-action-handler-offset
fix/8257-elf-entry-label-identity
fix/8304-deferred-output-schema-projection
fix/8277-call-path-computed-target-uncertainty
fix/pr-8089-conflicts
fix/ci-static-duplicate-export
dependabot/npm_and_yarn/lint-staged-17.6.0
dependabot/github_actions/actions/download-artifact-8.0.2
dependabot/npm_and_yarn/write-file-atomic-8.0.0
dependabot/npm_and_yarn/canonicalize-5.1.0
dependabot/github_actions/actions/cache/restore-6.1.0
dependabot/npm_and_yarn/toon-format/toon-4.4.0
dependabot/github_actions/actions/deploy-pages-5.0.1
codex/review-fixes-pr-2403
codex/review-fixes-pr-2400
codex/process-terminal-width
codex/test-brittleness-cleanup
verify/7167-browser-connect-macos
fix/7167-browser-connect
feat/native-matching-allowance-setting
feat/browser-scenario-dry-run
test/managed-caller-parameters-20261024
codex/parser-fortythird-boundaries
fix/6926-pinvoke-platform-decorations-20261023
fix/6889-har-body-encoding-20261023
fix/6888-sqlite-schema-budget-20261023
fix/dependency-security-gates-6708
cursor/evidence-overwrite-rebase-b4ac
feat/4057-verify-native-exports
fix/windows-acl-observer-overhead-20261022
cursor/erlang-beam-restack-4476
cursor/pe-certificate-review-bf32
fix/6116-javascript-application-fs-errors
fix/6061-unmapped-runtime-script-unknown
feat/browser-scenario-summary
fix/pe-certificates
codex/verify-3407
cursor/rebase-5699
cursor/rebase-5352
cursor/rebase-5600
cursor/fix-cli-schema-omission-10a8
codex/audit-hopper-shutdown-reasons-20261021
fix/demangle-swift-omitted-record
fix/nib-boolean-value-types
cursor/cancellation-partial-observation-a5ac
fix/ib-object-limit-reasons
fix/electron-fuse-limit-advice
fix/kuna-doctor-dangling-cache
fix/fixed-budget-refusal-advice
fix/js-ipc-listener-dedup
fix/js-return-member-provenance
fix/dmg-integrity-retry-advice
fix/ida-doctor-readiness
fix/kuna-version-probe-output-drain
fix/legacy-swift-runtime-name-matching
fix/dylib-lazy-load-commands
fix/browser-scenario-startup-cancel
fix/swift-nested-punycode-classification
fix/compare-unselected-scopes
fix/objc-method-budget-coverage
fix/dmg-mounted-root-observations
audit/ci-tests-20261019-round2
release/6.7.0
fix/wabt-cleanup-retry-resolution
fix/electron-fuse-elf-pe-architecture
fix/native-plist-descriptor-ownership
fix/kuna-caller-cleanup-ownership
experiment/atomic-codemode-20261016
review/first-contributor-3776
fix/call-resolution-full-read-cycles
fix/member-mutation-selection-repeat
experiment/atomic-re-tools-20261015
perf/member-mutation-lazy-origins
perf/static-network-mutation-index
fix/hopper-startup-lifecycle
audit/3050-windows-proof-20261015
feat/windows-window-capture-2183
audit/3049-windows-proof-20261015
audit/3735-macos-fixtures-20261015
fix/batch-decompile-null-pseudocode
fix/kuna-inventory-honors-jobs
experiment/browser-codemode-tool-design-20261015
fix/hopper-clean-runtime-argv
codex/review-2049-27f1b367
review-fixes/pr-2787-routing
fix/3360-scoped-this-emitters
fix/3367-replaced-global-effects
fix/3838-compact-any-value-items
test/hopper-download-probe-20261015
codex/windows-runtime-creation-red-green-20261015
codex/windows-readonly-root-red-green-20261015
codex/windows-root-share-red-green-20261015
codex/exp-1685-win-mcp-startup
codex/bug-sweep-20261015
investigate/2190-windows-package-phases
investigate/3543-macos-cli-deadline
perf/3281-reverse-tools-feedback-quality
fix/3406-hopper-doctor-fixture
fix/3341-wrapper-require-test-context
fix/3301-owned-uninstall-fixtures
fix/3164-compiler-input-ownership
fix/pcap-cleanup-stdout-newline-20261014
perf/interface-builder-summary
codex/review-fixes-pr-1977
fix/ghidra-effective-jvm-platform
fix/docs-turkish-rust-link-20261013
fix/main-maintenance-ci-20261010
fix/recover-binary-session-process-effects
codex/review-fixes-pr-2457
codex/ci-required-cancellation-gate
fix/main-format-baseline-20261013
fix/setup-preserve-entry-fields
cursor/restore-main-checks-1ffc
fix/ghidra-bridge-hashmap-import
codex/shared-ci-jadx-json-default-20261013
codex/shared-ci-ghidra-test-groups-20261013
codex/shared-ci-java-fixture-format-20261013
codex/fix-intrinsic-invocation-boundaries
test/release-preflight-reusable-jobs
test/js-parameter-provenance-expectation
fix/linux-hopper-verification-current
test/2419-ghidra-elf-probe-size
followup/pr-1544-native-ida
codex/fold-pr-2230-contribution
docs/readme-responsible-use
fix/issue-2064
fix/issue-2050
fix/issue-2053
fix/issue-1968
fix/issue-1945
experiment/codemode-bridge-20261011
fix/tool-effects-negative-wording-1904-20261012
fix/1842-electron-interop-provenance
feat/recover-javascript-multi-input
refactor/website-i18n-prep
fix/nativeaot-pe-virtual-extent
fix/browser-verifier-ci-hang
fix/pe-resources-input-selection
docs/beginner-friendly-guides
docs/beginner-setup-guide
fix/javascript-analysis-worker-1563
fix/1649-ghidra-duplicate-names
fix/javascript-export-keys-integration-1369
test/maintenance-boundary-contracts-20261011
review/javascript-export-keys-1369
review/process-live-progress-1483
test/javascript-1495-growth-ratio
fix/ci-escape-timing
docs/normalized-terminal-geometry-1450
release/6.3.0
archive/release-6.3.0-pr1381
release/6.2.0
fix/electron-preload-dynamic-override
fix/javascript-self-referential-bundler-edges
release/6.1.0
cursor/grok-client-cherry-pick-0b56
feat/signature-posture
feat/dyld-shared-cache
feat/artifact-integrity-policy
feat/pkg-inventory
release/6.0.0
chore/sync-release-5.0.0
release/5.0.0
cursor/cloud-agent-node-787e
fix/javascript-xhr-open-endpoints
review/pr-711-realpath-fallback-wording
cleanup/replay-confinement
codex/test-suite-performance
codex/issue-foundations
codex/address-open-issues-2026-07-20
agent/javascript-vite-rollup-esbuild-adapters
agent/process-cleanup
agent/triage-integration
agent/unknown-commands-registry
feat/mcp-identity-metadata
morlvps/issue_cleanup
codex/installer-redesign
morl/roadmap-investigation-core
morl/roadmap-investigation-docs
release-please--branches--main--components--rea
rea-agents-6.8.0
rea-agents-6.7.0
rea-agents-6.6.0
experiment/atomic-codemode-wait-runtime-20261016
rea-agents-6.5.0
rea-agents-6.4.0
rea-agents-6.3.0
rea-agents-6.2.0
rea-agents-6.1.0
rea-agents-6.0.0
rea-agents-5.0.0
rea-agents-4.1.0
rea-agents-4.0.1
rea-agents-4.0.0
rea-agents-3.2.1
rea-agents-3.2.0
rea-agents-3.1.0
rea-agents-3.0.0
rea-agents-2.7.0
rea-agents-2.6.0
rea-agents-2.5.1
rea-agents-2.5.0
rea-agents-2.4.0
rea-agents-2.3.0
rea-agents-2.2.0
rea-agents-2.1.0
rea-agents-2.0.0
rea-agents-1.7.0
rea-agents-1.6.0
rea-agents-1.5.0
rea-agents-1.4.0
rea-agents-1.3.0
rea-agents-1.2.0
rea-agents-1.1.0
rea-agents-1.0.0
rea-agents-0.5.0
rea-agents-0.4.0
rea-agents-0.3.0
rea-0.2.1
rea-0.2.0
Labels
Clear labels
area: bridge
area: bridge
area: build
area: build
area: build
area: cli
area: domain
area: evidence
area: mcp
area: native
area: providers
area: runtime
area: server
area: setup
area: tests
bug
design
documentation
enhancement
enhancement
enhancement
experiment
help wanted
i18n
invalid
P0: critical
P1: high
P2: medium
P2: medium
P2: medium
P3: low
performance
provider-request
pull-request
Mirrored from GitHub Pull Request
question
roadmap
triage
No labels
area: bridge
area: bridge
area: build
area: build
area: build
area: cli
area: domain
area: evidence
area: mcp
area: native
area: providers
area: runtime
area: server
area: setup
area: tests
bug
design
documentation
enhancement
enhancement
enhancement
experiment
help wanted
i18n
invalid
P0: critical
P1: high
P2: medium
P2: medium
P2: medium
P3: low
performance
provider-request
pull-request
question
roadmap
triage
Milestone
Clear milestone
No items
No milestone
Projects
Clear projects
No items
No project
Assignees
Clear assignees
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#513
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @cursor[bot] on GitHub (Oct 10, 2026).
Original GitHub issue: https://github.com/morluto/rea/issues/1500
TL;DR: A page-capture script keeps its execution-context id, and the frame for that id can be replaced later. Frame attribution for an already parsed script follows the replacement.
Area
Browser page capture
Observed behavior
handleExecutionContextCreatedinsrc/browser/CdpCaptureEventHandlers.tsdoesexecutionContextFrames.set(key, frameId)forString(context.id). A second created event with the same id overwrites the frame. There is no check that the previous frame was destroyed.frameForScriptinsrc/browser/CdpCaptureEvents.tsreads that map at use time. Scripts storeexecutionContextKeyfromDebugger.scriptParsedand do not store the frame id they had when they were parsed. A reused context id movesframe_idon those scripts to the new frame.The destroy path deletes the key, and a test covers destroy-then-recreate. An overwrite without destroy is not recorded as a limitation, and the script is not parsed again.
Expected behavior
A script's frame should be the frame recorded when that script was parsed. A second created event for an id that is still mapped should keep the original frame, or mark the affected scripts' frame attribution unknown.
Where
src/browser/CdpCaptureEventHandlers.ts—handleExecutionContextCreatedsrc/browser/CdpCaptureEvents.ts—frameForScriptsrc/browser/CdpPageCaptureScripts.ts— script frame assignment@CassieFox23 commented on GitHub (Oct 10, 2026):
TL;DR: On main after
b4db35f09(#1513), a script keeps the frame it was parsed in. In my runs, scripts from iframes that moved to a new page now keep their iframe, where7a56fe626gavenull. I could not reach the overwrite case itself with Chromium 154 (BSD-3-Clause).Iframes that move while REA watches
Page C has two iframes. At 1,500 ms one moves to a same-site page and the other leaves for
[::1]. At 3,000 ms the second comes back. I raninspect-web-pageduring the moves, and the capture worked on both builds. The cells showscripts.items[].frame_id:7a56fe62646c9cba03c-f1.js(old page in iframe 1)nullc-f2.js(old page in iframe 2)nullc-f1b.js(new page in iframe 1)c-f2b.js(new page in iframe 2)c-main.jsChromium destroyed each old iframe context before it made a new one, and the new ones got fresh ids 4 and 5.
Where ids do repeat
In my runs, Chromium reused ids only when the main page moved to another site. Page A on
localhostmoved itself to page B on[::1]:31829E83executionContextsClearedEA31EF39No
executionContextDestroyedcame for id 3, only the clear. That main page move makes REA stop, and both builds returned this:Not run
Edit: two of these ran, in the follow-up. Still not run: the overwrite case, Electron and other engines.
Other commands that use page capture, likeanalyze-web-bundleandexport-web-scripts.Back and forward cache, where an old page comes back from memory.Raw CDP events, page C on
46c9cba03(trimmed)REA
frame_idon46c9cba03:c-f1.js5747D9DD,c-f2.jsFE6CDF4A,c-f1b.js5747D9DD,c-f2b.jsFE6CDF4A.Raw CDP events, page A to page B on
46c9cba03(trimmed)Commands
Test setup
7a56fe626and46c9cba03(main, before and afterb4db35f09)154.0.8037.57🤖 Generated with Claude Code (Opus 5.5) 🦊
@CassieFox23 commented on GitHub (Oct 10, 2026):
TL;DR: Follow-up on main
46c9cba03:export-web-scriptskeeps each script's iframe right on my moving-iframe page. Theanalyze-web-bundleoutput has no frame field to check. REA stops when the main page moves, so a page coming back from the cache can't be caught in one run.Moving iframes, other commands
This is the same page C as before, where both iframes load a new page during the run. Cells show each script's frame.
inspect-web-pageexport-web-scriptsmanifestc-f1.js(old page in iframe 1)c-f1b.js(new page in iframe 1)c-f2.js(old page in iframe 2)c-f2b.js(new page in iframe 2)c-main.jsandc.htmlanalyze-web-bundlefound the same 6 scripts. Its output has no frame id per script, so there is nothing to compare.Back and forward cache
Page D1 moves to page D2 on the same site, then calls
history.back(). With the debugger on, headless Chromium 154 (BSD-3-Clause) did restore page D1 from the cache. I sawframeNavigatedwith typeBackForwardCacheRestore, andpageshowhadpersistedset to true.On restore, Chromium sent
executionContextsClearedfirst. Then the old contexts came back with their old ids and old frames, andscriptParsedreplayed the old script ids. So the ids repeat, but each one maps to the frame it had before.REA runs on main, each across that away-and-back:
inspect-web-pagetarget_changedinspect-web-page --include-script-sourcesprotocol_erroranalyze-web-bundle, 3 runsprotocol_erroreach timeinspect-web-pageafter the restore was doneThe
protocol_errormessage wasDebugger.getScriptSource failed (-32000): No script for id. It needs no cache restore. A plain move from page E1 to E2 on the same site gave it too, with no move back, in 2 of 2analyze-web-bundleruns. A move to another site gavetarget_changedinstead. InCdpPageCapture.ts,captureScriptsreads the sources before thenavigationDuringCapturecheck. That order fits what I saw. This is not the frame bug, so it may want its own issue.Still not run
Raw CDP events, page D1 restore (trimmed)
Commands
Test setup
46c9cba03154.0.8037.57, run headless🤖 Generated with Claude Code (Opus 5.5) 🦊
@CassieFox23 commented on GitHub (Oct 10, 2026):
TL;DR: I think #1513 fixed this. It stores each script's frame when the script is parsed, which is what this issue asks for. If you agree, this can be closed.
My two comments above have the test runs. The one gap is the overwrite case itself, which I could not reach in Chromium 154 (BSD-3-Clause).
🤖 Generated with Claude Code (Opus 5.5) 🦊
@morluto commented on GitHub (Oct 10, 2026):
Thanks for reporting this. Closing as resolved on main. Parsed scripts retain their frameId at the scriptParsed event; later execution-context reuse no longer reassigns their frame ownership.
Merged fix. I checked the current source against this report; no tests or real-provider workflows were run for this closure pass.