[multisig] Add script payload support#16778
[multisig] Add script payload support#16778gregnazario wants to merge 8 commits intoaptos-labs:mainfrom
Conversation
88f7653 to
2dd9a18
Compare
2dd9a18 to
eb5906a
Compare
|
This issue is stale because it has been open 45 days with no activity. Remove the |
eb5906a to
0c25f81
Compare
| #[oai(one_of, discriminator_name = "type", rename_all = "snake_case")] | ||
| pub enum MultisigTransactionPayload { | ||
| EntryFunctionPayload(EntryFunctionPayload), | ||
| ScriptPayload(ScriptPayload), |
There was a problem hiding this comment.
Why adding it here as well? We can just move to the new format, that supports orderless as well?
There was a problem hiding this comment.
For existing multisig providers, it's a lot less work to just use the existing rails.
There was a problem hiding this comment.
with support in the SDK, is the work any different?
and even if they are creating manually, they can just fully switch to the new format (i.e. even for entry functions), so they don't need any iffs in their code.
this is a good time for them to support orderless transactions? otherwise they'll need to switch again later?
There was a problem hiding this comment.
Orderless transactions can be significantly more expensive than non-orderless transactions, and I suspect that it is mostly unnecessary to be used with Multisig transactions.
SDK requires you to basically build some parts for the payload, so I suspect it may change the flows significantly depending on the language SDK used.
dfd127c to
aa753f0
Compare
|
This issue is stale because it has been open 45 days with no activity. Remove the |
|
@cursoragent revive this, rebase, and add significant testing for multisig scripts |
|
@cursoragent rebase and add more testing |
- Add 10 new test functions (30 test cases) for script-based multisig: simulation, payload hash, matching/mismatching payloads - Add test context helpers: simulate_multisig_script_transaction, execute_multisig_transaction_with_script_payload - Remove FEATURE_UNDER_GATING blocks that prevented script payloads in multisig transactions (aptos_vm, transaction_validation) - Fix V1 payload format conversion to support Script in multisig Co-authored-by: Cursor <cursoragent@cursor.com>
- Add CreateScriptTransaction command to propose multisig transactions with Move script payloads (source or pre-compiled bytecode) - Add ExecuteWithScriptPayload command to execute multisig proposals that stored only a payload hash, providing the script at execution - Add VerifyScriptProposal command to verify script payload matches on-chain proposal hash - Add create_multisig_script_payload helper to ScriptFunctionArguments - Derive Debug on CompileScriptFunction and FrameworkPackageArgs Co-authored-by: Cursor <cursoragent@cursor.com>
9182862 to
6299f77
Compare
- Fix nightly rustfmt formatting in transactions.rs and account/mod.rs - Add MultisigTransactionPayload trace_type to generate-format corpus for api, aptos, and consensus registries - Add Script variant to consensus.yaml staged format file Co-authored-by: Cursor <cursoragent@cursor.com>
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
✅ Forge suite
|
✅ Forge suite
|
✅ Forge suite
|
Description
Needs an AIP and a feature flag.
This allows for script payloads in multisig. Testing in progress.
How Has This Been Tested?
Key Areas to Review
Type of Change
Which Components or Systems Does This Change Impact?
Checklist
Note
Adds script payload support for multisig transactions across types, API validation, VM execution, indexer/proto, and tests.
MultisigTransactionPayloadwithScript/ScriptPayloadintypes, API schemas, and protobufs.api/types,indexer-grpc, protobuf serde) to map script payloads to/from wire/GRPC models.Scriptpayloads viavalidate_script_payload_formatand accept them in transaction submission.Multisig::Script.execute_multisig_script, integrate intoexecute_multisig_transaction.validate_and_execute_scriptsignature; switch toAptosCodeStoragein multisig path.test_multisig_script_transaction_with_payload_succeedsand helperconstruct_multisig_txn_script_payload.Written by Cursor Bugbot for commit 9182862. This will update automatically on new commits. Configure here.