Conversation
…y witness with singleton (#176) The generator's `isFullyVerifiable` flag required replay-capable simulation witness inputs even for full (non-witness-only) simulations, causing a "partial" badge in the generator while the desktop correctly showed "Fully Verified". Now replay inputs only gate the flag for witness-only packages. Also ensures replay witness accounts include the Safe proxy's slot 0 (singleton pointer) and the singleton contract itself so local EVM replay can execute the DELEGATECALL chain correctly. Removes em dashes from all .ts/.tsx files for consistent punctuation.
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
…eplay The local replay now calls execTransaction on the Safe proxy instead of the inner transaction directly when replayCalldata is present. This ensures the replay return data matches the simulation's ABI-encoded execTransaction response (e.g. abi.encode(true)).
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
isFullyVerifiableinfinalizeEvidenceExport()no longer requires replay-capable simulation witness inputs for full (non-witness-only) simulations. This resolves the mismatch where the generator showed "Partial" while the desktop correctly showed "Fully Verified" for the same package (e.g. Gnosis Chain transactions with full simulations).fetchSimulationWitnessnow augments replay accounts with the Safe proxy's slot 0 (singleton pointer) and the singleton contract itself, so local EVM replay can execute the DELEGATECALL chain correctly. Both the prestateTracer and simple-transfer fallback paths are covered..ts/.tsxfiles for consistent punctuation, removes leading bullet from generator partial-reason display, removes now-unnecessarymissing-simulation-witnessUI filter.Test plan
bun test packages/core/src/lib/package/__tests__/creator.test.ts(25 pass) -- updated 3 existing tests, added 2 new witness-only companion testsbun test packages/core/src/lib/simulation/__tests__/summary.test.ts(34 pass)proxy_delegatecall_fails_without_slot0_and_singletoninsimulation_replay.rsgno:0xba260842B007FaB4119C9747D709119DE4257276queue tx, verify generator now shows "Fully verifiable"Note
Medium Risk
Changes the criteria for marking packages
fully-verifiableand adjusts desktop local replay execution behavior via newreplayCalldatahandling, which could affect user-facing verification status and replay results. Most other changes are documentation and UI copy updates, limiting blast radius.Overview
Fixes the export contract logic in
packages/coreso full simulations no longer require replay-capable witness inputs to be labeledfully-verifiable(replay inputs only gate witness-only simulations), with updated unit coverage.Enhances desktop Rust replay (
simulation_replay.rs) by adding optionalsimulationWitness.replayCalldataand using it to replayexecTransactionagainst the Safe proxy when present, plus a regression test covering proxy delegatecall behavior.Adds/updates audit and release-review documentation (new
docs/audit/AUDITOR_PACKET.md, newRELEASE_INTEGRITY.md, expandedSECURITY.md/AUDIT.md/DEPENDENCIES.md/VERIFY.md/TRUST_ASSUMPTIONS.md), commits a large dependency footprint baseline, ignores generated drift diffs, and makes minor generator/desktop UI wording tweaks (including showing all partial reasons unfiltered).Written by Cursor Bugbot for commit e939cea. This will update automatically on new commits. Configure here.