Skip to main content

canic_core/
protocol.rs

1/// Runtime wire-level endpoint names used by `canic-core` for inter-canister calls.
2///
3/// Keep these synchronized with the macro-defined endpoints.
4
5pub const CANIC_RESPONSE_CAPABILITY_V1: &str = "canic_response_capability_v1";
6pub const CANIC_FLEET_REGISTRY: &str = "canic_fleet_registry";
7pub const CANIC_FLEET_REGISTRY_MANIFEST: &str = "canic_fleet_registry_manifest";
8pub const CANIC_FLEET_REGISTRY_VERSION: &str = "canic_fleet_registry_version";
9pub const CANIC_FLEET_SUBNET_ROOT_JOIN: &str = "canic_fleet_subnet_root_join";
10pub const CANIC_FLEET_REGISTRY_SNAPSHOT_FOR_ROOT: &str = "canic_fleet_registry_snapshot_for_root";
11pub const CANIC_FLEET_REGISTRY_ACKNOWLEDGE_ROOT: &str = "canic_fleet_registry_acknowledge_root";
12pub const CANIC_FLEET_REGISTRY_ROOT_ACKNOWLEDGEMENTS: &str =
13    "canic_fleet_registry_root_acknowledgements";
14pub const CANIC_FLEET_REGISTRY_ACTIVATE: &str = "canic_fleet_registry_activate";
15pub const CANIC_FLEET_REGISTRY_PUBLISH_ROOT_DRAINING: &str =
16    "canic_fleet_registry_publish_root_draining";
17pub const CANIC_FLEET_REGISTRY_PUBLISH_ROOT_REMOVED: &str =
18    "canic_fleet_registry_publish_root_removed";
19pub const CANIC_FLEET_REGISTRY_ROOT_DELETION_READINESS_PREPARE: &str =
20    "canic_fleet_registry_root_deletion_readiness_prepare";
21pub const CANIC_FLEET_REGISTRY_ROOT_DELETION_READY: &str =
22    "canic_fleet_registry_root_deletion_ready";
23pub const CANIC_FLEET_REGISTRY_ROOT_DELETION_EXECUTION_BEGIN: &str =
24    "canic_fleet_registry_root_deletion_execution_begin";
25pub const CANIC_FLEET_REGISTRY_ROOT_DELETION_EXECUTION_STATUS: &str =
26    "canic_fleet_registry_root_deletion_execution_status";
27pub const CANIC_FLEET_REGISTRY_ROOT_DELETION_COMPLETE: &str =
28    "canic_fleet_registry_root_deletion_complete";
29pub const CANIC_FLEET_REGISTRY_ROOT_DELETION_STATUS: &str =
30    "canic_fleet_registry_root_deletion_status";
31pub const CANIC_FLEET_SUBNET_ROOT_AUTHORITY: &str = "canic_fleet_subnet_root_authority";
32pub const CANIC_FLEET_SUBNET_ROOT_CANISTER_SUMMARY: &str =
33    "canic_fleet_subnet_root_canister_summary";
34pub const CANIC_FLEET_SUBNET_ROOT_DRAINING_BEGIN: &str = "canic_fleet_subnet_root_draining_begin";
35pub const CANIC_FLEET_SUBNET_ROOT_DRAINING_STATUS: &str = "canic_fleet_subnet_root_draining_status";
36pub const CANIC_FLEET_SUBNET_ROOT_DRAINING_INVENTORY_FINALIZE: &str =
37    "canic_fleet_subnet_root_draining_inventory_finalize";
38pub const CANIC_FLEET_SUBNET_ROOT_DRAINING_INVENTORY_STATUS: &str =
39    "canic_fleet_subnet_root_draining_inventory_status";
40pub const CANIC_FLEET_SUBNET_ROOT_REMOVAL_PUBLISH: &str = "canic_fleet_subnet_root_removal_publish";
41pub const CANIC_FLEET_SUBNET_ROOT_REMOVAL_STATUS: &str = "canic_fleet_subnet_root_removal_status";
42pub const CANIC_FLEET_SUBNET_ROOT_STORE_RECLAIM: &str = "canic_fleet_subnet_root_store_reclaim";
43pub const CANIC_FLEET_SUBNET_ROOT_STORE_RECLAMATION_STATUS: &str =
44    "canic_fleet_subnet_root_store_reclamation_status";
45pub const CANIC_FLEET_SUBNET_ROOT_STORE_BINDING_FINALIZE: &str =
46    "canic_fleet_subnet_root_store_binding_finalize";
47pub const CANIC_FLEET_SUBNET_ROOT_STORE_BINDING_FINALIZATION_STATUS: &str =
48    "canic_fleet_subnet_root_store_binding_finalization_status";
49pub const CANIC_FLEET_SUBNET_ROOT_STORE_DELETE: &str = "canic_fleet_subnet_root_store_delete";
50pub const CANIC_FLEET_SUBNET_ROOT_STORE_DELETION_STATUS: &str =
51    "canic_fleet_subnet_root_store_deletion_status";
52pub const CANIC_FLEET_SUBNET_ROOT_DELETION_PREPARE: &str =
53    "canic_fleet_subnet_root_deletion_prepare";
54pub const CANIC_FLEET_SUBNET_ROOT_DELETION_PREPARATION_STATUS: &str =
55    "canic_fleet_subnet_root_deletion_preparation_status";
56pub const CANIC_FLEET_REGISTRY_SYNCHRONIZE: &str = "canic_fleet_registry_synchronize";
57pub const CANIC_FLEET_REGISTRY_SYNC_STATUS: &str = "canic_fleet_registry_sync_status";
58pub const CANIC_FLEET_REGISTRY_ACTIVATE_MIRROR: &str = "canic_fleet_registry_activate_mirror";
59pub const CANIC_FLEET_REGISTRY_MIRROR_STATUS: &str = "canic_fleet_registry_mirror_status";
60pub const CANIC_ROOT_COMPONENT_REGISTRY_PREPARE: &str = "canic_root_component_registry_prepare";
61pub const CANIC_ROOT_COMPONENT_REGISTRY_STATUS: &str = "canic_root_component_registry_status";
62pub const CANIC_ROOT_COMPONENT_ALLOCATE: &str = "canic_root_component_allocate";
63pub const CANIC_ROOT_COMPONENT_ALLOCATION_STATUS: &str = "canic_root_component_allocation_status";
64pub const CANIC_ROOT_COMPONENT_CHILD_ALLOCATE: &str = "canic_root_component_child_allocate";
65pub const CANIC_ROOT_COMPONENT_CHILD_ALLOCATION_STATUS: &str =
66    "canic_root_component_child_allocation_status";
67pub const CANIC_ROOT_COMPONENT_DRAINING_BEGIN: &str = "canic_root_component_draining_begin";
68pub const CANIC_ROOT_COMPONENT_DRAINING_STATUS: &str = "canic_root_component_draining_status";
69pub const CANIC_ROOT_COMPONENT_QUIESCE: &str = "canic_root_component_quiesce";
70pub const CANIC_ROOT_COMPONENT_QUIESCENCE_STATUS: &str = "canic_root_component_quiescence_status";
71pub const CANIC_ROOT_COMPONENT_DRAINING_ADVANCE: &str = "canic_root_component_draining_advance";
72pub const CANIC_ROOT_COMPONENT_DRAINING_INVENTORY_FINALIZE: &str =
73    "canic_root_component_draining_inventory_finalize";
74pub const CANIC_ROOT_COMPONENT_DELETE: &str = "canic_root_component_delete";
75pub const CANIC_ROOT_COMPONENT_MEMBERSHIP_REMOVE: &str = "canic_root_component_membership_remove";
76pub const CANIC_ROOT_COMPONENT_DELETION_STATUS: &str = "canic_root_component_deletion_status";
77pub const CANIC_ROOT_COMPONENT_SUBTREE_REMOVAL_BEGIN: &str =
78    "canic_root_component_subtree_removal_begin";
79pub const CANIC_ROOT_COMPONENT_SUBTREE_REMOVAL_ADVANCE: &str =
80    "canic_root_component_subtree_removal_advance";
81pub const CANIC_ROOT_COMPONENT_SUBTREE_REMOVAL_STOP_PREPARE: &str =
82    "canic_root_component_subtree_removal_stop_prepare";
83pub const CANIC_ROOT_COMPONENT_SUBTREE_REMOVAL_STOP: &str =
84    "canic_root_component_subtree_removal_stop";
85pub const CANIC_ROOT_COMPONENT_SUBTREE_REMOVAL_DELETE_PREPARE: &str =
86    "canic_root_component_subtree_removal_delete_prepare";
87pub const CANIC_ROOT_COMPONENT_SUBTREE_REMOVAL_DELETE: &str =
88    "canic_root_component_subtree_removal_delete";
89pub const CANIC_ROOT_COMPONENT_SUBTREE_REMOVAL_MEMBERSHIP_REMOVE: &str =
90    "canic_root_component_subtree_removal_membership_remove";
91pub const CANIC_ROOT_COMPONENT_SUBTREE_REMOVAL_DIRECTORY_SYNCHRONIZE: &str =
92    "canic_root_component_subtree_removal_directory_synchronize";
93pub const CANIC_ROOT_COMPONENT_SUBTREE_REMOVAL_LEAF_FINALIZE: &str =
94    "canic_root_component_subtree_removal_leaf_finalize";
95pub const CANIC_ROOT_COMPONENT_SUBTREE_REMOVAL_STATUS: &str =
96    "canic_root_component_subtree_removal_status";
97pub const CANIC_ROOT_COMPONENT_CHILD_CREATE: &str = "canic_root_component_child_create";
98pub const CANIC_ROOT_COMPONENT_CHILD_INSTALL: &str = "canic_root_component_child_install";
99pub const CANIC_ROOT_COMPONENT_CHILD_COMMIT: &str = "canic_root_component_child_commit";
100pub const CANIC_ROOT_COMPONENT_CHILD_DIRECTORY_PREPARE: &str =
101    "canic_root_component_child_directory_prepare";
102pub const CANIC_ROOT_COMPONENT_CHILD_RUNTIME_ACTIVATE: &str =
103    "canic_root_component_child_runtime_activate";
104pub const CANIC_ROOT_COMPONENT_CHILD_MEMBERSHIP_ACTIVATE: &str =
105    "canic_root_component_child_membership_activate";
106pub const CANIC_ROOT_COMPONENT_CREATE: &str = "canic_root_component_create";
107pub const CANIC_ROOT_COMPONENT_INSTALL: &str = "canic_root_component_install";
108pub const CANIC_ROOT_COMPONENT_COMMIT: &str = "canic_root_component_commit";
109pub const CANIC_ROOT_COMPONENT_DIRECTORY_PREPARE: &str = "canic_root_component_directory_prepare";
110pub const CANIC_ROOT_COMPONENT_RUNTIME_ACTIVATE: &str = "canic_root_component_runtime_activate";
111pub const CANIC_ROOT_COMPONENT_MEMBERSHIP_ACTIVATE: &str =
112    "canic_root_component_membership_activate";
113pub const CANIC_ROOT_COMPONENT_REGISTRY_PARTITION: &str = "canic_root_component_registry_partition";
114pub const CANIC_ROOT_COMPONENT_DIRECTORY_HEAD: &str = "canic_root_component_directory_head";
115pub const CANIC_ROOT_COMPONENT_DIRECTORY_PAGE: &str = "canic_root_component_directory_page";
116pub const CANIC_COMPONENT_RUNTIME_DIRECTORY_PREPARE: &str =
117    "canic_component_runtime_directory_prepare";
118pub const CANIC_COMPONENT_RUNTIME_DIRECTORY_SYNCHRONIZE: &str =
119    "canic_component_runtime_directory_synchronize";
120pub const CANIC_COMPONENT_RUNTIME_STATUS: &str = "canic_component_runtime_status";
121pub const CANIC_COMPONENT_RUNTIME_ACTIVATE: &str = "canic_component_runtime_activate";
122pub const CANIC_FLEET_ACTIVATION_STATUS: &str = "canic_fleet_activation_status";
123pub const CANIC_MANAGED_CANISTER_BINDING: &str = "canic_managed_canister_binding";
124pub const CANIC_PREPARE_FLEET_ACTIVATION: &str = "canic_prepare_fleet_activation";
125pub const CANIC_RESUME_FLEET_ACTIVATION: &str = "canic_resume_fleet_activation";
126pub const CANIC_PREPARE_FLEET_CREDENTIAL_GENERATION: &str =
127    "canic_prepare_fleet_credential_generation";
128pub const CANIC_ACTIVATE_FLEET: &str = "canic_activate_fleet";
129pub const CANIC_UPSERT_ROOT_ISSUER_POLICY: &str = "canic_upsert_root_issuer_policy";
130pub const CANIC_UPSERT_ROOT_ISSUER_RENEWAL_TEMPLATE: &str =
131    "canic_upsert_root_issuer_renewal_template";
132pub const CANIC_ROOT_ISSUER_RENEWAL_STATUS: &str = "canic_root_issuer_renewal_status";
133pub const CANIC_GET_OR_CREATE_CHAIN_KEY_DELEGATION_PROOF: &str =
134    "canic_get_or_create_chain_key_delegation_proof";
135pub const CANIC_PREPARE_DELEGATED_TOKEN: &str = "canic_prepare_delegated_token";
136pub const CANIC_GET_DELEGATED_TOKEN: &str = "canic_get_delegated_token";
137pub const CANIC_ACTIVE_DELEGATION_PROOF_STATUS: &str = "canic_active_delegation_proof_status";
138pub const CANIC_PREPARE_ROLE_ATTESTATION: &str = "canic_prepare_role_attestation";
139pub const CANIC_GET_ROLE_ATTESTATION: &str = "canic_get_role_attestation";
140pub const CANIC_INSTALL_ACTIVE_DELEGATION_PROOF: &str = "canic_install_active_delegation_proof";
141pub const CANIC_HEALTH: &str = "canic_health";
142pub const CANIC_READINESS: &str = "canic_readiness";
143pub const CANIC_RUNTIME_STATUS: &str = "canic_runtime_status";
144pub const CANIC_CYCLE_BALANCE: &str = "canic_cycle_balance";
145pub const CANIC_CYCLE_TRACKER: &str = "canic_cycle_tracker";
146pub const CANIC_CYCLE_TOPUPS: &str = "canic_cycle_topups";
147pub const CANIC_METADATA: &str = "canic_metadata";
148pub const CANIC_WASM_STORE_CATALOG: &str = "canic_wasm_store_catalog";
149pub const CANIC_WASM_STORE_INFO: &str = "canic_wasm_store_info";
150pub const CANIC_WASM_STORE_STATUS: &str = "canic_wasm_store_status";
151pub const CANIC_WASM_STORE_PREPARE_GC: &str = "canic_wasm_store_prepare_gc";
152pub const CANIC_WASM_STORE_BEGIN_GC: &str = "canic_wasm_store_begin_gc";
153pub const CANIC_WASM_STORE_COMPLETE_GC: &str = "canic_wasm_store_complete_gc";
154pub const CANIC_WASM_STORE_RECLAIM_DELETION_CYCLES: &str =
155    "canic_wasm_store_reclaim_deletion_cycles";
156pub const CANIC_WASM_STORE_PREPARE: &str = "canic_wasm_store_prepare";
157pub const CANIC_WASM_STORE_CHUNK: &str = "canic_wasm_store_chunk";
158pub const CANIC_WASM_STORE_PUBLISH_CHUNK: &str = "canic_wasm_store_publish_chunk";
159pub const CANIC_WASM_STORE_STAGE_MANIFEST: &str = "canic_wasm_store_stage_manifest";
160pub const CANIC_WASM_STORE_BOOTSTRAP_DEBUG: &str = "canic_wasm_store_bootstrap_debug";
161pub const CANIC_ROOT_STORE_BOOTSTRAP: &str = "canic_root_store_bootstrap";
162pub const CANIC_ROOT_STORE_BOOTSTRAP_STATUS: &str = "canic_root_store_bootstrap_status";
163pub const CANIC_WASM_STORE_OVERVIEW: &str = "canic_wasm_store_overview";
164pub const CANIC_TEMPLATE_PREPARE_ADMIN: &str = "canic_template_prepare_admin";
165pub const CANIC_TEMPLATE_PUBLISH_CHUNK_ADMIN: &str = "canic_template_publish_chunk_admin";
166pub const CANIC_TEMPLATE_STAGE_MANIFEST_ADMIN: &str = "canic_template_stage_manifest_admin";
167pub const BLOB_STORAGE_BLOBS_ARE_LIVE: &str = "_immutableObjectStorageBlobsAreLive";
168pub const BLOB_STORAGE_BLOBS_TO_DELETE: &str = "_immutableObjectStorageBlobsToDelete";
169pub const BLOB_STORAGE_CONFIRM_BLOB_DELETION: &str = "_immutableObjectStorageConfirmBlobDeletion";
170pub const BLOB_STORAGE_CREATE_CERTIFICATE: &str = "_immutableObjectStorageCreateCertificate";
171pub const BLOB_STORAGE_UPDATE_GATEWAY_PRINCIPALS: &str =
172    "_immutableObjectStorageUpdateGatewayPrincipals";
173pub const BLOB_STORAGE_FUND_FROM_PROJECT_CYCLES: &str =
174    "_immutableObjectStorageFundFromProjectCycles";
175pub const BLOB_STORAGE_STATUS: &str = "get_blob_storage_status";
176pub const BLOB_STORAGE_CASHIER_ACCOUNT_BALANCE_GET_V1: &str = "account_balance_get_v1";
177pub const BLOB_STORAGE_CASHIER_ACCOUNT_TOP_UP_V1: &str = "account_top_up_v1";
178pub const BLOB_STORAGE_CASHIER_STORAGE_GATEWAY_PRINCIPAL_LIST_V1: &str =
179    "storage_gateway_principal_list_v1";
180
181pub const CANIC_SYNC_STATE: &str = "canic_sync_state";
182pub const CANIC_SYNC_TOPOLOGY: &str = "canic_sync_topology";
183
184pub const CANIC_WASM_STORE_ROOT_UPDATE_METHODS: &[&str] = &[
185    CANIC_WASM_STORE_BEGIN_GC,
186    CANIC_WASM_STORE_CHUNK,
187    CANIC_WASM_STORE_COMPLETE_GC,
188    CANIC_WASM_STORE_RECLAIM_DELETION_CYCLES,
189    CANIC_WASM_STORE_INFO,
190    CANIC_WASM_STORE_PREPARE,
191    CANIC_WASM_STORE_PREPARE_GC,
192    CANIC_WASM_STORE_PUBLISH_CHUNK,
193    CANIC_WASM_STORE_STAGE_MANIFEST,
194];
195
196pub const CANIC_WASM_STORE_STRUCTURAL_QUERY_METHODS: &[&str] =
197    &[CANIC_WASM_STORE_CATALOG, CANIC_WASM_STORE_STATUS];
198
199pub const BLOB_STORAGE_069_GATEWAY_METHODS: &[&str] = &[
200    BLOB_STORAGE_BLOBS_ARE_LIVE,
201    BLOB_STORAGE_BLOBS_TO_DELETE,
202    BLOB_STORAGE_CONFIRM_BLOB_DELETION,
203    BLOB_STORAGE_CREATE_CERTIFICATE,
204];
205
206pub const BLOB_STORAGE_070_GATEWAY_METHODS: &[&str] = &[
207    BLOB_STORAGE_UPDATE_GATEWAY_PRINCIPALS,
208    BLOB_STORAGE_FUND_FROM_PROJECT_CYCLES,
209];
210
211pub const BLOB_STORAGE_070_CASHIER_METHODS: &[&str] = &[
212    BLOB_STORAGE_CASHIER_ACCOUNT_BALANCE_GET_V1,
213    BLOB_STORAGE_CASHIER_ACCOUNT_TOP_UP_V1,
214    BLOB_STORAGE_CASHIER_STORAGE_GATEWAY_PRINCIPAL_LIST_V1,
215];