Main now retains upstream provider caveats in the workflow Evidence envelope
as well as the established graph result. Assert each exact list instead of
counting text occurrences across two distinct contract locations. Also assert
the actual complete graph edges so a caveat cannot silently truncate traversal.
Verified 22 focused workflow Evidence and MCP boundary tests. Product code and
advertised output are unchanged.
Co-authored-by: Kaoru0822 <208281322+kaoru0822-kitauji@users.noreply.github.com>
599a8ee11 replaced the host-wide `ps` scan with a scan of the supplied proc
root, but the reparented demo-helper case only mirrored its process into the
synthetic root in alternate-launcher mode. The renamed `Xvfb` helper was
therefore invisible and the clean-runtime check resolved. Mirror the fixture
process in both modes.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
80de3145e stopped advertising `dependentRequired` and states input groups in
the schema description instead. Passive captures with `normalization` and a
single scenario side with `normalization` therefore satisfy the advertised
projection, while the canonical parser still rejects them before any
provider call. Classify them with the other mixed groups and assert the
description carries the group guidance.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Review breaking changes and migration notes for the release being prepared; retain the 6.1-to-6.2 guide as historical context.
Fixes#3058.
Co-authored-by: Geekwolf <3125615+geekwolf@users.noreply.github.com>
Co-authored-by: Kaoru0822 <208281322+kaoru0822-kitauji@users.noreply.github.com>
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
The exact-selection tests from 4d4631ac9 match the child Vitest summary as
plain text. In the CI lane the child inherited color, so ANSI styling split
"Test Files 2 passed" and both tests failed there while passing locally;
`FORCE_COLOR=1` reproduces it. Run the child with `NO_COLOR=1`.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
DirectoryArtifactReader yields a directory's entries in `opendir()` order and
reads queued child directories only after that directory is exhausted. The
root-replacement test assumed APFS order (`sub` before `sample.txt`), so it
failed on Linux ext4. Require both root entries in either order before the
descent into the replaced root is rejected.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
29a2d1399 classifies an over-budget expanded SAZ archive as invalid input
with an out_of_range `capture_path` issue that names the expanded-byte
maximum. Assert that projection through the CLI instead of the previous
execution failure.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Clarify that final capture progress carries disposition and cleanup states as key=value text inside message, with an illustrative wire-format example.
Fixes#3052.
Co-authored-by: 1052326311 <65798732+1052326311@users.noreply.github.com>
Co-authored-by: Kaoru0822 <208281322+kaoru0822-kitauji@users.noreply.github.com>
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
Chrome's DOMSnapshot interns empty or null strings as index -1. bffdd9105
began rejecting every negative string index, so real Chrome snapshots lost
each element node (whose nodeValue is -1) and any node with an empty
attribute value, and the headless Chrome SVG xlink:href lanes found no
anchors. Simulated snapshots interned "" as a table entry and missed it.
Parse snapshot strings at one owner: names still require a table entry,
while node values, attribute values, and baseURL accept -1 as "". The SVG
ancestry projection shares the same parser instead of its own copy.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
d4bd65c53 moved a failed LaunchSupport helper's output into the nested
`command_outcome`, but the cause projection also returned early for those
failures and dropped `launch_support`. A `-vmargs` failure therefore lost the
warning that the successful `-envvars` helper had already reported. Keep the
retained helper outputs and skip only the launcher outcome that the nested
cause now owns.
Update the Ghidra launch and Hopper startup boundary expectations to current
main: failed helpers report through `cause.command_outcome`, and bridge startup
results carry the launched `processId` (599a8ee11), asserted against the
exact retried process.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Clarify that path-specific Hopper lease recovery guidance applies when opening the lease directory fails with a permission error. Earlier creation failures retain their separate diagnostic.
The reviewed security implementation and owning regressions from this PR are already present on main through 599a8ee11, which explicitly records #1628 among its integrated fixes; this merge does not duplicate that code.
Co-authored-by: Sunil <180283757+Sunil56224972@users.noreply.github.com>
Co-authored-by: morluto <76467478+morluto@users.noreply.github.com>
Co-authored-by: N0zoM1z0 <161784452+N0zoM1z0@users.noreply.github.com>
Co-authored-by: Kaoru0822 <208281322+kaoru0822-kitauji@users.noreply.github.com>
b58adafa4 emits `interpretation: "candidate"` on static endpoint findings,
but the worker's strict endpoint schema still rejected the key, so
`analyze_javascript_application` failed output validation for any source
with a candidate endpoint. Admit the field as an exact optional literal.
Update application acceptance and boundary expectations to current main:
endpoint identity keys tag literal values (88afcc738), source-map
observations and edges carry `resolution_status` (b58adafa4), and a proven
Webpack bootstrap reports bundled contextBridge exposures as direct syntax.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
e572c38dc replaced the localized guide URLs in the translated readmes with
repository-relative guide links, so the drift fixture no longer contained
`https://rea.tools/zh-CN/guides/native/`. Exercise the same missing-target,
wrong-locale, and query drift on a localized showcase link the readme still
carries, and add drift for the new relative guide link.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Cover configuration reads after passing env/argv values to a call, and
keep reads unknown after replacing an argv entry directly, through an alias,
or after a container escape.
- b58adafa4 added `resolution_status` to source-map edges. Expect it, and pair
each alias edge with the script that declared it instead of relying on
content-derived edge ID order.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Main fails five source tests after 04672f2b9 and d4bd65c53.
- Ambient write resolution used the caller's write site for every alias
read it reached, so `alias = alias.globalThis` resolved its own self-read
only to the reassignment and lost the original `globalThis` identity. Reads
reached through an initializer now select initializers at their own
position; the written target keeps the caller's write site.
- Process escape tracking recorded `Number(process.env.PORT)` and
`Number(process.argv[2])` as escapes of the read slot, which dropped the
configuration read inside functions. Node stores env values and argv
entries as strings, so passing one exposes no mutable object; replacing an
entry still records its own write or receiver escape.
- The dynamic isolated-world test now expects the direct observation that the
proven Webpack bootstrap resolution produces.
- The native IDA admission test now matches d4bd65c53: attached profiles
report the bound document and still refuse address resolution.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
BREAKING CHANGE: binary_overview segment length is null when Hopper coordinates do not establish a finite same-address-space extent. Consumers must preserve this unknown instead of treating it as zero or a saturated value.
Preserve reproducible complete versus summary/page PCAP measurements on two official HTTP recordings and a fixed metadata/URI question. Summary/page uses more than twice the SDK JSON and about 51% more total model input in both real-model pairs, so existing complete defaults and production APIs/cache remain unchanged. These results apply to these captures and question; no general speedup is claimed. Refs #2016.
Authenticate experiment SDK envelopes with the pinned runtime's existing Evidence parser and check coverage, target/view/operation ownership and retained-parent identity. Separate factual and exact-workflow grading, retaining diagnostics and partial facts for malformed replies. Register six comparator CLI scenarios in the discovered Vitest evaluation project and remove the manual suite. The final change is limited to nine experiment files and one discovered evaluation test; production behavior is unchanged.
Validation includes eight actual SDK workflows and four actual Codex CLI tasks, independent raw-frame and CLI/MCP checks, authentication of all 18 original receipts, 34 context/grading regressions and six comparator scenarios. All four stored model answers pass factual and workflow regrading without model reruns. Original measured runtime remains 3ae826ceba6f25b08bce50bcb51001209bc16b57; original measurements and private raw artifacts are unchanged. Serial local checks use one CPU with 3-GiB early-stop/4-GiB hard/no-swap limits. Unknown terminal counters remain explicitly unknown.
Integrate upstream shared fixture owners and Windows verification, removing both superseded local differences. All final experiment/comparator files remain byte-identical to the reviewed sources and the final PR scope is 10 files. Full bounded preflight passes in 73.953 seconds with ~2.23 GiB peak; payload cleanup is verified, zero phase OOM/limit events are observed, and terminal counters remain unknown. Current-head automatic CI 38492231165 passes all 35 selected jobs, including every compiled shard, source/static/build/docs, actual Windows/native/package and real application lanes, Portable reports/inventory, reverse-tools coverage/mutation and CI required. Greptile passes and all review threads are resolved. Actual CI checkout is 4eb2262359cb01f2fb1314db0bc18d3dc9092792, integrated with main 41a2e84647. Passing retries do not establish the root cause or a fix of the earlier main worker cleanup failure; its original evidence is preserved. No release.
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
Co-authored-by: Kaoru0822 <208281322+kaoru0822-kitauji@users.noreply.github.com>
Co-authored-by: morluto <76467478+morluto@users.noreply.github.com>
Celebrate the 200,000-star milestone across the English README and all 19 current translations, preserving locale-specific number formatting.
Co-authored-by: Kaoru0822 <208281322+kaoru0822-kitauji@users.noreply.github.com>
Document the Linux procps-compatible ps prerequisite before quick start and in the installation/provider guides. Scope it to shared process-supervision workflows and give recovery guidance for generic provider startup errors.
Actual JavaScript CLI analysis passed with ps and refused an empty PATH with capability_unavailable and retained partial evidence. Real Chrome scenario launch succeeded without ps, confirming the need for qualified wording. Docs checks, formatting, typecheck/lint and diff checks passed. Five English documentation files; no runtime changes. Native Ghidra/JADX/firmware execution was not performed.
Fixes#2763
Co-authored-by: Avocado <93173363+HeadmasterEggy@users.noreply.github.com>
Co-authored-by: morluto <76467478+morluto@users.noreply.github.com>
Co-authored-by: Kaoru0822 <208281322+kaoru0822-kitauji@users.noreply.github.com>
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
Add bounded, read-only inspection of packaged Electron fuse state for ELF, PE, and Mach-O applications through CLI and MCP workflows.
Preserve artifact provenance and unknown values, resolve app bundles without execution, reject malformed or overlapping containers before scanning, and keep output compact for agent use.
Co-authored-by: Matt Van Horn <455140+mvanhorn@users.noreply.github.com>
Co-authored-by: morluto <76467478+morluto@users.noreply.github.com>
Co-authored-by: N0zoM1z0 <161784452+N0zoM1z0@users.noreply.github.com>
Co-authored-by: Kaoru0822 <208281322+kaoru0822-kitauji@users.noreply.github.com>
Keep provider discovery independent from Hopper-specific packaged workflows. Installed Ghidra launchers on PATH must not turn the fixture into an ambiguous auto-selection request; target-free inventory and unknown-provider checks remain explicit.
Reuse installation inspection in doctor and provider readiness. Keep explicit configuration authoritative and validate discovered roots without executing launchers. Clarify the existing per-operation availability contract.
Use exact discovered test identities, production MCP sessions and byte-exact setup backups. Add CLI signal cleanup coverage and independent Ghidra, Go and firmware verification assertions; prune redundant test configuration and preserve platform limits.