Skip to content

Commit 221fe6d

Browse files
committed
fix: enable and update attestation document parsing logic
1 parent 349ff27 commit 221fe6d

File tree

8 files changed

+497
-105
lines changed

8 files changed

+497
-105
lines changed

crates/sui-framework/packages/sui-framework/tests/crypto/nitro_attestation_test.move

+11-10
Large diffs are not rendered by default.

crates/sui-open-rpc/spec/openrpc.json

+1
Original file line numberDiff line numberDiff line change
@@ -1327,6 +1327,7 @@
13271327
"enable_group_ops_native_functions": false,
13281328
"enable_jwk_consensus_updates": false,
13291329
"enable_nitro_attestation": false,
1330+
"enable_nitro_attestation_upgraded_parsing": false,
13301331
"enable_party_transfer": false,
13311332
"enable_poseidon": false,
13321333
"enable_vdf": false,

crates/sui-protocol-config/src/lib.rs

+11
Original file line numberDiff line numberDiff line change
@@ -237,6 +237,7 @@ const MAX_PROTOCOL_VERSION: u64 = 83;
237237
// Increase threshold for bad nodes that won't be considered leaders in consensus in mainnet
238238
// Version 82: Relax bounding of size of values created in the adapter.
239239
// Version 83: Resolve `TypeInput` IDs to defining ID when converting to `TypeTag`s in the adapter.
240+
// Enable nitro attestation upgraded parsing and mainnet.
240241

241242
#[derive(Copy, Clone, Debug, Hash, Serialize, Deserialize, PartialEq, Eq, PartialOrd, Ord)]
242243
pub struct ProtocolVersion(u64);
@@ -502,6 +503,10 @@ struct FeatureFlags {
502503
#[serde(skip_serializing_if = "is_false")]
503504
enable_nitro_attestation: bool,
504505

506+
// Enable upgraded parsing of nitro attestation that interprets pcrs as a map.
507+
#[serde(skip_serializing_if = "is_false")]
508+
enable_nitro_attestation_upgraded_parsing: bool,
509+
505510
// Reject functions with mutable Random.
506511
#[serde(skip_serializing_if = "is_false")]
507512
reject_mutable_random_on_entry_functions: bool,
@@ -1926,6 +1931,10 @@ impl ProtocolConfig {
19261931
self.feature_flags.enable_nitro_attestation
19271932
}
19281933

1934+
pub fn enable_nitro_attestation_upgraded_parsing(&self) -> bool {
1935+
self.feature_flags.enable_nitro_attestation_upgraded_parsing
1936+
}
1937+
19291938
pub fn get_consensus_commit_rate_estimation_window_size(&self) -> u32 {
19301939
self.consensus_commit_rate_estimation_window_size
19311940
.unwrap_or(0)
@@ -3508,6 +3517,8 @@ impl ProtocolConfig {
35083517
83 => {
35093518
cfg.feature_flags.resolve_type_input_ids_to_defining_id = true;
35103519
cfg.transfer_party_transfer_internal_cost_base = Some(52);
3520+
cfg.feature_flags.enable_nitro_attestation_upgraded_parsing = true;
3521+
cfg.feature_flags.enable_nitro_attestation = true;
35113522
}
35123523
// Use this template when making changes:
35133524
//

crates/sui-protocol-config/src/snapshots/sui_protocol_config__test__Mainnet_version_83.snap

+3
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
---
22
source: crates/sui-protocol-config/src/lib.rs
33
expression: "ProtocolConfig::get_for_version(cur, *chain_id)"
4+
snapshot_kind: text
45
---
56
version: 83
67
feature_flags:
@@ -44,6 +45,8 @@ feature_flags:
4445
allow_receiving_object_id: true
4546
enable_coin_deny_list: true
4647
enable_group_ops_native_functions: true
48+
enable_nitro_attestation: true
49+
enable_nitro_attestation_upgraded_parsing: true
4750
reject_mutable_random_on_entry_functions: true
4851
per_object_congestion_control_mode: TotalGasBudgetWithCap
4952
consensus_choice: Mysticeti

crates/sui-protocol-config/src/snapshots/sui_protocol_config__test__Testnet_version_83.snap

+2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
---
22
source: crates/sui-protocol-config/src/lib.rs
33
expression: "ProtocolConfig::get_for_version(cur, *chain_id)"
4+
snapshot_kind: text
45
---
56
version: 83
67
feature_flags:
@@ -46,6 +47,7 @@ feature_flags:
4647
enable_coin_deny_list: true
4748
enable_group_ops_native_functions: true
4849
enable_nitro_attestation: true
50+
enable_nitro_attestation_upgraded_parsing: true
4951
reject_mutable_random_on_entry_functions: true
5052
per_object_congestion_control_mode:
5153
ExecutionTimeEstimate:

crates/sui-protocol-config/src/snapshots/sui_protocol_config__test__version_83.snap

+2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
---
22
source: crates/sui-protocol-config/src/lib.rs
33
expression: "ProtocolConfig::get_for_version(cur, *chain_id)"
4+
snapshot_kind: text
45
---
56
version: 83
67
feature_flags:
@@ -48,6 +49,7 @@ feature_flags:
4849
enable_group_ops_native_functions: true
4950
enable_group_ops_native_function_msm: true
5051
enable_nitro_attestation: true
52+
enable_nitro_attestation_upgraded_parsing: true
5153
reject_mutable_random_on_entry_functions: true
5254
per_object_congestion_control_mode:
5355
ExecutionTimeEstimate:

0 commit comments

Comments
 (0)