@@ -7,6 +7,26 @@ type BucketDeploymentInfo = record {
7
7
canister : principal;
8
8
wasm_hash : blob;
9
9
};
10
+ type CanisterSettings = record {
11
+ freezing_threshold : opt nat;
12
+ controllers : opt vec principal;
13
+ reserved_cycles_limit : opt nat;
14
+ log_visibility : opt LogVisibility;
15
+ wasm_memory_limit : opt nat;
16
+ memory_allocation : opt nat;
17
+ compute_allocation : opt nat;
18
+ };
19
+ type CanisterStatusResponse = record {
20
+ status : CanisterStatusType;
21
+ memory_size : nat;
22
+ cycles : nat;
23
+ settings : DefiniteCanisterSettings;
24
+ query_stats : QueryStats;
25
+ idle_cycles_burned_per_day : nat;
26
+ module_hash : opt blob;
27
+ reserved_cycles : nat;
28
+ };
29
+ type CanisterStatusType = variant { stopped; stopping; running };
10
30
type ChainArgs = variant { Upgrade : UpgradeArgs; Init : InitArgs };
11
31
type ClusterInfo = record {
12
32
ecdsa_token_public_key : text;
@@ -23,6 +43,16 @@ type ClusterInfo = record {
23
43
schnorr_key_name : text;
24
44
bucket_deployment_logs : nat64;
25
45
subject_authz_total : nat64;
46
+ committers : vec principal;
47
+ };
48
+ type DefiniteCanisterSettings = record {
49
+ freezing_threshold : nat;
50
+ controllers : vec principal;
51
+ reserved_cycles_limit : nat;
52
+ log_visibility : LogVisibility;
53
+ wasm_memory_limit : nat;
54
+ memory_allocation : nat;
55
+ compute_allocation : nat;
26
56
};
27
57
type DeployWasmInput = record { args : opt blob; canister : principal };
28
58
type InitArgs = record {
@@ -34,21 +64,34 @@ type InitArgs = record {
34
64
bucket_topup_amount : nat;
35
65
schnorr_key_name : text;
36
66
};
67
+ type LogVisibility = variant { controllers; public };
68
+ type QueryStats = record {
69
+ response_payload_bytes_total : nat;
70
+ num_instructions_total : nat;
71
+ num_calls_total : nat;
72
+ request_payload_bytes_total : nat;
73
+ };
37
74
type Result = variant { Ok : blob; Err : text };
38
75
type Result_1 = variant { Ok; Err : text };
76
+ type Result_10 = variant { Ok : vec record { principal; text }; Err : text };
77
+ type Result_11 = variant { Ok : text; Err : text };
39
78
type Result_2 = variant { Ok : vec blob; Err : text };
40
- type Result_3 = variant { Ok : nat ; Err : text };
41
- type Result_4 = variant { Ok : vec BucketDeploymentInfo ; Err : text };
42
- type Result_5 = variant { Ok : WasmInfo ; Err : text };
43
- type Result_6 = variant { Ok : vec principal ; Err : text };
44
- type Result_7 = variant { Ok : ClusterInfo ; Err : text };
45
- type Result_8 = variant { Ok : vec record { principal; text } ; Err : text };
46
- type Result_9 = variant { Ok : text ; Err : text };
79
+ type Result_3 = variant { Ok : principal ; Err : text };
80
+ type Result_4 = variant { Ok : nat ; Err : text };
81
+ type Result_5 = variant { Ok : vec BucketDeploymentInfo ; Err : text };
82
+ type Result_6 = variant { Ok : WasmInfo ; Err : text };
83
+ type Result_7 = variant { Ok : vec principal ; Err : text };
84
+ type Result_8 = variant { Ok : CanisterStatusResponse ; Err : text };
85
+ type Result_9 = variant { Ok : ClusterInfo ; Err : text };
47
86
type Token = record {
48
87
subject : principal;
49
88
audience : principal;
50
89
policies : text;
51
90
};
91
+ type UpdateSettingsArgument = record {
92
+ canister_id : principal;
93
+ settings : CanisterSettings;
94
+ };
52
95
type UpgradeArgs = record {
53
96
governance_canister : opt principal;
54
97
name : opt text;
@@ -65,41 +108,56 @@ type WasmInfo = record {
65
108
};
66
109
service : (opt ChainArgs) -> {
67
110
access_token : (principal) -> (Result);
111
+ admin_add_committers : (vec principal) -> (Result_1);
68
112
admin_add_managers : (vec principal) -> (Result_1);
69
113
admin_add_wasm : (AddWasmInput, opt blob) -> (Result_1);
70
114
admin_attach_policies : (Token) -> (Result_1);
71
115
admin_batch_call_buckets : (vec principal, text, opt blob) -> (Result_2);
116
+ admin_create_bucket : (opt CanisterSettings, opt blob) -> (Result_3);
72
117
admin_deploy_bucket : (DeployWasmInput, opt blob) -> (Result_1);
73
118
admin_detach_policies : (Token) -> (Result_1);
74
119
admin_ed25519_access_token : (Token) -> (Result);
120
+ admin_remove_committers : (vec principal) -> (Result_1);
75
121
admin_remove_managers : (vec principal) -> (Result_1);
76
122
admin_set_managers : (vec principal) -> (Result_1);
77
123
admin_sign_access_token : (Token) -> (Result);
78
- admin_topup_all_buckets : () -> (Result_3);
124
+ admin_topup_all_buckets : () -> (Result_4);
125
+ admin_update_bucket_canister_settings : (UpdateSettingsArgument) -> (
126
+ Result_1,
127
+ );
79
128
admin_upgrade_all_buckets : (opt blob) -> (Result_1);
80
129
admin_weak_access_token : (Token, nat64, nat64) -> (Result) query;
81
- bucket_deployment_logs : (opt nat, opt nat) -> (Result_4 ) query;
130
+ bucket_deployment_logs : (opt nat, opt nat) -> (Result_5 ) query;
82
131
ed25519_access_token : (principal) -> (Result);
83
- get_bucket_wasm : (blob) -> (Result_5) query;
84
- get_buckets : () -> (Result_6) query;
85
- get_cluster_info : () -> (Result_7) query;
86
- get_deployed_buckets : () -> (Result_4) query;
87
- get_subject_policies : (principal) -> (Result_8) query;
88
- get_subject_policies_for : (principal, principal) -> (Result_9) query;
89
- validate2_admin_add_wasm : (AddWasmInput, opt blob) -> (Result_9);
132
+ get_bucket_wasm : (blob) -> (Result_6) query;
133
+ get_buckets : () -> (Result_7) query;
134
+ get_canister_status : (opt principal) -> (Result_8);
135
+ get_cluster_info : () -> (Result_9) query;
136
+ get_deployed_buckets : () -> (Result_5) query;
137
+ get_subject_policies : (principal) -> (Result_10) query;
138
+ get_subject_policies_for : (principal, principal) -> (Result_11) query;
139
+ validate2_admin_add_wasm : (AddWasmInput, opt blob) -> (Result_11);
90
140
validate2_admin_batch_call_buckets : (vec principal, text, opt blob) -> (
91
- Result_9 ,
141
+ Result_11 ,
92
142
);
93
- validate2_admin_deploy_bucket : (DeployWasmInput, opt blob) -> (Result_9);
94
- validate2_admin_set_managers : (vec principal) -> (Result_9);
95
- validate2_admin_upgrade_all_buckets : (opt blob) -> (Result_9);
96
- validate_admin_add_managers : (vec principal) -> (Result_9);
143
+ validate2_admin_deploy_bucket : (DeployWasmInput, opt blob) -> (Result_11);
144
+ validate2_admin_set_managers : (vec principal) -> (Result_11);
145
+ validate2_admin_upgrade_all_buckets : (opt blob) -> (Result_11);
146
+ validate_admin_add_committers : (vec principal) -> (Result_11);
147
+ validate_admin_add_managers : (vec principal) -> (Result_11);
97
148
validate_admin_add_wasm : (AddWasmInput, opt blob) -> (Result_1);
98
149
validate_admin_batch_call_buckets : (vec principal, text, opt blob) -> (
99
150
Result_2,
100
151
);
152
+ validate_admin_create_bucket : (opt CanisterSettings, opt blob) -> (
153
+ Result_11,
154
+ );
101
155
validate_admin_deploy_bucket : (DeployWasmInput, opt blob) -> (Result_1);
102
- validate_admin_remove_managers : (vec principal) -> (Result_9);
156
+ validate_admin_remove_committers : (vec principal) -> (Result_11);
157
+ validate_admin_remove_managers : (vec principal) -> (Result_11);
103
158
validate_admin_set_managers : (vec principal) -> (Result_1);
159
+ validate_admin_update_bucket_canister_settings : (UpdateSettingsArgument) -> (
160
+ Result_11,
161
+ );
104
162
validate_admin_upgrade_all_buckets : (opt blob) -> (Result_1);
105
163
}
0 commit comments