mirror of
https://github.com/morluto/rea.git
synced 2026-10-19 04:19:54 -05:00
Retain received complete and unfinished Rizin command bytes with bounded UTF-8 capture, truthful completion uncertainty and exact launch provenance. Keep captures independent of cancellation, protocol and cleanup precedence; wait for bounded output settlement on exit and preserve active bytes across stdin failures. Validated353 focused tests (one existing skip), full CI static/docs checks, real official Linux Rizin0.9.1 interruption probes, paired completed public CLI/stdio MCP tasks, and focused mutation checks. Required CI passed; exact-head Codex review reported no findings and Greptile5/5. Fault cleanup uncertainty and partial-marker ambiguity remain explicit. Fixes #4015. Follow-up to #4227.
74 lines
3.3 KiB
TypeScript
74 lines
3.3 KiB
TypeScript
import { defineConfig } from "vitest/config";
|
|
|
|
const REVERSE_TOOL_MODULES = [
|
|
"src/application/reverse/ReverseEngineeringService.ts",
|
|
"src/application/binary/BinarySession.ts",
|
|
"src/cutter/CutterBridgeClient.ts",
|
|
"src/cutter/CutterBridgeService.ts",
|
|
"src/gdb/GdbSessionManager.ts",
|
|
"src/objdump/ObjdumpCommand.ts",
|
|
"src/process/ownedDebuggerSession.ts",
|
|
"src/process/ExecFileOutput.ts",
|
|
"src/server/registerReverseEngineeringTools.ts",
|
|
"src/server/externalMutationAdmission.ts",
|
|
"src/server/providerEnvironment.ts",
|
|
"src/rizin/RizinCommand.ts",
|
|
"src/rizin/RizinDebugSessionManager.ts",
|
|
];
|
|
|
|
export default defineConfig({
|
|
test: {
|
|
include: [
|
|
"tests/composition/analysis-sessions/binarySession.test.ts",
|
|
"tests/boundary/filesystem/directAnalysisSnapshotReplay.test.ts",
|
|
"tests/boundary/providers/GdbSessionManagers.test.ts",
|
|
"tests/boundary/providers/RizinDebugSessionManagers.test.ts",
|
|
"tests/boundary/providers/RizinInferiorTty.test.ts",
|
|
"tests/boundary/providers/GdbSessionManagerCoverage.test.ts",
|
|
"tests/boundary/providers/GdbCommandQueue.test.ts",
|
|
"tests/boundary/providers/GdbSessionReviewRegressions.test.ts",
|
|
"tests/boundary/providers/RizinDebugSessionReviewRegressions.test.ts",
|
|
"tests/boundary/providers/RizinDebugSessionCoverage.part1.test.ts",
|
|
"tests/boundary/providers/RizinDebugSessionCoverage.part2.test.ts",
|
|
"tests/boundary/providers/RizinDebugSessionCoverage.part3.test.ts",
|
|
"tests/boundary/providers/RizinDebugSessionCoverage.part4.test.ts",
|
|
"tests/boundary/providers/RizinDebugSessionCoverage.part5.test.ts",
|
|
"tests/boundary/providers/RizinTimeoutEvidence.test.ts",
|
|
"tests/boundary/providers/RizinCommandTimeout.test.ts",
|
|
"tests/boundary/providers/CutterBridgeClient.test.ts",
|
|
"tests/boundary/providers/CutterBridgeCapacity.test.ts",
|
|
"tests/boundary/providers/cutterBridgeProducer.test.ts",
|
|
"tests/boundary/providers/CutterBridgeNullIdentity.test.ts",
|
|
"tests/boundary/providers/CutterBridgeService.test.ts",
|
|
"tests/boundary/process/ownedDebuggerSession.test.ts",
|
|
"tests/boundary/mcp/gdbCancellationMcp.test.ts",
|
|
"tests/boundary/mcp/rizinDebuggerCancellationMcp.test.ts",
|
|
"tests/boundary/mcp/rizinPendingOutput.test.ts",
|
|
"tests/boundary/mcp/cutterMcp.test.ts",
|
|
"tests/boundary/mcp/cutterCancellationMcp.test.ts",
|
|
"tests/boundary/mcp/reverseEngineeringEnvironmentMcp.test.ts",
|
|
"tests/boundary/mcp/reverseEngineeringPartialMcp.test.ts",
|
|
"tests/boundary/mcp/workflowSnapshotReplayMcp.test.ts",
|
|
"tests/boundary/cli/gdbStartupCleanupCli.test.ts",
|
|
"tests/composition/reverseEngineering.test.ts",
|
|
"tests/composition/reverseEngineeringAdmission.test.ts",
|
|
"tests/composition/reverseEngineeringEdgeCases.test.ts",
|
|
"tests/boundary/cli/reverseEngineeringCommands.test.ts",
|
|
"tests/composition/reverseEngineeringCancellation.test.ts",
|
|
"src/process/ExecFileOutput.test.ts",
|
|
],
|
|
pool: "forks",
|
|
maxWorkers: 2,
|
|
retry: 0,
|
|
testTimeout: 60_000,
|
|
runner: "./tests/processOwnershipRunner.ts",
|
|
coverage: {
|
|
enabled: false,
|
|
provider: "v8",
|
|
reportsDirectory: "coverage/reverse-tools",
|
|
include: REVERSE_TOOL_MODULES,
|
|
reporter: ["text", "text-summary", "json"],
|
|
},
|
|
},
|
|
});
|