[GH-ISSUE #1248] feat(snapshot): report Evidence and workflow counts in save receipts #445

Closed
opened 2026-10-15 18:25:07 +00:00 by bsakaguchi · 0 comments
Owner

Originally created by @N0zoM1z0 on GitHub (Oct 9, 2026).
Original GitHub issue: https://github.com/morluto/rea/issues/1248

Current limitation

close_binary with snapshot_path returns {path,bytes,entries}, where entries counts only primitive query cache entries. It omits retained Evidence and workflow cache counts, making a successful save appear empty to an analyst who primarily used analyze_function.

Real observation

  • Published 6.1.0: receipt entries:0; the saved 3,809,815-byte snapshot contains one workflow entry and 14 Evidence records.
  • Current main: receipt entries:3; the saved 7,584,032-byte snapshot contains one workflow entry and 19 Evidence records.

These sessions contain different requests; the numbers are not an A/B storage comparison. Main's fresh-session primitive and dossier replays returned the same observations without starting Ghidra. The dossier's explicit snapshot-origin limitation intentionally changes its Evidence ID.

Required behavior

Return separately named primitive, workflow and Evidence counts. Explain replay eligibility and the distinction between retained Evidence, eligible cached queries and an imported provider database. Avoid implying that zero primitive entries means lost Evidence, or that every new query can bypass provider startup.

Cover workflow-only, mixed, empty and legacy-compatible snapshots; receipts must agree with the actual written file. Preserve truthful cache provenance and CLI/MCP equivalence.

Source

src/application/binary/BinarySession.ts:335 and src/application/binary/BinarySessionPort.ts:20.

Verification and scope

Real close/save outputs and parsed saved snapshots verified on both baselines. Corrected main replay was checked semantically, including intentional provenance changes; no Evidence-loss or replay-corruption bug was found.

Audit date: 2026-10-09. Latest npm dist-tag verified as rea-agents@6.1.0; current main tested at f4c99ab8a53806dd57dc24b3d5a600905bcb4686. Linux x64, Node 24.18.0, MCP client SDK 2.3.1. Native observations use unmodified Ghidra 12.1.4 and JDK 21, two CPUs and a 512 MiB Java heap. No target execution or executable mutation was used for the static native checks.

Originally created by @N0zoM1z0 on GitHub (Oct 9, 2026). Original GitHub issue: https://github.com/morluto/rea/issues/1248 ### Current limitation `close_binary` with `snapshot_path` returns `{path,bytes,entries}`, where `entries` counts only primitive query cache entries. It omits retained Evidence and workflow cache counts, making a successful save appear empty to an analyst who primarily used `analyze_function`. ### Real observation - Published 6.1.0: receipt `entries:0`; the saved 3,809,815-byte snapshot contains one workflow entry and 14 Evidence records. - Current main: receipt `entries:3`; the saved 7,584,032-byte snapshot contains one workflow entry and 19 Evidence records. These sessions contain different requests; the numbers are not an A/B storage comparison. Main's fresh-session primitive and dossier replays returned the same observations without starting Ghidra. The dossier's explicit snapshot-origin limitation intentionally changes its Evidence ID. ### Required behavior Return separately named primitive, workflow and Evidence counts. Explain replay eligibility and the distinction between retained Evidence, eligible cached queries and an imported provider database. Avoid implying that zero primitive entries means lost Evidence, or that every new query can bypass provider startup. Cover workflow-only, mixed, empty and legacy-compatible snapshots; receipts must agree with the actual written file. Preserve truthful cache provenance and CLI/MCP equivalence. ### Source [src/application/binary/BinarySession.ts:335](https://github.com/morluto/rea/blob/f4c99ab8a53806dd57dc24b3d5a600905bcb4686/src/application/binary/BinarySession.ts#L335) and [src/application/binary/BinarySessionPort.ts:20](https://github.com/morluto/rea/blob/f4c99ab8a53806dd57dc24b3d5a600905bcb4686/src/application/binary/BinarySessionPort.ts#L20). ### Verification and scope Real close/save outputs and parsed saved snapshots verified on both baselines. Corrected main replay was checked semantically, including intentional provenance changes; no Evidence-loss or replay-corruption bug was found. Audit date: 2026-10-09. Latest npm dist-tag verified as `rea-agents@6.1.0`; current main tested at `f4c99ab8a53806dd57dc24b3d5a600905bcb4686`. Linux x64, Node 24.18.0, MCP client SDK 2.3.1. Native observations use unmodified Ghidra 12.1.4 and JDK 21, two CPUs and a 512 MiB Java heap. No target execution or executable mutation was used for the static native checks.
Sign in to join this conversation.
No milestone
No project
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#445
No description provided.