rea/tests/fixtures
all-black-493 62c8b3da1b
feat(browser): attach passive tools to browsers without HTTP discovery (#2346)
* feat(browser): attach passive tools to browsers without HTTP discovery

Accept a literal loopback browser WebSocket,
ws://127.0.0.1:PORT/devtools/browser/ID, as the cdp_endpoint of the six
passive browser tools. Discovery then reads Browser.getVersion and
Target.getTargets over that socket, and the target session adopts the
same socket, so a browser that asks for consent per connection prompts
once per call.

The socket identifier gates access, so Evidence records the endpoint as
ws://127.0.0.1:PORT/devtools/browser/[REDACTED], and runtime
reconciliation accepts that recorded form. HTTP endpoints and their
Evidence are unchanged. Electron, web runtime, scenario and Inspector
endpoints stay HTTP-only.

Refs #2288

* test(browser): match browser-socket captures against HTTP discovery

Check in the real Chrome lane that DevToolsActivePort names the same
browser socket as /json/version, and that inspecting the selected page
through that socket leaves DOM structure and scripts unchanged compared
with an inspection through HTTP discovery.

Refs #2288

* fix(browser): bound browser-socket handshake and report discovery timeouts

Run the browser-socket WebSocket handshake and both discovery commands
under one discovery deadline, so a port that accepts the connection but
never completes the upgrade times out instead of waiting forever.

Report a reached deadline as a timeout without carrying the internal
abort as its cause, so CLI and MCP project provider_timeout rather than
cancelled. Caller cancellation is still reported as cancelled.

Refs #2288
2026-10-14 00:36:37 +08:00
..
android feat(android): expose exact DEX descriptors and direct invoke sites (#2439) 2026-10-13 22:02:47 +08:00
binaryDiagnostics feat(recorded-crash): decode AArch64 core register notes (#2505) 2026-10-13 23:48:24 +08:00
evm feat(evm): inspect lossless Solidity terminal CBOR metadata (#2790) 2026-10-13 21:55:30 +08:00
firmware fix(firmware): recover after workspace removal failures (#1616) 2026-10-11 03:16:34 +08:00
go fix(formats): preserve high bits in Windows signature checks 2026-10-13 04:24:29 +08:00
golden refactor!: simplify runtime tools and remove replay engines (#572) 2026-10-05 21:15:04 +08:00
inspector fix(runtime)!: preserve unknown debugger attachment state 2026-10-12 12:37:00 +08:00
interface-builder fix(apple): decode UIKit keyed-archive outlet connections 2026-10-13 03:47:45 +08:00
javascript-recovery feat(javascript): recover code-split bundles from multiple inputs (#1686) 2026-10-11 18:39:49 +08:00
native-macos fix(native): select one slice when universal Mach-O slices share a CPU type (#2040) 2026-10-13 16:36:23 +08:00
nativeaot feat(ghidra): integrate optional NativeAOT metadata recovery (#748) 2026-10-07 00:57:08 +08:00
pcap feat(pcap): add bounded capture summaries through CLI and MCP 2026-10-13 04:53:03 +00:00
replay feat(application): add isolated JavaScript replay 2026-07-16 15:45:55 +09:00
sqlite feat(sqlite): inspect offline snapshots with selective evidence (#2271) 2026-10-12 18:33:23 +00:00
swift fix(ghidra): classify modern Swift manglings in swift type analysis (#1208) 2026-10-09 16:10:55 +08:00
wasm fix(artifacts): authenticate file subjects across provider and view boundaries 2026-10-13 13:23:03 +08:00
windows fix(windows): preserve caller affinity only within one processor group (#2202) 2026-10-13 14:49:34 +08:00
advertisedMcpTool.ts fix(target): probe WASM before inferred database routing (#2007) 2026-10-13 23:49:33 +08:00
analysisExecution.ts Add evidence-backed investigation workflows 2026-07-12 21:12:18 +00:00
analysisView.ts feat(mcp): derive an API surface view from retained web network captures (#1891) 2026-10-12 10:44:17 +08:00
applicationMcpHarness.ts feat(target): explain static WASM inspection after native rejection 2026-10-12 07:00:30 +08:00
artifactEntryOrder.ts fix(artifacts): resolve parents after archive enumeration (#578) 2026-10-05 23:06:46 +08:00
artifactEvidence.ts feat(native): add inspection primitives, dispatch traces and approved UI observation (#500) 2026-10-04 16:02:36 +08:00
artifactInventory.ts fix(artifacts)!: retain cleanup owners through client shutdown 2026-10-11 04:43:02 +08:00
asarHeader.ts fix(artifacts): bound expanded ASAR listing before allocation (#2724) 2026-10-13 23:47:18 +08:00
binarySession.ts refactor: remove forwarding exports and redundant aliases 2026-10-09 22:46:09 +08:00
browserScenarioCancellation.mjs perf(cli): bundle runtime entries to reduce Windows startup I/O (#1996) 2026-10-12 09:25:27 +08:00
captureGhidraLaunch.cmd feat(ghidra): launch bounded Windows headless sessions 2026-07-17 03:05:19 +09:00
captureGhidraLaunch.mjs test: eliminate fixture races and prune redundant scaffolding (#849) 2026-10-07 12:25:37 +08:00
cliJsonProcess.ts fix(cli): accept JSON files for web capture and screenshot comparisons (#1397) 2026-10-09 19:29:42 -07:00
clientEnvironment.ts feat(setup): add Kimi Code client support (#2744) 2026-10-13 23:36:54 +08:00
contractPresentation.mjs fix(mcp): admit composed analysis through result bookkeeping 2026-10-10 00:35:17 +08:00
descriptorCloseFailure.ts fix(process): preserve discovery ownership across cleanup retries (#2643) 2026-10-13 13:43:06 +00:00
directAnalysisInterrupt.mjs refactor: remove forwarding exports and redundant aliases 2026-10-09 22:46:09 +08:00
directoryReaderFifoProbe.mjs fix(artifacts): harden reader lifecycle boundaries (#951) 2026-10-07 20:00:24 +08:00
directoryReaderUnsupportedEntryProbe.mjs fix(artifacts): retain reader owners after cleanup failures 2026-10-11 05:33:05 +08:00
electronApiAliasApplication.ts fix(javascript): recover Electron API identity through aliases 2026-10-11 08:27:46 +08:00
electronBoundaryApplication.ts feat(electron): map static process and IPC boundaries 2026-07-16 07:56:13 +09:00
fakeCdpBrowser.ts feat(browser): attach passive tools to browsers without HTTP discovery (#2346) 2026-10-14 00:36:37 +08:00
fakeCdpBrowserEvents.ts fix(browser): preserve uncertainty in malformed network observations 2026-10-12 05:24:24 +08:00
fakeCdpBrowserResults.ts feat(browser): attach passive tools to browsers without HTTP discovery (#2346) 2026-10-14 00:36:37 +08:00
fakeCdpBrowserTargets.ts fix(runtime)!: preserve unknown debugger attachment state 2026-10-12 12:37:00 +08:00
fakeCdpBrowserTypes.ts feat(browser): attach passive tools to browsers without HTTP discovery (#2346) 2026-10-14 00:36:37 +08:00
fakeGhidra.mjs feat(native): search analyzed memory for masked byte patterns (#2341) 2026-10-13 23:41:45 +08:00
fakeHopper.mjs fix(hopper): preserve observed process failures across requests (#1927) 2026-10-12 02:13:53 +08:00
fakeLauncher.mjs refactor: return complete tool results inline 2026-09-29 07:08:46 +08:00
fifoInput.ts fix(files): reject nonregular capture and JSON inputs 2026-10-10 01:49:54 +08:00
filesystemSnapshotFifoProbe.mjs fix(process)!: retain per-file digest open failures 2026-10-10 03:52:35 +08:00
flutterApk.ts feat(flutter): identify Dart snapshot builds and inspect AOT payloads by pure APK parsing (#1582) 2026-10-12 22:35:55 +08:00
ghidraRuntime.ts feat(ghidra): enable Windows x64 read-only analysis (#699) 2026-10-06 16:53:33 +08:00
historicalHar.ts feat(mcp): derive an API surface view from retained web network captures (#1891) 2026-10-12 10:44:17 +08:00
hopperBridgeFacadeProbe.py fix(contracts)!: require observed provider output metadata 2026-10-10 03:52:13 +08:00
hopperBridgeReconnectProbe.py fix(test): wait for Hopper reconnect listener readiness (#1885) 2026-10-12 00:02:01 +08:00
hopperCleanupTimeout.py fix(linux): improve Hopper reliability and CachyOS support (#963) 2026-10-07 23:16:48 +08:00
hopperDialogDetection.py fix(linux): improve Hopper reliability and CachyOS support (#963) 2026-10-07 23:16:48 +08:00
hopperInstructionProbe.py fix(hopper): preserve owned basic-block endpoint instructions (#1118) 2026-10-09 06:51:53 +08:00
hopperLaunchAdmission.mjs fix(hopper): preserve startup failures and recover denied launches 2026-10-11 22:35:01 +08:00
hopperLifetimeLaunch.py fix(hopper): stop Linux demo children when the REA owner exits (#2499) 2026-10-13 12:59:22 +08:00
hopperOwnerLifetime.py fix(hopper): stop Linux demo children when the REA owner exits (#2499) 2026-10-13 12:59:22 +08:00
hopperStringSearchProbe.py perf(hopper): resolve string search records once per query (#1229) 2026-10-09 18:39:19 +08:00
httpComparisonBrowser.ts test(web): cover nullable HTTP captures through CDP and CLI (#1834) 2026-10-13 21:44:08 +08:00
ibtool.ts test(apple): skip ibtool-compiled NIB tests when Xcode ibtool is unavailable (#2070) 2026-10-13 06:07:16 +09:00
idaCallGraph.ts fix(ida): preserve non-x86 call edges and workflow uncertainty (#1906) 2026-10-12 04:10:22 +08:00
idaMcp.ts fix(ida): let one-shot commands exit after retaining cleanup (#1841) 2026-10-13 21:36:52 +08:00
interfaceBuilderEncoding.ts fix(apple): decode Interface Builder XML byte encodings (#1095) 2026-10-09 01:11:49 +08:00
interfaceBuilderMalformedUid.ts fix(apple): report missing keyed archive hierarchy references (#1104) 2026-10-09 01:31:53 +08:00
javaClassFile.ts fix(process): honor startup deadlines and add a CI audit skill (#2692) 2026-10-13 22:15:43 +08:00
javascriptArtifactApplication.ts fix(electron): resolve package and dirname entrypoints by context 2026-07-17 21:30:24 +08:00
javascriptArtifactBom.ts fix(javascript): preserve original BOM source coordinates (#1093) 2026-10-09 00:09:55 +08:00
javascriptArtifactTypeScriptDialect.ts refactor: consolidate boundary semantics and prune redundant tests 2026-10-10 05:56:01 +08:00
javascriptPrimitiveExpansion.ts test(javascript): share primitive expansion producer fixtures 2026-10-10 02:49:46 +08:00
javascriptReturnShapes.ts fix(javascript): invalidate references stored through property targets (#1445) 2026-10-10 13:47:15 +08:00
javascriptRuntimeReconciliation.ts fix(ci): share runtime fixtures and allow modest duplication headroom 2026-10-11 06:53:20 +08:00
javascriptSemanticGraph.ts test(javascript): share semantic graph test facts 2026-10-10 04:02:41 +08:00
javascriptSourceSelection.ts feat(javascript): analyze selected application sources 2026-10-12 04:07:14 +08:00
keyedArchiveNumberMetadata.ts fix(artifacts): preserve keyed archive integer precision 2026-10-09 07:13:32 +08:00
keyedArchivePrototypeKeys.ts fix(plist): decode formatted XML dictionary keys 2026-10-12 05:57:34 +08:00
keyedArchiveXmlNesting.ts fix(apple): preflight XML plist nesting before keyed archive decoding (#2161) 2026-10-12 23:12:10 +08:00
localToolsMcp.ts feat(pcap): add bounded capture summaries through CLI and MCP 2026-10-13 04:53:03 +00:00
mcpDoctorExit.mjs feat: complete REA remediation program 2026-07-22 22:09:12 +09:00
mcpDoctorHang.mjs feat: complete REA remediation program 2026-07-22 22:09:12 +09:00
mcpDoctorReply.mjs fix(mcp): validate doctor probe against its discovered output contract (#1461) 2026-10-10 14:33:57 +08:00
mcpToolCatalog.ts build: separate runtime artifacts and supervise command ownership 2026-10-09 20:11:17 +08:00
mcpToolError.ts fix(mcp): deliver typed errors without invalid structured output (#1277) 2026-10-09 13:54:32 +00:00
nativeCommands.ts fix(analysis): preserve producer identity and partial evidence 2026-10-12 12:37:00 +08:00
nativeaotPe.ts feat(ghidra): inspect NativeAOT PE metadata read-only 2026-10-11 10:31:49 +08:00
optionalObservationProviders.ts refactor!: enforce canonical evidence and provider boundaries 2026-10-09 20:18:52 +08:00
processCaptureCancellation.mjs test(process): publish capture readiness atomically 2026-10-10 01:45:01 +08:00
processFidelity.mjs fix(process): preserve partial evidence and verify detached cleanup (#1011) 2026-10-08 04:46:46 +08:00
processFinalization.mjs ci: keep validation fresh and preserve failed-shard reports (#2210) 2026-10-12 23:42:47 +08:00
processIdentity.mjs fix(process): honor disabled PID normalization in samples 2026-10-06 01:22:45 -07:00
processReactiveScenario.mjs test: replace implementation lock-in with behavioural assertions (#498) 2026-10-03 23:22:07 +08:00
processRunTokenParserProbe.swift fix(evidence): retain unreadable PE and Darwin process facts 2026-10-12 11:59:23 +08:00
processRunTokenSnapshotProbe.swift fix(process): preserve partial evidence and verify detached cleanup (#1011) 2026-10-08 04:46:46 +08:00
processSnapshotCancellation.mjs fix(process): harden filesystem snapshot identity and cancellation (#956) 2026-10-07 23:45:23 +08:00
providerProcess.mjs feat(electron): add autonomous Electron runtime analysis (#464) 2026-08-05 19:07:46 +08:00
providerProcess.ts feat(ghidra): enable Windows x64 read-only analysis (#699) 2026-10-06 16:53:33 +08:00
pwntoolsChangingArtifact.mjs fix(native): retain failed pwntools process and runtime cleanup (#1708) 2026-10-13 01:37:47 +08:00
referenceReaderFifoProbe.mjs fix(reference)!: retain source and metadata cleanup owners 2026-10-11 06:10:10 +08:00
strippedAsarAddon.ts feat(ghidra): support raw NMOS 6502 analysis (#2079) 2026-10-13 21:13:01 +08:00
temporaryDirectory.ts test: replace implementation lock-in with behavioural assertions (#498) 2026-10-03 23:22:07 +08:00
webModuleTrace.ts feat(browser): trace captured website module imports (#879) 2026-10-07 14:59:52 +08:00
webRuntime.ts test(browser): reject unmodeled CDP commands in protocol fixtures 2026-10-09 03:13:53 +08:00
webScriptCapture.ts fix(browser): report mismatched event family selection as unknown in capture comparison (#2239) 2026-10-13 02:36:45 +08:00
webSourceLocation.ts feat(browser): trace captured website source-map locations (#897) 2026-10-07 16:21:18 +08:00
windows-native-inspection-failure.cc fix(windows): retain failed native inspection ownership (#1826) 2026-10-11 21:33:25 +08:00
x11ProbeHang.py feat: complete REA remediation program 2026-07-22 22:09:12 +09:00
x11ProbeOutput.py fix(process): retain provider output until streams close (#928) 2026-10-07 18:39:10 +08:00