Skip to content

Commit 4cd5263

Browse files
starknet_api: add proof facts to invoke v3
1 parent b9ad526 commit 4cd5263

File tree

11 files changed

+23
-0
lines changed

11 files changed

+23
-0
lines changed

crates/apollo_protobuf/src/converters/transaction.rs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -647,6 +647,9 @@ impl TryFrom<protobuf::InvokeV3> for InvokeTransactionV3 {
647647
fee_data_availability_mode,
648648
paymaster_data,
649649
account_deployment_data,
650+
// TODO(AvivG): Get proof_facts from P2P protocol, until then, lost during protobuf
651+
// serialization/deserialization.
652+
proof_facts: None,
650653
})
651654
}
652655
}

crates/apollo_protobuf/src/converters/transaction_test.rs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -121,6 +121,8 @@ fn convert_invoke_transaction_v3_to_vec_u8_and_back() {
121121
let mut transaction =
122122
starknet_api::transaction::InvokeTransactionV3::get_test_instance(&mut rng);
123123
transaction.resource_bounds = *RESOURCE_BOUNDS_MAPPING;
124+
// TODO(AvivG): Remove this once proof_facts is added to P2P protocol.
125+
transaction.proof_facts = None;
124126
let transaction = StarknetApiTransaction::Invoke(InvokeTransaction::V3(transaction));
125127

126128
let transaction_output = create_transaction_output!(InvokeTransactionOutput, Invoke);

crates/apollo_rpc/src/v0_8/api/mod.rs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -630,6 +630,8 @@ impl From<InvokeTransaction> for starknet_api::transaction::InvokeTransaction {
630630
fee_data_availability_mode,
631631
paymaster_data,
632632
account_deployment_data,
633+
// TODO(AvivG): Get proof facts from rpc_v8 once supported.
634+
proof_facts: None,
633635
}),
634636
}
635637
}

crates/apollo_rpc/src/v0_8/transaction.rs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -447,6 +447,7 @@ pub struct InvokeTransactionV3 {
447447
pub account_deployment_data: AccountDeploymentData,
448448
pub nonce_data_availability_mode: DataAvailabilityMode,
449449
pub fee_data_availability_mode: DataAvailabilityMode,
450+
// TODO(AvivG): Add proof facts to rpc_v8.
450451
}
451452

452453
impl From<InvokeTransactionV3> for client_transaction::InvokeTransaction {
@@ -536,6 +537,7 @@ impl TryFrom<starknet_api::transaction::InvokeTransaction> for InvokeTransaction
536537
fee_data_availability_mode,
537538
paymaster_data,
538539
account_deployment_data,
540+
proof_facts: _,
539541
},
540542
) => Ok(Self::Version3(InvokeTransactionV3 {
541543
sender_address,

crates/apollo_starknet_client/src/reader/objects/transaction.rs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -515,6 +515,7 @@ pub struct IntermediateInvokeTransaction {
515515
pub account_deployment_data: Option<AccountDeploymentData>,
516516
pub transaction_hash: TransactionHash,
517517
pub version: TransactionVersion,
518+
// TODO(AvivG): Consider adding proof facts.
518519
}
519520

520521
// TODO(shahak, 01/11/2023): Add conversion tests.
@@ -628,6 +629,7 @@ impl TryFrom<IntermediateInvokeTransaction> for starknet_api::transaction::Invok
628629
msg: "Invoke V3 must contain account_deployment_data field.".to_string(),
629630
},
630631
)?,
632+
proof_facts: None,
631633
})
632634
}
633635
}

crates/apollo_storage/src/serialization/serializers.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1292,6 +1292,7 @@ auto_storage_serde_conditionally_compressed! {
12921292
pub fee_data_availability_mode: DataAvailabilityMode,
12931293
pub paymaster_data: PaymasterData,
12941294
pub account_deployment_data: AccountDeploymentData,
1295+
pub proof_facts: Option<Vec<Felt>>,
12951296
}
12961297

12971298
pub struct L1HandlerTransaction {

crates/apollo_test_utils/src/lib.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -725,6 +725,7 @@ auto_impl_get_test_instance! {
725725
pub fee_data_availability_mode: DataAvailabilityMode,
726726
pub paymaster_data: PaymasterData,
727727
pub account_deployment_data: AccountDeploymentData,
728+
pub proof_facts: Option<Vec<Felt>>,
728729
}
729730
pub enum L1DataAvailabilityMode {
730731
Calldata = 0,

crates/native_blockifier/src/py_invoke_function.rs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,7 @@ struct PyInvokeTransactionV3 {
8181
pub fee_data_availability_mode: PyDataAvailabilityMode,
8282
pub paymaster_data: Vec<PyFelt>,
8383
pub account_deployment_data: Vec<PyFelt>,
84+
// TODO(AvivG): Add proof facts.
8485
}
8586

8687
impl TryFrom<PyInvokeTransactionV3> for InvokeTransactionV3 {
@@ -101,6 +102,8 @@ impl TryFrom<PyInvokeTransactionV3> for InvokeTransactionV3 {
101102
account_deployment_data: AccountDeploymentData(from_py_felts(
102103
tx.account_deployment_data,
103104
)),
105+
// TODO(AvivG): Get from PyInvokeTransactionV3 once supported.
106+
proof_facts: None,
104107
})
105108
}
106109
}

crates/starknet_api/src/rpc_transaction.rs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -573,6 +573,7 @@ pub struct RpcInvokeTransactionV3 {
573573
pub account_deployment_data: AccountDeploymentData,
574574
pub nonce_data_availability_mode: DataAvailabilityMode,
575575
pub fee_data_availability_mode: DataAvailabilityMode,
576+
// TODO(AvivG): Add proof facts.
576577
}
577578

578579
impl InvokeTransactionV3Trait for RpcInvokeTransactionV3 {
@@ -628,6 +629,8 @@ impl From<RpcInvokeTransactionV3> for InvokeTransactionV3 {
628629
fee_data_availability_mode: tx.fee_data_availability_mode,
629630
paymaster_data: tx.paymaster_data,
630631
account_deployment_data: tx.account_deployment_data,
632+
// TODO(AvivG): Get from RpcInvokeTransactionV3 once supported.
633+
proof_facts: None,
631634
}
632635
}
633636
}

crates/starknet_api/src/test_utils/invoke.rs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@ pub struct InvokeTxArgs {
4949
pub nonce: Nonce,
5050
pub only_query: bool,
5151
pub tx_hash: TransactionHash,
52+
// TODO(AvivG): add proof_facts for testing.
5253
}
5354

5455
impl Default for InvokeTxArgs {
@@ -120,6 +121,8 @@ pub fn invoke_tx(invoke_args: InvokeTxArgs) -> InvokeTransaction {
120121
fee_data_availability_mode: invoke_args.fee_data_availability_mode,
121122
paymaster_data: invoke_args.paymaster_data,
122123
account_deployment_data: invoke_args.account_deployment_data,
124+
// TODO(AvivG): Get from invoke_args once supported.
125+
proof_facts: None,
123126
})
124127
} else {
125128
panic!("Unsupported transaction version: {:?}.", invoke_args.version)

0 commit comments

Comments
 (0)