@terrantula/sdk 0.11.2 → 0.13.0
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/{chunk-M7S27EER.mjs → chunk-E3CKS754.mjs} +181 -129
- package/dist/index.d.mts +1437 -606
- package/dist/index.d.ts +1437 -606
- package/dist/index.js +181 -129
- package/dist/index.mjs +1 -1
- package/dist/local.d.mts +870 -352
- package/dist/local.d.ts +870 -352
- package/dist/local.js +181 -129
- package/dist/local.mjs +1 -1
- package/package.json +3 -3
|
@@ -1359,7 +1359,8 @@ function createCatalogRevisionsClient(proj) {
|
|
|
1359
1359
|
z13.object({
|
|
1360
1360
|
orgId: z13.string().describe("Organization slug"),
|
|
1361
1361
|
projectId: z13.string().describe("Project ID"),
|
|
1362
|
-
limit: z13.coerce.number().int().min(1).max(200).optional().describe("Max revisions to return (1-200)")
|
|
1362
|
+
limit: z13.coerce.number().int().min(1).max(200).optional().describe("Max revisions to return (1-200)"),
|
|
1363
|
+
before: z13.string().datetime().optional().describe("ISO timestamp; only revisions with appliedAt strictly before this are returned (keyset upper-bound)")
|
|
1363
1364
|
}),
|
|
1364
1365
|
(params) => {
|
|
1365
1366
|
const { orgId, projectId, ...query } = params;
|
|
@@ -1431,6 +1432,7 @@ function createAuditEventsClient(proj) {
|
|
|
1431
1432
|
action: z14.string().optional().describe('Comma-separated actions (e.g. "create,delete")'),
|
|
1432
1433
|
resourceKind: z14.string().optional().describe("Filter to one resource kind (Entity | Token | Member | \u2026)"),
|
|
1433
1434
|
since: z14.string().datetime().optional().describe("ISO timestamp; only events strictly after this are returned"),
|
|
1435
|
+
before: z14.string().datetime().optional().describe("ISO timestamp; only events strictly before this are returned (keyset upper-bound)"),
|
|
1434
1436
|
limit: z14.coerce.number().int().min(1).max(500).optional().describe("Max rows (1-500)")
|
|
1435
1437
|
}).describe("List audit events for a project \u2014 auditor-friendly read-only feed"),
|
|
1436
1438
|
(params) => {
|
|
@@ -1491,6 +1493,7 @@ function createDriftEventsClient(projEnv) {
|
|
|
1491
1493
|
kind: z16.string().optional().describe("Filter by entity type name"),
|
|
1492
1494
|
entityName: z16.string().optional().describe("Filter by entity name"),
|
|
1493
1495
|
since: z16.string().optional().describe("ISO timestamp lower bound on detectedAt"),
|
|
1496
|
+
before: z16.string().datetime().optional().describe("ISO timestamp upper bound on detectedAt (keyset cursor)"),
|
|
1494
1497
|
limit: z16.coerce.number().int().min(1).max(500).optional()
|
|
1495
1498
|
}),
|
|
1496
1499
|
(params) => {
|
|
@@ -1565,16 +1568,64 @@ function createDriftEventsClient(projEnv) {
|
|
|
1565
1568
|
};
|
|
1566
1569
|
}
|
|
1567
1570
|
|
|
1568
|
-
// src/
|
|
1571
|
+
// src/conformance-findings.ts
|
|
1569
1572
|
import { z as z17 } from "zod";
|
|
1570
|
-
|
|
1571
|
-
|
|
1572
|
-
function createStatsClient(proj) {
|
|
1573
|
+
import { FindingStatusSchema, FindingSeveritySchema } from "@terrantula/types";
|
|
1574
|
+
function createConformanceFindingsClient(projEnv) {
|
|
1573
1575
|
return {
|
|
1574
|
-
|
|
1576
|
+
list: withSchema(
|
|
1577
|
+
z17.object({
|
|
1578
|
+
orgId: z17.string().describe("Organization slug"),
|
|
1579
|
+
projectId: z17.string().describe("Project name"),
|
|
1580
|
+
envName: z17.string().describe("Environment name"),
|
|
1581
|
+
status: FindingStatusSchema.optional(),
|
|
1582
|
+
severity: FindingSeveritySchema.optional(),
|
|
1583
|
+
kind: z17.string().optional().describe("Filter by entity type name"),
|
|
1584
|
+
findingKind: z17.string().optional().describe("Filter by finding kind (e.g. MISSING_REQUIRED_PROPERTY)"),
|
|
1585
|
+
entityName: z17.string().optional().describe("Filter by entity name"),
|
|
1586
|
+
limit: z17.coerce.number().int().min(1).max(500).optional()
|
|
1587
|
+
}),
|
|
1588
|
+
(params) => {
|
|
1589
|
+
const { orgId, projectId, envName, ...query } = params;
|
|
1590
|
+
return call(
|
|
1591
|
+
projEnv(orgId, projectId, envName)["conformance-findings"].$get({ query: stringifyQuery(query) })
|
|
1592
|
+
);
|
|
1593
|
+
}
|
|
1594
|
+
),
|
|
1595
|
+
count: withSchema(
|
|
1596
|
+
z17.object({
|
|
1597
|
+
orgId: z17.string().describe("Organization slug"),
|
|
1598
|
+
projectId: z17.string().describe("Project name"),
|
|
1599
|
+
envName: z17.string().describe("Environment name")
|
|
1600
|
+
}),
|
|
1601
|
+
(params) => call(projEnv(params.orgId, params.projectId, params.envName)["conformance-findings"].count.$get())
|
|
1602
|
+
),
|
|
1603
|
+
get: withSchema(
|
|
1575
1604
|
z17.object({
|
|
1576
1605
|
orgId: z17.string().describe("Organization slug"),
|
|
1577
1606
|
projectId: z17.string().describe("Project name"),
|
|
1607
|
+
envName: z17.string().describe("Environment name"),
|
|
1608
|
+
id: z17.string().uuid()
|
|
1609
|
+
}),
|
|
1610
|
+
(params) => call(
|
|
1611
|
+
projEnv(params.orgId, params.projectId, params.envName)["conformance-findings"][":id"].$get({
|
|
1612
|
+
param: { id: params.id }
|
|
1613
|
+
})
|
|
1614
|
+
)
|
|
1615
|
+
)
|
|
1616
|
+
};
|
|
1617
|
+
}
|
|
1618
|
+
|
|
1619
|
+
// src/stats.ts
|
|
1620
|
+
import { z as z18 } from "zod";
|
|
1621
|
+
var WindowSchema = z18.enum(["1h", "24h", "7d"]).optional().describe("Time window \u2014 default 24h");
|
|
1622
|
+
var BucketSchema = z18.enum(["1m", "5m", "1h", "1d"]).optional().describe("Bucket granularity \u2014 default 1h");
|
|
1623
|
+
function createStatsClient(proj) {
|
|
1624
|
+
return {
|
|
1625
|
+
entitiesByState: withSchema(
|
|
1626
|
+
z18.object({
|
|
1627
|
+
orgId: z18.string().describe("Organization slug"),
|
|
1628
|
+
projectId: z18.string().describe("Project name"),
|
|
1578
1629
|
window: WindowSchema,
|
|
1579
1630
|
bucket: BucketSchema
|
|
1580
1631
|
}),
|
|
@@ -1584,9 +1635,9 @@ function createStatsClient(proj) {
|
|
|
1584
1635
|
}
|
|
1585
1636
|
),
|
|
1586
1637
|
runsByType: withSchema(
|
|
1587
|
-
|
|
1588
|
-
orgId:
|
|
1589
|
-
projectId:
|
|
1638
|
+
z18.object({
|
|
1639
|
+
orgId: z18.string().describe("Organization slug"),
|
|
1640
|
+
projectId: z18.string().describe("Project name"),
|
|
1590
1641
|
window: WindowSchema
|
|
1591
1642
|
}),
|
|
1592
1643
|
(params) => {
|
|
@@ -1595,9 +1646,9 @@ function createStatsClient(proj) {
|
|
|
1595
1646
|
}
|
|
1596
1647
|
),
|
|
1597
1648
|
failingKinds: withSchema(
|
|
1598
|
-
|
|
1599
|
-
orgId:
|
|
1600
|
-
projectId:
|
|
1649
|
+
z18.object({
|
|
1650
|
+
orgId: z18.string().describe("Organization slug"),
|
|
1651
|
+
projectId: z18.string().describe("Project name"),
|
|
1601
1652
|
window: WindowSchema
|
|
1602
1653
|
}),
|
|
1603
1654
|
(params) => {
|
|
@@ -1606,10 +1657,10 @@ function createStatsClient(proj) {
|
|
|
1606
1657
|
}
|
|
1607
1658
|
),
|
|
1608
1659
|
driftDensity: withSchema(
|
|
1609
|
-
|
|
1610
|
-
orgId:
|
|
1611
|
-
projectId:
|
|
1612
|
-
dim:
|
|
1660
|
+
z18.object({
|
|
1661
|
+
orgId: z18.string().describe("Organization slug"),
|
|
1662
|
+
projectId: z18.string().describe("Project name"),
|
|
1663
|
+
dim: z18.string().optional().describe('Dimensions to bucket \u2014 e.g. "kind,cell"')
|
|
1613
1664
|
}),
|
|
1614
1665
|
(params) => {
|
|
1615
1666
|
const { orgId, projectId, ...query } = params;
|
|
@@ -1620,34 +1671,34 @@ function createStatsClient(proj) {
|
|
|
1620
1671
|
}
|
|
1621
1672
|
|
|
1622
1673
|
// src/graph-views.ts
|
|
1623
|
-
import { z as
|
|
1624
|
-
var
|
|
1625
|
-
var
|
|
1674
|
+
import { z as z19 } from "zod";
|
|
1675
|
+
var PinnedPositionsSchema = z19.record(z19.string(), z19.object({ x: z19.number(), y: z19.number() })).nullable();
|
|
1676
|
+
var ViewSpecSchema = z19.unknown().nullable();
|
|
1626
1677
|
function createGraphViewsClient(proj) {
|
|
1627
1678
|
return {
|
|
1628
1679
|
list: withSchema(
|
|
1629
|
-
|
|
1630
|
-
orgId:
|
|
1631
|
-
projectId:
|
|
1680
|
+
z19.object({
|
|
1681
|
+
orgId: z19.string().describe("Organization slug"),
|
|
1682
|
+
projectId: z19.string().describe("Project ID")
|
|
1632
1683
|
}),
|
|
1633
1684
|
(params) => call(proj(params.orgId, params.projectId)["graph-views"].$get())
|
|
1634
1685
|
),
|
|
1635
1686
|
get: withSchema(
|
|
1636
|
-
|
|
1637
|
-
orgId:
|
|
1638
|
-
projectId:
|
|
1639
|
-
id:
|
|
1687
|
+
z19.object({
|
|
1688
|
+
orgId: z19.string().describe("Organization slug"),
|
|
1689
|
+
projectId: z19.string().describe("Project ID"),
|
|
1690
|
+
id: z19.string().describe("View id")
|
|
1640
1691
|
}),
|
|
1641
1692
|
(params) => call(proj(params.orgId, params.projectId)["graph-views"][":id"].$get({ param: { id: params.id } }))
|
|
1642
1693
|
),
|
|
1643
1694
|
create: withSchema(
|
|
1644
|
-
|
|
1645
|
-
orgId:
|
|
1646
|
-
projectId:
|
|
1647
|
-
name:
|
|
1648
|
-
scope:
|
|
1649
|
-
|
|
1650
|
-
|
|
1695
|
+
z19.object({
|
|
1696
|
+
orgId: z19.string().describe("Organization slug"),
|
|
1697
|
+
projectId: z19.string().describe("Project ID"),
|
|
1698
|
+
name: z19.string().describe("View name"),
|
|
1699
|
+
scope: z19.enum(["user", "project"]).describe("Personal or project scope"),
|
|
1700
|
+
pinnedPositions: PinnedPositionsSchema.optional().describe("Pinned node positions"),
|
|
1701
|
+
viewSpec: ViewSpecSchema.optional().describe("ViewSpec JSON (opaque passthrough)")
|
|
1651
1702
|
}),
|
|
1652
1703
|
(params) => {
|
|
1653
1704
|
const { orgId, projectId, ...body } = params;
|
|
@@ -1655,13 +1706,13 @@ function createGraphViewsClient(proj) {
|
|
|
1655
1706
|
}
|
|
1656
1707
|
),
|
|
1657
1708
|
update: withSchema(
|
|
1658
|
-
|
|
1659
|
-
orgId:
|
|
1660
|
-
projectId:
|
|
1661
|
-
id:
|
|
1662
|
-
name:
|
|
1663
|
-
|
|
1664
|
-
|
|
1709
|
+
z19.object({
|
|
1710
|
+
orgId: z19.string().describe("Organization slug"),
|
|
1711
|
+
projectId: z19.string().describe("Project ID"),
|
|
1712
|
+
id: z19.string().describe("View id"),
|
|
1713
|
+
name: z19.string().optional().describe("New name"),
|
|
1714
|
+
pinnedPositions: PinnedPositionsSchema.optional().describe("Replacement pinned positions"),
|
|
1715
|
+
viewSpec: ViewSpecSchema.optional().describe("Replacement ViewSpec JSON (opaque passthrough)")
|
|
1665
1716
|
}),
|
|
1666
1717
|
(params) => {
|
|
1667
1718
|
const { orgId, projectId, id, ...body } = params;
|
|
@@ -1671,18 +1722,18 @@ function createGraphViewsClient(proj) {
|
|
|
1671
1722
|
}
|
|
1672
1723
|
),
|
|
1673
1724
|
delete: withSchema(
|
|
1674
|
-
|
|
1675
|
-
orgId:
|
|
1676
|
-
projectId:
|
|
1677
|
-
id:
|
|
1725
|
+
z19.object({
|
|
1726
|
+
orgId: z19.string().describe("Organization slug"),
|
|
1727
|
+
projectId: z19.string().describe("Project ID"),
|
|
1728
|
+
id: z19.string().describe("View id")
|
|
1678
1729
|
}),
|
|
1679
1730
|
(params) => call(proj(params.orgId, params.projectId)["graph-views"][":id"].$delete({ param: { id: params.id } }))
|
|
1680
1731
|
),
|
|
1681
1732
|
setDefault: withSchema(
|
|
1682
|
-
|
|
1683
|
-
orgId:
|
|
1684
|
-
projectId:
|
|
1685
|
-
id:
|
|
1733
|
+
z19.object({
|
|
1734
|
+
orgId: z19.string().describe("Organization slug"),
|
|
1735
|
+
projectId: z19.string().describe("Project ID"),
|
|
1736
|
+
id: z19.string().describe("View id")
|
|
1686
1737
|
}),
|
|
1687
1738
|
(params) => call(
|
|
1688
1739
|
proj(params.orgId, params.projectId)["graph-views"][":id"]["default"].$patch({
|
|
@@ -1694,15 +1745,15 @@ function createGraphViewsClient(proj) {
|
|
|
1694
1745
|
}
|
|
1695
1746
|
|
|
1696
1747
|
// src/notifications.ts
|
|
1697
|
-
import { z as
|
|
1748
|
+
import { z as z20 } from "zod";
|
|
1698
1749
|
import { hc as hc2 } from "hono/client";
|
|
1699
1750
|
function createNotificationsClient(baseUrl, hcOpts) {
|
|
1700
1751
|
const c = hc2(`${baseUrl}/notifications`, hcOpts);
|
|
1701
1752
|
return {
|
|
1702
1753
|
list: withSchema(
|
|
1703
|
-
|
|
1704
|
-
limit:
|
|
1705
|
-
unread:
|
|
1754
|
+
z20.object({
|
|
1755
|
+
limit: z20.coerce.number().int().min(1).max(100).optional(),
|
|
1756
|
+
unread: z20.boolean().optional()
|
|
1706
1757
|
}),
|
|
1707
1758
|
(params) => {
|
|
1708
1759
|
const query = {};
|
|
@@ -1712,18 +1763,18 @@ function createNotificationsClient(baseUrl, hcOpts) {
|
|
|
1712
1763
|
}
|
|
1713
1764
|
),
|
|
1714
1765
|
read: withSchema(
|
|
1715
|
-
|
|
1766
|
+
z20.object({ id: z20.string().uuid() }),
|
|
1716
1767
|
(params) => call(c[":id"].read.$post({ param: { id: params.id } }))
|
|
1717
1768
|
),
|
|
1718
1769
|
readAll: withSchema(
|
|
1719
|
-
|
|
1770
|
+
z20.object({}),
|
|
1720
1771
|
() => call(c["read-all"].$post())
|
|
1721
1772
|
)
|
|
1722
1773
|
};
|
|
1723
1774
|
}
|
|
1724
1775
|
|
|
1725
1776
|
// src/audit-export.ts
|
|
1726
|
-
import { z as
|
|
1777
|
+
import { z as z21 } from "zod";
|
|
1727
1778
|
async function rawRequest(baseUrl, hcOpts, path, init = {}) {
|
|
1728
1779
|
const fetchImpl = hcOpts?.fetch ?? fetch;
|
|
1729
1780
|
const rawHeaders = hcOpts?.headers;
|
|
@@ -1752,19 +1803,19 @@ function createAuditExportClient(baseUrl, hcOpts) {
|
|
|
1752
1803
|
return {
|
|
1753
1804
|
/** GET /orgs/:orgId/audit-export/config — returns current config or throws 404. */
|
|
1754
1805
|
getConfig: withSchema(
|
|
1755
|
-
|
|
1806
|
+
z21.object({ orgId: z21.string().describe("Organization ID") }),
|
|
1756
1807
|
async (params) => callRaw(
|
|
1757
1808
|
await rawRequest(baseUrl, hcOpts, `/orgs/${params.orgId}/audit-export/config`)
|
|
1758
1809
|
)
|
|
1759
1810
|
),
|
|
1760
1811
|
/** POST /orgs/:orgId/audit-export/config — upsert the S3 export config. */
|
|
1761
1812
|
setConfig: withSchema(
|
|
1762
|
-
|
|
1763
|
-
orgId:
|
|
1764
|
-
bucket:
|
|
1765
|
-
region:
|
|
1766
|
-
roleArn:
|
|
1767
|
-
enabled:
|
|
1813
|
+
z21.object({
|
|
1814
|
+
orgId: z21.string().describe("Organization ID"),
|
|
1815
|
+
bucket: z21.string().describe("S3 bucket name"),
|
|
1816
|
+
region: z21.string().describe("AWS region"),
|
|
1817
|
+
roleArn: z21.string().describe("IAM role ARN for assume-role"),
|
|
1818
|
+
enabled: z21.boolean().optional().describe("Enable/disable export")
|
|
1768
1819
|
}),
|
|
1769
1820
|
async (params) => {
|
|
1770
1821
|
const { orgId, ...body } = params;
|
|
@@ -1779,11 +1830,11 @@ function createAuditExportClient(baseUrl, hcOpts) {
|
|
|
1779
1830
|
),
|
|
1780
1831
|
/** POST /orgs/:orgId/audit-export/test-connection — dry-run write+delete. */
|
|
1781
1832
|
testConnection: withSchema(
|
|
1782
|
-
|
|
1783
|
-
orgId:
|
|
1784
|
-
bucket:
|
|
1785
|
-
region:
|
|
1786
|
-
roleArn:
|
|
1833
|
+
z21.object({
|
|
1834
|
+
orgId: z21.string().describe("Organization ID"),
|
|
1835
|
+
bucket: z21.string().describe("S3 bucket name"),
|
|
1836
|
+
region: z21.string().describe("AWS region"),
|
|
1837
|
+
roleArn: z21.string().describe("IAM role ARN for assume-role")
|
|
1787
1838
|
}),
|
|
1788
1839
|
async (params) => {
|
|
1789
1840
|
const { orgId, ...body } = params;
|
|
@@ -1798,9 +1849,9 @@ function createAuditExportClient(baseUrl, hcOpts) {
|
|
|
1798
1849
|
),
|
|
1799
1850
|
/** GET /orgs/:orgId/audit-export/runs — recent batch run history. */
|
|
1800
1851
|
listRuns: withSchema(
|
|
1801
|
-
|
|
1802
|
-
orgId:
|
|
1803
|
-
limit:
|
|
1852
|
+
z21.object({
|
|
1853
|
+
orgId: z21.string().describe("Organization ID"),
|
|
1854
|
+
limit: z21.number().optional().describe("Max results (default 20, max 100)")
|
|
1804
1855
|
}),
|
|
1805
1856
|
async (params) => {
|
|
1806
1857
|
const qs = params.limit ? `?limit=${params.limit}` : "";
|
|
@@ -1844,33 +1895,33 @@ function createUserPreferencesClient(baseUrl, hcOpts) {
|
|
|
1844
1895
|
}
|
|
1845
1896
|
|
|
1846
1897
|
// src/import-sources.ts
|
|
1847
|
-
import { z as
|
|
1848
|
-
var SourceKindEnum =
|
|
1849
|
-
var PolicyEnum =
|
|
1898
|
+
import { z as z22 } from "zod";
|
|
1899
|
+
var SourceKindEnum = z22.enum(["tf-state", "atmos-manifests"]);
|
|
1900
|
+
var PolicyEnum = z22.enum(["auto-update", "human-approval"]);
|
|
1850
1901
|
function createImportSourcesClient(proj) {
|
|
1851
1902
|
return {
|
|
1852
1903
|
list: withSchema(
|
|
1853
|
-
|
|
1854
|
-
orgId:
|
|
1855
|
-
projectId:
|
|
1904
|
+
z22.object({
|
|
1905
|
+
orgId: z22.string().describe("Organization slug"),
|
|
1906
|
+
projectId: z22.string().describe("Project ID")
|
|
1856
1907
|
}),
|
|
1857
1908
|
(params) => call(proj(params.orgId, params.projectId)["import-sources"].$get())
|
|
1858
1909
|
),
|
|
1859
1910
|
get: withSchema(
|
|
1860
|
-
|
|
1861
|
-
orgId:
|
|
1862
|
-
projectId:
|
|
1863
|
-
id:
|
|
1911
|
+
z22.object({
|
|
1912
|
+
orgId: z22.string().describe("Organization slug"),
|
|
1913
|
+
projectId: z22.string().describe("Project ID"),
|
|
1914
|
+
id: z22.string().uuid().describe("ImportSource ID")
|
|
1864
1915
|
}),
|
|
1865
1916
|
(params) => call(proj(params.orgId, params.projectId)["import-sources"][":id"].$get({ param: { id: params.id } }))
|
|
1866
1917
|
),
|
|
1867
1918
|
registerOrUpdate: withSchema(
|
|
1868
|
-
|
|
1869
|
-
orgId:
|
|
1870
|
-
projectId:
|
|
1871
|
-
envName:
|
|
1919
|
+
z22.object({
|
|
1920
|
+
orgId: z22.string().describe("Organization slug"),
|
|
1921
|
+
projectId: z22.string().describe("Project ID"),
|
|
1922
|
+
envName: z22.string().describe("Env name the source belongs to"),
|
|
1872
1923
|
sourceKind: SourceKindEnum,
|
|
1873
|
-
sourceUri:
|
|
1924
|
+
sourceUri: z22.string().describe("Stable URI identifying the source"),
|
|
1874
1925
|
reconciliationPolicy: PolicyEnum.optional()
|
|
1875
1926
|
}),
|
|
1876
1927
|
(params) => {
|
|
@@ -1879,13 +1930,13 @@ function createImportSourcesClient(proj) {
|
|
|
1879
1930
|
}
|
|
1880
1931
|
),
|
|
1881
1932
|
rescan: withSchema(
|
|
1882
|
-
|
|
1883
|
-
orgId:
|
|
1884
|
-
projectId:
|
|
1885
|
-
id:
|
|
1886
|
-
envName:
|
|
1887
|
-
items:
|
|
1888
|
-
deletions:
|
|
1933
|
+
z22.object({
|
|
1934
|
+
orgId: z22.string().describe("Organization slug"),
|
|
1935
|
+
projectId: z22.string().describe("Project ID"),
|
|
1936
|
+
id: z22.string().uuid(),
|
|
1937
|
+
envName: z22.string(),
|
|
1938
|
+
items: z22.array(z22.unknown()),
|
|
1939
|
+
deletions: z22.array(z22.object({ kind: z22.string(), name: z22.string() })).optional()
|
|
1889
1940
|
}),
|
|
1890
1941
|
(params) => {
|
|
1891
1942
|
const { orgId, projectId, id, ...body } = params;
|
|
@@ -1901,19 +1952,19 @@ function createImportSourcesClient(proj) {
|
|
|
1901
1952
|
}
|
|
1902
1953
|
),
|
|
1903
1954
|
drift: withSchema(
|
|
1904
|
-
|
|
1905
|
-
orgId:
|
|
1906
|
-
projectId:
|
|
1907
|
-
id:
|
|
1955
|
+
z22.object({
|
|
1956
|
+
orgId: z22.string().describe("Organization slug"),
|
|
1957
|
+
projectId: z22.string().describe("Project ID"),
|
|
1958
|
+
id: z22.string().uuid()
|
|
1908
1959
|
}),
|
|
1909
1960
|
(params) => call(proj(params.orgId, params.projectId)["import-sources"][":id"].drift.$get({ param: { id: params.id } }))
|
|
1910
1961
|
),
|
|
1911
1962
|
approveProposal: withSchema(
|
|
1912
|
-
|
|
1913
|
-
orgId:
|
|
1914
|
-
projectId:
|
|
1915
|
-
id:
|
|
1916
|
-
proposalId:
|
|
1963
|
+
z22.object({
|
|
1964
|
+
orgId: z22.string().describe("Organization slug"),
|
|
1965
|
+
projectId: z22.string().describe("Project ID"),
|
|
1966
|
+
id: z22.string().uuid(),
|
|
1967
|
+
proposalId: z22.string().uuid()
|
|
1917
1968
|
}),
|
|
1918
1969
|
(params) => call(
|
|
1919
1970
|
proj(params.orgId, params.projectId)["import-sources"][":id"]["drift-proposals"][":proposalId"].approve.$post({
|
|
@@ -1922,11 +1973,11 @@ function createImportSourcesClient(proj) {
|
|
|
1922
1973
|
)
|
|
1923
1974
|
),
|
|
1924
1975
|
rejectProposal: withSchema(
|
|
1925
|
-
|
|
1926
|
-
orgId:
|
|
1927
|
-
projectId:
|
|
1928
|
-
id:
|
|
1929
|
-
proposalId:
|
|
1976
|
+
z22.object({
|
|
1977
|
+
orgId: z22.string().describe("Organization slug"),
|
|
1978
|
+
projectId: z22.string().describe("Project ID"),
|
|
1979
|
+
id: z22.string().uuid(),
|
|
1980
|
+
proposalId: z22.string().uuid()
|
|
1930
1981
|
}),
|
|
1931
1982
|
(params) => call(
|
|
1932
1983
|
proj(params.orgId, params.projectId)["import-sources"][":id"]["drift-proposals"][":proposalId"].reject.$post({
|
|
@@ -1938,7 +1989,7 @@ function createImportSourcesClient(proj) {
|
|
|
1938
1989
|
}
|
|
1939
1990
|
|
|
1940
1991
|
// src/admin.ts
|
|
1941
|
-
import { z as
|
|
1992
|
+
import { z as z23 } from "zod";
|
|
1942
1993
|
async function rawRequest2(baseUrl, hcOpts, path, init = {}) {
|
|
1943
1994
|
const fetchImpl = hcOpts?.fetch ?? fetch;
|
|
1944
1995
|
const rawHeaders = hcOpts?.headers;
|
|
@@ -1971,14 +2022,14 @@ function createAdminClient(baseUrl, hcOpts) {
|
|
|
1971
2022
|
* List super-admin audit events with optional filters.
|
|
1972
2023
|
*/
|
|
1973
2024
|
list: withSchema(
|
|
1974
|
-
|
|
1975
|
-
actor:
|
|
1976
|
-
action:
|
|
1977
|
-
resourceKind:
|
|
1978
|
-
since:
|
|
1979
|
-
until:
|
|
1980
|
-
limit:
|
|
1981
|
-
offset:
|
|
2025
|
+
z23.object({
|
|
2026
|
+
actor: z23.string().optional().describe("Filter by actor user ID"),
|
|
2027
|
+
action: z23.string().optional().describe("Filter by action name"),
|
|
2028
|
+
resourceKind: z23.string().optional().describe("Filter by resource kind"),
|
|
2029
|
+
since: z23.string().optional().describe("ISO 8601 datetime lower bound"),
|
|
2030
|
+
until: z23.string().optional().describe("ISO 8601 datetime upper bound"),
|
|
2031
|
+
limit: z23.coerce.number().int().min(1).max(200).optional().describe("Max results (1-200)"),
|
|
2032
|
+
offset: z23.coerce.number().int().min(0).optional().describe("Pagination offset")
|
|
1982
2033
|
}),
|
|
1983
2034
|
async (params) => {
|
|
1984
2035
|
const qs = new URLSearchParams();
|
|
@@ -2002,7 +2053,7 @@ function createAdminClient(baseUrl, hcOpts) {
|
|
|
2002
2053
|
* List all organizations across tenants with member + project counts.
|
|
2003
2054
|
*/
|
|
2004
2055
|
list: withSchema(
|
|
2005
|
-
|
|
2056
|
+
z23.object({}),
|
|
2006
2057
|
async () => callRaw2(
|
|
2007
2058
|
await rawRequest2(baseUrl, hcOpts, "/admin/orgs")
|
|
2008
2059
|
)
|
|
@@ -2012,7 +2063,7 @@ function createAdminClient(baseUrl, hcOpts) {
|
|
|
2012
2063
|
* Detail view: org fields + member list + project list.
|
|
2013
2064
|
*/
|
|
2014
2065
|
get: withSchema(
|
|
2015
|
-
|
|
2066
|
+
z23.object({ id: z23.string().describe("Organization ID") }),
|
|
2016
2067
|
async (params) => callRaw2(
|
|
2017
2068
|
await rawRequest2(baseUrl, hcOpts, `/admin/orgs/${params.id}`)
|
|
2018
2069
|
)
|
|
@@ -2022,7 +2073,7 @@ function createAdminClient(baseUrl, hcOpts) {
|
|
|
2022
2073
|
* Set suspended_at = now(). Idempotent.
|
|
2023
2074
|
*/
|
|
2024
2075
|
suspend: withSchema(
|
|
2025
|
-
|
|
2076
|
+
z23.object({ id: z23.string().describe("Organization ID") }),
|
|
2026
2077
|
async (params) => callRaw2(
|
|
2027
2078
|
await rawRequest2(baseUrl, hcOpts, `/admin/orgs/${params.id}/suspend`, {
|
|
2028
2079
|
method: "POST"
|
|
@@ -2034,7 +2085,7 @@ function createAdminClient(baseUrl, hcOpts) {
|
|
|
2034
2085
|
* Clear suspended_at.
|
|
2035
2086
|
*/
|
|
2036
2087
|
unsuspend: withSchema(
|
|
2037
|
-
|
|
2088
|
+
z23.object({ id: z23.string().describe("Organization ID") }),
|
|
2038
2089
|
async (params) => callRaw2(
|
|
2039
2090
|
await rawRequest2(baseUrl, hcOpts, `/admin/orgs/${params.id}/unsuspend`, {
|
|
2040
2091
|
method: "POST"
|
|
@@ -2050,7 +2101,7 @@ function createAdminClient(baseUrl, hcOpts) {
|
|
|
2050
2101
|
* api tokens, and environments. Idempotent. Super-admin only.
|
|
2051
2102
|
*/
|
|
2052
2103
|
nuke: withSchema(
|
|
2053
|
-
|
|
2104
|
+
z23.object({ projectId: z23.string().describe("Project ID to nuke") }),
|
|
2054
2105
|
async (params) => callRaw2(
|
|
2055
2106
|
await rawRequest2(
|
|
2056
2107
|
baseUrl,
|
|
@@ -2068,7 +2119,7 @@ function createAdminClient(baseUrl, hcOpts) {
|
|
|
2068
2119
|
* all derived from single-table COUNT queries.
|
|
2069
2120
|
*/
|
|
2070
2121
|
overview: withSchema(
|
|
2071
|
-
|
|
2122
|
+
z23.object({}),
|
|
2072
2123
|
async () => callRaw2(
|
|
2073
2124
|
await rawRequest2(baseUrl, hcOpts, "/admin/metrics/overview")
|
|
2074
2125
|
)
|
|
@@ -2083,7 +2134,7 @@ function createAdminClient(baseUrl, hcOpts) {
|
|
|
2083
2134
|
* Requires super-admin.
|
|
2084
2135
|
*/
|
|
2085
2136
|
list: withSchema(
|
|
2086
|
-
|
|
2137
|
+
z23.object({}),
|
|
2087
2138
|
async () => callRaw2(
|
|
2088
2139
|
await rawRequest2(
|
|
2089
2140
|
baseUrl,
|
|
@@ -2098,15 +2149,15 @@ function createAdminClient(baseUrl, hcOpts) {
|
|
|
2098
2149
|
}
|
|
2099
2150
|
|
|
2100
2151
|
// src/resolve-source.ts
|
|
2101
|
-
import { z as
|
|
2152
|
+
import { z as z24 } from "zod";
|
|
2102
2153
|
function createResolveSourceFn(proj) {
|
|
2103
2154
|
return withSchema(
|
|
2104
|
-
|
|
2105
|
-
orgId:
|
|
2106
|
-
projectId:
|
|
2107
|
-
kind:
|
|
2108
|
-
ref:
|
|
2109
|
-
version:
|
|
2155
|
+
z24.object({
|
|
2156
|
+
orgId: z24.string().describe("Organization slug"),
|
|
2157
|
+
projectId: z24.string().describe("Project ID"),
|
|
2158
|
+
kind: z24.literal("registry").describe('Source kind \u2014 only "registry" is supported today'),
|
|
2159
|
+
ref: z24.string().regex(/^[^/]+\/[^/]+\/[^/]+$/, { message: "ref must be <namespace>/<name>/<provider>" }).describe("Terraform Registry module ref (<namespace>/<name>/<provider>)"),
|
|
2160
|
+
version: z24.string().optional().describe("Module version semver \u2014 resolves latest if omitted")
|
|
2110
2161
|
}),
|
|
2111
2162
|
(params) => {
|
|
2112
2163
|
const { orgId, projectId, kind, ref, version } = params;
|
|
@@ -2150,6 +2201,7 @@ var createClient = (baseUrl, options = {}) => {
|
|
|
2150
2201
|
catalogRevisions,
|
|
2151
2202
|
auditEvents: createAuditEventsClient(proj),
|
|
2152
2203
|
driftEvents: createDriftEventsClient(projEnv),
|
|
2204
|
+
conformanceFindings: createConformanceFindingsClient(projEnv),
|
|
2153
2205
|
stats: createStatsClient(proj),
|
|
2154
2206
|
graphViews: createGraphViewsClient(proj),
|
|
2155
2207
|
notifications: createNotificationsClient(baseUrl, hcOpts),
|