@phala/cloud 0.2.1-beta.3 → 0.2.1-beta.4

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
@@ -1091,18 +1091,28 @@ var refineCvmId = (schema) => schema.refine(
1091
1091
  );
1092
1092
  var CvmIdBaseSchema = refineCvmId(CvmIdObjectSchema);
1093
1093
  var CvmIdSchema = CvmIdBaseSchema.transform((data) => {
1094
- let cvmId;
1094
+ let rawValue;
1095
1095
  if (data.id) {
1096
- cvmId = data.id;
1096
+ rawValue = data.id;
1097
1097
  } else if (data.uuid) {
1098
- cvmId = data.uuid.replace(/-/g, "");
1098
+ rawValue = data.uuid;
1099
1099
  } else if (data.app_id) {
1100
- cvmId = data.app_id.startsWith("app_") ? data.app_id : `app_${data.app_id}`;
1100
+ rawValue = data.app_id;
1101
1101
  } else if (data.instance_id) {
1102
- cvmId = data.instance_id.startsWith("instance_") ? data.instance_id : `instance_${data.instance_id}`;
1102
+ rawValue = data.instance_id;
1103
1103
  } else {
1104
1104
  throw new Error("No valid identifier provided");
1105
1105
  }
1106
+ const uuidRegex = /^[0-9a-f]{8}[-]?[0-9a-f]{4}[-]?4[0-9a-f]{3}[-]?[89ab][0-9a-f]{3}[-]?[0-9a-f]{12}$/i;
1107
+ const appIdRegex = /^[0-9a-f]{40}$/i;
1108
+ let cvmId;
1109
+ if (uuidRegex.test(rawValue)) {
1110
+ cvmId = rawValue.replace(/-/g, "");
1111
+ } else if (appIdRegex.test(rawValue)) {
1112
+ cvmId = `app_${rawValue}`;
1113
+ } else {
1114
+ cvmId = rawValue;
1115
+ }
1106
1116
  return { cvmId };
1107
1117
  });
1108
1118
 
@@ -1429,10 +1439,89 @@ var { action: commitCvmComposeFileUpdate, safeAction: safeCommitCvmComposeFileUp
1429
1439
  }
1430
1440
  );
1431
1441
 
1432
- // src/actions/kms/get_kms_info.ts
1442
+ // src/actions/cvms/update_cvm_envs.ts
1433
1443
  import { z as z15 } from "zod";
