@burdenoff/cli-sdk 2026.627.3 → 2026.627.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/modules/cosmicintersection/index.cjs +334 -0
- package/dist/modules/cosmicintersection/index.d.cts +7 -0
- package/dist/modules/cosmicintersection/index.d.ts +7 -0
- package/dist/modules/cosmicintersection/index.js +334 -0
- package/dist/modules/ecoimpacthub/index.cjs +305 -0
- package/dist/modules/ecoimpacthub/index.d.cts +7 -0
- package/dist/modules/ecoimpacthub/index.d.ts +7 -0
- package/dist/modules/ecoimpacthub/index.js +305 -0
- package/dist/modules/govcitizenhub/index.cjs +279 -0
- package/dist/modules/govcitizenhub/index.d.cts +7 -0
- package/dist/modules/govcitizenhub/index.d.ts +7 -0
- package/dist/modules/govcitizenhub/index.js +279 -0
- package/dist/modules/intelwatchtower/index.cjs +311 -0
- package/dist/modules/intelwatchtower/index.d.cts +7 -0
- package/dist/modules/intelwatchtower/index.d.ts +7 -0
- package/dist/modules/intelwatchtower/index.js +311 -0
- package/dist/modules/manufacturedops/index.cjs +292 -0
- package/dist/modules/manufacturedops/index.d.cts +7 -0
- package/dist/modules/manufacturedops/index.d.ts +7 -0
- package/dist/modules/manufacturedops/index.js +292 -0
- package/package.json +1 -1
|
@@ -0,0 +1,334 @@
|
|
|
1
|
+
'use strict';require('graphql-request'),require('cross-fetch'),require('commander');var u=class extends Error{exitCode;hint;constructor(o,t){super(o),this.name="CliUserError",this.exitCode=t?.exitCode??1,this.hint=t?.hint;}},E=class extends u{constructor(o,t){super(o,{exitCode:2,hint:t?.hint??"Run `<product> auth login` to authenticate."}),this.name="CliAuthError";}},I=class extends Error{cause;constructor(o,t){super(o),this.name="CliInternalError",this.cause=t;}};var S=null;function R(r){S=r;}function h(){if(!S)throw new I("vibecontrols module helpers used before setHelpersContext was called");return S}function Pt(){let r=h();if(!r.auth.isAuthenticated())throw new E(`Authentication required. Run \`${r.productName} auth login\`.`)}async function a(r,o){return Pt(),h().gql.workspace.request(r,o)}async function y(r,o){return h().gql.workspaceAuthOnly.request(r,o)}function s(r){let o=r instanceof Error?r.message:String(r);throw new u(o)}function i(r,o,t){h().output.formatAndOutput(r,o,t);}function c(r){h().output.printSuccess(r);}function A(r){return h().output.formatDate(r)}function d(r,o){return h().output.truncate(r,o)}var b=`
|
|
2
|
+
query CosListCollections {
|
|
3
|
+
cosListCollections {
|
|
4
|
+
id name slug description isPublic tags
|
|
5
|
+
datasets { id name }
|
|
6
|
+
createdAt updatedAt workspaceId
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
`,T=`
|
|
10
|
+
mutation CosCreateCollection($input: CosCreateCollectionInput!) {
|
|
11
|
+
cosCreateCollection(input: $input) {
|
|
12
|
+
id name slug description isPublic tags createdAt updatedAt workspaceId
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
`,D=`
|
|
16
|
+
query CosGetDataset($id: ID!) {
|
|
17
|
+
cosDataset(id: $id) {
|
|
18
|
+
id name accessLevel status format description version
|
|
19
|
+
rowCount sizeBytes lineageCaptured ingestedAt tags
|
|
20
|
+
collectionId sourceId coverage
|
|
21
|
+
collection { id name }
|
|
22
|
+
source { id name }
|
|
23
|
+
file { id }
|
|
24
|
+
schemaFields { id name fieldType nullable position unit }
|
|
25
|
+
createdAt updatedAt workspaceId
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
`,v=`
|
|
29
|
+
query CosListDatasets(
|
|
30
|
+
$collectionId: ID
|
|
31
|
+
$sourceId: ID
|
|
32
|
+
$status: CosDatasetStatus
|
|
33
|
+
$pagination: PaginationInput
|
|
34
|
+
) {
|
|
35
|
+
cosListDatasets(
|
|
36
|
+
collectionId: $collectionId
|
|
37
|
+
sourceId: $sourceId
|
|
38
|
+
status: $status
|
|
39
|
+
pagination: $pagination
|
|
40
|
+
) {
|
|
41
|
+
items {
|
|
42
|
+
id name accessLevel status format version rowCount sizeBytes
|
|
43
|
+
collectionId sourceId tags createdAt
|
|
44
|
+
}
|
|
45
|
+
pageInfo { cursor hasMore }
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
`,O=`
|
|
49
|
+
mutation CosCreateDataset($input: CosCreateDatasetInput!) {
|
|
50
|
+
cosCreateDataset(input: $input) {
|
|
51
|
+
id name accessLevel status format description version
|
|
52
|
+
collectionId sourceId tags createdAt workspaceId
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
`,L=`
|
|
56
|
+
mutation CosUpdateDataset($id: ID!, $input: CosUpdateDatasetInput!) {
|
|
57
|
+
cosUpdateDataset(id: $id, input: $input) {
|
|
58
|
+
id name accessLevel status format description
|
|
59
|
+
collectionId tags updatedAt workspaceId
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
`,x=`
|
|
63
|
+
mutation CosPublishDataset($id: ID!) {
|
|
64
|
+
cosPublishDataset(id: $id) {
|
|
65
|
+
id name status ingestedAt updatedAt workspaceId
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
`,N=`
|
|
69
|
+
mutation CosArchiveDataset($id: ID!) {
|
|
70
|
+
cosArchiveDataset(id: $id)
|
|
71
|
+
}
|
|
72
|
+
`,$=`
|
|
73
|
+
query CosListSchemaFields($datasetId: ID!) {
|
|
74
|
+
cosListSchemaFields(datasetId: $datasetId) {
|
|
75
|
+
id datasetId name fieldType nullable position unit provenance
|
|
76
|
+
description createdAt updatedAt workspaceId
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
`,P=`
|
|
80
|
+
mutation CosAddSchemaField($input: CosAddSchemaFieldInput!) {
|
|
81
|
+
cosAddSchemaField(input: $input) {
|
|
82
|
+
id datasetId name fieldType nullable position unit provenance
|
|
83
|
+
description createdAt workspaceId
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
`,U=`
|
|
87
|
+
query CosGetSource($id: ID!) {
|
|
88
|
+
cosSource(id: $id) {
|
|
89
|
+
id name type status endpoint description config tags
|
|
90
|
+
lastSyncedAt
|
|
91
|
+
datasets { id name }
|
|
92
|
+
createdAt updatedAt workspaceId
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
`,_=`
|
|
96
|
+
query CosListSources(
|
|
97
|
+
$type: CosSourceType
|
|
98
|
+
$status: CosSourceStatus
|
|
99
|
+
$pagination: PaginationInput
|
|
100
|
+
) {
|
|
101
|
+
cosListSources(type: $type, status: $status, pagination: $pagination) {
|
|
102
|
+
items {
|
|
103
|
+
id name type status endpoint lastSyncedAt tags createdAt
|
|
104
|
+
}
|
|
105
|
+
pageInfo { cursor hasMore }
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
`,q=`
|
|
109
|
+
mutation CosCreateSource($input: CosCreateSourceInput!) {
|
|
110
|
+
cosCreateSource(input: $input) {
|
|
111
|
+
id name type status endpoint description tags createdAt workspaceId
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
`,G=`
|
|
115
|
+
mutation CosUpdateSource($id: ID!, $input: CosUpdateSourceInput!) {
|
|
116
|
+
cosUpdateSource(id: $id, input: $input) {
|
|
117
|
+
id name type status endpoint description tags updatedAt workspaceId
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
`,F=`
|
|
121
|
+
mutation CosMarkSourceSynced($id: ID!) {
|
|
122
|
+
cosMarkSourceSynced(id: $id) {
|
|
123
|
+
id name status lastSyncedAt updatedAt workspaceId
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
`,M=`
|
|
127
|
+
mutation CosArchiveSource($id: ID!) {
|
|
128
|
+
cosArchiveSource(id: $id)
|
|
129
|
+
}
|
|
130
|
+
`,H=`
|
|
131
|
+
query CosGetNotebook($id: ID!) {
|
|
132
|
+
cosNotebook(id: $id) {
|
|
133
|
+
id title status runtime description datasetIds environment
|
|
134
|
+
isShared shareSlug tags
|
|
135
|
+
file { id }
|
|
136
|
+
analyses { id title status }
|
|
137
|
+
releases { id title version }
|
|
138
|
+
createdAt updatedAt workspaceId
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
`,W=`
|
|
142
|
+
query CosListNotebooks($status: CosNotebookStatus, $pagination: PaginationInput) {
|
|
143
|
+
cosListNotebooks(status: $status, pagination: $pagination) {
|
|
144
|
+
items {
|
|
145
|
+
id title status runtime isShared tags createdAt
|
|
146
|
+
}
|
|
147
|
+
pageInfo { cursor hasMore }
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
`,j=`
|
|
151
|
+
mutation CosCreateNotebook($input: CosCreateNotebookInput!) {
|
|
152
|
+
cosCreateNotebook(input: $input) {
|
|
153
|
+
id title status runtime description datasetIds tags createdAt workspaceId
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
`,V=`
|
|
157
|
+
mutation CosUpdateNotebook($id: ID!, $input: CosUpdateNotebookInput!) {
|
|
158
|
+
cosUpdateNotebook(id: $id, input: $input) {
|
|
159
|
+
id title status runtime description datasetIds isShared shareSlug
|
|
160
|
+
tags updatedAt workspaceId
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
`,B=`
|
|
164
|
+
mutation CosArchiveNotebook($id: ID!) {
|
|
165
|
+
cosArchiveNotebook(id: $id)
|
|
166
|
+
}
|
|
167
|
+
`,J=`
|
|
168
|
+
query CosGetPipeline($id: ID!) {
|
|
169
|
+
cosPipeline(id: $id) {
|
|
170
|
+
id name status trigger schedule description definition version
|
|
171
|
+
lastRunAt tags
|
|
172
|
+
runs { id runNumber status }
|
|
173
|
+
createdAt updatedAt workspaceId
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
`,K=`
|
|
177
|
+
query CosListPipelines($status: CosPipelineStatus, $pagination: PaginationInput) {
|
|
178
|
+
cosListPipelines(status: $status, pagination: $pagination) {
|
|
179
|
+
items {
|
|
180
|
+
id name status trigger schedule version lastRunAt tags createdAt
|
|
181
|
+
}
|
|
182
|
+
pageInfo { cursor hasMore }
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
`,z=`
|
|
186
|
+
mutation CosCreatePipeline($input: CosCreatePipelineInput!) {
|
|
187
|
+
cosCreatePipeline(input: $input) {
|
|
188
|
+
id name status trigger schedule description tags createdAt workspaceId
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
`,Y=`
|
|
192
|
+
mutation CosUpdatePipeline($id: ID!, $input: CosUpdatePipelineInput!) {
|
|
193
|
+
cosUpdatePipeline(id: $id, input: $input) {
|
|
194
|
+
id name status trigger schedule description tags updatedAt workspaceId
|
|
195
|
+
}
|
|
196
|
+
}
|
|
197
|
+
`,Q=`
|
|
198
|
+
mutation CosArchivePipeline($id: ID!) {
|
|
199
|
+
cosArchivePipeline(id: $id)
|
|
200
|
+
}
|
|
201
|
+
`,X=`
|
|
202
|
+
query CosGetRun($id: ID!) {
|
|
203
|
+
cosRun(id: $id) {
|
|
204
|
+
id pipelineId runNumber status datasetId triggeredBy
|
|
205
|
+
params metrics durationMs errorMessage startedAt finishedAt
|
|
206
|
+
pipeline { id name }
|
|
207
|
+
steps { id name kind status position }
|
|
208
|
+
createdAt updatedAt workspaceId
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
`,Z=`
|
|
212
|
+
query CosListRuns(
|
|
213
|
+
$pipelineId: ID
|
|
214
|
+
$status: CosRunStatus
|
|
215
|
+
$pagination: PaginationInput
|
|
216
|
+
) {
|
|
217
|
+
cosListRuns(pipelineId: $pipelineId, status: $status, pagination: $pagination) {
|
|
218
|
+
items {
|
|
219
|
+
id pipelineId runNumber status datasetId durationMs
|
|
220
|
+
startedAt finishedAt createdAt
|
|
221
|
+
}
|
|
222
|
+
pageInfo { cursor hasMore }
|
|
223
|
+
}
|
|
224
|
+
}
|
|
225
|
+
`,tt=`
|
|
226
|
+
mutation CosStartRun($input: CosStartRunInput!) {
|
|
227
|
+
cosStartRun(input: $input) {
|
|
228
|
+
id pipelineId runNumber status datasetId params startedAt createdAt workspaceId
|
|
229
|
+
}
|
|
230
|
+
}
|
|
231
|
+
`,et=`
|
|
232
|
+
mutation CosTransitionRun($id: ID!, $status: CosRunStatus!) {
|
|
233
|
+
cosTransitionRun(id: $id, status: $status) {
|
|
234
|
+
id pipelineId runNumber status durationMs startedAt finishedAt
|
|
235
|
+
updatedAt workspaceId
|
|
236
|
+
}
|
|
237
|
+
}
|
|
238
|
+
`,nt=`
|
|
239
|
+
query CosListRunSteps($runId: ID!) {
|
|
240
|
+
cosListRunSteps(runId: $runId) {
|
|
241
|
+
id runId name kind status position durationMs logsRef
|
|
242
|
+
inputs outputs errorMessage startedAt finishedAt
|
|
243
|
+
createdAt updatedAt workspaceId
|
|
244
|
+
}
|
|
245
|
+
}
|
|
246
|
+
`,ot=`
|
|
247
|
+
mutation CosAddRunStep($input: CosAddRunStepInput!) {
|
|
248
|
+
cosAddRunStep(input: $input) {
|
|
249
|
+
id runId name kind status position inputs createdAt workspaceId
|
|
250
|
+
}
|
|
251
|
+
}
|
|
252
|
+
`,st=`
|
|
253
|
+
query CosListAnalyses(
|
|
254
|
+
$datasetId: ID
|
|
255
|
+
$notebookId: ID
|
|
256
|
+
$status: CosAnalysisStatus
|
|
257
|
+
) {
|
|
258
|
+
cosListAnalyses(datasetId: $datasetId, notebookId: $notebookId, status: $status) {
|
|
259
|
+
id title status method aiAssisted datasetId notebookId
|
|
260
|
+
results errorMessage startedAt finishedAt createdAt updatedAt workspaceId
|
|
261
|
+
}
|
|
262
|
+
}
|
|
263
|
+
`,it=`
|
|
264
|
+
mutation CosRunAnalysis($input: CosRunAnalysisInput!) {
|
|
265
|
+
cosRunAnalysis(input: $input) {
|
|
266
|
+
id title status method aiAssisted datasetId notebookId
|
|
267
|
+
startedAt createdAt workspaceId
|
|
268
|
+
}
|
|
269
|
+
}
|
|
270
|
+
`,rt=`
|
|
271
|
+
mutation CosCompleteAnalysis(
|
|
272
|
+
$id: ID!
|
|
273
|
+
$status: CosAnalysisStatus!
|
|
274
|
+
$results: JSON
|
|
275
|
+
$outputFileId: ID
|
|
276
|
+
) {
|
|
277
|
+
cosCompleteAnalysis(
|
|
278
|
+
id: $id
|
|
279
|
+
status: $status
|
|
280
|
+
results: $results
|
|
281
|
+
outputFileId: $outputFileId
|
|
282
|
+
) {
|
|
283
|
+
id title status results finishedAt updatedAt workspaceId
|
|
284
|
+
outputFile { id }
|
|
285
|
+
}
|
|
286
|
+
}
|
|
287
|
+
`,at=`
|
|
288
|
+
query CosListReleases($status: CosReleaseStatus, $pagination: PaginationInput) {
|
|
289
|
+
cosListReleases(status: $status, pagination: $pagination) {
|
|
290
|
+
items {
|
|
291
|
+
id title version status doi authors datasetIds notebookId
|
|
292
|
+
publishedAt createdAt
|
|
293
|
+
}
|
|
294
|
+
pageInfo { cursor hasMore }
|
|
295
|
+
}
|
|
296
|
+
}
|
|
297
|
+
`,ct=`
|
|
298
|
+
mutation CosCreateRelease($input: CosCreateReleaseInput!) {
|
|
299
|
+
cosCreateRelease(input: $input) {
|
|
300
|
+
id title version status abstract license authors datasetIds notebookId
|
|
301
|
+
createdAt workspaceId
|
|
302
|
+
}
|
|
303
|
+
}
|
|
304
|
+
`,ut=`
|
|
305
|
+
mutation CosPublishRelease($id: ID!, $doi: String) {
|
|
306
|
+
cosPublishRelease(id: $id, doi: $doi) {
|
|
307
|
+
id title version status doi publishedAt updatedAt workspaceId
|
|
308
|
+
}
|
|
309
|
+
}
|
|
310
|
+
`,pt=`
|
|
311
|
+
query CosListAccessGrants($datasetId: ID, $status: CosGrantStatus) {
|
|
312
|
+
cosListAccessGrants(datasetId: $datasetId, status: $status) {
|
|
313
|
+
id datasetId granteeId status scopes reason
|
|
314
|
+
grantedAt expiresAt revokedAt createdAt updatedAt workspaceId
|
|
315
|
+
}
|
|
316
|
+
}
|
|
317
|
+
`,dt=`
|
|
318
|
+
mutation CosGrantAccess($input: CosGrantAccessInput!) {
|
|
319
|
+
cosGrantAccess(input: $input) {
|
|
320
|
+
id datasetId granteeId status scopes reason
|
|
321
|
+
grantedAt expiresAt createdAt workspaceId
|
|
322
|
+
}
|
|
323
|
+
}
|
|
324
|
+
`,lt=`
|
|
325
|
+
mutation CosRevokeAccess($id: ID!) {
|
|
326
|
+
cosRevokeAccess(id: $id) {
|
|
327
|
+
id datasetId granteeId status revokedAt updatedAt workspaceId
|
|
328
|
+
}
|
|
329
|
+
}
|
|
330
|
+
`,mt=`
|
|
331
|
+
query CosHealth {
|
|
332
|
+
cosHealth
|
|
333
|
+
}
|
|
334
|
+
`;function f(r,o){try{return JSON.parse(o)}catch{throw new u(`--${r} must be valid JSON`)}}function m(r){let o=Number.parseInt(r,10);if(Number.isNaN(o))throw new u(`Expected an integer but got "${r}"`);return o}function l(r){return r.split(",").map(o=>o.trim()).filter(o=>o.length>0)}function ft(r){let o=r.command("collections").description("Cosmicintersection dataset collections");o.command("list").description("List collections").option("-f, --format <format>","Output format").action(async t=>{try{let e=await a(b);i(t,e.cosListCollections,{headers:["ID","Name","Slug","Public","Tags"],rows:e.cosListCollections.map(n=>[d(n.id,12),n.name,n.slug??"-",n.isPublic?"yes":"no",(n.tags??[]).join(", ")])});}catch(e){s(e);}}),o.command("create").description("Create a collection").requiredOption("--name <name>","Collection name").option("--slug <slug>","URL slug").option("--description <s>","Description").option("--public","Mark the collection public").option("--tags <csv>","Comma-separated tags").option("-f, --format <format>","Output format").action(async t=>{try{let e={name:t.name};t.slug&&(e.slug=t.slug),t.description&&(e.description=t.description),t.public&&(e.isPublic=!0),t.tags&&(e.tags=l(t.tags));let n=await a(T,{input:e});c(`Collection created: ${n.cosCreateCollection.name}`),i(t,n.cosCreateCollection);}catch(e){s(e);}});}function gt(r){let o=r.command("datasets").description("Cosmicintersection datasets");o.command("list").description("List datasets").option("--collection <id>","Filter by collection ID").option("--source <id>","Filter by source ID").option("--status <s>","DRAFT|INGESTING|AVAILABLE|DEPRECATED|ARCHIVED").option("--limit <n>","Page size",m,50).option("--offset <n>","Offset",m,0).option("-f, --format <format>","Output format").action(async t=>{try{let e=await a(v,{collectionId:t.collection,sourceId:t.source,status:t.status?t.status.toUpperCase():void 0,pagination:{limit:t.limit,offset:t.offset}});i(t,e.cosListDatasets.items,{headers:["ID","Name","Access","Status","Format","Rows"],rows:e.cosListDatasets.items.map(n=>[d(n.id,12),n.name,n.accessLevel??"-",n.status??"-",n.format??"-",n.rowCount??"-"])});}catch(e){s(e);}}),o.command("get").description("Get a dataset by id").argument("<id>","Dataset ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await a(D,{id:t});if(!n.cosDataset)throw new u(`Dataset ${t} not found`);i(e,n.cosDataset);}catch(n){s(n);}}),o.command("create").description("Create a dataset").requiredOption("--name <name>","Dataset name").option("--access-level <a>","EMBARGOED|PUBLIC|RESTRICTED|WORKSPACE").option("--collection <id>","Collection ID").option("--source <id>","Source ID").option("--file <id>","File ID (wspace-files-svc)").option("--format <fmt>","Data format").option("--description <s>","Description").option("--status <s>","DRAFT|INGESTING|AVAILABLE|DEPRECATED|ARCHIVED").option("--coverage <json>","Coverage JSON").option("--tags <csv>","Comma-separated tags").option("-f, --format-out <format>","Output format").action(async t=>{try{let e={name:t.name};t.accessLevel&&(e.accessLevel=t.accessLevel.toUpperCase()),t.collection&&(e.collectionId=t.collection),t.source&&(e.sourceId=t.source),t.file&&(e.fileId=t.file),t.format&&(e.format=t.format),t.description&&(e.description=t.description),t.status&&(e.status=t.status.toUpperCase()),t.coverage&&(e.coverage=f("coverage",t.coverage)),t.tags&&(e.tags=l(t.tags));let n=await a(O,{input:e});c(`Dataset created: ${n.cosCreateDataset.name}`),i({format:t.formatOut},n.cosCreateDataset);}catch(e){s(e);}}),o.command("update").description("Update a dataset").argument("<id>","Dataset ID").option("--name <name>","Dataset name").option("--access-level <a>","EMBARGOED|PUBLIC|RESTRICTED|WORKSPACE").option("--collection <id>","Collection ID").option("--format <fmt>","Data format").option("--description <s>","Description").option("--coverage <json>","Coverage JSON").option("--tags <csv>","Comma-separated tags").option("-f, --format-out <format>","Output format").action(async(t,e)=>{try{let n={};if(e.name&&(n.name=e.name),e.accessLevel&&(n.accessLevel=e.accessLevel.toUpperCase()),e.collection&&(n.collectionId=e.collection),e.format&&(n.format=e.format),e.description!==void 0&&(n.description=e.description),e.coverage&&(n.coverage=f("coverage",e.coverage)),e.tags&&(n.tags=l(e.tags)),!Object.keys(n).length)throw new u("No updates specified");let C=await a(L,{id:t,input:n});c("Dataset updated"),i({format:e.formatOut},C.cosUpdateDataset);}catch(n){s(n);}}),o.command("publish").description("Mark a dataset AVAILABLE once ingestion completes").argument("<id>","Dataset ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await a(x,{id:t});c(`Dataset published: ${n.cosPublishDataset.status}`),i(e,n.cosPublishDataset);}catch(n){s(n);}}),o.command("archive").description("Archive a dataset").argument("<id>","Dataset ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await a(N,{id:t});c(`Dataset archived: ${String(n.cosArchiveDataset)}`),i(e,{archived:n.cosArchiveDataset});}catch(n){s(n);}}),o.command("schema-fields").description("List schema fields for a dataset").requiredOption("--dataset <id>","Dataset ID").option("-f, --format <format>","Output format").action(async t=>{try{let e=await a($,{datasetId:t.dataset});i(t,e.cosListSchemaFields,{headers:["ID","Name","Type","Nullable","Pos","Unit"],rows:e.cosListSchemaFields.map(n=>[d(n.id,12),n.name,n.fieldType,n.nullable?"yes":"no",n.position!=null?String(n.position):"-",n.unit??"-"])});}catch(e){s(e);}}),o.command("add-field").description("Add a schema field to a dataset").requiredOption("--dataset <id>","Dataset ID").requiredOption("--name <name>","Field name").option("--field-type <t>","STRING|INTEGER|FLOAT|BOOLEAN|TIMESTAMP|...").option("--description <s>","Description").option("--unit <u>","Unit").option("--provenance <p>","Provenance").option("--position <n>","Position",m).option("--not-nullable","Mark the field as not nullable").option("-f, --format <format>","Output format").action(async t=>{try{let e={datasetId:t.dataset,name:t.name};t.fieldType&&(e.fieldType=t.fieldType.toUpperCase()),t.description&&(e.description=t.description),t.unit&&(e.unit=t.unit),t.provenance&&(e.provenance=t.provenance),t.position!==void 0&&(e.position=t.position),t.notNullable&&(e.nullable=!1);let n=await a(P,{input:e});c(`Schema field added: ${n.cosAddSchemaField.name}`),i(t,n.cosAddSchemaField);}catch(e){s(e);}});}function Ct(r){let o=r.command("sources").description("Cosmicintersection data sources");o.command("list").description("List data sources").option("--type <t>","ARCHIVE|API|FILE_DROP|GROUND_SENSOR|SATELLITE|SIMULATION|STREAM|TELESCOPE").option("--status <s>","CONFIGURING|CONNECTED|SYNCING|DEGRADED|DISABLED|ERROR").option("--limit <n>","Page size",m,50).option("--offset <n>","Offset",m,0).option("-f, --format <format>","Output format").action(async t=>{try{let e=await a(_,{type:t.type?t.type.toUpperCase():void 0,status:t.status?t.status.toUpperCase():void 0,pagination:{limit:t.limit,offset:t.offset}});i(t,e.cosListSources.items,{headers:["ID","Name","Type","Status","Last Synced"],rows:e.cosListSources.items.map(n=>[d(n.id,12),n.name,n.type??"-",n.status??"-",A(n.lastSyncedAt)])});}catch(e){s(e);}}),o.command("get").description("Get a data source by id").argument("<id>","Source ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await a(U,{id:t});if(!n.cosSource)throw new u(`Source ${t} not found`);i(e,n.cosSource);}catch(n){s(n);}}),o.command("create").description("Create a data source").requiredOption("--name <name>","Source name").option("--type <t>","ARCHIVE|API|FILE_DROP|GROUND_SENSOR|SATELLITE|SIMULATION|STREAM|TELESCOPE").option("--status <s>","Source status").option("--endpoint <url>","Endpoint URL").option("--description <s>","Description").option("--credential-ref <ref>","Credential reference").option("--config <json>","Config JSON").option("--tags <csv>","Comma-separated tags").option("-f, --format <format>","Output format").action(async t=>{try{let e={name:t.name};t.type&&(e.type=t.type.toUpperCase()),t.status&&(e.status=t.status.toUpperCase()),t.endpoint&&(e.endpoint=t.endpoint),t.description&&(e.description=t.description),t.credentialRef&&(e.credentialRef=t.credentialRef),t.config&&(e.config=f("config",t.config)),t.tags&&(e.tags=l(t.tags));let n=await a(q,{input:e});c(`Source created: ${n.cosCreateSource.name}`),i(t,n.cosCreateSource);}catch(e){s(e);}}),o.command("update").description("Update a data source").argument("<id>","Source ID").option("--name <name>","Source name").option("--type <t>","Source type").option("--status <s>","Source status").option("--endpoint <url>","Endpoint URL").option("--description <s>","Description").option("--credential-ref <ref>","Credential reference").option("--config <json>","Config JSON").option("--tags <csv>","Comma-separated tags").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n={};if(e.name&&(n.name=e.name),e.type&&(n.type=e.type.toUpperCase()),e.status&&(n.status=e.status.toUpperCase()),e.endpoint!==void 0&&(n.endpoint=e.endpoint),e.description!==void 0&&(n.description=e.description),e.credentialRef&&(n.credentialRef=e.credentialRef),e.config&&(n.config=f("config",e.config)),e.tags&&(n.tags=l(e.tags)),!Object.keys(n).length)throw new u("No updates specified");let C=await a(G,{id:t,input:n});c("Source updated"),i(e,C.cosUpdateSource);}catch(n){s(n);}}),o.command("mark-synced").description("Record a successful sync (sets status CONNECTED + lastSyncedAt)").argument("<id>","Source ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await a(F,{id:t});c(`Source synced: ${n.cosMarkSourceSynced.status}`),i(e,n.cosMarkSourceSynced);}catch(n){s(n);}}),o.command("archive").description("Archive a data source").argument("<id>","Source ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await a(M,{id:t});c(`Source archived: ${String(n.cosArchiveSource)}`),i(e,{archived:n.cosArchiveSource});}catch(n){s(n);}});}function It(r){let o=r.command("notebooks").description("Cosmicintersection computational notebooks");o.command("list").description("List notebooks").option("--status <s>","DRAFT|RUNNING|PUBLISHED|ARCHIVED").option("--limit <n>","Page size",m,50).option("--offset <n>","Offset",m,0).option("-f, --format <format>","Output format").action(async t=>{try{let e=await a(W,{status:t.status?t.status.toUpperCase():void 0,pagination:{limit:t.limit,offset:t.offset}});i(t,e.cosListNotebooks.items,{headers:["ID","Title","Status","Runtime","Shared"],rows:e.cosListNotebooks.items.map(n=>[d(n.id,12),n.title,n.status??"-",n.runtime??"-",n.isShared?"yes":"no"])});}catch(e){s(e);}}),o.command("get").description("Get a notebook by id").argument("<id>","Notebook ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await a(H,{id:t});if(!n.cosNotebook)throw new u(`Notebook ${t} not found`);i(e,n.cosNotebook);}catch(n){s(n);}}),o.command("create").description("Create a notebook").requiredOption("--title <t>","Notebook title").option("--description <s>","Description").option("--runtime <r>","Runtime").option("--file <id>","File ID (notebook document)").option("--dataset-ids <csv>","Comma-separated dataset IDs").option("--environment <json>","Environment JSON").option("--tags <csv>","Comma-separated tags").option("-f, --format <format>","Output format").action(async t=>{try{let e={title:t.title};t.description&&(e.description=t.description),t.runtime&&(e.runtime=t.runtime),t.file&&(e.fileId=t.file),t.datasetIds&&(e.datasetIds=l(t.datasetIds)),t.environment&&(e.environment=f("environment",t.environment)),t.tags&&(e.tags=l(t.tags));let n=await a(j,{input:e});c(`Notebook created: ${n.cosCreateNotebook.title}`),i(t,n.cosCreateNotebook);}catch(e){s(e);}}),o.command("update").description("Update a notebook").argument("<id>","Notebook ID").option("--title <t>","Notebook title").option("--description <s>","Description").option("--runtime <r>","Runtime").option("--status <s>","DRAFT|RUNNING|PUBLISHED|ARCHIVED").option("--dataset-ids <csv>","Comma-separated dataset IDs").option("--environment <json>","Environment JSON").option("--shared <bool>","true|false",t=>t==="true").option("--share-slug <slug>","Share slug").option("--tags <csv>","Comma-separated tags").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n={};if(e.title&&(n.title=e.title),e.description!==void 0&&(n.description=e.description),e.runtime&&(n.runtime=e.runtime),e.status&&(n.status=e.status.toUpperCase()),e.datasetIds&&(n.datasetIds=l(e.datasetIds)),e.environment&&(n.environment=f("environment",e.environment)),e.shared!==void 0&&(n.isShared=e.shared),e.shareSlug&&(n.shareSlug=e.shareSlug),e.tags&&(n.tags=l(e.tags)),!Object.keys(n).length)throw new u("No updates specified");let C=await a(V,{id:t,input:n});c("Notebook updated"),i(e,C.cosUpdateNotebook);}catch(n){s(n);}}),o.command("archive").description("Archive a notebook").argument("<id>","Notebook ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await a(B,{id:t});c(`Notebook archived: ${String(n.cosArchiveNotebook)}`),i(e,{archived:n.cosArchiveNotebook});}catch(n){s(n);}});}function ht(r){let o=r.command("pipelines").description("Cosmicintersection data pipelines");o.command("list").description("List pipelines").option("--status <s>","DRAFT|ACTIVE|PAUSED|ARCHIVED").option("--limit <n>","Page size",m,50).option("--offset <n>","Offset",m,0).option("-f, --format <format>","Output format").action(async t=>{try{let e=await a(K,{status:t.status?t.status.toUpperCase():void 0,pagination:{limit:t.limit,offset:t.offset}});i(t,e.cosListPipelines.items,{headers:["ID","Name","Status","Trigger","Schedule","Version"],rows:e.cosListPipelines.items.map(n=>[d(n.id,12),n.name,n.status??"-",n.trigger??"-",n.schedule??"-",n.version!=null?String(n.version):"-"])});}catch(e){s(e);}}),o.command("get").description("Get a pipeline by id").argument("<id>","Pipeline ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await a(J,{id:t});if(!n.cosPipeline)throw new u(`Pipeline ${t} not found`);i(e,n.cosPipeline);}catch(n){s(n);}}),o.command("create").description("Create a pipeline").requiredOption("--name <name>","Pipeline name").option("--description <s>","Description").option("--trigger <t>","MANUAL|SCHEDULED|ON_INGEST|WEBHOOK").option("--schedule <cron>","Schedule (cron)").option("--definition <json>","Definition JSON").option("--tags <csv>","Comma-separated tags").option("-f, --format <format>","Output format").action(async t=>{try{let e={name:t.name};t.description&&(e.description=t.description),t.trigger&&(e.trigger=t.trigger.toUpperCase()),t.schedule&&(e.schedule=t.schedule),t.definition&&(e.definition=f("definition",t.definition)),t.tags&&(e.tags=l(t.tags));let n=await a(z,{input:e});c(`Pipeline created: ${n.cosCreatePipeline.name}`),i(t,n.cosCreatePipeline);}catch(e){s(e);}}),o.command("update").description("Update a pipeline").argument("<id>","Pipeline ID").option("--name <name>","Pipeline name").option("--description <s>","Description").option("--status <s>","DRAFT|ACTIVE|PAUSED|ARCHIVED").option("--trigger <t>","MANUAL|SCHEDULED|ON_INGEST|WEBHOOK").option("--schedule <cron>","Schedule (cron)").option("--definition <json>","Definition JSON").option("--tags <csv>","Comma-separated tags").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n={};if(e.name&&(n.name=e.name),e.description!==void 0&&(n.description=e.description),e.status&&(n.status=e.status.toUpperCase()),e.trigger&&(n.trigger=e.trigger.toUpperCase()),e.schedule&&(n.schedule=e.schedule),e.definition&&(n.definition=f("definition",e.definition)),e.tags&&(n.tags=l(e.tags)),!Object.keys(n).length)throw new u("No updates specified");let C=await a(Y,{id:t,input:n});c("Pipeline updated"),i(e,C.cosUpdatePipeline);}catch(n){s(n);}}),o.command("archive").description("Archive a pipeline").argument("<id>","Pipeline ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await a(Q,{id:t});c(`Pipeline archived: ${String(n.cosArchivePipeline)}`),i(e,{archived:n.cosArchivePipeline});}catch(n){s(n);}});}function At(r){let o=r.command("runs").description("Cosmicintersection pipeline runs & steps");o.command("list").description("List pipeline runs").option("--pipeline <id>","Filter by pipeline ID").option("--status <s>","QUEUED|RUNNING|SUCCEEDED|FAILED|CANCELLED").option("--limit <n>","Page size",m,50).option("--offset <n>","Offset",m,0).option("-f, --format <format>","Output format").action(async t=>{try{let e=await a(Z,{pipelineId:t.pipeline,status:t.status?t.status.toUpperCase():void 0,pagination:{limit:t.limit,offset:t.offset}});i(t,e.cosListRuns.items,{headers:["ID","Pipeline","Run #","Status","Started"],rows:e.cosListRuns.items.map(n=>[d(n.id,12),d(n.pipelineId,12),String(n.runNumber),n.status??"-",A(n.startedAt)])});}catch(e){s(e);}}),o.command("get").description("Get a run by id").argument("<id>","Run ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await a(X,{id:t});if(!n.cosRun)throw new u(`Run ${t} not found`);i(e,n.cosRun);}catch(n){s(n);}}),o.command("start").description("Queue a new run of a pipeline").requiredOption("--pipeline <id>","Pipeline ID").option("--dataset <id>","Dataset ID").option("--params <json>","Params JSON").option("-f, --format <format>","Output format").action(async t=>{try{let e={pipelineId:t.pipeline};t.dataset&&(e.datasetId=t.dataset),t.params&&(e.params=f("params",t.params));let n=await a(tt,{input:e});c(`Run started: #${n.cosStartRun.runNumber}`),i(t,n.cosStartRun);}catch(e){s(e);}}),o.command("transition").description("Advance a run through its lifecycle").argument("<id>","Run ID").requiredOption("--status <s>","QUEUED|RUNNING|SUCCEEDED|FAILED|CANCELLED").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await a(et,{id:t,status:e.status.toUpperCase()});c(`Run transitioned to ${n.cosTransitionRun.status}`),i(e,n.cosTransitionRun);}catch(n){s(n);}}),o.command("steps").description("List steps for a run").requiredOption("--run <id>","Run ID").option("-f, --format <format>","Output format").action(async t=>{try{let e=await a(nt,{runId:t.run});i(t,e.cosListRunSteps,{headers:["ID","Name","Kind","Status","Pos"],rows:e.cosListRunSteps.map(n=>[d(n.id,12),n.name,n.kind,n.status??"-",n.position!=null?String(n.position):"-"])});}catch(e){s(e);}}),o.command("add-step").description("Append a step to a run").requiredOption("--run <id>","Run ID").requiredOption("--name <name>","Step name").option("--kind <k>","INGEST|TRANSFORM|ANALYZE|CALIBRATE|EXPORT|NOTIFY").option("--position <n>","Position",m).option("--inputs <json>","Inputs JSON").option("-f, --format <format>","Output format").action(async t=>{try{let e={runId:t.run,name:t.name};t.kind&&(e.kind=t.kind.toUpperCase()),t.position!==void 0&&(e.position=t.position),t.inputs&&(e.inputs=f("inputs",t.inputs));let n=await a(ot,{input:e});c(`Step added: ${n.cosAddRunStep.name}`),i(t,n.cosAddRunStep);}catch(e){s(e);}});}function Et(r){let o=r.command("analyses").description("Cosmicintersection analyses");o.command("list").description("List analyses").option("--dataset <id>","Filter by dataset ID").option("--notebook <id>","Filter by notebook ID").option("--status <s>","PENDING|RUNNING|COMPLETED|FAILED").option("-f, --format <format>","Output format").action(async t=>{try{let e=await a(st,{datasetId:t.dataset,notebookId:t.notebook,status:t.status?t.status.toUpperCase():void 0});i(t,e.cosListAnalyses,{headers:["ID","Title","Status","Method","AI"],rows:e.cosListAnalyses.map(n=>[d(n.id,12),n.title,n.status??"-",n.method??"-",n.aiAssisted?"yes":"no"])});}catch(e){s(e);}}),o.command("run").description("Start an analysis run").requiredOption("--title <t>","Analysis title").option("--dataset <id>","Dataset ID").option("--notebook <id>","Notebook ID").option("--method <m>","Analysis method").option("--ai-assisted","Mark the analysis as AI-assisted").option("-f, --format <format>","Output format").action(async t=>{try{let e={title:t.title};t.dataset&&(e.datasetId=t.dataset),t.notebook&&(e.notebookId=t.notebook),t.method&&(e.method=t.method),t.aiAssisted&&(e.aiAssisted=!0);let n=await a(it,{input:e});c(`Analysis started: ${n.cosRunAnalysis.title}`),i(t,n.cosRunAnalysis);}catch(e){s(e);}}),o.command("complete").description("Record the terminal outcome of an analysis run").argument("<id>","Analysis ID").requiredOption("--status <s>","COMPLETED|FAILED").option("--results <json>","Results JSON").option("--output-file <id>","Output file ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await a(rt,{id:t,status:e.status.toUpperCase(),results:e.results?f("results",e.results):void 0,outputFileId:e.outputFile});c(`Analysis completed: ${n.cosCompleteAnalysis.status}`),i(e,n.cosCompleteAnalysis);}catch(n){s(n);}});}function St(r){let o=r.command("releases").description("Cosmicintersection citable releases");o.command("list").description("List releases").option("--status <s>","DRAFT|UNDER_REVIEW|PUBLISHED|RETRACTED").option("--limit <n>","Page size",m,50).option("--offset <n>","Offset",m,0).option("-f, --format <format>","Output format").action(async t=>{try{let e=await a(at,{status:t.status?t.status.toUpperCase():void 0,pagination:{limit:t.limit,offset:t.offset}});i(t,e.cosListReleases.items,{headers:["ID","Title","Version","Status","DOI"],rows:e.cosListReleases.items.map(n=>[d(n.id,12),n.title,n.version,n.status??"-",n.doi??"-"])});}catch(e){s(e);}}),o.command("create").description("Create a release").requiredOption("--title <t>","Release title").option("--version <v>","Version").option("--abstract <s>","Abstract").option("--license <l>","License").option("--notebook <id>","Notebook ID").option("--authors <csv>","Comma-separated authors").option("--dataset-ids <csv>","Comma-separated dataset IDs").option("-f, --format <format>","Output format").action(async t=>{try{let e={title:t.title};t.version&&(e.version=t.version),t.abstract&&(e.abstract=t.abstract),t.license&&(e.license=t.license),t.notebook&&(e.notebookId=t.notebook),t.authors&&(e.authors=l(t.authors)),t.datasetIds&&(e.datasetIds=l(t.datasetIds));let n=await a(ct,{input:e});c(`Release created: ${n.cosCreateRelease.title}`),i(t,n.cosCreateRelease);}catch(e){s(e);}}),o.command("publish").description("Publish a citable release and stamp it with a DOI").argument("<id>","Release ID").option("--doi <doi>","DOI to stamp").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await a(ut,{id:t,doi:e.doi});c(`Release published: ${n.cosPublishRelease.version}`),i(e,n.cosPublishRelease);}catch(n){s(n);}});}function yt(r){let o=r.command("grants").description("Cosmicintersection data-access grants");o.command("list").description("List data-access grants").option("--dataset <id>","Filter by dataset ID").option("--status <s>","PENDING|ACTIVE|REVOKED|EXPIRED").option("-f, --format <format>","Output format").action(async t=>{try{let e=await a(pt,{datasetId:t.dataset,status:t.status?t.status.toUpperCase():void 0});i(t,e.cosListAccessGrants,{headers:["ID","Dataset","Grantee","Status","Scopes","Expires"],rows:e.cosListAccessGrants.map(n=>[d(n.id,12),d(n.datasetId,12),d(n.granteeId,12),n.status??"-",(n.scopes??[]).join(", "),A(n.expiresAt)])});}catch(e){s(e);}}),o.command("grant").description("Grant a grantee access to a dataset").requiredOption("--dataset <id>","Dataset ID").requiredOption("--grantee <id>","Grantee ID").option("--scopes <csv>","Comma-separated scopes").option("--reason <s>","Reason").option("--expires-at <iso>","Expiry (ISO date)").option("-f, --format <format>","Output format").action(async t=>{try{let e={datasetId:t.dataset,granteeId:t.grantee};t.scopes&&(e.scopes=l(t.scopes)),t.reason&&(e.reason=t.reason),t.expiresAt&&(e.expiresAt=t.expiresAt);let n=await a(dt,{input:e});c(`Access granted to ${n.cosGrantAccess.granteeId}`),i(t,n.cosGrantAccess);}catch(e){s(e);}}),o.command("revoke").description("Revoke a data-access grant").argument("<id>","Grant ID").option("-f, --format <format>","Output format").action(async(t,e)=>{try{let n=await a(lt,{id:t});c(`Access revoked: ${n.cosRevokeAccess.status}`),i(e,n.cosRevokeAccess);}catch(n){s(n);}});}function kt(r){r.command("health").description("Cosmicintersection service health check (public)").option("-f, --format <format>","Output format").action(async o=>{try{let t=await y(mt);c(t.cosHealth),i(o,{health:t.cosHealth});}catch(t){s(t);}});}var Ut={id:"cosmicintersection",version:"1.0.0",displayName:"Cosmicintersection",dependsOn:["auth","workspaces"],register(r,o){R(o);let t=r.command("cosmicintersection").description("Cosmicintersection open-science data platform");ft(t),gt(t),Ct(t),It(t),ht(t),At(t),Et(t),St(t),yt(t),kt(t);}},Nn=Ut;module.exports=Nn;
|