Skip to content

Commit fa1bd06

Browse files
starknet_api: add proof_facts to rpc invoke v3 (#10633)
1 parent 8fbb2a6 commit fa1bd06

File tree

7 files changed

+17
-5
lines changed

7 files changed

+17
-5
lines changed

crates/apollo_consensus_orchestrator/src/cende/central_objects_test.rs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -111,6 +111,7 @@ use starknet_api::transaction::fields::{
111111
ContractAddressSalt,
112112
Fee,
113113
PaymasterData,
114+
ProofFacts,
114115
ResourceBounds,
115116
Tip,
116117
TransactionSignature,
@@ -265,6 +266,7 @@ fn invoke_transaction() -> RpcInvokeTransaction {
265266
fee_data_availability_mode: DataAvailabilityMode::L1,
266267
paymaster_data: PaymasterData(vec![]),
267268
account_deployment_data: AccountDeploymentData(vec![]),
269+
proof_facts: ProofFacts::default(),
268270
})
269271
}
270272

@@ -1059,6 +1061,7 @@ fn test_invoke_tx_size_of() {
10591061
// + internal_invoke_tx.sender_address.dynamic_size()
10601062
// + internal_invoke_tx.signature.dynamic_size()
10611063
// + internal_invoke_tx.tip.dynamic_size();
1064+
// + internal_invoke_tx.proof_facts.dynamic_size();
10621065

1063-
assert_eq!(invoke_tx.size_bytes(), 448);
1066+
assert_eq!(invoke_tx.size_bytes(), 480);
10641067
}

crates/apollo_http_server/src/deprecated_gateway_transaction.rs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ use starknet_api::transaction::fields::{
2121
Calldata,
2222
ContractAddressSalt,
2323
PaymasterData,
24+
ProofFacts,
2425
ResourceBounds,
2526
Tip,
2627
TransactionSignature,
@@ -124,6 +125,7 @@ impl From<DeprecatedGatewayInvokeTransactionV3> for RpcInvokeTransactionV3 {
124125
account_deployment_data: deprecated_invoke_tx.account_deployment_data,
125126
nonce_data_availability_mode: deprecated_invoke_tx.nonce_data_availability_mode,
126127
fee_data_availability_mode: deprecated_invoke_tx.fee_data_availability_mode,
128+
proof_facts: ProofFacts::default(),
127129
}
128130
}
129131
}

crates/apollo_infra/src/serde_utils_test.rs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ use starknet_api::rpc_transaction::{
1111
RpcInvokeTransactionV3,
1212
RpcTransaction,
1313
};
14+
use starknet_api::transaction::fields::ProofFacts;
1415
use starknet_types_core::felt::Felt;
1516

1617
use crate::serde_utils::SerdeWrapper;
@@ -64,6 +65,7 @@ fn serde_rpc_invoke_tx() {
6465
account_deployment_data: Default::default(),
6566
nonce_data_availability_mode: DataAvailabilityMode::L1,
6667
fee_data_availability_mode: DataAvailabilityMode::L1,
68+
proof_facts: ProofFacts::default(),
6769
};
6870
let rpc_invoke_tx = RpcInvokeTransaction::V3(invoke_tx);
6971

crates/apollo_test_utils/src/lib.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -873,6 +873,7 @@ auto_impl_get_test_instance! {
873873
pub fee_data_availability_mode: DataAvailabilityMode,
874874
pub paymaster_data: PaymasterData,
875875
pub account_deployment_data: AccountDeploymentData,
876+
pub proof_facts: ProofFacts,
876877
}
877878
pub struct SequencerContractAddress(pub ContractAddress);
878879
pub struct Signature {

crates/starknet_api/src/rpc_transaction.rs

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -574,7 +574,9 @@ pub struct RpcInvokeTransactionV3 {
574574
pub account_deployment_data: AccountDeploymentData,
575575
pub nonce_data_availability_mode: DataAvailabilityMode,
576576
pub fee_data_availability_mode: DataAvailabilityMode,
577-
// TODO(AvivG): Add proof facts.
577+
#[serde(default)]
578+
pub proof_facts: ProofFacts,
579+
// TODO(AvivG): Add proof field.
578580
}
579581

580582
impl InvokeTransactionV3Trait for RpcInvokeTransactionV3 {
@@ -630,8 +632,7 @@ impl From<RpcInvokeTransactionV3> for InvokeTransactionV3 {
630632
fee_data_availability_mode: tx.fee_data_availability_mode,
631633
paymaster_data: tx.paymaster_data,
632634
account_deployment_data: tx.account_deployment_data,
633-
// TODO(AvivG): Get from RpcInvokeTransactionV3 once supported.
634-
proof_facts: ProofFacts::default(),
635+
proof_facts: tx.proof_facts,
635636
}
636637
}
637638
}
@@ -658,6 +659,7 @@ impl TryFrom<InvokeTransactionV3> for RpcInvokeTransactionV3 {
658659
sender_address: value.sender_address,
659660
calldata: value.calldata,
660661
account_deployment_data: value.account_deployment_data,
662+
proof_facts: value.proof_facts,
661663
})
662664
}
663665
}

crates/starknet_api/src/rpc_transaction_test.rs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -137,9 +137,10 @@ fn test_invoke_tx_size_of() {
137137
// + tx_v3.fee_data_availability_mode.dynamic_size()
138138
// + tx_v3.paymaster_data.dynamic_size()
139139
// + tx_v3.account_deployment_data.dynamic_size();
140+
// + tx_v3.proof_facts.dynamic_size();
140141

141142
// Check the size of the V3 invoke transaction.
142-
assert_eq!(tx_v3.size_bytes(), 448);
143+
assert_eq!(tx_v3.size_bytes(), 480);
143144
} else {
144145
panic!("Expected RpcTransaction::Invoke");
145146
}

crates/starknet_api/src/test_utils/invoke.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -158,6 +158,7 @@ pub fn rpc_invoke_tx(invoke_args: InvokeTxArgs) -> RpcTransaction {
158158
fee_data_availability_mode: invoke_args.fee_data_availability_mode,
159159
paymaster_data: invoke_args.paymaster_data,
160160
account_deployment_data: invoke_args.account_deployment_data,
161+
proof_facts: invoke_args.proof_facts,
161162
}))
162163
}
163164

0 commit comments

Comments
 (0)