1434
- var GetKmsInfoRequestSchema = z15.object({
1435
- kms_id: z15.string().min(1, "KMS ID is required")
1444
+ var UpdateCvmEnvsRequestSchema = z15.object({
1445
+ id: z15.string().optional(),
1446
+ 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(),
1447
+ app_id: z15.string().refine(
1448
+ (val) => !val.startsWith("app_") && val.length === 40,
1449
+ "app_id should be 40 characters without prefix"
1450
+ ).transform((val) => val.startsWith("app_") ? val : `app_${val}`).optional(),
1451
+ instance_id: z15.string().refine(
1452
+ (val) => !val.startsWith("instance_") && val.length === 40,
1453
+ "instance_id should be 40 characters without prefix"
1454
+ ).transform((val) => val.startsWith("instance_") ? val : `instance_${val}`).optional(),
1455
+ encrypted_env: z15.string().describe("Encrypted environment variables (hex string)"),
1456
+ env_keys: z15.array(z15.string()).optional().describe("List of allowed environment variable keys"),
1457
+ compose_hash: z15.string().optional().describe("Compose hash for verification (Phase 2, required when env_keys changes)"),
1458
+ transaction_hash: z15.string().optional().describe(
1459
+ "On-chain transaction hash for verification (Phase 2, required when env_keys changes)"
1460
+ )
1461
+ }).refine(
1462
+ (data) => !!(data.id || data.uuid || data.app_id || data.instance_id),
1463
+ "One of id, uuid, app_id, or instance_id must be provided"
1464
+ ).transform((data) => {
1465
+ return {
1466
+ cvmId: data.id || data.uuid || data.app_id || data.instance_id,
1467
+ request: {
1468
+ encrypted_env: data.encrypted_env,
1469
+ env_keys: data.env_keys,
1470
+ compose_hash: data.compose_hash,
1471
+ transaction_hash: data.transaction_hash
1472
+ },
1473
+ _raw: data
1474
+ };
1475
+ });
1476
+ var UpdateCvmEnvsInProgressSchema = z15.object({
1477
+ status: z15.literal("in_progress"),
1478
+ message: z15.string(),
1479
+ correlation_id: z15.string(),
1480
+ allowed_envs_changed: z15.boolean()
1481
+ });
1482
+ var UpdateCvmEnvsPreconditionRequiredSchema = z15.object({
1483
+ status: z15.literal("precondition_required"),
1484
+ message: z15.string(),
1485
+ compose_hash: z15.string(),
1486
+ app_id: z15.string(),
1487
+ device_id: z15.string(),
1488
+ kms_info: KmsInfoSchema
1489
+ });
1490
+ var UpdateCvmEnvsResultSchema = z15.union([
1491
+ UpdateCvmEnvsInProgressSchema,
1492
+ UpdateCvmEnvsPreconditionRequiredSchema
1493
+ ]);
1494
+ var { action: updateCvmEnvs, safeAction: safeUpdateCvmEnvs } = defineAction(UpdateCvmEnvsResultSchema, async (client, request) => {
1495
+ const validatedRequest = UpdateCvmEnvsRequestSchema.parse(request);
1496
+ try {
1497
+ const response = await client.patch(
1498
+ `/cvms/${validatedRequest.cvmId}/envs`,
1499
+ validatedRequest.request
1500
+ );
1501
+ return response;
1502
+ } catch (error) {
1503
+ if (error instanceof PhalaCloudError && error.status === 428) {
1504
+ const detail = error.detail;
1505
+ if (detail && typeof detail === "object") {
1506
+ const detailObj = detail;
1507
+ return {
1508
+ status: "precondition_required",
1509
+ message: detailObj.message || "Compose hash verification required",
1510
+ compose_hash: detailObj.compose_hash,
1511
+ app_id: detailObj.app_id,
1512
+ device_id: detailObj.device_id,
1513
+ kms_info: detailObj.kms_info
1514
+ };
1515
+ }
1516
+ }
1517
+ throw error;
1518
+ }
1519
+ });
1520
+
1521
+ // src/actions/kms/get_kms_info.ts
1522
+ import { z as z16 } from "zod";
1523
+ var GetKmsInfoRequestSchema = z16.object({
1524
+ kms_id: z16.string().min(1, "KMS ID is required")
1436
1525
  });
1437
1526
  var { action: getKmsInfo, safeAction: safeGetKmsInfo } = defineAction(KmsInfoSchema, async (client, request) => {
1438
1527
  const validatedRequest = GetKmsInfoRequestSchema.parse(request);
@@ -1440,18 +1529,18 @@ var { action: getKmsInfo, safeAction: safeGetKmsInfo } = defineAction(KmsInfoSch
1440
1529
  });
1441
1530
 
1442
1531
  // src/actions/kms/get_kms_list.ts
1443
- import { z as z16 } from "zod";
1444
- var GetKmsListRequestSchema = z16.object({
1445
- page: z16.number().int().min(1).optional(),
1446
- page_size: z16.number().int().min(1).optional(),
1447
- is_onchain: z16.boolean().optional()
1532
+ import { z as z17 } from "zod";
1533
+ var GetKmsListRequestSchema = z17.object({
1534
+ page: z17.number().int().min(1).optional(),
1535
+ page_size: z17.number().int().min(1).optional(),
1536
+ is_onchain: z17.boolean().optional()
1448
1537
  }).strict();
1449
- var GetKmsListSchema = z16.object({
1450
- items: z16.array(KmsInfoSchema),
1451
- total: z16.number(),
1452
- page: z16.number(),
1453
- page_size: z16.number(),
1454
- pages: z16.number()
1538
+ var GetKmsListSchema = z17.object({
1539
+ items: z17.array(KmsInfoSchema),
1540
+ total: z17.number(),
1541
+ page: z17.number(),
1542
+ page_size: z17.number(),
1543
+ pages: z17.number()
1455
1544
  }).strict();
1456
1545
  var { action: getKmsList, safeAction: safeGetKmsList } = defineAction(GetKmsListSchema, async (client, request) => {
1457
1546
  const validatedRequest = GetKmsListRequestSchema.parse(request ?? {});
@@ -1459,17 +1548,17 @@ var { action: getKmsList, safeAction: safeGetKmsList } = defineAction(GetKmsList
1459
1548
  });
1460
1549
 
1461
1550
  // src/actions/kms/get_app_env_encrypt_pubkey.ts
1462
- import { z as z17 } from "zod";
1463
- var GetAppEnvEncryptPubKeyRequestSchema = z17.object({
1464
- kms: z17.string().min(1, "KMS ID or slug is required"),
1465
- app_id: z17.string().refine(
1551
+ import { z as z18 } from "zod";
1552
+ var GetAppEnvEncryptPubKeyRequestSchema = z18.object({
1553
+ kms: z18.string().min(1, "KMS ID or slug is required"),
1554
+ app_id: z18.string().refine(
1466
1555
  (val) => val.length === 40 || val.startsWith("0x") && val.length === 42,
1467
1556
  "App ID must be exactly 40 characters or 42 characters with 0x prefix"
1468
1557
  )
1469
1558
  }).strict();
1470
- var GetAppEnvEncryptPubKeySchema = z17.object({
1471
- public_key: z17.string(),
1472
- signature: z17.string()
1559
+ var GetAppEnvEncryptPubKeySchema = z18.object({
1560
+ public_key: z18.string(),
1561
+ signature: z18.string()
1473
1562
  }).strict();
1474
1563
  var { action: getAppEnvEncryptPubKey, safeAction: safeGetAppEnvEncryptPubKey } = defineAction(GetAppEnvEncryptPubKeySchema, async (client, payload) => {
1475
1564
  const validatedRequest = GetAppEnvEncryptPubKeyRequestSchema.parse(payload);
@@ -1477,15 +1566,15 @@ var { action: getAppEnvEncryptPubKey, safeAction: safeGetAppEnvEncryptPubKey } =
1477
1566
  });
1478
1567
 
1479
1568
  // src/actions/kms/next_app_ids.ts
1480
- import { z as z18 } from "zod";
1481
- var NextAppIdsRequestSchema = z18.object({
1482
- counts: z18.number().int().min(1).max(20).optional().default(1)
1569
+ import { z as z19 } from "zod";
1570
+ var NextAppIdsRequestSchema = z19.object({
1571
+ counts: z19.number().int().min(1).max(20).optional().default(1)
1483
1572
  }).strict();
1484
- var NextAppIdsSchema = z18.object({
1485
- app_ids: z18.array(
1486
- z18.object({
1487
- app_id: z18.string(),
1488
- nonce: z18.number().int().min(0)
1573
+ var NextAppIdsSchema = z19.object({
1574
+ app_ids: z19.array(
1575
+ z19.object({
1576
+ app_id: z19.string(),
1577
+ nonce: z19.number().int().min(0)
1489
1578
  })
1490
1579
  )
1491
1580
  }).strict();
@@ -1521,10 +1610,10 @@ var { action: shutdownCvm, safeAction: safeShutdownCvm } = defineAction(VMSchema
1521
1610
  });
1522
1611
 
1523
1612
  // src/actions/cvms/restart_cvm.ts
1524
- import { z as z19 } from "zod";
1613
+ import { z as z20 } from "zod";
1525
1614
  var RestartCvmRequestSchema = refineCvmId(
1526
1615
  CvmIdObjectSchema.extend({
1527
- force: z19.boolean().optional()
1616
+ force: z20.boolean().optional()
1528
1617
  })
1529
1618
  );
1530
1619
  var { action: restartCvm, safeAction: safeRestartCvm } = defineAction(VMSchema, async (client, request) => {
@@ -1535,10 +1624,10 @@ var { action: restartCvm, safeAction: safeRestartCvm } = defineAction(VMSchema,
1535
1624
  });
1536
1625
 
1537
1626
  // src/actions/cvms/delete_cvm.ts
1538
- import { z as z20 } from "zod";
1627
+ import { z as z21 } from "zod";
1539
1628
  var DeleteCvmRequestSchema = CvmIdSchema;
1540
1629
  var { action: deleteCvm, safeAction: safeDeleteCvm } = defineAction(
1541
- z20.void(),
1630
+ z21.void(),
1542
1631
  async (client, request) => {
1543
1632
  const { cvmId } = DeleteCvmRequestSchema.parse(request);
1544
1633
  await client.delete(`/cvms/${cvmId}`);
@@ -1547,41 +1636,41 @@ var { action: deleteCvm, safeAction: safeDeleteCvm } = defineAction(
1547
1636
  );
1548
1637
 
1549
1638
  // src/actions/cvms/get_cvm_stats.ts
1550
- import { z as z21 } from "zod";
1551
- var DiskInfoSchema = z21.object({
1552
- name: z21.string(),
1553
- mount_point: z21.string(),
1554
- total_size: z21.number(),
1555
- free_size: z21.number()
1639
+ import { z as z22 } from "zod";
1640
+ var DiskInfoSchema = z22.object({
1641
+ name: z22.string(),
1642
+ mount_point: z22.string(),
1643
+ total_size: z22.number(),
1644
+ free_size: z22.number()
1556
1645
  });
1557
- var SystemInfoSchema = z21.object({
1558
- os_name: z21.string(),
1559
- os_version: z21.string(),
1560
- kernel_version: z21.string(),
1561
- cpu_model: z21.string(),
1562
- num_cpus: z21.number(),
1563
- total_memory: z21.number(),
1564
- available_memory: z21.number(),
1565
- used_memory: z21.number(),
1566
- free_memory: z21.number(),
1567
- total_swap: z21.number(),
1568
- used_swap: z21.number(),
1569
- free_swap: z21.number(),
1570
- uptime: z21.number(),
1571
- loadavg_one: z21.number(),
1572
- loadavg_five: z21.number(),
1573
- loadavg_fifteen: z21.number(),
1574
- disks: z21.array(DiskInfoSchema)
1646
+ var SystemInfoSchema = z22.object({
1647
+ os_name: z22.string(),
1648
+ os_version: z22.string(),
1649
+ kernel_version: z22.string(),
1650
+ cpu_model: z22.string(),
1651
+ num_cpus: z22.number(),
1652
+ total_memory: z22.number(),
1653
+ available_memory: z22.number(),
1654
+ used_memory: z22.number(),
1655
+ free_memory: z22.number(),
1656
+ total_swap: z22.number(),
1657
+ used_swap: z22.number(),
1658
+ free_swap: z22.number(),
1659
+ uptime: z22.number(),
1660
+ loadavg_one: z22.number(),
1661
+ loadavg_five: z22.number(),
1662
+ loadavg_fifteen: z22.number(),
1663
+ disks: z22.array(DiskInfoSchema)
1575
1664
  });
1576
- var CvmSystemInfoSchema = z21.object({
1577
- is_online: z21.boolean(),
1578
- is_public: z21.boolean().default(false),
1579
- error: z21.string().nullable(),
1665
+ var CvmSystemInfoSchema = z22.object({
1666
+ is_online: z22.boolean(),
1667
+ is_public: z22.boolean().default(false),
1668
+ error: z22.string().nullable(),
1580
1669
  sysinfo: SystemInfoSchema.nullable(),
1581
- status: z21.string().nullable(),
1582
- in_progress: z21.boolean().default(false),
1583
- boot_progress: z21.string().nullable(),
1584
- boot_error: z21.string().nullable()
1670
+ status: z22.string().nullable(),
1671
+ in_progress: z22.boolean().default(false),
1672
+ boot_progress: z22.string().nullable(),
1673
+ boot_error: z22.string().nullable()
1585
1674
  });
1586
1675
  var GetCvmStatsRequestSchema = CvmIdSchema;
1587
1676
  var { action: getCvmStats, safeAction: safeGetCvmStats } = defineAction(CvmSystemInfoSchema, async (client, request) => {
@@ -1590,18 +1679,18 @@ var { action: getCvmStats, safeAction: safeGetCvmStats } = defineAction(CvmSyste
1590
1679
  });
1591
1680
 
1592
1681
  // src/actions/cvms/get_cvm_network.ts
1593
- import { z as z22 } from "zod";
1594
- var CvmNetworkUrlsSchema2 = z22.object({
1595
- app: z22.string(),
1596
- instance: z22.string()
1682
+ import { z as z23 } from "zod";
1683
+ var CvmNetworkUrlsSchema2 = z23.object({
1684
+ app: z23.string(),
1685
+ instance: z23.string()
1597
1686
  });
1598
- var CvmNetworkSchema = z22.object({
1599
- is_online: z22.boolean(),
1600
- is_public: z22.boolean().default(true),
1601
- error: z22.string().nullable(),
1602
- internal_ip: z22.string().nullable(),
1603
- latest_handshake: z22.string().nullable(),
1604
- public_urls: z22.array(CvmNetworkUrlsSchema2).nullable()
1687
+ var CvmNetworkSchema = z23.object({
1688
+ is_online: z23.boolean(),
1689
+ is_public: z23.boolean().default(true),
1690
+ error: z23.string().nullable(),
1691
+ internal_ip: z23.string().nullable(),
1692
+ latest_handshake: z23.string().nullable(),
1693
+ public_urls: z23.array(CvmNetworkUrlsSchema2).nullable()
1605
1694
  });
1606
1695
  var GetCvmNetworkRequestSchema = CvmIdSchema;
1607
1696
  var { action: getCvmNetwork, safeAction: safeGetCvmNetwork } = defineAction(CvmNetworkSchema, async (client, request) => {
@@ -1610,36 +1699,36 @@ var { action: getCvmNetwork, safeAction: safeGetCvmNetwork } = defineAction(CvmN
1610
1699
  });
1611
1700
 
1612
1701
  // src/actions/cvms/get_cvm_docker_compose.ts
1613
- import { z as z23 } from "zod";
1702
+ import { z as z24 } from "zod";
1614
1703
  var GetCvmDockerComposeRequestSchema = CvmIdSchema;
1615
- var { action: getCvmDockerCompose, safeAction: safeGetCvmDockerCompose } = defineAction(z23.string(), async (client, request) => {
1704
+ var { action: getCvmDockerCompose, safeAction: safeGetCvmDockerCompose } = defineAction(z24.string(), async (client, request) => {
1616
1705
  const { cvmId } = GetCvmDockerComposeRequestSchema.parse(request);
1617
1706
  return await client.get(`/cvms/${cvmId}/docker-compose.yml`);
1618
1707
  });
1619
1708
 
1620
1709
  // src/actions/cvms/get_cvm_containers_stats.ts
1621
- import { z as z24 } from "zod";
1622
- var ContainerInfoSchema = z24.object({
1623
- id: z24.string(),
1624
- names: z24.array(z24.string()),
1625
- image: z24.string(),
1626
- image_id: z24.string(),
1627
- command: z24.string().nullable().optional(),
1628
- created: z24.number(),
1629
- state: z24.string(),
1630
- status: z24.string(),
1631
- log_endpoint: z24.string().nullable()
1710
+ import { z as z25 } from "zod";
1711
+ var ContainerInfoSchema = z25.object({
1712
+ id: z25.string(),
1713
+ names: z25.array(z25.string()),
1714
+ image: z25.string(),
1715
+ image_id: z25.string(),
1716
+ command: z25.string().nullable().optional(),
1717
+ created: z25.number(),
1718
+ state: z25.string(),
1719
+ status: z25.string(),
1720
+ log_endpoint: z25.string().nullable()
1632
1721
  });
1633
- var CvmContainersStatsSchema = z24.object({
1634
- is_online: z24.boolean(),
1635
- is_public: z24.boolean().default(true),
1636
- error: z24.string().nullable(),
1637
- docker_compose_file: z24.string().nullable(),
1638
- manifest_version: z24.number().nullable(),
1639
- version: z24.string().nullable(),
1640
- runner: z24.string().nullable(),
1641
- features: z24.array(z24.string()).nullable(),
1642
- containers: z24.array(ContainerInfoSchema).nullable()
1722
+ var CvmContainersStatsSchema = z25.object({
1723
+ is_online: z25.boolean(),
1724
+ is_public: z25.boolean().default(true),
1725
+ error: z25.string().nullable(),
1726
+ docker_compose_file: z25.string().nullable(),
1727
+ manifest_version: z25.number().nullable(),
1728
+ version: z25.string().nullable(),
1729
+ runner: z25.string().nullable(),
1730
+ features: z25.array(z25.string()).nullable(),
1731
+ containers: z25.array(ContainerInfoSchema).nullable()
1643
1732
  });
1644
1733
  var GetCvmContainersStatsRequestSchema = CvmIdSchema;
1645
1734
  var { action: getCvmContainersStats, safeAction: safeGetCvmContainersStats } = defineAction(CvmContainersStatsSchema, async (client, request) => {
@@ -1648,62 +1737,62 @@ var { action: getCvmContainersStats, safeAction: safeGetCvmContainersStats } = d
1648
1737
  });
1649
1738
 
1650
1739
  // src/actions/cvms/get_cvm_attestation.ts
1651
- import { z as z25 } from "zod";
1652
- var CertificateSubjectSchema = z25.object({
1653
- common_name: z25.string().nullable(),
1654
- organization: z25.string().nullable(),
1655
- country: z25.string().nullable(),
1656
- state: z25.string().nullable(),
1657
- locality: z25.string().nullable()
1740
+ import { z as z26 } from "zod";
1741
+ var CertificateSubjectSchema = z26.object({
1742
+ common_name: z26.string().nullable(),
1743
+ organization: z26.string().nullable(),
1744
+ country: z26.string().nullable(),
1745
+ state: z26.string().nullable(),
1746
+ locality: z26.string().nullable()
1658
1747
  });
1659
- var CertificateIssuerSchema = z25.object({
1660
- common_name: z25.string().nullable(),
1661
- organization: z25.string().nullable(),
1662
- country: z25.string().nullable()
1748
+ var CertificateIssuerSchema = z26.object({
1749
+ common_name: z26.string().nullable(),
1750
+ organization: z26.string().nullable(),
1751
+ country: z26.string().nullable()
1663
1752
  });
1664
- var CertificateSchema = z25.object({
1753
+ var CertificateSchema = z26.object({
1665
1754
  subject: CertificateSubjectSchema,
1666
1755
  issuer: CertificateIssuerSchema,
1667
- serial_number: z25.string(),
1668
- not_before: z25.string(),
1756
+ serial_number: z26.string(),
1757
+ not_before: z26.string(),
1669
1758
  // datetime serialized as ISO string
1670
- not_after: z25.string(),
1759
+ not_after: z26.string(),
1671
1760
  // datetime serialized as ISO string
1672
- version: z25.string(),
1673
- fingerprint: z25.string(),
1674
- signature_algorithm: z25.string(),
1675
- sans: z25.array(z25.string()).nullable(),
1676
- is_ca: z25.boolean(),
1677
- position_in_chain: z25.number().nullable(),
1678
- quote: z25.string().nullable(),
1679
- app_id: z25.string().nullable().optional(),
1680
- cert_usage: z25.string().nullable().optional()
1761
+ version: z26.string(),
1762
+ fingerprint: z26.string(),
1763
+ signature_algorithm: z26.string(),
1764
+ sans: z26.array(z26.string()).nullable(),
1765
+ is_ca: z26.boolean(),
1766
+ position_in_chain: z26.number().nullable(),
1767
+ quote: z26.string().nullable(),
1768
+ app_id: z26.string().nullable().optional(),
1769
+ cert_usage: z26.string().nullable().optional()
1681
1770
  });
1682
- var EventLogSchema = z25.object({
1683
- imr: z25.number(),
1684
- event_type: z25.number(),
1685
- digest: z25.string(),
1686
- event: z25.string(),
1687
- event_payload: z25.string()
1771
+ var EventLogSchema = z26.object({
1772
+ imr: z26.number(),
1773
+ event_type: z26.number(),
1774
+ digest: z26.string(),
1775
+ event: z26.string(),
1776
+ event_payload: z26.string()
1688
1777
  });
1689
- var TcbInfoSchema = z25.object({
1690
- mrtd: z25.string(),
1691
- rootfs_hash: z25.string().nullable().optional(),
1692
- rtmr0: z25.string(),
1693
- rtmr1: z25.string(),
1694
- rtmr2: z25.string(),
1695
- rtmr3: z25.string(),
1696
- event_log: z25.array(EventLogSchema),
1697
- app_compose: z25.string()
1778
+ var TcbInfoSchema = z26.object({
1779
+ mrtd: z26.string(),
1780
+ rootfs_hash: z26.string().nullable().optional(),
1781
+ rtmr0: z26.string(),
1782
+ rtmr1: z26.string(),
1783
+ rtmr2: z26.string(),
1784
+ rtmr3: z26.string(),
1785
+ event_log: z26.array(EventLogSchema),
1786
+ app_compose: z26.string()
1698
1787
  });
1699
- var CvmAttestationSchema = z25.object({
1700
- name: z25.string().nullable(),
1701
- is_online: z25.boolean(),
1702
- is_public: z25.boolean().default(true),
1703
- error: z25.string().nullable(),
1704
- app_certificates: z25.array(CertificateSchema).nullable(),
1788
+ var CvmAttestationSchema = z26.object({
1789
+ name: z26.string().nullable(),
1790
+ is_online: z26.boolean(),
1791
+ is_public: z26.boolean().default(true),
1792
+ error: z26.string().nullable(),
1793
+ app_certificates: z26.array(CertificateSchema).nullable(),
1705
1794
  tcb_info: TcbInfoSchema.nullable(),
1706
- compose_file: z25.string().nullable()
1795
+ compose_file: z26.string().nullable()
1707
1796
  });
1708
1797
  var GetCvmAttestationRequestSchema = CvmIdSchema;
1709
1798
  var { action: getCvmAttestation, safeAction: safeGetCvmAttestation } = defineAction(CvmAttestationSchema, async (client, request) => {
@@ -1712,17 +1801,17 @@ var { action: getCvmAttestation, safeAction: safeGetCvmAttestation } = defineAct
1712
1801
  });
1713
1802
 
1714
1803
  // src/actions/cvms/update_cvm_resources.ts
1715
- import { z as z26 } from "zod";
1804
+ import { z as z27 } from "zod";
1716
1805
  var UpdateCvmResourcesRequestSchema = refineCvmId(
1717
1806
  CvmIdObjectSchema.extend({
1718
- vcpu: z26.number().optional(),
1719
- memory: z26.number().optional(),
1720
- disk_size: z26.number().optional(),
1721
- instance_type: z26.string().optional(),
1722
- allow_restart: z26.boolean().optional()
1807
+ vcpu: z27.number().optional(),
1808
+ memory: z27.number().optional(),
1809
+ disk_size: z27.number().optional(),
1810
+ instance_type: z27.string().optional(),
1811
+ allow_restart: z27.boolean().optional()
1723
1812
  })
1724
1813
  );
1725
- var { action: updateCvmResources, safeAction: safeUpdateCvmResources } = defineAction(z26.void(), async (client, request) => {
1814
+ var { action: updateCvmResources, safeAction: safeUpdateCvmResources } = defineAction(z27.void(), async (client, request) => {
1726
1815
  const parsed = UpdateCvmResourcesRequestSchema.parse(request);
1727
1816
  const { cvmId } = CvmIdSchema.parse(parsed);
1728
1817
  const { ...body } = parsed;
@@ -1731,11 +1820,11 @@ var { action: updateCvmResources, safeAction: safeUpdateCvmResources } = defineA
1731
1820
  });
1732
1821
 
1733
1822
  // src/actions/cvms/update_cvm_visibility.ts
1734
- import { z as z27 } from "zod";
1823
+ import { z as z28 } from "zod";
1735
1824
  var UpdateCvmVisibilityRequestSchema = refineCvmId(
1736
1825
  CvmIdObjectSchema.extend({
1737
- public_sysinfo: z27.boolean(),
1738
- public_logs: z27.boolean()
1826
+ public_sysinfo: z28.boolean(),
1827
+ public_logs: z28.boolean()
1739
1828
  })
1740
1829
  );
1741
1830
  var { action: updateCvmVisibility, safeAction: safeUpdateCvmVisibility } = defineAction(CvmLegacyDetailSchema, async (client, request) => {
@@ -1746,21 +1835,21 @@ var { action: updateCvmVisibility, safeAction: safeUpdateCvmVisibility } = defin
1746
1835
  });
1747
1836
 
1748
1837
  // src/actions/cvms/get_available_os_images.ts
1749
- import { z as z28 } from "zod";
1750
- var OSImageVariantSchema = z28.object({
1751
- name: z28.string(),
1752
- os_image_hash: z28.string().nullable(),
1753
- is_current: z28.boolean()
1838
+ import { z as z29 } from "zod";
1839
+ var OSImageVariantSchema = z29.object({
1840
+ name: z29.string(),
1841
+ os_image_hash: z29.string().nullable(),
1842
+ is_current: z29.boolean()
1754
1843
  });
1755
- var AvailableOSImageSchema2 = z28.object({
1756
- version: z28.union([
1757
- z28.tuple([z28.number(), z28.number(), z28.number(), z28.number()]),
1758
- z28.tuple([z28.number(), z28.number(), z28.number()])
1844
+ var AvailableOSImageSchema2 = z29.object({
1845
+ version: z29.union([
1846
+ z29.tuple([z29.number(), z29.number(), z29.number(), z29.number()]),
1847
+ z29.tuple([z29.number(), z29.number(), z29.number()])
1759
1848
  ]),
1760
1849
  prod: OSImageVariantSchema.nullable(),
1761
1850
  dev: OSImageVariantSchema.nullable()
1762
1851
  });
1763
- var GetAvailableOSImagesResponseSchema = z28.array(AvailableOSImageSchema2);
1852
+ var GetAvailableOSImagesResponseSchema = z29.array(AvailableOSImageSchema2);
1764
1853
  var GetAvailableOSImagesRequestSchema = CvmIdSchema;
1765
1854
  var { action: getAvailableOsImages, safeAction: safeGetAvailableOsImages } = defineAction(GetAvailableOSImagesResponseSchema, async (client, request) => {
1766
1855
  const { cvmId } = GetAvailableOSImagesRequestSchema.parse(request);
@@ -1768,13 +1857,13 @@ var { action: getAvailableOsImages, safeAction: safeGetAvailableOsImages } = def
1768
1857
  });
1769
1858
 
1770
1859
  // src/actions/cvms/update_os_image.ts
1771
- import { z as z29 } from "zod";
1860
+ import { z as z30 } from "zod";
1772
1861
  var UpdateOsImageRequestSchema = refineCvmId(
1773
1862
  CvmIdObjectSchema.extend({
1774
- os_image_name: z29.string().min(1, "OS image name is required")
1863
+ os_image_name: z30.string().min(1, "OS image name is required")
1775
1864
  })
1776
1865
  );
1777
- var { action: updateOsImage, safeAction: safeUpdateOsImage } = defineAction(z29.void(), async (client, request) => {
1866
+ var { action: updateOsImage, safeAction: safeUpdateOsImage } = defineAction(z30.void(), async (client, request) => {
1778
1867
  const parsed = UpdateOsImageRequestSchema.parse(request);
1779
1868
  const { cvmId } = CvmIdSchema.parse(parsed);
1780
1869
  const { os_image_name } = parsed;
@@ -1783,17 +1872,17 @@ var { action: updateOsImage, safeAction: safeUpdateOsImage } = defineAction(z29.
1783
1872
  });
1784
1873
 
1785
1874
  // src/actions/cvms/get_cvm_state.ts
1786
- import { z as z30 } from "zod";
1787
- var CvmStateSchema = z30.object({
1788
- id: z30.string().optional(),
1789
- instance_id: z30.string().optional(),
1790
- name: z30.string(),
1791
- status: z30.string(),
1792
- uptime: z30.string().optional(),
1793
- exited_at: z30.string().optional(),
1794
- boot_progress: z30.string().optional(),
1795
- boot_error: z30.string().optional(),
1796
- shutdown_progress: z30.string().optional()
1875
+ import { z as z31 } from "zod";
1876
+ var CvmStateSchema = z31.object({
1877
+ id: z31.string().optional(),
1878
+ instance_id: z31.string().optional(),
1879
+ name: z31.string(),
1880
+ status: z31.string(),
1881
+ uptime: z31.string().optional(),
1882
+ exited_at: z31.string().optional(),
1883
+ boot_progress: z31.string().optional(),
1884
+ boot_error: z31.string().optional(),
1885
+ shutdown_progress: z31.string().optional()
1797
1886
  });
1798
1887
  var GetCvmStateRequestSchema = CvmIdSchema;
1799
1888
  var { action: getCvmState, safeAction: safeGetCvmState } = defineAction(CvmStateSchema, async (client, request) => {
@@ -1831,6 +1920,8 @@ function createClient2(config = {}) {
1831
1920
  safeProvisionCvmComposeFileUpdate,
1832
1921
  commitCvmComposeFileUpdate,
1833
1922
  safeCommitCvmComposeFileUpdate,
1923
+ updateCvmEnvs,
1924
+ safeUpdateCvmEnvs,
1834
1925
  startCvm,
1835
1926
  safeStartCvm,
1836
1927
  stopCvm,
@@ -1874,7 +1965,7 @@ function createClient2(config = {}) {
1874
1965
  }
1875
1966
 
1876
1967
  // src/actions/blockchains/deploy_app_auth.ts
1877
- import { z as z31 } from "zod";
1968
+ import { z as z32 } from "zod";
1878
1969
  import {
1879
1970
  createPublicClient as createPublicClient2,
1880
1971
  createWalletClient as createWalletClient2,
@@ -2535,25 +2626,25 @@ var kmsAuthAbi = [
2535
2626
  anonymous: false
2536
2627
  }
2537
2628
  ];
2538
- var DeployAppAuthRequestBaseSchema = z31.object({
2629
+ var DeployAppAuthRequestBaseSchema = z32.object({
2539
2630
  // Chain configuration (conditionally required)
2540
- chain: z31.unknown().optional(),
2541
- rpcUrl: z31.string().optional(),
2631
+ chain: z32.unknown().optional(),
2632
+ rpcUrl: z32.string().optional(),
2542
2633
  // Contract configuration (required)
2543
- kmsContractAddress: z31.string(),
2634
+ kmsContractAddress: z32.string(),
2544
2635
  // Authentication mode: either privateKey OR walletClient (required, mutually exclusive)
2545
- privateKey: z31.string().optional(),
2546
- walletClient: z31.unknown().optional(),
2636
+ privateKey: z32.string().optional(),
2637
+ walletClient: z32.unknown().optional(),
2547
2638
  // Public client (optional, will create default if not provided)
2548
- publicClient: z31.unknown().optional(),
2639
+ publicClient: z32.unknown().optional(),
2549
2640
  // App configuration (optional)
2550
- allowAnyDevice: z31.boolean().optional().default(false),
2551
- deviceId: z31.string().optional().default("0000000000000000000000000000000000000000000000000000000000000000"),
2552
- composeHash: z31.string().optional().default("0000000000000000000000000000000000000000000000000000000000000000"),
2553
- disableUpgrades: z31.boolean().optional().default(false),
2641
+ allowAnyDevice: z32.boolean().optional().default(false),
2642
+ deviceId: z32.string().optional().default("0000000000000000000000000000000000000000000000000000000000000000"),
2643
+ composeHash: z32.string().optional().default("0000000000000000000000000000000000000000000000000000000000000000"),
2644
+ disableUpgrades: z32.boolean().optional().default(false),
2554
2645
  // Validation configuration (optional)
2555
- skipPrerequisiteChecks: z31.boolean().optional().default(false),
2556
- minBalance: z31.string().optional()
2646
+ skipPrerequisiteChecks: z32.boolean().optional().default(false),
2647
+ minBalance: z32.string().optional()
2557
2648
  // ETH amount as string, e.g., "0.01"
2558
2649
  }).passthrough();
2559
2650
  var DeployAppAuthRequestSchema = DeployAppAuthRequestBaseSchema.refine(
@@ -2581,13 +2672,13 @@ var DeployAppAuthRequestSchema = DeployAppAuthRequestBaseSchema.refine(
2581
2672
  path: ["chain"]
2582
2673
  }
2583
2674
  );
2584
- var DeployAppAuthSchema = z31.object({
2585
- appId: z31.string(),
2586
- appAuthAddress: z31.string(),
2587
- deployer: z31.string(),
2588
- transactionHash: z31.string(),
2589
- blockNumber: z31.bigint().optional(),
2590
- gasUsed: z31.bigint().optional()
2675
+ var DeployAppAuthSchema = z32.object({
2676
+ appId: z32.string(),
2677
+ appAuthAddress: z32.string(),
2678
+ deployer: z32.string(),
2679
+ transactionHash: z32.string(),
2680
+ blockNumber: z32.bigint().optional(),
2681
+ gasUsed: z32.bigint().optional()
2591
2682
  }).passthrough();
2592
2683
  function parseDeploymentResult(receipt, deployer, kmsContractAddress) {
2593
2684
  try {
@@ -2833,7 +2924,7 @@ async function safeDeployAppAuth(request, parameters) {
2833
2924
  }
2834
2925
 
2835
2926
  // src/actions/blockchains/add_compose_hash.ts
2836
- import { z as z32 } from "zod";
2927
+ import { z as z33 } from "zod";
2837
2928
  import {
2838
2929
  createPublicClient as createPublicClient3,
2839
2930
  createWalletClient as createWalletClient3,
@@ -2857,29 +2948,29 @@ var appAuthAbi = [
2857
2948
  anonymous: false
2858
2949
  }
2859
2950
  ];
2860
- var AddComposeHashRequestSchema = z32.object({
2951
+ var AddComposeHashRequestSchema = z33.object({
2861
2952
  // Chain configuration (conditionally required)
2862
- chain: z32.unknown().optional(),
2863
- rpcUrl: z32.string().optional(),
2864
- appId: z32.string(),
2865
- composeHash: z32.string(),
2953
+ chain: z33.unknown().optional(),
2954
+ rpcUrl: z33.string().optional(),
2955
+ appId: z33.string(),
2956
+ composeHash: z33.string(),
2866
2957
  // Authentication mode: either privateKey OR walletClient (required, mutually exclusive)
2867
- privateKey: z32.string().optional(),
2868
- walletClient: z32.unknown().optional(),
2958
+ privateKey: z33.string().optional(),
2959
+ walletClient: z33.unknown().optional(),
2869
2960
  // Public client (optional, will create default if not provided)
2870
- publicClient: z32.unknown().optional(),
2961
+ publicClient: z33.unknown().optional(),
2871
2962
  // Validation configuration (optional)
2872
- skipPrerequisiteChecks: z32.boolean().optional().default(false),
2873
- minBalance: z32.string().optional(),
2963
+ skipPrerequisiteChecks: z33.boolean().optional().default(false),
2964
+ minBalance: z33.string().optional(),
2874
2965
  // ETH amount as string, e.g., "0.01"
2875
2966
  // Transaction control options
2876
- timeout: z32.number().optional().default(12e4),
2877
- retryOptions: z32.unknown().optional(),
2878
- signal: z32.unknown().optional(),
2967
+ timeout: z33.number().optional().default(12e4),
2968
+ retryOptions: z33.unknown().optional(),
2969
+ signal: z33.unknown().optional(),
2879
2970
  // Progress callbacks
2880
- onTransactionStateChange: z32.function().optional(),
2881
- onTransactionSubmitted: z32.function().optional(),
2882
- onTransactionConfirmed: z32.function().optional()
2971
+ onTransactionStateChange: z33.function().optional(),
2972
+ onTransactionSubmitted: z33.function().optional(),
2973
+ onTransactionConfirmed: z33.function().optional()
2883
2974
  }).passthrough().refine(
2884
2975
  (data) => {
2885
2976
  const hasPrivateKey = !!data.privateKey;
@@ -2903,12 +2994,12 @@ var AddComposeHashRequestSchema = z32.object({
2903
2994
  path: ["chain"]
2904
2995
  }
2905
2996
  );
2906
- var AddComposeHashSchema = z32.object({
2907
- composeHash: z32.string(),
2908
- appId: z32.string(),
2909
- transactionHash: z32.string(),
2910
- blockNumber: z32.bigint().optional(),
2911
- gasUsed: z32.bigint().optional()
2997
+ var AddComposeHashSchema = z33.object({
2998
+ composeHash: z33.string(),
2999
+ appId: z33.string(),
3000
+ transactionHash: z33.string(),
3001
+ blockNumber: z33.bigint().optional(),
3002
+ gasUsed: z33.bigint().optional()
2912
3003
  }).passthrough();
2913
3004
  function parseComposeHashResult(receipt, composeHash, appAuthAddress, appId) {
2914
3005
  console.log(receipt.logs);
@@ -3100,13 +3191,13 @@ async function safeAddComposeHash(request, parameters) {
3100
3191
  }
3101
3192
 
3102
3193
  // src/actions/cvms/watch_cvm_state.ts
3103
- import { z as z33 } from "zod";
3104
- var WatchCvmStateParamsSchema = z33.object({
3105
- target: z33.string().describe("Target status to wait for (e.g., 'running', 'stopped')"),
3106
- interval: z33.number().min(5).max(30).default(5).describe("Polling interval in seconds"),
3107
- timeout: z33.number().min(10).max(600).default(300).describe("Timeout per attempt in seconds"),
3108
- maxRetries: z33.number().min(0).default(Number.POSITIVE_INFINITY).describe("Maximum number of retry attempts (Infinity for unlimited)"),
3109
- retryDelay: z33.number().min(0).default(5e3).describe("Delay between retries in milliseconds")
3194
+ import { z as z34 } from "zod";
3195
+ var WatchCvmStateParamsSchema = z34.object({
3196
+ target: z34.string().describe("Target status to wait for (e.g., 'running', 'stopped')"),
3197
+ interval: z34.number().min(5).max(30).default(5).describe("Polling interval in seconds"),
3198
+ timeout: z34.number().min(10).max(600).default(300).describe("Timeout per attempt in seconds"),
3199
+ maxRetries: z34.number().min(0).default(Number.POSITIVE_INFINITY).describe("Maximum number of retry attempts (Infinity for unlimited)"),
3200
+ retryDelay: z34.number().min(0).default(5e3).describe("Delay between retries in milliseconds")
3110
3201
  });
3111
3202
  var WatchCvmStateRequestSchema = WatchCvmStateParamsSchema;
3112
3203
  var WatchAbortedError = class extends Error {
@@ -3403,6 +3494,8 @@ export {
3403
3494
  StopCvmRequestSchema,
3404
3495
  TransactionError,
3405
3496
  UnknownError,
3497
+ UpdateCvmEnvsRequestSchema,
3498
+ UpdateCvmEnvsResultSchema,
3406
3499
  UpdateCvmResourcesRequestSchema,
3407
3500
  UpdateCvmVisibilityRequestSchema,
3408
3501
  UpdateOsImageRequestSchema,
@@ -3503,6 +3596,7 @@ export {
3503
3596
  safeShutdownCvm,
3504
3597
  safeStartCvm,
3505
3598
  safeStopCvm,
3599
+ safeUpdateCvmEnvs,
3506
3600
  safeUpdateCvmResources,
3507
3601
  safeUpdateCvmVisibility,
3508
3602
  safeUpdateOsImage,
@@ -3512,6 +3606,7 @@ export {
3512
3606
  startCvm,
3513
3607
  stopCvm,
3514
3608
  switchToNetwork,
3609
+ updateCvmEnvs,
3515
3610
  updateCvmResources,
3516
3611
  updateCvmVisibility,
3517
3612
  updateOsImage,