fix(rizin): retain interrupted command frames (#4459)

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.
This commit is contained in:
Ysopwnable authored and GitHub committed 2026-10-16 21:08:47 +08:00
1 parent fe2a398dd9
commit 1ff705473a
12 files changed
+784 -280

No files matched your search

+1
View File
@@ -6,6 +6,7 @@ export default defineConfig({
"tests/boundary/providers/CutterBridgeClient.test.ts",
"tests/boundary/providers/RizinCommandTimeout.test.ts",
"tests/boundary/providers/RizinTimeoutEvidence.test.ts",
"tests/boundary/mcp/rizinPendingOutput.test.ts",
],
pool: "forks",
maxWorkers: 2,