@phala/cloud 0.1.1-beta.2 → 0.1.1-beta.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.mjs CHANGED
@@ -631,9 +631,6 @@ var { action: getWorkspace, safeAction: safeGetWorkspace } = defineAction(Worksp
631
631
  return await client.get(`/workspaces/${teamSlug}`);
632
632
  });
633
633
 
634
- // src/actions/cvms/get_cvm_info.ts
635
- import { z as z8 } from "zod";
636
-
637
634
  // src/types/cvm_info.ts
638
635
  import { z as z7 } from "zod";
639
636
  var VmInfoSchema = z7.object({
@@ -659,7 +656,7 @@ var ManagedUserSchema = z7.object({
659
656
  var CvmNodeSchema = z7.object({
660
657
  id: z7.number(),
661
658
  name: z7.string(),
662
- region_identifier: z7.string().optional()
659
+ region_identifier: z7.string().nullable().optional()
663
660
  });
664
661
  var CvmNetworkUrlsSchema = z7.object({
665
662
  app: z7.string(),
@@ -668,8 +665,8 @@ var CvmNetworkUrlsSchema = z7.object({
668
665
  var CvmInfoSchema = z7.object({
669
666
  hosted: VmInfoSchema,
670
667
  name: z7.string(),
671
- managed_user: ManagedUserSchema.optional().nullable(),
672
- node: CvmNodeSchema.optional().nullable(),
668
+ managed_user: ManagedUserSchema.nullable(),
669
+ node: CvmNodeSchema.nullable(),
673
670
  listed: z7.boolean().default(false),
674
671
  status: z7.string(),
675
672
  in_progress: z7.boolean().default(false),
@@ -686,59 +683,107 @@ var CvmInfoSchema = z7.object({
686
683
  disk_size: z7.number().nullable(),
687
684
  gateway_domain: z7.string().nullable(),
688
685
  public_urls: z7.array(CvmNetworkUrlsSchema)
689
- }).partial();
686
+ });
690
687
  var CvmLegacyDetailSchema = z7.object({
691
688
  id: z7.number(),
692
689
  name: z7.string(),
693
690
  status: z7.string(),
694
- in_progress: z7.boolean(),
691
+ in_progress: z7.boolean().optional().default(false),
695
692
  teepod_id: z7.number().nullable(),
696
- teepod: CvmNodeSchema,
693
+ teepod: CvmNodeSchema.optional().nullable(),
697
694
  app_id: z7.string(),
698
695
  vm_uuid: z7.string().nullable(),
699
696
  instance_id: z7.string().nullable(),
700
- vcpu: z7.number().nullable(),
701
- memory: z7.number().nullable(),
702
- disk_size: z7.number().nullable(),
703
- base_image: z7.string(),
697
+ vcpu: z7.number(),
698
+ memory: z7.number(),
699
+ disk_size: z7.number(),
700
+ base_image: z7.string().nullable(),
704
701
  encrypted_env_pubkey: z7.string().nullable(),
705
- listed: z7.boolean(),
706
- project_id: z7.string().nullable(),
707
- project_type: z7.string().nullable(),
708
- public_sysinfo: z7.boolean(),
709
- public_logs: z7.boolean(),
710
- dapp_dashboard_url: z7.string().nullable(),
711
- syslog_endpoint: z7.string().nullable(),
712
- kms_info: KmsInfoSchema.nullable(),
713
- contract_address: z7.string().nullable(),
714
- deployer_address: z7.string().nullable(),
715
- scheduled_delete_at: z7.string().nullable(),
716
- public_urls: z7.array(CvmNetworkUrlsSchema),
717
- gateway_domain: z7.string().nullable()
702
+ listed: z7.boolean().optional().default(false),
703
+ project_id: z7.string().optional().nullable(),
704
+ project_type: z7.string().optional().nullable(),
705
+ public_sysinfo: z7.boolean().optional().default(false),
706
+ public_logs: z7.boolean().optional().default(false),
707
+ dapp_dashboard_url: z7.string().optional().nullable(),
708
+ syslog_endpoint: z7.string().optional().nullable(),
709
+ kms_info: KmsInfoSchema.optional().nullable(),
710
+ contract_address: z7.string().optional().nullable(),
711
+ deployer_address: z7.string().optional().nullable(),
712
+ scheduled_delete_at: z7.string().optional().nullable(),
713
+ public_urls: z7.array(CvmNetworkUrlsSchema).optional().default([]),
714
+ gateway_domain: z7.string().optional().nullable()
715
+ });
716
+ var VMSchema = z7.object({
717
+ id: z7.number(),
718
+ name: z7.string(),
719
+ status: z7.string(),
720
+ teepod_id: z7.number(),
721
+ teepod: CvmNodeSchema.optional().nullable(),
722
+ user_id: z7.number().optional().nullable(),
723
+ app_id: z7.string(),
724
+ vm_uuid: z7.string().nullable(),
725
+ instance_id: z7.string().nullable(),
726
+ app_url: z7.string().optional().nullable(),
727
+ base_image: z7.string().nullable(),
728
+ vcpu: z7.number(),
729
+ memory: z7.number(),
730
+ disk_size: z7.number(),
731
+ manifest_version: z7.number().optional().nullable(),
732
+ version: z7.string().optional().nullable(),
733
+ runner: z7.string().optional().nullable(),
734
+ docker_compose_file: z7.string().optional().nullable(),
735
+ features: z7.array(z7.string()).optional().nullable(),
736
+ created_at: z7.string(),
737
+ // datetime serialized as ISO string
738
+ encrypted_env_pubkey: z7.string().nullable()
718
739
  });
719
740
 
720
- // src/actions/cvms/get_cvm_info.ts
721
- var GetCvmInfoRequestSchema = z8.object({
741
+ // src/types/cvm_id.ts
742
+ import { z as z8 } from "zod";
743
+ var CvmIdObjectSchema = z8.object({
744
+ /** Direct CVM ID (any format) */
722
745
  id: z8.string().optional(),
723
- uuid: z8.string().regex(/^[0-9a-f]{8}[-]?[0-9a-f]{4}[-]?4[0-9a-f]{3}[-]?[89ab][0-9a-f]{3}[-]?[0-9a-f]{12}$/i).optional(),
724
- app_id: z8.string().refine(
725
- (val) => !val.startsWith("app_") && val.length === 40,
726
- "app_id should be 40 characters without prefix"
727
- ).transform((val) => val.startsWith("app_") ? val : `app_${val}`).optional(),
728
- instance_id: z8.string().refine(
729
- (val) => !val.startsWith("instance_") && val.length === 40,
730
- "instance_id should be 40 characters without prefix"
731
- ).transform((val) => val.startsWith("instance_") ? val : `instance_${val}`).optional()
732
- }).refine(
733
- (data) => !!(data.id || data.uuid || data.app_id || data.instance_id),
734
- "One of id, uuid, app_id, or instance_id must be provided"
735
- ).transform((data) => ({
736
- cvmId: data.id || data.uuid || data.app_id || data.instance_id,
737
- _raw: data
738
- }));
746
+ /** UUID format (with or without dashes) */
747
+ uuid: z8.string().regex(
748
+ /^[0-9a-f]{8}[-]?[0-9a-f]{4}[-]?4[0-9a-f]{3}[-]?[89ab][0-9a-f]{3}[-]?[0-9a-f]{12}$/i,
749
+ "Invalid UUID format"
750
+ ).optional(),
751
+ /** App ID (40 characters, optionally prefixed with 'app_id_') */
752
+ app_id: z8.string().optional(),
753
+ /** Instance ID (40 characters, optionally prefixed with 'instance_') */
754
+ instance_id: z8.string().optional()
755
+ });
756
+ var refineCvmId = (schema) => schema.refine(
757
+ (data) => {
758
+ const obj = data;
759
+ return !!(obj.id || obj.uuid || obj.app_id || obj.instance_id);
760
+ },
761
+ {
762
+ message: "One of id, uuid, app_id, or instance_id must be provided"
763
+ }
764
+ );
765
+ var CvmIdBaseSchema = refineCvmId(CvmIdObjectSchema);
766
+ var CvmIdSchema = CvmIdBaseSchema.transform((data) => {
767
+ let cvmId;
768
+ if (data.id) {
769
+ cvmId = data.id;
770
+ } else if (data.uuid) {
771
+ cvmId = data.uuid.replace(/-/g, "");
772
+ } else if (data.app_id) {
773
+ cvmId = data.app_id.startsWith("app_") ? data.app_id : `app_${data.app_id}`;
774
+ } else if (data.instance_id) {
775
+ cvmId = data.instance_id.startsWith("instance_") ? data.instance_id : `instance_${data.instance_id}`;
776
+ } else {
777
+ throw new Error("No valid identifier provided");
778
+ }
779
+ return { cvmId };
780
+ });
781
+
782
+ // src/actions/cvms/get_cvm_info.ts
783
+ var GetCvmInfoRequestSchema = CvmIdSchema;
739
784
  var { action: getCvmInfo, safeAction: safeGetCvmInfo } = defineAction(CvmLegacyDetailSchema, async (client, request) => {
740
- const validatedRequest = GetCvmInfoRequestSchema.parse(request);
741
- return await client.get(`/cvms/${validatedRequest.cvmId}`);
785
+ const { cvmId } = GetCvmInfoRequestSchema.parse(request);
786
+ return await client.get(`/cvms/${cvmId}`);
742
787
  });
743
788
 
744
789
  // src/actions/cvms/get_cvm_list.ts
@@ -746,7 +791,9 @@ import { z as z9 } from "zod";
746
791
  var GetCvmListRequestSchema = z9.object({
747
792
  page: z9.number().int().min(1).optional(),
748
793
  page_size: z9.number().int().min(1).optional(),
749
- node_id: z9.number().int().min(1).optional()
794
+ node_id: z9.number().int().min(1).optional(),
795
+ teepod_id: z9.number().int().min(1).optional(),
796
+ user_id: z9.string().optional()
750
797
  }).strict();
751
798
  var GetCvmListSchema = z9.object({
752
799
  items: z9.array(CvmInfoSchema),
@@ -896,9 +943,6 @@ var { action: commitCvmProvision, safeAction: safeCommitCvmProvision } = defineA
896
943
  return await client.post("/cvms", payload);
897
944
  });
898
945
 
899
- // src/actions/cvms/get_cvm_compose_file.ts
900
- import { z as z13 } from "zod";
901
-
902
946
  // src/types/app_compose.ts
903
947
  import { z as z12 } from "zod";
904
948
  var LooseAppComposeSchema = z12.object({
@@ -911,48 +955,33 @@ var LooseAppComposeSchema = z12.object({
911
955
  public_logs: z12.boolean().optional(),
912
956
  public_sysinfo: z12.boolean().optional(),
913
957
  tproxy_enabled: z12.boolean().optional(),
914
- pre_launch_script: z12.string().optional()
958
+ pre_launch_script: z12.string().optional(),
959
+ env_pubkey: z12.string().optional(),
960
+ salt: z12.string().optional().nullable()
915
961
  }).passthrough();
916
962
 
917
963
  // src/actions/cvms/get_cvm_compose_file.ts
918
- var GetCvmComposeFileRequestSchema = z13.object({
919
- id: z13.string().optional(),
920
- uuid: z13.string().regex(/^[0-9a-f]{8}[-]?[0-9a-f]{4}[-]?4[0-9a-f]{3}[-]?[89ab][0-9a-f]{3}[-]?[0-9a-f]{12}$/i).optional(),
921
- app_id: z13.string().refine(
922
- (val) => !val.startsWith("app_") && val.length === 40,
923
- "app_id should be 40 characters without prefix"
924
- ).transform((val) => val.startsWith("app_") ? val : `app_${val}`).optional(),
925
- instance_id: z13.string().refine(
926
- (val) => !val.startsWith("instance_") && val.length === 40,
927
- "instance_id should be 40 characters without prefix"
928
- ).transform((val) => val.startsWith("instance_") ? val : `instance_${val}`).optional()
929
- }).refine(
930
- (data) => !!(data.id || data.uuid || data.app_id || data.instance_id),
931
- "One of id, uuid, app_id, or instance_id must be provided"
932
- ).transform((data) => ({
933
- cvmId: data.id || data.uuid || data.app_id || data.instance_id,
934
- _raw: data
935
- }));
964
+ var GetCvmComposeFileRequestSchema = CvmIdSchema;
936
965
  var { action: getCvmComposeFile, safeAction: safeGetCvmComposeFile } = defineAction(LooseAppComposeSchema, async (client, request) => {
937
- const validatedRequest = GetCvmComposeFileRequestSchema.parse(request);
938
- return await client.get(`/cvms/${validatedRequest.cvmId}/compose_file`);
966
+ const { cvmId } = GetCvmComposeFileRequestSchema.parse(request);
967
+ return await client.get(`/cvms/${cvmId}/compose_file`);
939
968
  });
940
969
 
941
970
  // src/actions/cvms/provision_cvm_compose_file_update.ts
942
- import { z as z14 } from "zod";
943
- var ProvisionCvmComposeFileUpdateRequestSchema = z14.object({
944
- id: z14.string().optional(),
945
- uuid: z14.string().regex(/^[0-9a-f]{8}[-]?[0-9a-f]{4}[-]?4[0-9a-f]{3}[-]?[89ab][0-9a-f]{3}[-]?[0-9a-f]{12}$/i).optional(),
946
- app_id: z14.string().refine(
971
+ import { z as z13 } from "zod";
972
+ var ProvisionCvmComposeFileUpdateRequestSchema = z13.object({
973
+ id: z13.string().optional(),
974
+ uuid: z13.string().regex(/^[0-9a-f]{8}[-]?[0-9a-f]{4}[-]?4[0-9a-f]{3}[-]?[89ab][0-9a-f]{3}[-]?[0-9a-f]{12}$/i).optional(),
975
+ app_id: z13.string().refine(
947
976
  (val) => !val.startsWith("app_") && val.length === 40,
948
977
  "app_id should be 40 characters without prefix"
949
978
  ).transform((val) => val.startsWith("app_") ? val : `app_${val}`).optional(),
950
- instance_id: z14.string().refine(
979
+ instance_id: z13.string().refine(
951
980
  (val) => !val.startsWith("instance_") && val.length === 40,
952
981
  "instance_id should be 40 characters without prefix"
953
982
  ).transform((val) => val.startsWith("instance_") ? val : `instance_${val}`).optional(),
954
983
  app_compose: LooseAppComposeSchema,
955
- update_env_vars: z14.boolean().optional().nullable()
984
+ update_env_vars: z13.boolean().optional().nullable()
956
985
  }).refine(
957
986
  (data) => !!(data.id || data.uuid || data.app_id || data.instance_id),
958
987
  "One of id, uuid, app_id, or instance_id must be provided"
@@ -962,10 +991,10 @@ var ProvisionCvmComposeFileUpdateRequestSchema = z14.object({
962
991
  update_env_vars: data.update_env_vars,
963
992
  _raw: data
964
993
  }));
965
- var ProvisionCvmComposeFileUpdateResultSchema = z14.object({
966
- app_id: z14.string().nullable(),
967
- device_id: z14.string().nullable(),
968
- compose_hash: z14.string(),
994
+ var ProvisionCvmComposeFileUpdateResultSchema = z13.object({
995
+ app_id: z13.string().nullable(),
996
+ device_id: z13.string().nullable(),
997
+ compose_hash: z13.string(),
969
998
  kms_info: KmsInfoSchema.nullable().optional()
970
999
  }).passthrough();
971
1000
  var { action: provisionCvmComposeFileUpdate, safeAction: safeProvisionCvmComposeFileUpdate } = defineAction(ProvisionCvmComposeFileUpdateResultSchema, async (client, request) => {
@@ -977,22 +1006,22 @@ var { action: provisionCvmComposeFileUpdate, safeAction: safeProvisionCvmCompose
977
1006
  });
978
1007
 
979
1008
  // src/actions/cvms/commit_cvm_compose_file_update.ts
980
- import { z as z15 } from "zod";
981
- var CommitCvmComposeFileUpdateRequestSchema = z15.object({
982
- id: z15.string().optional(),
983
- uuid: z15.string().regex(/^[0-9a-f]{8}[-]?[0-9a-f]{4}[-]?4[0-9a-f]{3}[-]?[89ab][0-9a-f]{3}[-]?[0-9a-f]{12}$/i).optional(),
984
- app_id: z15.string().refine(
1009
+ import { z as z14 } from "zod";
1010
+ var CommitCvmComposeFileUpdateRequestSchema = z14.object({
1011
+ id: z14.string().optional(),
1012
+ uuid: z14.string().regex(/^[0-9a-f]{8}[-]?[0-9a-f]{4}[-]?4[0-9a-f]{3}[-]?[89ab][0-9a-f]{3}[-]?[0-9a-f]{12}$/i).optional(),
1013
+ app_id: z14.string().refine(
985
1014
  (val) => !val.startsWith("app_") && val.length === 40,
986
1015
  "app_id should be 40 characters without prefix"
987
1016
  ).transform((val) => val.startsWith("app_") ? val : `app_${val}`).optional(),
988
- instance_id: z15.string().refine(
1017
+ instance_id: z14.string().refine(
989
1018
  (val) => !val.startsWith("instance_") && val.length === 40,
990
1019
  "instance_id should be 40 characters without prefix"
991
1020
  ).transform((val) => val.startsWith("instance_") ? val : `instance_${val}`).optional(),
992
- compose_hash: z15.string().min(1, "Compose hash is required"),
993
- encrypted_env: z15.string().optional(),
994
- env_keys: z15.array(z15.string()).optional(),
995
- update_env_vars: z15.boolean().optional().nullable()
1021
+ compose_hash: z14.string().min(1, "Compose hash is required"),
1022
+ encrypted_env: z14.string().optional(),
1023
+ env_keys: z14.array(z14.string()).optional(),
1024
+ update_env_vars: z14.boolean().optional().nullable()
996
1025
  }).refine(
997
1026
  (data) => !!(data.id || data.uuid || data.app_id || data.instance_id),
998
1027
  "One of id, uuid, app_id, or instance_id must be provided"
@@ -1004,7 +1033,7 @@ var CommitCvmComposeFileUpdateRequestSchema = z15.object({
1004
1033
  update_env_vars: !!data.update_env_vars,
1005
1034
  _raw: data
1006
1035
  }));
1007
- var CommitCvmComposeFileUpdateSchema = z15.any().transform(() => void 0);
1036
+ var CommitCvmComposeFileUpdateSchema = z14.any().transform(() => void 0);
1008
1037
  var { action: commitCvmComposeFileUpdate, safeAction: safeCommitCvmComposeFileUpdate } = defineAction(
1009
1038
  CommitCvmComposeFileUpdateSchema,
1010
1039
  async (client, request) => {
@@ -1018,9 +1047,9 @@ var { action: commitCvmComposeFileUpdate, safeAction: safeCommitCvmComposeFileUp
1018
1047
  );
1019
1048
 
1020
1049
  // src/actions/kms/get_kms_info.ts
1021
- import { z as z16 } from "zod";
1022
- var GetKmsInfoRequestSchema = z16.object({
1023
- kms_id: z16.string().min(1, "KMS ID is required")
1050
+ import { z as z15 } from "zod";
1051
+ var GetKmsInfoRequestSchema = z15.object({
1052
+ kms_id: z15.string().min(1, "KMS ID is required")
1024
1053
  });
1025
1054
  var { action: getKmsInfo, safeAction: safeGetKmsInfo } = defineAction(KmsInfoSchema, async (client, request) => {
1026
1055
  const validatedRequest = GetKmsInfoRequestSchema.parse(request);
@@ -1028,18 +1057,18 @@ var { action: getKmsInfo, safeAction: safeGetKmsInfo } = defineAction(KmsInfoSch
1028
1057
  });
1029
1058
 
1030
1059
  // src/actions/kms/get_kms_list.ts
1031
- import { z as z17 } from "zod";
1032
- var GetKmsListRequestSchema = z17.object({
1033
- page: z17.number().int().min(1).optional(),
1034
- page_size: z17.number().int().min(1).optional(),
1035
- is_onchain: z17.boolean().optional()
1060
+ import { z as z16 } from "zod";
1061
+ var GetKmsListRequestSchema = z16.object({
1062
+ page: z16.number().int().min(1).optional(),
1063
+ page_size: z16.number().int().min(1).optional(),
1064
+ is_onchain: z16.boolean().optional()
1036
1065
  }).strict();
1037
- var GetKmsListSchema = z17.object({
1038
- items: z17.array(KmsInfoSchema),
1039
- total: z17.number(),
1040
- page: z17.number(),
1041
- page_size: z17.number(),
1042
- pages: z17.number()
1066
+ var GetKmsListSchema = z16.object({
1067
+ items: z16.array(KmsInfoSchema),
1068
+ total: z16.number(),
1069
+ page: z16.number(),
1070
+ page_size: z16.number(),
1071
+ pages: z16.number()
1043
1072
  }).strict();
1044
1073
  var { action: getKmsList, safeAction: safeGetKmsList } = defineAction(GetKmsListSchema, async (client, request) => {
1045
1074
  const validatedRequest = GetKmsListRequestSchema.parse(request ?? {});
@@ -1047,23 +1076,272 @@ var { action: getKmsList, safeAction: safeGetKmsList } = defineAction(GetKmsList
1047
1076
  });
1048
1077
 
1049
1078
  // src/actions/kms/get_app_env_encrypt_pubkey.ts
1050
- import { z as z18 } from "zod";
1051
- var GetAppEnvEncryptPubKeyRequestSchema = z18.object({
1052
- kms: z18.string().min(1, "KMS ID or slug is required"),
1053
- app_id: z18.string().refine(
1079
+ import { z as z17 } from "zod";
1080
+ var GetAppEnvEncryptPubKeyRequestSchema = z17.object({
1081
+ kms: z17.string().min(1, "KMS ID or slug is required"),
1082
+ app_id: z17.string().refine(
1054
1083
  (val) => val.length === 40 || val.startsWith("0x") && val.length === 42,
1055
1084
  "App ID must be exactly 40 characters or 42 characters with 0x prefix"
1056
1085
  )
1057
1086
  }).strict();
1058
- var GetAppEnvEncryptPubKeySchema = z18.object({
1059
- public_key: z18.string(),
1060
- signature: z18.string()
1087
+ var GetAppEnvEncryptPubKeySchema = z17.object({
1088
+ public_key: z17.string(),
1089
+ signature: z17.string()
1061
1090
  }).strict();
1062
1091
  var { action: getAppEnvEncryptPubKey, safeAction: safeGetAppEnvEncryptPubKey } = defineAction(GetAppEnvEncryptPubKeySchema, async (client, payload) => {
1063
1092
  const validatedRequest = GetAppEnvEncryptPubKeyRequestSchema.parse(payload);
1064
1093
  return await client.get(`/kms/${validatedRequest.kms}/pubkey/${validatedRequest.app_id}`);
1065
1094
  });
1066
1095
 
1096
+ // src/actions/cvms/start_cvm.ts
1097
+ var StartCvmRequestSchema = CvmIdSchema;
1098
+ var { action: startCvm, safeAction: safeStartCvm } = defineAction(VMSchema, async (client, request) => {
1099
+ const { cvmId } = StartCvmRequestSchema.parse(request);
1100
+ return await client.post(`/cvms/${cvmId}/start`);
1101
+ });
1102
+
1103
+ // src/actions/cvms/stop_cvm.ts
1104
+ var StopCvmRequestSchema = CvmIdSchema;
1105
+ var { action: stopCvm, safeAction: safeStopCvm } = defineAction(
1106
+ VMSchema,
1107
+ async (client, request) => {
1108
+ const { cvmId } = StopCvmRequestSchema.parse(request);
1109
+ return await client.post(`/cvms/${cvmId}/stop`);
1110
+ }
1111
+ );
1112
+
1113
+ // src/actions/cvms/shutdown_cvm.ts
1114
+ var ShutdownCvmRequestSchema = CvmIdSchema;
1115
+ var { action: shutdownCvm, safeAction: safeShutdownCvm } = defineAction(VMSchema, async (client, request) => {
1116
+ const { cvmId } = ShutdownCvmRequestSchema.parse(request);
1117
+ return await client.post(`/cvms/${cvmId}/shutdown`);
1118
+ });
1119
+
1120
+ // src/actions/cvms/restart_cvm.ts
1121
+ import { z as z18 } from "zod";
1122
+ var RestartCvmRequestSchema = refineCvmId(
1123
+ CvmIdObjectSchema.extend({
1124
+ force: z18.boolean().optional()
1125
+ })
1126
+ );
1127
+ var { action: restartCvm, safeAction: safeRestartCvm } = defineAction(VMSchema, async (client, request) => {
1128
+ const parsed = RestartCvmRequestSchema.parse(request);
1129
+ const { cvmId } = CvmIdSchema.parse(parsed);
1130
+ const { force = false } = parsed;
1131
+ return await client.post(`/cvms/${cvmId}/restart`, { force });
1132
+ });
1133
+
1134
+ // src/actions/cvms/delete_cvm.ts
1135
+ import { z as z19 } from "zod";
1136
+ var DeleteCvmRequestSchema = CvmIdSchema;
1137
+ var { action: deleteCvm, safeAction: safeDeleteCvm } = defineAction(
1138
+ z19.void(),
1139
+ async (client, request) => {
1140
+ const { cvmId } = DeleteCvmRequestSchema.parse(request);
1141
+ await client.delete(`/cvms/${cvmId}`);
1142
+ return void 0;
1143
+ }
1144
+ );
1145
+
1146
+ // src/actions/cvms/get_cvm_stats.ts
1147
+ import { z as z20 } from "zod";
1148
+ var DiskInfoSchema = z20.object({
1149
+ name: z20.string(),
1150
+ mount_point: z20.string(),
1151
+ total_size: z20.number(),
1152
+ free_size: z20.number()
1153
+ });
1154
+ var SystemInfoSchema = z20.object({
1155
+ os_name: z20.string(),
1156
+ os_version: z20.string(),
1157
+ kernel_version: z20.string(),
1158
+ cpu_model: z20.string(),
1159
+ num_cpus: z20.number(),
1160
+ total_memory: z20.number(),
1161
+ available_memory: z20.number(),
1162
+ used_memory: z20.number(),
1163
+ free_memory: z20.number(),
1164
+ total_swap: z20.number(),
1165
+ used_swap: z20.number(),
1166
+ free_swap: z20.number(),
1167
+ uptime: z20.number(),
1168
+ loadavg_one: z20.number(),
1169
+ loadavg_five: z20.number(),
1170
+ loadavg_fifteen: z20.number(),
1171
+ disks: z20.array(DiskInfoSchema)
1172
+ });
1173
+ var CvmSystemInfoSchema = z20.object({
1174
+ is_online: z20.boolean(),
1175
+ is_public: z20.boolean().default(false),
1176
+ error: z20.string().nullable(),
1177
+ sysinfo: SystemInfoSchema.nullable(),
1178
+ status: z20.string().nullable(),
1179
+ in_progress: z20.boolean().default(false),
1180
+ boot_progress: z20.string().nullable(),
1181
+ boot_error: z20.string().nullable()
1182
+ });
1183
+ var GetCvmStatsRequestSchema = CvmIdSchema;
1184
+ var { action: getCvmStats, safeAction: safeGetCvmStats } = defineAction(CvmSystemInfoSchema, async (client, request) => {
1185
+ const { cvmId } = GetCvmStatsRequestSchema.parse(request);
1186
+ return await client.get(`/cvms/${cvmId}/stats`);
1187
+ });
1188
+
1189
+ // src/actions/cvms/get_cvm_network.ts
1190
+ import { z as z21 } from "zod";
1191
+ var CvmNetworkUrlsSchema2 = z21.object({
1192
+ app: z21.string(),
1193
+ instance: z21.string()
1194
+ });
1195
+ var CvmNetworkSchema = z21.object({
1196
+ is_online: z21.boolean(),
1197
+ is_public: z21.boolean().default(true),
1198
+ error: z21.string().nullable(),
1199
+ internal_ip: z21.string().nullable(),
1200
+ latest_handshake: z21.string().nullable(),
1201
+ public_urls: z21.array(CvmNetworkUrlsSchema2).nullable()
1202
+ });
1203
+ var GetCvmNetworkRequestSchema = CvmIdSchema;
1204
+ var { action: getCvmNetwork, safeAction: safeGetCvmNetwork } = defineAction(CvmNetworkSchema, async (client, request) => {
1205
+ const { cvmId } = GetCvmNetworkRequestSchema.parse(request);
1206
+ return await client.get(`/cvms/${cvmId}/network`);
1207
+ });
1208
+
1209
+ // src/actions/cvms/get_cvm_docker_compose.ts
1210
+ import { z as z22 } from "zod";
1211
+ var GetCvmDockerComposeRequestSchema = CvmIdSchema;
1212
+ var { action: getCvmDockerCompose, safeAction: safeGetCvmDockerCompose } = defineAction(z22.string(), async (client, request) => {
1213
+ const { cvmId } = GetCvmDockerComposeRequestSchema.parse(request);
1214
+ return await client.get(`/cvms/${cvmId}/docker-compose.yml`);
1215
+ });
1216
+
1217
+ // src/actions/cvms/get_cvm_containers_stats.ts
1218
+ import { z as z23 } from "zod";
1219
+ var ContainerInfoSchema = z23.object({
1220
+ id: z23.string(),
1221
+ names: z23.array(z23.string()),
1222
+ image: z23.string(),
1223
+ image_id: z23.string(),
1224
+ command: z23.string().nullable().optional(),
1225
+ created: z23.number(),
1226
+ state: z23.string(),
1227
+ status: z23.string(),
1228
+ log_endpoint: z23.string().nullable()
1229
+ });
1230
+ var CvmContainersStatsSchema = z23.object({
1231
+ is_online: z23.boolean(),
1232
+ is_public: z23.boolean().default(true),
1233
+ error: z23.string().nullable(),
1234
+ docker_compose_file: z23.string().nullable(),
1235
+ manifest_version: z23.number().nullable(),
1236
+ version: z23.string().nullable(),
1237
+ runner: z23.string().nullable(),
1238
+ features: z23.array(z23.string()).nullable(),
1239
+ containers: z23.array(ContainerInfoSchema).nullable()
1240
+ });
1241
+ var GetCvmContainersStatsRequestSchema = CvmIdSchema;
1242
+ var { action: getCvmContainersStats, safeAction: safeGetCvmContainersStats } = defineAction(CvmContainersStatsSchema, async (client, request) => {
1243
+ const { cvmId } = GetCvmContainersStatsRequestSchema.parse(request);
1244
+ return await client.get(`/cvms/${cvmId}/composition`);
1245
+ });
1246
+
1247
+ // src/actions/cvms/get_cvm_attestation.ts
1248
+ import { z as z24 } from "zod";
1249
+ var CertificateSubjectSchema = z24.object({
1250
+ common_name: z24.string().nullable(),
1251
+ organization: z24.string().nullable(),
1252
+ country: z24.string().nullable(),
1253
+ state: z24.string().nullable(),
1254
+ locality: z24.string().nullable()
1255
+ });
1256
+ var CertificateIssuerSchema = z24.object({
1257
+ common_name: z24.string().nullable(),
1258
+ organization: z24.string().nullable(),
1259
+ country: z24.string().nullable()
1260
+ });
1261
+ var CertificateSchema = z24.object({
1262
+ subject: CertificateSubjectSchema,
1263
+ issuer: CertificateIssuerSchema,
1264
+ serial_number: z24.string(),
1265
+ not_before: z24.string(),
1266
+ // datetime serialized as ISO string
1267
+ not_after: z24.string(),
1268
+ // datetime serialized as ISO string
1269
+ version: z24.string(),
1270
+ fingerprint: z24.string(),
1271
+ signature_algorithm: z24.string(),
1272
+ sans: z24.array(z24.string()).nullable(),
1273
+ is_ca: z24.boolean(),
1274
+ position_in_chain: z24.number().nullable(),
1275
+ quote: z24.string().nullable(),
1276
+ app_id: z24.string().nullable().optional(),
1277
+ cert_usage: z24.string().nullable().optional()
1278
+ });
1279
+ var EventLogSchema = z24.object({
1280
+ imr: z24.number(),
1281
+ event_type: z24.number(),
1282
+ digest: z24.string(),
1283
+ event: z24.string(),
1284
+ event_payload: z24.string()
1285
+ });
1286
+ var TcbInfoSchema = z24.object({
1287
+ mrtd: z24.string(),
1288
+ rootfs_hash: z24.string().nullable().optional(),
1289
+ rtmr0: z24.string(),
1290
+ rtmr1: z24.string(),
1291
+ rtmr2: z24.string(),
1292
+ rtmr3: z24.string(),
1293
+ event_log: z24.array(EventLogSchema),
1294
+ app_compose: z24.string()
1295
+ });
1296
+ var CvmAttestationSchema = z24.object({
1297
+ name: z24.string().nullable(),
1298
+ is_online: z24.boolean(),
1299
+ is_public: z24.boolean().default(true),
1300
+ error: z24.string().nullable(),
1301
+ app_certificates: z24.array(CertificateSchema).nullable(),
1302
+ tcb_info: TcbInfoSchema.nullable(),
1303
+ compose_file: z24.string().nullable()
1304
+ });
1305
+ var GetCvmAttestationRequestSchema = CvmIdSchema;
1306
+ var { action: getCvmAttestation, safeAction: safeGetCvmAttestation } = defineAction(CvmAttestationSchema, async (client, request) => {
1307
+ const { cvmId } = GetCvmAttestationRequestSchema.parse(request);
1308
+ return await client.get(`/cvms/${cvmId}/attestation`);
1309
+ });
1310
+
1311
+ // src/actions/cvms/update_cvm_resources.ts
1312
+ import { z as z25 } from "zod";
1313
+ var UpdateCvmResourcesRequestSchema = refineCvmId(
1314
+ CvmIdObjectSchema.extend({
1315
+ vcpu: z25.number().optional(),
1316
+ memory: z25.number().optional(),
1317
+ disk_size: z25.number().optional(),
1318
+ instance_type: z25.string().optional(),
1319
+ allow_restart: z25.boolean().optional()
1320
+ })
1321
+ );
1322
+ var { action: updateCvmResources, safeAction: safeUpdateCvmResources } = defineAction(z25.void(), async (client, request) => {
1323
+ const parsed = UpdateCvmResourcesRequestSchema.parse(request);
1324
+ const { cvmId } = CvmIdSchema.parse(parsed);
1325
+ const { ...body } = parsed;
1326
+ await client.patch(`/cvms/${cvmId}/resources`, body);
1327
+ return void 0;
1328
+ });
1329
+
1330
+ // src/actions/cvms/update_cvm_visibility.ts
1331
+ import { z as z26 } from "zod";
1332
+ var UpdateCvmVisibilityRequestSchema = refineCvmId(
1333
+ CvmIdObjectSchema.extend({
1334
+ public_sysinfo: z26.boolean(),
1335
+ public_logs: z26.boolean()
1336
+ })
1337
+ );
1338
+ var { action: updateCvmVisibility, safeAction: safeUpdateCvmVisibility } = defineAction(CvmLegacyDetailSchema, async (client, request) => {
1339
+ const parsed = UpdateCvmVisibilityRequestSchema.parse(request);
1340
+ const { cvmId } = CvmIdSchema.parse(parsed);
1341
+ const { public_sysinfo, public_logs } = parsed;
1342
+ return await client.patch(`/cvms/${cvmId}/visibility`, { public_sysinfo, public_logs });
1343
+ });
1344
+
1067
1345
  // src/create-client.ts
1068
1346
  function createClient2(config = {}) {
1069
1347
  const client = createClient(config);
@@ -1092,6 +1370,30 @@ function createClient2(config = {}) {
1092
1370
  safeProvisionCvmComposeFileUpdate,
1093
1371
  commitCvmComposeFileUpdate,
1094
1372
  safeCommitCvmComposeFileUpdate,
1373
+ startCvm,
1374
+ safeStartCvm,
1375
+ stopCvm,
1376
+ safeStopCvm,
1377
+ shutdownCvm,
1378
+ safeShutdownCvm,
1379
+ restartCvm,
1380
+ safeRestartCvm,
1381
+ deleteCvm,
1382
+ safeDeleteCvm,
1383
+ getCvmStats,
1384
+ safeGetCvmStats,
1385
+ getCvmNetwork,
1386
+ safeGetCvmNetwork,
1387
+ getCvmDockerCompose,
1388
+ safeGetCvmDockerCompose,
1389
+ getCvmContainersStats,
1390
+ safeGetCvmContainersStats,
1391
+ getCvmAttestation,
1392
+ safeGetCvmAttestation,
1393
+ updateCvmResources,
1394
+ safeUpdateCvmResources,
1395
+ updateCvmVisibility,
1396
+ safeUpdateCvmVisibility,
1095
1397
  getKmsInfo,
1096
1398
  safeGetKmsInfo,
1097
1399
  getKmsList,
@@ -1103,7 +1405,7 @@ function createClient2(config = {}) {
1103
1405
  }
1104
1406
 
1105
1407
  // src/actions/blockchains/deploy_app_auth.ts
1106
- import { z as z19 } from "zod";
1408
+ import { z as z27 } from "zod";
1107
1409
  import {
1108
1410
  createPublicClient as createPublicClient2,
1109
1411
  createWalletClient as createWalletClient2,
@@ -1781,25 +2083,25 @@ var kmsAuthAbi = [
1781
2083
  anonymous: false
1782
2084
  }
1783
2085
  ];
1784
- var DeployAppAuthRequestBaseSchema = z19.object({
2086
+ var DeployAppAuthRequestBaseSchema = z27.object({
1785
2087
  // Chain configuration (conditionally required)
1786
- chain: z19.unknown().optional(),
1787
- rpcUrl: z19.string().optional(),
2088
+ chain: z27.unknown().optional(),
2089
+ rpcUrl: z27.string().optional(),
1788
2090
  // Contract configuration (required)
1789
- kmsContractAddress: z19.string(),
2091
+ kmsContractAddress: z27.string(),
1790
2092
  // Authentication mode: either privateKey OR walletClient (required, mutually exclusive)
1791
- privateKey: z19.string().optional(),
1792
- walletClient: z19.unknown().optional(),
2093
+ privateKey: z27.string().optional(),
2094
+ walletClient: z27.unknown().optional(),
1793
2095
  // Public client (optional, will create default if not provided)
1794
- publicClient: z19.unknown().optional(),
2096
+ publicClient: z27.unknown().optional(),
1795
2097
  // App configuration (optional)
1796
- allowAnyDevice: z19.boolean().optional().default(false),
1797
- deviceId: z19.string().optional().default("0000000000000000000000000000000000000000000000000000000000000000"),
1798
- composeHash: z19.string().optional().default("0000000000000000000000000000000000000000000000000000000000000000"),
1799
- disableUpgrades: z19.boolean().optional().default(false),
2098
+ allowAnyDevice: z27.boolean().optional().default(false),
2099
+ deviceId: z27.string().optional().default("0000000000000000000000000000000000000000000000000000000000000000"),
2100
+ composeHash: z27.string().optional().default("0000000000000000000000000000000000000000000000000000000000000000"),
2101
+ disableUpgrades: z27.boolean().optional().default(false),
1800
2102
  // Validation configuration (optional)
1801
- skipPrerequisiteChecks: z19.boolean().optional().default(false),
1802
- minBalance: z19.string().optional()
2103
+ skipPrerequisiteChecks: z27.boolean().optional().default(false),
2104
+ minBalance: z27.string().optional()
1803
2105
  // ETH amount as string, e.g., "0.01"
1804
2106
  }).passthrough();
1805
2107
  var DeployAppAuthRequestSchema = DeployAppAuthRequestBaseSchema.refine(
@@ -1827,13 +2129,13 @@ var DeployAppAuthRequestSchema = DeployAppAuthRequestBaseSchema.refine(
1827
2129
  path: ["chain"]
1828
2130
  }
1829
2131
  );
1830
- var DeployAppAuthSchema = z19.object({
1831
- appId: z19.string(),
1832
- appAuthAddress: z19.string(),
1833
- deployer: z19.string(),
1834
- transactionHash: z19.string(),
1835
- blockNumber: z19.bigint().optional(),
1836
- gasUsed: z19.bigint().optional()
2132
+ var DeployAppAuthSchema = z27.object({
2133
+ appId: z27.string(),
2134
+ appAuthAddress: z27.string(),
2135
+ deployer: z27.string(),
2136
+ transactionHash: z27.string(),
2137
+ blockNumber: z27.bigint().optional(),
2138
+ gasUsed: z27.bigint().optional()
1837
2139
  }).passthrough();
1838
2140
  function parseDeploymentResult(receipt, deployer, kmsContractAddress) {
1839
2141
  try {
@@ -2079,7 +2381,7 @@ async function safeDeployAppAuth(request, parameters) {
2079
2381
  }
2080
2382
 
2081
2383
  // src/actions/blockchains/add_compose_hash.ts
2082
- import { z as z20 } from "zod";
2384
+ import { z as z28 } from "zod";
2083
2385
  import {
2084
2386
  createPublicClient as createPublicClient3,
2085
2387
  createWalletClient as createWalletClient3,
@@ -2103,29 +2405,29 @@ var appAuthAbi = [
2103
2405
  anonymous: false
2104
2406
  }
2105
2407
  ];
2106
- var AddComposeHashRequestSchema = z20.object({
2408
+ var AddComposeHashRequestSchema = z28.object({
2107
2409
  // Chain configuration (conditionally required)
2108
- chain: z20.unknown().optional(),
2109
- rpcUrl: z20.string().optional(),
2110
- appId: z20.string(),
2111
- composeHash: z20.string(),
2410
+ chain: z28.unknown().optional(),
2411
+ rpcUrl: z28.string().optional(),
2412
+ appId: z28.string(),
2413
+ composeHash: z28.string(),
2112
2414
  // Authentication mode: either privateKey OR walletClient (required, mutually exclusive)
2113
- privateKey: z20.string().optional(),
2114
- walletClient: z20.unknown().optional(),
2415
+ privateKey: z28.string().optional(),
2416
+ walletClient: z28.unknown().optional(),
2115
2417
  // Public client (optional, will create default if not provided)
2116
- publicClient: z20.unknown().optional(),
2418
+ publicClient: z28.unknown().optional(),
2117
2419
  // Validation configuration (optional)
2118
- skipPrerequisiteChecks: z20.boolean().optional().default(false),
2119
- minBalance: z20.string().optional(),
2420
+ skipPrerequisiteChecks: z28.boolean().optional().default(false),
2421
+ minBalance: z28.string().optional(),
2120
2422
  // ETH amount as string, e.g., "0.01"
2121
2423
  // Transaction control options
2122
- timeout: z20.number().optional().default(12e4),
2123
- retryOptions: z20.unknown().optional(),
2124
- signal: z20.unknown().optional(),
2424
+ timeout: z28.number().optional().default(12e4),
2425
+ retryOptions: z28.unknown().optional(),
2426
+ signal: z28.unknown().optional(),
2125
2427
  // Progress callbacks
2126
- onTransactionStateChange: z20.function().optional(),
2127
- onTransactionSubmitted: z20.function().optional(),
2128
- onTransactionConfirmed: z20.function().optional()
2428
+ onTransactionStateChange: z28.function().optional(),
2429
+ onTransactionSubmitted: z28.function().optional(),
2430
+ onTransactionConfirmed: z28.function().optional()
2129
2431
  }).passthrough().refine(
2130
2432
  (data) => {
2131
2433
  const hasPrivateKey = !!data.privateKey;
@@ -2149,12 +2451,12 @@ var AddComposeHashRequestSchema = z20.object({
2149
2451
  path: ["chain"]
2150
2452
  }
2151
2453
  );
2152
- var AddComposeHashSchema = z20.object({
2153
- composeHash: z20.string(),
2154
- appId: z20.string(),
2155
- transactionHash: z20.string(),
2156
- blockNumber: z20.bigint().optional(),
2157
- gasUsed: z20.bigint().optional()
2454
+ var AddComposeHashSchema = z28.object({
2455
+ composeHash: z28.string(),
2456
+ appId: z28.string(),
2457
+ transactionHash: z28.string(),
2458
+ blockNumber: z28.bigint().optional(),
2459
+ gasUsed: z28.bigint().optional()
2158
2460
  }).passthrough();
2159
2461
  function parseComposeHashResult(receipt, composeHash, appAuthAddress, appId) {
2160
2462
  console.log(receipt.logs);
@@ -2391,18 +2693,31 @@ export {
2391
2693
  CommitCvmProvisionRequestSchema,
2392
2694
  CommitCvmProvisionSchema,
2393
2695
  CurrentUserSchema,
2696
+ CvmAttestationSchema,
2697
+ CvmContainersStatsSchema,
2698
+ CvmIdBaseSchema,
2699
+ CvmIdObjectSchema,
2700
+ CvmIdSchema,
2394
2701
  CvmInfoSchema,
2395
2702
  CvmLegacyDetailSchema,
2703
+ CvmNetworkSchema,
2396
2704
  CvmNetworkUrlsSchema,
2397
2705
  CvmNodeSchema,
2706
+ CvmSystemInfoSchema,
2707
+ DeleteCvmRequestSchema,
2398
2708
  DeployAppAuthRequestSchema,
2399
2709
  DeployAppAuthSchema,
2400
2710
  GetAppEnvEncryptPubKeyRequestSchema,
2401
2711
  GetAppEnvEncryptPubKeySchema,
2712
+ GetCvmAttestationRequestSchema,
2402
2713
  GetCvmComposeFileRequestSchema,
2714
+ GetCvmContainersStatsRequestSchema,
2715
+ GetCvmDockerComposeRequestSchema,
2403
2716
  GetCvmInfoRequestSchema,
2404
2717
  GetCvmListRequestSchema,
2405
2718
  GetCvmListSchema,
2719
+ GetCvmNetworkRequestSchema,
2720
+ GetCvmStatsRequestSchema,
2406
2721
  GetKmsInfoRequestSchema,
2407
2722
  GetKmsListRequestSchema,
2408
2723
  GetKmsListSchema,
@@ -2419,8 +2734,15 @@ export {
2419
2734
  ProvisionCvmRequestSchema,
2420
2735
  ProvisionCvmSchema,
2421
2736
  RequestError,
2737
+ RestartCvmRequestSchema,
2422
2738
  SUPPORTED_CHAINS,
2739
+ ShutdownCvmRequestSchema,
2740
+ StartCvmRequestSchema,
2741
+ StopCvmRequestSchema,
2423
2742
  TransactionError,
2743
+ UpdateCvmResourcesRequestSchema,
2744
+ UpdateCvmVisibilityRequestSchema,
2745
+ VMSchema,
2424
2746
  VmInfoSchema,
2425
2747
  WalletError,
2426
2748
  WorkspaceResponseSchema,
@@ -2440,6 +2762,7 @@ export {
2440
2762
  createTransactionTracker,
2441
2763
  defineAction,
2442
2764
  defineSimpleAction,
2765
+ deleteCvm,
2443
2766
  deployAppAuth,
2444
2767
  encryptEnvVars2 as encryptEnvVars,
2445
2768
  estimateTransactionGas,
@@ -2451,9 +2774,14 @@ export {
2451
2774
  getAvailableNodes,
2452
2775
  getComposeHash2 as getComposeHash,
2453
2776
  getCurrentUser,
2777
+ getCvmAttestation,
2454
2778
  getCvmComposeFile,
2779
+ getCvmContainersStats,
2780
+ getCvmDockerCompose,
2455
2781
  getCvmInfo,
2456
2782
  getCvmList,
2783
+ getCvmNetwork,
2784
+ getCvmStats,
2457
2785
  getErrorMessage,
2458
2786
  getKmsInfo,
2459
2787
  getKmsList,
@@ -2464,16 +2792,24 @@ export {
2464
2792
  parseEnvVars,
2465
2793
  provisionCvm,
2466
2794
  provisionCvmComposeFileUpdate,
2795
+ refineCvmId,
2796
+ restartCvm,
2467
2797
  safeAddComposeHash,
2468
2798
  safeCommitCvmComposeFileUpdate,
2469
2799
  safeCommitCvmProvision,
2800
+ safeDeleteCvm,
2470
2801
  safeDeployAppAuth,
2471
2802
  safeGetAppEnvEncryptPubKey,
2472
2803
  safeGetAvailableNodes,
2473
2804
  safeGetCurrentUser,
2805
+ safeGetCvmAttestation,
2474
2806
  safeGetCvmComposeFile,
2807
+ safeGetCvmContainersStats,
2808
+ safeGetCvmDockerCompose,
2475
2809
  safeGetCvmInfo,
2476
2810
  safeGetCvmList,
2811
+ safeGetCvmNetwork,
2812
+ safeGetCvmStats,
2477
2813
  safeGetKmsInfo,
2478
2814
  safeGetKmsList,
2479
2815
  safeGetWorkspace,
@@ -2481,8 +2817,19 @@ export {
2481
2817
  safeListWorkspaces,
2482
2818
  safeProvisionCvm,
2483
2819
  safeProvisionCvmComposeFileUpdate,
2820
+ safeRestartCvm,
2821
+ safeShutdownCvm,
2822
+ safeStartCvm,
2823
+ safeStopCvm,
2824
+ safeUpdateCvmResources,
2825
+ safeUpdateCvmVisibility,
2484
2826
  safeValidateActionParameters,
2827
+ shutdownCvm,
2828
+ startCvm,
2829
+ stopCvm,
2485
2830
  switchToNetwork,
2831
+ updateCvmResources,
2832
+ updateCvmVisibility,
2486
2833
  validateActionParameters,
2487
2834
  validateNetworkPrerequisites,
2488
2835
  verifyEnvEncryptPublicKey,