@cat-factory/gatekeeper-bindings 0.6.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.
@@ -0,0 +1,1552 @@
1
+ // GENERATED by `pnpm gen:sdk` from docs/openapi.json — DO NOT EDIT BY HAND.
2
+ // Regenerate after any change to the `/api/v1` contracts; `pnpm check:sdk` fails CI on drift.
3
+ /**
4
+ * The scope ladder, least to greatest. The ARRAY ORDER is the ranking, and this is the
5
+ * deployment's own vocabulary: generated from the spec's `x-public-api-scopes`, which the
6
+ * server stamps from the same constant its admission check ranks with.
7
+ */
8
+ export const PUBLIC_API_SCOPE_LADDER = ['read', 'write', 'decide', 'admin'];
9
+ /** Read a required string argument, failing with the parameter's own name. */
10
+ function str(args, name) {
11
+ const value = args[name];
12
+ if (typeof value !== 'string' || value.length === 0) {
13
+ throw new TypeError(`${name} is required and must be a non-empty string`);
14
+ }
15
+ return value;
16
+ }
17
+ /** The subset of `args` that belongs in the query string, picked by name. */
18
+ function pick(args, names) {
19
+ const out = {};
20
+ for (const name of names) {
21
+ if (args[name] !== undefined)
22
+ out[name] = args[name];
23
+ }
24
+ return out;
25
+ }
26
+ const QUERY_JOBS_LIST = ['limit', 'cursor', 'status', 'since'];
27
+ const QUERY_TASKS_LIST_BY_SERVICE = ['limit', 'cursor', 'status'];
28
+ const QUERY_DEBUG_GET_AGENT_CONTEXT = ['bodyChars', 'bodyOffset'];
29
+ const QUERY_DEBUG_GET_LLM_CALL = ['bodyChars', 'bodyOffset', 'view'];
30
+ const QUERY_DEBUG_LIST_AGENT_CONTEXT = ['stepIndex', 'limit', 'cursor'];
31
+ const QUERY_DEBUG_LIST_LLM_CALLS = ['agentKind', 'phase', 'outcome', 'contains', 'order', 'limit', 'cursor', 'bodyChars'];
32
+ const QUERY_DEBUG_LIST_LOGS = ['limit', 'cursor'];
33
+ const QUERY_DEBUG_LIST_RUNS = ['status', 'since', 'limit', 'cursor'];
34
+ const QUERY_DEBUG_LIST_SEARCH_QUERIES = ['limit', 'cursor'];
35
+ const QUERY_DEBUG_LIST_TOOL_CALLS = ['limit', 'cursor', 'jobId', 'order', 'outcome'];
36
+ /** Every `/api/v1` operation as a policy-annotated binding, in resource-group order. */
37
+ export const GATEKEEPER_BINDINGS = [
38
+ {
39
+ name: 'jobs_cancel',
40
+ group: 'jobs',
41
+ method: 'cancel',
42
+ operationId: 'cancelPublicJob',
43
+ httpMethod: 'POST',
44
+ path: '/api/v1/jobs/{id}/cancel',
45
+ summary: 'Cancel a job',
46
+ minScope: 'write',
47
+ readOnly: false,
48
+ result: 'value',
49
+ pathParams: ['id'],
50
+ queryParams: [],
51
+ hasBody: false,
52
+ invoke: async (client, args) => client.jobs.cancel(str(args, 'id')),
53
+ },
54
+ {
55
+ name: 'jobs_create',
56
+ group: 'jobs',
57
+ method: 'create',
58
+ operationId: 'createPublicJob',
59
+ httpMethod: 'POST',
60
+ path: '/api/v1/jobs',
61
+ summary: 'Start a headless job',
62
+ minScope: 'write',
63
+ readOnly: false,
64
+ result: 'value',
65
+ consequence: { "destructive": true, "idempotent": false },
66
+ pathParams: [],
67
+ queryParams: [],
68
+ hasBody: true,
69
+ invoke: async (client, args) => client.jobs.create(args.body),
70
+ },
71
+ {
72
+ name: 'jobs_get',
73
+ group: 'jobs',
74
+ method: 'get',
75
+ operationId: 'getPublicJob',
76
+ httpMethod: 'GET',
77
+ path: '/api/v1/jobs/{id}',
78
+ summary: 'Get a job',
79
+ minScope: 'read',
80
+ readOnly: true,
81
+ result: 'value',
82
+ pathParams: ['id'],
83
+ queryParams: [],
84
+ hasBody: false,
85
+ invoke: async (client, args) => client.jobs.get(str(args, 'id')),
86
+ },
87
+ {
88
+ name: 'jobs_list',
89
+ group: 'jobs',
90
+ method: 'list',
91
+ operationId: 'listPublicJobs',
92
+ httpMethod: 'GET',
93
+ path: '/api/v1/jobs',
94
+ summary: 'List the workspace\'s jobs',
95
+ minScope: 'read',
96
+ readOnly: true,
97
+ result: 'value',
98
+ pathParams: [],
99
+ queryParams: QUERY_JOBS_LIST,
100
+ hasBody: false,
101
+ invoke: async (client, args) => client.jobs.list(pick(args, QUERY_JOBS_LIST)),
102
+ },
103
+ {
104
+ name: 'jobs_stream',
105
+ group: 'jobs',
106
+ method: 'stream',
107
+ operationId: 'streamPublicJobEvents',
108
+ httpMethod: 'GET',
109
+ path: '/api/v1/jobs/{id}/events',
110
+ summary: 'Stream a job (SSE)',
111
+ minScope: 'read',
112
+ readOnly: true,
113
+ result: 'stream',
114
+ pathParams: ['id'],
115
+ queryParams: [],
116
+ hasBody: false,
117
+ invoke: async (client, args) => client.jobs.stream(str(args, 'id')),
118
+ },
119
+ {
120
+ name: 'services_create',
121
+ group: 'services',
122
+ method: 'create',
123
+ operationId: 'createPublicService',
124
+ httpMethod: 'POST',
125
+ path: '/api/v1/services',
126
+ summary: 'Create a service',
127
+ minScope: 'admin',
128
+ readOnly: false,
129
+ result: 'value',
130
+ pathParams: [],
131
+ queryParams: [],
132
+ hasBody: true,
133
+ invoke: async (client, args) => client.services.create(args.body),
134
+ },
135
+ {
136
+ name: 'services_list',
137
+ group: 'services',
138
+ method: 'list',
139
+ operationId: 'listPublicServices',
140
+ httpMethod: 'GET',
141
+ path: '/api/v1/services',
142
+ summary: 'List the workspace\'s services',
143
+ minScope: 'read',
144
+ readOnly: true,
145
+ result: 'value',
146
+ pathParams: [],
147
+ queryParams: [],
148
+ hasBody: false,
149
+ invoke: async (client, args) => client.services.list(),
150
+ },
151
+ {
152
+ name: 'repos_list',
153
+ group: 'repos',
154
+ method: 'list',
155
+ operationId: 'listPublicRepos',
156
+ httpMethod: 'GET',
157
+ path: '/api/v1/repos',
158
+ summary: 'List the repositories a service can be created against',
159
+ minScope: 'read',
160
+ readOnly: true,
161
+ result: 'value',
162
+ pathParams: [],
163
+ queryParams: [],
164
+ hasBody: false,
165
+ invoke: async (client, args) => client.repos.list(),
166
+ },
167
+ {
168
+ name: 'tasks_add_dependency',
169
+ group: 'tasks',
170
+ method: 'addDependency',
171
+ operationId: 'addPublicTaskDependency',
172
+ httpMethod: 'POST',
173
+ path: '/api/v1/tasks/{taskId}/dependencies',
174
+ summary: 'Declare that a task waits for another',
175
+ minScope: 'write',
176
+ readOnly: false,
177
+ result: 'value',
178
+ pathParams: ['taskId'],
179
+ queryParams: [],
180
+ hasBody: true,
181
+ invoke: async (client, args) => client.tasks.addDependency(str(args, 'taskId'), args.body),
182
+ },
183
+ {
184
+ name: 'tasks_attach_document',
185
+ group: 'tasks',
186
+ method: 'attachDocument',
187
+ operationId: 'attachPublicTaskDocument',
188
+ httpMethod: 'POST',
189
+ path: '/api/v1/tasks/{taskId}/documents',
190
+ summary: 'Attach a document to a task',
191
+ minScope: 'write',
192
+ readOnly: false,
193
+ result: 'value',
194
+ pathParams: ['taskId'],
195
+ queryParams: [],
196
+ hasBody: true,
197
+ invoke: async (client, args) => client.tasks.attachDocument(str(args, 'taskId'), args.body),
198
+ },
199
+ {
200
+ name: 'tasks_create',
201
+ group: 'tasks',
202
+ method: 'create',
203
+ operationId: 'createPublicTask',
204
+ httpMethod: 'POST',
205
+ path: '/api/v1/services/{serviceId}/tasks',
206
+ summary: 'Create a task under a service',
207
+ minScope: 'write',
208
+ readOnly: false,
209
+ result: 'value',
210
+ pathParams: ['serviceId'],
211
+ queryParams: [],
212
+ hasBody: true,
213
+ invoke: async (client, args) => client.tasks.create(str(args, 'serviceId'), args.body),
214
+ },
215
+ {
216
+ name: 'tasks_delete',
217
+ group: 'tasks',
218
+ method: 'delete',
219
+ operationId: 'deletePublicTask',
220
+ httpMethod: 'DELETE',
221
+ path: '/api/v1/tasks/{taskId}',
222
+ summary: 'Delete a task',
223
+ minScope: 'admin',
224
+ readOnly: false,
225
+ result: 'value',
226
+ consequence: { "destructive": true, "idempotent": true },
227
+ pathParams: ['taskId'],
228
+ queryParams: [],
229
+ hasBody: false,
230
+ invoke: async (client, args) => client.tasks.delete(str(args, 'taskId')),
231
+ },
232
+ {
233
+ name: 'tasks_detach_document',
234
+ group: 'tasks',
235
+ method: 'detachDocument',
236
+ operationId: 'detachPublicTaskDocument',
237
+ httpMethod: 'POST',
238
+ path: '/api/v1/tasks/{taskId}/documents/detach',
239
+ summary: 'Detach a document from a task',
240
+ minScope: 'write',
241
+ readOnly: false,
242
+ result: 'value',
243
+ pathParams: ['taskId'],
244
+ queryParams: [],
245
+ hasBody: true,
246
+ invoke: async (client, args) => client.tasks.detachDocument(str(args, 'taskId'), args.body),
247
+ },
248
+ {
249
+ name: 'tasks_get',
250
+ group: 'tasks',
251
+ method: 'get',
252
+ operationId: 'getPublicTask',
253
+ httpMethod: 'GET',
254
+ path: '/api/v1/tasks/{taskId}',
255
+ summary: 'Get a task\'s status',
256
+ minScope: 'read',
257
+ readOnly: true,
258
+ result: 'value',
259
+ pathParams: ['taskId'],
260
+ queryParams: [],
261
+ hasBody: false,
262
+ invoke: async (client, args) => client.tasks.get(str(args, 'taskId')),
263
+ },
264
+ {
265
+ name: 'tasks_get_run',
266
+ group: 'tasks',
267
+ method: 'getRun',
268
+ operationId: 'getPublicRun',
269
+ httpMethod: 'GET',
270
+ path: '/api/v1/tasks/{taskId}/run',
271
+ summary: 'Get a task\'s run (rich projection)',
272
+ minScope: 'read',
273
+ readOnly: true,
274
+ result: 'value',
275
+ pathParams: ['taskId'],
276
+ queryParams: [],
277
+ hasBody: false,
278
+ invoke: async (client, args) => client.tasks.getRun(str(args, 'taskId')),
279
+ },
280
+ {
281
+ name: 'tasks_list_by_service',
282
+ group: 'tasks',
283
+ method: 'listByService',
284
+ operationId: 'listPublicServiceTasks',
285
+ httpMethod: 'GET',
286
+ path: '/api/v1/services/{serviceId}/tasks',
287
+ summary: 'List a service\'s tasks',
288
+ minScope: 'read',
289
+ readOnly: true,
290
+ result: 'value',
291
+ pathParams: ['serviceId'],
292
+ queryParams: QUERY_TASKS_LIST_BY_SERVICE,
293
+ hasBody: false,
294
+ invoke: async (client, args) => client.tasks.listByService(str(args, 'serviceId'), pick(args, QUERY_TASKS_LIST_BY_SERVICE)),
295
+ },
296
+ {
297
+ name: 'tasks_list_documents',
298
+ group: 'tasks',
299
+ method: 'listDocuments',
300
+ operationId: 'listPublicTaskDocuments',
301
+ httpMethod: 'GET',
302
+ path: '/api/v1/tasks/{taskId}/documents',
303
+ summary: 'List a task\'s attached documents',
304
+ minScope: 'read',
305
+ readOnly: true,
306
+ result: 'value',
307
+ pathParams: ['taskId'],
308
+ queryParams: [],
309
+ hasBody: false,
310
+ invoke: async (client, args) => client.tasks.listDocuments(str(args, 'taskId')),
311
+ },
312
+ {
313
+ name: 'tasks_remove_dependency',
314
+ group: 'tasks',
315
+ method: 'removeDependency',
316
+ operationId: 'removePublicTaskDependency',
317
+ httpMethod: 'POST',
318
+ path: '/api/v1/tasks/{taskId}/dependencies/remove',
319
+ summary: 'Drop a dependency edge',
320
+ minScope: 'write',
321
+ readOnly: false,
322
+ result: 'value',
323
+ pathParams: ['taskId'],
324
+ queryParams: [],
325
+ hasBody: true,
326
+ invoke: async (client, args) => client.tasks.removeDependency(str(args, 'taskId'), args.body),
327
+ },
328
+ {
329
+ name: 'tasks_retry',
330
+ group: 'tasks',
331
+ method: 'retry',
332
+ operationId: 'retryPublicTask',
333
+ httpMethod: 'POST',
334
+ path: '/api/v1/tasks/{taskId}/retry',
335
+ summary: 'Retry a task\'s failed run',
336
+ minScope: 'write',
337
+ readOnly: false,
338
+ result: 'value',
339
+ consequence: { "destructive": true, "idempotent": false },
340
+ pathParams: ['taskId'],
341
+ queryParams: [],
342
+ hasBody: false,
343
+ invoke: async (client, args) => client.tasks.retry(str(args, 'taskId')),
344
+ },
345
+ {
346
+ name: 'tasks_start',
347
+ group: 'tasks',
348
+ method: 'start',
349
+ operationId: 'startPublicTask',
350
+ httpMethod: 'POST',
351
+ path: '/api/v1/tasks/{taskId}/start',
352
+ summary: 'Start (run) a task',
353
+ minScope: 'write',
354
+ readOnly: false,
355
+ result: 'value',
356
+ consequence: { "destructive": true, "idempotent": false },
357
+ pathParams: ['taskId'],
358
+ queryParams: [],
359
+ hasBody: true,
360
+ invoke: async (client, args) => client.tasks.start(str(args, 'taskId'), args.body),
361
+ },
362
+ {
363
+ name: 'tasks_stop',
364
+ group: 'tasks',
365
+ method: 'stop',
366
+ operationId: 'stopPublicTask',
367
+ httpMethod: 'POST',
368
+ path: '/api/v1/tasks/{taskId}/stop',
369
+ summary: 'Stop a task\'s run',
370
+ minScope: 'write',
371
+ readOnly: false,
372
+ result: 'value',
373
+ pathParams: ['taskId'],
374
+ queryParams: [],
375
+ hasBody: false,
376
+ invoke: async (client, args) => client.tasks.stop(str(args, 'taskId')),
377
+ },
378
+ {
379
+ name: 'tasks_stream',
380
+ group: 'tasks',
381
+ method: 'stream',
382
+ operationId: 'streamPublicTaskRun',
383
+ httpMethod: 'GET',
384
+ path: '/api/v1/tasks/{taskId}/events',
385
+ summary: 'Stream a task run (SSE)',
386
+ minScope: 'read',
387
+ readOnly: true,
388
+ result: 'stream',
389
+ pathParams: ['taskId'],
390
+ queryParams: [],
391
+ hasBody: false,
392
+ invoke: async (client, args) => client.tasks.stream(str(args, 'taskId')),
393
+ },
394
+ {
395
+ name: 'tasks_update',
396
+ group: 'tasks',
397
+ method: 'update',
398
+ operationId: 'updatePublicTask',
399
+ httpMethod: 'PATCH',
400
+ path: '/api/v1/tasks/{taskId}',
401
+ summary: 'Edit a task\'s inputs',
402
+ minScope: 'write',
403
+ readOnly: false,
404
+ result: 'value',
405
+ pathParams: ['taskId'],
406
+ queryParams: [],
407
+ hasBody: true,
408
+ invoke: async (client, args) => client.tasks.update(str(args, 'taskId'), args.body),
409
+ },
410
+ {
411
+ name: 'pipelines_list',
412
+ group: 'pipelines',
413
+ method: 'list',
414
+ operationId: 'listPublicPipelines',
415
+ httpMethod: 'GET',
416
+ path: '/api/v1/pipelines',
417
+ summary: 'List the workspace\'s pipelines',
418
+ minScope: 'read',
419
+ readOnly: true,
420
+ result: 'value',
421
+ pathParams: [],
422
+ queryParams: [],
423
+ hasBody: false,
424
+ invoke: async (client, args) => client.pipelines.list(),
425
+ },
426
+ {
427
+ name: 'task_types_list',
428
+ group: 'taskTypes',
429
+ method: 'list',
430
+ operationId: 'listPublicTaskTypes',
431
+ httpMethod: 'GET',
432
+ path: '/api/v1/task-types',
433
+ summary: 'List the task types this workspace may create',
434
+ minScope: 'read',
435
+ readOnly: true,
436
+ result: 'value',
437
+ pathParams: [],
438
+ queryParams: [],
439
+ hasBody: false,
440
+ invoke: async (client, args) => client.taskTypes.list(),
441
+ },
442
+ {
443
+ name: 'notifications_act',
444
+ group: 'notifications',
445
+ method: 'act',
446
+ operationId: 'actPublicNotification',
447
+ httpMethod: 'POST',
448
+ path: '/api/v1/notifications/{id}/act',
449
+ summary: 'Act on a notification',
450
+ minScope: 'admin',
451
+ readOnly: false,
452
+ result: 'value',
453
+ consequence: { "destructive": true, "idempotent": false },
454
+ pathParams: ['id'],
455
+ queryParams: [],
456
+ hasBody: false,
457
+ invoke: async (client, args) => client.notifications.act(str(args, 'id')),
458
+ },
459
+ {
460
+ name: 'notifications_dismiss',
461
+ group: 'notifications',
462
+ method: 'dismiss',
463
+ operationId: 'dismissPublicNotification',
464
+ httpMethod: 'POST',
465
+ path: '/api/v1/notifications/{id}/dismiss',
466
+ summary: 'Dismiss a notification',
467
+ minScope: 'write',
468
+ readOnly: false,
469
+ result: 'value',
470
+ pathParams: ['id'],
471
+ queryParams: [],
472
+ hasBody: false,
473
+ invoke: async (client, args) => client.notifications.dismiss(str(args, 'id')),
474
+ },
475
+ {
476
+ name: 'notifications_list',
477
+ group: 'notifications',
478
+ method: 'list',
479
+ operationId: 'listPublicNotifications',
480
+ httpMethod: 'GET',
481
+ path: '/api/v1/notifications',
482
+ summary: 'List the workspace\'s open notifications',
483
+ minScope: 'read',
484
+ readOnly: true,
485
+ result: 'value',
486
+ pathParams: [],
487
+ queryParams: [],
488
+ hasBody: false,
489
+ invoke: async (client, args) => client.notifications.list(),
490
+ },
491
+ {
492
+ name: 'webhook_delete',
493
+ group: 'webhook',
494
+ method: 'delete',
495
+ operationId: 'deletePublicNotificationWebhook',
496
+ httpMethod: 'DELETE',
497
+ path: '/api/v1/notification-webhook',
498
+ summary: 'Remove the outbound webhook',
499
+ minScope: 'admin',
500
+ readOnly: false,
501
+ result: 'value',
502
+ consequence: { "destructive": true, "idempotent": true },
503
+ pathParams: [],
504
+ queryParams: [],
505
+ hasBody: false,
506
+ invoke: async (client, args) => client.webhook.delete(),
507
+ },
508
+ {
509
+ name: 'webhook_delete_named',
510
+ group: 'webhook',
511
+ method: 'deleteNamed',
512
+ operationId: 'deletePublicNamedNotificationWebhook',
513
+ httpMethod: 'DELETE',
514
+ path: '/api/v1/notification-webhooks/{webhookId}',
515
+ summary: 'Remove one named outbound webhook',
516
+ minScope: 'admin',
517
+ readOnly: false,
518
+ result: 'value',
519
+ consequence: { "destructive": true, "idempotent": true },
520
+ pathParams: ['webhookId'],
521
+ queryParams: [],
522
+ hasBody: false,
523
+ invoke: async (client, args) => client.webhook.deleteNamed(str(args, 'webhookId')),
524
+ },
525
+ {
526
+ name: 'webhook_get',
527
+ group: 'webhook',
528
+ method: 'get',
529
+ operationId: 'getPublicNotificationWebhook',
530
+ httpMethod: 'GET',
531
+ path: '/api/v1/notification-webhook',
532
+ summary: 'Read the workspace\'s outbound webhook',
533
+ minScope: 'admin',
534
+ readOnly: true,
535
+ result: 'value',
536
+ pathParams: [],
537
+ queryParams: [],
538
+ hasBody: false,
539
+ invoke: async (client, args) => client.webhook.get(),
540
+ },
541
+ {
542
+ name: 'webhook_get_named',
543
+ group: 'webhook',
544
+ method: 'getNamed',
545
+ operationId: 'getPublicNamedNotificationWebhook',
546
+ httpMethod: 'GET',
547
+ path: '/api/v1/notification-webhooks/{webhookId}',
548
+ summary: 'Read one named outbound webhook',
549
+ minScope: 'admin',
550
+ readOnly: true,
551
+ result: 'value',
552
+ pathParams: ['webhookId'],
553
+ queryParams: [],
554
+ hasBody: false,
555
+ invoke: async (client, args) => client.webhook.getNamed(str(args, 'webhookId')),
556
+ },
557
+ {
558
+ name: 'webhook_list',
559
+ group: 'webhook',
560
+ method: 'list',
561
+ operationId: 'listPublicNotificationWebhooks',
562
+ httpMethod: 'GET',
563
+ path: '/api/v1/notification-webhooks',
564
+ summary: 'List the workspace\'s outbound webhooks',
565
+ minScope: 'admin',
566
+ readOnly: true,
567
+ result: 'value',
568
+ pathParams: [],
569
+ queryParams: [],
570
+ hasBody: false,
571
+ invoke: async (client, args) => client.webhook.list(),
572
+ },
573
+ {
574
+ name: 'webhook_set',
575
+ group: 'webhook',
576
+ method: 'set',
577
+ operationId: 'putPublicNotificationWebhook',
578
+ httpMethod: 'PUT',
579
+ path: '/api/v1/notification-webhook',
580
+ summary: 'Register or update the outbound webhook',
581
+ minScope: 'admin',
582
+ readOnly: false,
583
+ result: 'value',
584
+ consequence: { "destructive": true, "idempotent": true },
585
+ pathParams: [],
586
+ queryParams: [],
587
+ hasBody: true,
588
+ invoke: async (client, args) => client.webhook.set(args.body),
589
+ },
590
+ {
591
+ name: 'webhook_set_named',
592
+ group: 'webhook',
593
+ method: 'setNamed',
594
+ operationId: 'putPublicNamedNotificationWebhook',
595
+ httpMethod: 'PUT',
596
+ path: '/api/v1/notification-webhooks/{webhookId}',
597
+ summary: 'Register or update one named outbound webhook',
598
+ minScope: 'admin',
599
+ readOnly: false,
600
+ result: 'value',
601
+ consequence: { "destructive": true, "idempotent": true },
602
+ pathParams: ['webhookId'],
603
+ queryParams: [],
604
+ hasBody: true,
605
+ invoke: async (client, args) => client.webhook.setNamed(str(args, 'webhookId'), args.body),
606
+ },
607
+ {
608
+ name: 'usage_get',
609
+ group: 'usage',
610
+ method: 'get',
611
+ operationId: 'getPublicUsage',
612
+ httpMethod: 'GET',
613
+ path: '/api/v1/usage',
614
+ summary: 'Read the workspace\'s usage for the current period',
615
+ minScope: 'read',
616
+ readOnly: true,
617
+ result: 'value',
618
+ pathParams: [],
619
+ queryParams: [],
620
+ hasBody: false,
621
+ invoke: async (client, args) => client.usage.get(),
622
+ },
623
+ {
624
+ name: 'me_get',
625
+ group: 'me',
626
+ method: 'get',
627
+ operationId: 'getPublicIdentity',
628
+ httpMethod: 'GET',
629
+ path: '/api/v1/me',
630
+ summary: 'Describe the calling key',
631
+ minScope: 'read',
632
+ readOnly: true,
633
+ result: 'value',
634
+ pathParams: [],
635
+ queryParams: [],
636
+ hasBody: false,
637
+ invoke: async (client, args) => client.me.get(),
638
+ },
639
+ {
640
+ name: 'decisions_answer_agent_decision',
641
+ group: 'decisions',
642
+ method: 'answerAgentDecision',
643
+ operationId: 'resolvePublicRunAgentDecision',
644
+ httpMethod: 'POST',
645
+ path: '/api/v1/runs/{runId}/decisions/questions/{decisionId}/answer',
646
+ summary: 'Answer an agent-raised decision',
647
+ minScope: 'decide',
648
+ readOnly: false,
649
+ result: 'value',
650
+ pathParams: ['runId', 'decisionId'],
651
+ queryParams: [],
652
+ hasBody: true,
653
+ invoke: async (client, args) => client.decisions.answerAgentDecision(str(args, 'runId'), str(args, 'decisionId'), args.body),
654
+ },
655
+ {
656
+ name: 'decisions_answer_follow_up',
657
+ group: 'decisions',
658
+ method: 'answerFollowUp',
659
+ operationId: 'answerPublicRunFollowUp',
660
+ httpMethod: 'POST',
661
+ path: '/api/v1/runs/{runId}/decisions/follow-ups/items/{itemId}/answer',
662
+ summary: 'Answer a follow-up question',
663
+ minScope: 'decide',
664
+ readOnly: false,
665
+ result: 'value',
666
+ pathParams: ['runId', 'itemId'],
667
+ queryParams: [],
668
+ hasBody: true,
669
+ invoke: async (client, args) => client.decisions.answerFollowUp(str(args, 'runId'), str(args, 'itemId'), args.body),
670
+ },
671
+ {
672
+ name: 'decisions_answer_interview_question',
673
+ group: 'decisions',
674
+ method: 'answerInterviewQuestion',
675
+ operationId: 'answerPublicRunInterview',
676
+ httpMethod: 'POST',
677
+ path: '/api/v1/runs/{runId}/decisions/interview/answer',
678
+ summary: 'Answer an interview question',
679
+ minScope: 'decide',
680
+ readOnly: false,
681
+ result: 'value',
682
+ pathParams: ['runId'],
683
+ queryParams: [],
684
+ hasBody: true,
685
+ invoke: async (client, args) => client.decisions.answerInterviewQuestion(str(args, 'runId'), args.body),
686
+ },
687
+ {
688
+ name: 'decisions_approve_step',
689
+ group: 'decisions',
690
+ method: 'approveStep',
691
+ operationId: 'approvePublicRunStep',
692
+ httpMethod: 'POST',
693
+ path: '/api/v1/runs/{runId}/decisions/approvals/{approvalId}/approve',
694
+ summary: 'Approve a parked step',
695
+ minScope: 'decide',
696
+ readOnly: false,
697
+ result: 'value',
698
+ pathParams: ['runId', 'approvalId'],
699
+ queryParams: [],
700
+ hasBody: true,
701
+ invoke: async (client, args) => client.decisions.approveStep(str(args, 'runId'), str(args, 'approvalId'), args.body),
702
+ },
703
+ {
704
+ name: 'decisions_approve_visual_confirmation',
705
+ group: 'decisions',
706
+ method: 'approveVisualConfirmation',
707
+ operationId: 'approvePublicRunVisualConfirm',
708
+ httpMethod: 'POST',
709
+ path: '/api/v1/runs/{runId}/decisions/visual-confirmation/approve',
710
+ summary: 'Approve a visual-confirmation gate',
711
+ minScope: 'decide',
712
+ readOnly: false,
713
+ result: 'value',
714
+ pathParams: ['runId'],
715
+ queryParams: [],
716
+ hasBody: false,
717
+ invoke: async (client, args) => client.decisions.approveVisualConfirmation(str(args, 'runId')),
718
+ },
719
+ {
720
+ name: 'decisions_challenge_pr_review_finding',
721
+ group: 'decisions',
722
+ method: 'challengePrReviewFinding',
723
+ operationId: 'challengePublicRunPrReviewFinding',
724
+ httpMethod: 'POST',
725
+ path: '/api/v1/runs/{runId}/decisions/pr-review/findings/{findingId}/challenge',
726
+ summary: 'Challenge a PR review finding',
727
+ minScope: 'decide',
728
+ readOnly: false,
729
+ result: 'value',
730
+ pathParams: ['runId', 'findingId'],
731
+ queryParams: [],
732
+ hasBody: true,
733
+ invoke: async (client, args) => client.decisions.challengePrReviewFinding(str(args, 'runId'), str(args, 'findingId'), args.body),
734
+ },
735
+ {
736
+ name: 'decisions_choose_fork',
737
+ group: 'decisions',
738
+ method: 'chooseFork',
739
+ operationId: 'choosePublicRunFork',
740
+ httpMethod: 'POST',
741
+ path: '/api/v1/runs/{runId}/decisions/fork/choose',
742
+ summary: 'Choose an implementation approach',
743
+ minScope: 'decide',
744
+ readOnly: false,
745
+ result: 'value',
746
+ pathParams: ['runId'],
747
+ queryParams: [],
748
+ hasBody: true,
749
+ invoke: async (client, args) => client.decisions.chooseFork(str(args, 'runId'), args.body),
750
+ },
751
+ {
752
+ name: 'decisions_confirm_human_test',
753
+ group: 'decisions',
754
+ method: 'confirmHumanTest',
755
+ operationId: 'confirmPublicRunHumanTest',
756
+ httpMethod: 'POST',
757
+ path: '/api/v1/runs/{runId}/decisions/human-test/confirm',
758
+ summary: 'Confirm a human-test gate',
759
+ minScope: 'decide',
760
+ readOnly: false,
761
+ result: 'value',
762
+ pathParams: ['runId'],
763
+ queryParams: [],
764
+ hasBody: false,
765
+ invoke: async (client, args) => client.decisions.confirmHumanTest(str(args, 'runId')),
766
+ },
767
+ {
768
+ name: 'decisions_continue_interview',
769
+ group: 'decisions',
770
+ method: 'continueInterview',
771
+ operationId: 'continuePublicRunInterview',
772
+ httpMethod: 'POST',
773
+ path: '/api/v1/runs/{runId}/decisions/interview/continue',
774
+ summary: 'Continue a parked interview',
775
+ minScope: 'decide',
776
+ readOnly: false,
777
+ result: 'value',
778
+ pathParams: ['runId'],
779
+ queryParams: [],
780
+ hasBody: false,
781
+ invoke: async (client, args) => client.decisions.continueInterview(str(args, 'runId')),
782
+ },
783
+ {
784
+ name: 'decisions_dismiss_follow_up',
785
+ group: 'decisions',
786
+ method: 'dismissFollowUp',
787
+ operationId: 'dismissPublicRunFollowUp',
788
+ httpMethod: 'POST',
789
+ path: '/api/v1/runs/{runId}/decisions/follow-ups/items/{itemId}/dismiss',
790
+ summary: 'Dismiss a follow-up item',
791
+ minScope: 'decide',
792
+ readOnly: false,
793
+ result: 'value',
794
+ pathParams: ['runId', 'itemId'],
795
+ queryParams: [],
796
+ hasBody: false,
797
+ invoke: async (client, args) => client.decisions.dismissFollowUp(str(args, 'runId'), str(args, 'itemId')),
798
+ },
799
+ {
800
+ name: 'decisions_dismiss_pr_review_finding',
801
+ group: 'decisions',
802
+ method: 'dismissPrReviewFinding',
803
+ operationId: 'dismissPublicRunPrReviewFinding',
804
+ httpMethod: 'POST',
805
+ path: '/api/v1/runs/{runId}/decisions/pr-review/findings/{findingId}/dismiss',
806
+ summary: 'Dismiss a PR review finding',
807
+ minScope: 'decide',
808
+ readOnly: false,
809
+ result: 'value',
810
+ pathParams: ['runId', 'findingId'],
811
+ queryParams: [],
812
+ hasBody: false,
813
+ invoke: async (client, args) => client.decisions.dismissPrReviewFinding(str(args, 'runId'), str(args, 'findingId')),
814
+ },
815
+ {
816
+ name: 'decisions_file_follow_up',
817
+ group: 'decisions',
818
+ method: 'fileFollowUp',
819
+ operationId: 'filePublicRunFollowUp',
820
+ httpMethod: 'POST',
821
+ path: '/api/v1/runs/{runId}/decisions/follow-ups/items/{itemId}/file',
822
+ summary: 'File a follow-up item as an issue',
823
+ minScope: 'decide',
824
+ readOnly: false,
825
+ result: 'value',
826
+ pathParams: ['runId', 'itemId'],
827
+ queryParams: [],
828
+ hasBody: false,
829
+ invoke: async (client, args) => client.decisions.fileFollowUp(str(args, 'runId'), str(args, 'itemId')),
830
+ },
831
+ {
832
+ name: 'decisions_incorporate',
833
+ group: 'decisions',
834
+ method: 'incorporate',
835
+ operationId: 'incorporatePublicRunRequirements',
836
+ httpMethod: 'POST',
837
+ path: '/api/v1/runs/{runId}/decisions/requirements/incorporate',
838
+ summary: 'Incorporate the answers',
839
+ minScope: 'decide',
840
+ readOnly: false,
841
+ result: 'value',
842
+ pathParams: ['runId'],
843
+ queryParams: [],
844
+ hasBody: true,
845
+ invoke: async (client, args) => client.decisions.incorporate(str(args, 'runId'), args.body),
846
+ },
847
+ {
848
+ name: 'decisions_incorporate_brainstorm',
849
+ group: 'decisions',
850
+ method: 'incorporateBrainstorm',
851
+ operationId: 'incorporatePublicRunBrainstorm',
852
+ httpMethod: 'POST',
853
+ path: '/api/v1/runs/{runId}/decisions/brainstorm/{stage}/incorporate',
854
+ summary: 'Incorporate brainstorm picks',
855
+ minScope: 'decide',
856
+ readOnly: false,
857
+ result: 'value',
858
+ pathParams: ['runId', 'stage'],
859
+ queryParams: [],
860
+ hasBody: true,
861
+ invoke: async (client, args) => client.decisions.incorporateBrainstorm(str(args, 'runId'), str(args, 'stage'), args.body),
862
+ },
863
+ {
864
+ name: 'decisions_incorporate_clarity',
865
+ group: 'decisions',
866
+ method: 'incorporateClarity',
867
+ operationId: 'incorporatePublicRunClarity',
868
+ httpMethod: 'POST',
869
+ path: '/api/v1/runs/{runId}/decisions/clarity/incorporate',
870
+ summary: 'Incorporate clarity answers',
871
+ minScope: 'decide',
872
+ readOnly: false,
873
+ result: 'value',
874
+ pathParams: ['runId'],
875
+ queryParams: [],
876
+ hasBody: true,
877
+ invoke: async (client, args) => client.decisions.incorporateClarity(str(args, 'runId'), args.body),
878
+ },
879
+ {
880
+ name: 'decisions_list',
881
+ group: 'decisions',
882
+ method: 'list',
883
+ operationId: 'listPublicRunDecisions',
884
+ httpMethod: 'GET',
885
+ path: '/api/v1/runs/{runId}/decisions',
886
+ summary: 'List a run\'s parked decisions',
887
+ minScope: 'read',
888
+ readOnly: true,
889
+ result: 'value',
890
+ pathParams: ['runId'],
891
+ queryParams: [],
892
+ hasBody: false,
893
+ invoke: async (client, args) => client.decisions.list(str(args, 'runId')),
894
+ },
895
+ {
896
+ name: 'decisions_proceed',
897
+ group: 'decisions',
898
+ method: 'proceed',
899
+ operationId: 'proceedPublicRunRequirements',
900
+ httpMethod: 'POST',
901
+ path: '/api/v1/runs/{runId}/decisions/requirements/proceed',
902
+ summary: 'Proceed with the current requirements',
903
+ minScope: 'decide',
904
+ readOnly: false,
905
+ result: 'value',
906
+ pathParams: ['runId'],
907
+ queryParams: [],
908
+ hasBody: false,
909
+ invoke: async (client, args) => client.decisions.proceed(str(args, 'runId')),
910
+ },
911
+ {
912
+ name: 'decisions_proceed_brainstorm',
913
+ group: 'decisions',
914
+ method: 'proceedBrainstorm',
915
+ operationId: 'proceedPublicRunBrainstorm',
916
+ httpMethod: 'POST',
917
+ path: '/api/v1/runs/{runId}/decisions/brainstorm/{stage}/proceed',
918
+ summary: 'Proceed past a brainstorm',
919
+ minScope: 'decide',
920
+ readOnly: false,
921
+ result: 'value',
922
+ pathParams: ['runId', 'stage'],
923
+ queryParams: [],
924
+ hasBody: false,
925
+ invoke: async (client, args) => client.decisions.proceedBrainstorm(str(args, 'runId'), str(args, 'stage')),
926
+ },
927
+ {
928
+ name: 'decisions_proceed_clarity',
929
+ group: 'decisions',
930
+ method: 'proceedClarity',
931
+ operationId: 'proceedPublicRunClarity',
932
+ httpMethod: 'POST',
933
+ path: '/api/v1/runs/{runId}/decisions/clarity/proceed',
934
+ summary: 'Proceed past the clarity review',
935
+ minScope: 'decide',
936
+ readOnly: false,
937
+ result: 'value',
938
+ pathParams: ['runId'],
939
+ queryParams: [],
940
+ hasBody: false,
941
+ invoke: async (client, args) => client.decisions.proceedClarity(str(args, 'runId')),
942
+ },
943
+ {
944
+ name: 'decisions_proceed_interview',
945
+ group: 'decisions',
946
+ method: 'proceedInterview',
947
+ operationId: 'proceedPublicRunInterview',
948
+ httpMethod: 'POST',
949
+ path: '/api/v1/runs/{runId}/decisions/interview/proceed',
950
+ summary: 'Proceed past a parked interview',
951
+ minScope: 'decide',
952
+ readOnly: false,
953
+ result: 'value',
954
+ pathParams: ['runId'],
955
+ queryParams: [],
956
+ hasBody: false,
957
+ invoke: async (client, args) => client.decisions.proceedInterview(str(args, 'runId')),
958
+ },
959
+ {
960
+ name: 'decisions_reject_step',
961
+ group: 'decisions',
962
+ method: 'rejectStep',
963
+ operationId: 'rejectPublicRunStep',
964
+ httpMethod: 'POST',
965
+ path: '/api/v1/runs/{runId}/decisions/approvals/{approvalId}/reject',
966
+ summary: 'Reject a parked step',
967
+ minScope: 'decide',
968
+ readOnly: false,
969
+ result: 'value',
970
+ pathParams: ['runId', 'approvalId'],
971
+ queryParams: [],
972
+ hasBody: true,
973
+ invoke: async (client, args) => client.decisions.rejectStep(str(args, 'runId'), str(args, 'approvalId'), args.body),
974
+ },
975
+ {
976
+ name: 'decisions_reply_to_brainstorm_option',
977
+ group: 'decisions',
978
+ method: 'replyToBrainstormOption',
979
+ operationId: 'replyPublicRunBrainstormOption',
980
+ httpMethod: 'POST',
981
+ path: '/api/v1/runs/{runId}/decisions/brainstorm/{stage}/options/{itemId}/reply',
982
+ summary: 'Respond to a brainstorm option',
983
+ minScope: 'decide',
984
+ readOnly: false,
985
+ result: 'value',
986
+ pathParams: ['runId', 'stage', 'itemId'],
987
+ queryParams: [],
988
+ hasBody: true,
989
+ invoke: async (client, args) => client.decisions.replyToBrainstormOption(str(args, 'runId'), str(args, 'stage'), str(args, 'itemId'), args.body),
990
+ },
991
+ {
992
+ name: 'decisions_reply_to_clarity_finding',
993
+ group: 'decisions',
994
+ method: 'replyToClarityFinding',
995
+ operationId: 'replyPublicRunClarityFinding',
996
+ httpMethod: 'POST',
997
+ path: '/api/v1/runs/{runId}/decisions/clarity/findings/{itemId}/reply',
998
+ summary: 'Answer a clarity (bug-triage) finding',
999
+ minScope: 'decide',
1000
+ readOnly: false,
1001
+ result: 'value',
1002
+ pathParams: ['runId', 'itemId'],
1003
+ queryParams: [],
1004
+ hasBody: true,
1005
+ invoke: async (client, args) => client.decisions.replyToClarityFinding(str(args, 'runId'), str(args, 'itemId'), args.body),
1006
+ },
1007
+ {
1008
+ name: 'decisions_reply_to_finding',
1009
+ group: 'decisions',
1010
+ method: 'replyToFinding',
1011
+ operationId: 'replyPublicRunFinding',
1012
+ httpMethod: 'POST',
1013
+ path: '/api/v1/runs/{runId}/decisions/requirements/findings/{itemId}/reply',
1014
+ summary: 'Answer a review finding',
1015
+ minScope: 'decide',
1016
+ readOnly: false,
1017
+ result: 'value',
1018
+ pathParams: ['runId', 'itemId'],
1019
+ queryParams: [],
1020
+ hasBody: true,
1021
+ invoke: async (client, args) => client.decisions.replyToFinding(str(args, 'runId'), str(args, 'itemId'), args.body),
1022
+ },
1023
+ {
1024
+ name: 'decisions_request_human_test_fix',
1025
+ group: 'decisions',
1026
+ method: 'requestHumanTestFix',
1027
+ operationId: 'requestPublicRunHumanTestFix',
1028
+ httpMethod: 'POST',
1029
+ path: '/api/v1/runs/{runId}/decisions/human-test/request-fix',
1030
+ summary: 'Request a fix from a human-test gate',
1031
+ minScope: 'decide',
1032
+ readOnly: false,
1033
+ result: 'value',
1034
+ pathParams: ['runId'],
1035
+ queryParams: [],
1036
+ hasBody: true,
1037
+ invoke: async (client, args) => client.decisions.requestHumanTestFix(str(args, 'runId'), args.body),
1038
+ },
1039
+ {
1040
+ name: 'decisions_request_step_changes',
1041
+ group: 'decisions',
1042
+ method: 'requestStepChanges',
1043
+ operationId: 'requestPublicRunStepChanges',
1044
+ httpMethod: 'POST',
1045
+ path: '/api/v1/runs/{runId}/decisions/approvals/{approvalId}/request-changes',
1046
+ summary: 'Request changes on a parked step',
1047
+ minScope: 'decide',
1048
+ readOnly: false,
1049
+ result: 'value',
1050
+ pathParams: ['runId', 'approvalId'],
1051
+ queryParams: [],
1052
+ hasBody: true,
1053
+ invoke: async (client, args) => client.decisions.requestStepChanges(str(args, 'runId'), str(args, 'approvalId'), args.body),
1054
+ },
1055
+ {
1056
+ name: 'decisions_request_visual_confirmation_fix',
1057
+ group: 'decisions',
1058
+ method: 'requestVisualConfirmationFix',
1059
+ operationId: 'requestPublicRunVisualConfirmFix',
1060
+ httpMethod: 'POST',
1061
+ path: '/api/v1/runs/{runId}/decisions/visual-confirmation/request-fix',
1062
+ summary: 'Request a fix from a visual-confirmation gate',
1063
+ minScope: 'decide',
1064
+ readOnly: false,
1065
+ result: 'value',
1066
+ pathParams: ['runId'],
1067
+ queryParams: [],
1068
+ hasBody: true,
1069
+ invoke: async (client, args) => client.decisions.requestVisualConfirmationFix(str(args, 'runId'), args.body),
1070
+ },
1071
+ {
1072
+ name: 'decisions_re_review',
1073
+ group: 'decisions',
1074
+ method: 'reReview',
1075
+ operationId: 'reReviewPublicRunRequirements',
1076
+ httpMethod: 'POST',
1077
+ path: '/api/v1/runs/{runId}/decisions/requirements/re-review',
1078
+ summary: 'Re-review the incorporated document',
1079
+ minScope: 'decide',
1080
+ readOnly: false,
1081
+ result: 'value',
1082
+ pathParams: ['runId'],
1083
+ queryParams: [],
1084
+ hasBody: false,
1085
+ invoke: async (client, args) => client.decisions.reReview(str(args, 'runId')),
1086
+ },
1087
+ {
1088
+ name: 'decisions_re_review_brainstorm',
1089
+ group: 'decisions',
1090
+ method: 'reReviewBrainstorm',
1091
+ operationId: 'reReviewPublicRunBrainstorm',
1092
+ httpMethod: 'POST',
1093
+ path: '/api/v1/runs/{runId}/decisions/brainstorm/{stage}/re-review',
1094
+ summary: 'Re-run a brainstorm pass',
1095
+ minScope: 'decide',
1096
+ readOnly: false,
1097
+ result: 'value',
1098
+ pathParams: ['runId', 'stage'],
1099
+ queryParams: [],
1100
+ hasBody: false,
1101
+ invoke: async (client, args) => client.decisions.reReviewBrainstorm(str(args, 'runId'), str(args, 'stage')),
1102
+ },
1103
+ {
1104
+ name: 'decisions_re_review_clarity',
1105
+ group: 'decisions',
1106
+ method: 'reReviewClarity',
1107
+ operationId: 'reReviewPublicRunClarity',
1108
+ httpMethod: 'POST',
1109
+ path: '/api/v1/runs/{runId}/decisions/clarity/re-review',
1110
+ summary: 'Re-triage the clarified report',
1111
+ minScope: 'decide',
1112
+ readOnly: false,
1113
+ result: 'value',
1114
+ pathParams: ['runId'],
1115
+ queryParams: [],
1116
+ hasBody: false,
1117
+ invoke: async (client, args) => client.decisions.reReviewClarity(str(args, 'runId')),
1118
+ },
1119
+ {
1120
+ name: 'decisions_resolve_brainstorm_exceeded',
1121
+ group: 'decisions',
1122
+ method: 'resolveBrainstormExceeded',
1123
+ operationId: 'resolvePublicRunBrainstormExceeded',
1124
+ httpMethod: 'POST',
1125
+ path: '/api/v1/runs/{runId}/decisions/brainstorm/{stage}/resolve-exceeded',
1126
+ summary: 'Resolve a brainstorm at its iteration cap',
1127
+ minScope: 'decide',
1128
+ readOnly: false,
1129
+ result: 'value',
1130
+ pathParams: ['runId', 'stage'],
1131
+ queryParams: [],
1132
+ hasBody: true,
1133
+ invoke: async (client, args) => client.decisions.resolveBrainstormExceeded(str(args, 'runId'), str(args, 'stage'), args.body),
1134
+ },
1135
+ {
1136
+ name: 'decisions_resolve_clarity_exceeded',
1137
+ group: 'decisions',
1138
+ method: 'resolveClarityExceeded',
1139
+ operationId: 'resolvePublicRunClarityExceeded',
1140
+ httpMethod: 'POST',
1141
+ path: '/api/v1/runs/{runId}/decisions/clarity/resolve-exceeded',
1142
+ summary: 'Resolve a clarity review at its iteration cap',
1143
+ minScope: 'decide',
1144
+ readOnly: false,
1145
+ result: 'value',
1146
+ pathParams: ['runId'],
1147
+ queryParams: [],
1148
+ hasBody: true,
1149
+ invoke: async (client, args) => client.decisions.resolveClarityExceeded(str(args, 'runId'), args.body),
1150
+ },
1151
+ {
1152
+ name: 'decisions_resolve_exceeded',
1153
+ group: 'decisions',
1154
+ method: 'resolveExceeded',
1155
+ operationId: 'resolvePublicRunRequirementsExceeded',
1156
+ httpMethod: 'POST',
1157
+ path: '/api/v1/runs/{runId}/decisions/requirements/resolve-exceeded',
1158
+ summary: 'Resolve a review at its iteration cap',
1159
+ minScope: 'decide',
1160
+ readOnly: false,
1161
+ result: 'value',
1162
+ pathParams: ['runId'],
1163
+ queryParams: [],
1164
+ hasBody: true,
1165
+ invoke: async (client, args) => client.decisions.resolveExceeded(str(args, 'runId'), args.body),
1166
+ },
1167
+ {
1168
+ name: 'decisions_resolve_input_gate',
1169
+ group: 'decisions',
1170
+ method: 'resolveInputGate',
1171
+ operationId: 'resolvePublicRunInputGate',
1172
+ httpMethod: 'POST',
1173
+ path: '/api/v1/runs/{runId}/decisions/input-gate/resolve',
1174
+ summary: 'Resolve a run parked on the task\'s input check',
1175
+ minScope: 'decide',
1176
+ readOnly: false,
1177
+ result: 'value',
1178
+ pathParams: ['runId'],
1179
+ queryParams: [],
1180
+ hasBody: true,
1181
+ invoke: async (client, args) => client.decisions.resolveInputGate(str(args, 'runId'), args.body),
1182
+ },
1183
+ {
1184
+ name: 'decisions_resolve_judge',
1185
+ group: 'decisions',
1186
+ method: 'resolveJudge',
1187
+ operationId: 'resolvePublicRunJudge',
1188
+ httpMethod: 'POST',
1189
+ path: '/api/v1/runs/{runId}/decisions/judge/resolve',
1190
+ summary: 'Resolve a parked judge verdict',
1191
+ minScope: 'decide',
1192
+ readOnly: false,
1193
+ result: 'value',
1194
+ pathParams: ['runId'],
1195
+ queryParams: [],
1196
+ hasBody: true,
1197
+ invoke: async (client, args) => client.decisions.resolveJudge(str(args, 'runId'), args.body),
1198
+ },
1199
+ {
1200
+ name: 'decisions_resolve_pr_review',
1201
+ group: 'decisions',
1202
+ method: 'resolvePrReview',
1203
+ operationId: 'resolvePublicRunPrReview',
1204
+ httpMethod: 'POST',
1205
+ path: '/api/v1/runs/{runId}/decisions/pr-review/resolve',
1206
+ summary: 'Resolve a parked PR deep review',
1207
+ minScope: 'decide',
1208
+ readOnly: false,
1209
+ result: 'value',
1210
+ pathParams: ['runId'],
1211
+ queryParams: [],
1212
+ hasBody: true,
1213
+ invoke: async (client, args) => client.decisions.resolvePrReview(str(args, 'runId'), args.body),
1214
+ },
1215
+ {
1216
+ name: 'decisions_resolve_step_exceeded',
1217
+ group: 'decisions',
1218
+ method: 'resolveStepExceeded',
1219
+ operationId: 'resolvePublicRunStepExceeded',
1220
+ httpMethod: 'POST',
1221
+ path: '/api/v1/runs/{runId}/decisions/approvals/{approvalId}/resolve-exceeded',
1222
+ summary: 'Resolve a companion gate at its rework cap',
1223
+ minScope: 'decide',
1224
+ readOnly: false,
1225
+ result: 'value',
1226
+ pathParams: ['runId', 'approvalId'],
1227
+ queryParams: [],
1228
+ hasBody: true,
1229
+ invoke: async (client, args) => client.decisions.resolveStepExceeded(str(args, 'runId'), str(args, 'approvalId'), args.body),
1230
+ },
1231
+ {
1232
+ name: 'decisions_send_back_follow_up',
1233
+ group: 'decisions',
1234
+ method: 'sendBackFollowUp',
1235
+ operationId: 'sendBackPublicRunFollowUp',
1236
+ httpMethod: 'POST',
1237
+ path: '/api/v1/runs/{runId}/decisions/follow-ups/items/{itemId}/send-back',
1238
+ summary: 'Send a follow-up item back to the Coder',
1239
+ minScope: 'decide',
1240
+ readOnly: false,
1241
+ result: 'value',
1242
+ pathParams: ['runId', 'itemId'],
1243
+ queryParams: [],
1244
+ hasBody: false,
1245
+ invoke: async (client, args) => client.decisions.sendBackFollowUp(str(args, 'runId'), str(args, 'itemId')),
1246
+ },
1247
+ {
1248
+ name: 'decisions_set_brainstorm_option_status',
1249
+ group: 'decisions',
1250
+ method: 'setBrainstormOptionStatus',
1251
+ operationId: 'setPublicRunBrainstormOptionStatus',
1252
+ httpMethod: 'PATCH',
1253
+ path: '/api/v1/runs/{runId}/decisions/brainstorm/{stage}/options/{itemId}',
1254
+ summary: 'Dismiss or reopen a brainstorm option',
1255
+ minScope: 'decide',
1256
+ readOnly: false,
1257
+ result: 'value',
1258
+ pathParams: ['runId', 'stage', 'itemId'],
1259
+ queryParams: [],
1260
+ hasBody: true,
1261
+ invoke: async (client, args) => client.decisions.setBrainstormOptionStatus(str(args, 'runId'), str(args, 'stage'), str(args, 'itemId'), args.body),
1262
+ },
1263
+ {
1264
+ name: 'decisions_set_clarity_finding_status',
1265
+ group: 'decisions',
1266
+ method: 'setClarityFindingStatus',
1267
+ operationId: 'setPublicRunClarityFindingStatus',
1268
+ httpMethod: 'PATCH',
1269
+ path: '/api/v1/runs/{runId}/decisions/clarity/findings/{itemId}',
1270
+ summary: 'Dismiss or reopen a clarity finding',
1271
+ minScope: 'decide',
1272
+ readOnly: false,
1273
+ result: 'value',
1274
+ pathParams: ['runId', 'itemId'],
1275
+ queryParams: [],
1276
+ hasBody: true,
1277
+ invoke: async (client, args) => client.decisions.setClarityFindingStatus(str(args, 'runId'), str(args, 'itemId'), args.body),
1278
+ },
1279
+ {
1280
+ name: 'decisions_set_finding_status',
1281
+ group: 'decisions',
1282
+ method: 'setFindingStatus',
1283
+ operationId: 'setPublicRunFindingStatus',
1284
+ httpMethod: 'PATCH',
1285
+ path: '/api/v1/runs/{runId}/decisions/requirements/findings/{itemId}',
1286
+ summary: 'Dismiss or reopen a finding',
1287
+ minScope: 'decide',
1288
+ readOnly: false,
1289
+ result: 'value',
1290
+ pathParams: ['runId', 'itemId'],
1291
+ queryParams: [],
1292
+ hasBody: true,
1293
+ invoke: async (client, args) => client.decisions.setFindingStatus(str(args, 'runId'), str(args, 'itemId'), args.body),
1294
+ },
1295
+ {
1296
+ name: 'debug_get_agent_context',
1297
+ group: 'debug',
1298
+ method: 'getAgentContext',
1299
+ operationId: 'getDebugAgentContext',
1300
+ httpMethod: 'GET',
1301
+ path: '/api/v1/debug/agent-context/{snapshotId}',
1302
+ summary: 'Get one agent-context snapshot',
1303
+ minScope: 'read',
1304
+ readOnly: true,
1305
+ result: 'value',
1306
+ pathParams: ['snapshotId'],
1307
+ queryParams: QUERY_DEBUG_GET_AGENT_CONTEXT,
1308
+ hasBody: false,
1309
+ invoke: async (client, args) => client.debug.getAgentContext(str(args, 'snapshotId'), pick(args, QUERY_DEBUG_GET_AGENT_CONTEXT)),
1310
+ },
1311
+ {
1312
+ name: 'debug_get_llm_call',
1313
+ group: 'debug',
1314
+ method: 'getLlmCall',
1315
+ operationId: 'getDebugLlmCall',
1316
+ httpMethod: 'GET',
1317
+ path: '/api/v1/debug/llm-calls/{callId}',
1318
+ summary: 'Get one LLM call',
1319
+ minScope: 'read',
1320
+ readOnly: true,
1321
+ result: 'value',
1322
+ pathParams: ['callId'],
1323
+ queryParams: QUERY_DEBUG_GET_LLM_CALL,
1324
+ hasBody: false,
1325
+ invoke: async (client, args) => client.debug.getLlmCall(str(args, 'callId'), pick(args, QUERY_DEBUG_GET_LLM_CALL)),
1326
+ },
1327
+ {
1328
+ name: 'debug_get_run',
1329
+ group: 'debug',
1330
+ method: 'getRun',
1331
+ operationId: 'getDebugRun',
1332
+ httpMethod: 'GET',
1333
+ path: '/api/v1/debug/runs/{runId}',
1334
+ summary: 'Get a run\'s diagnostic map',
1335
+ minScope: 'read',
1336
+ readOnly: true,
1337
+ result: 'value',
1338
+ pathParams: ['runId'],
1339
+ queryParams: [],
1340
+ hasBody: false,
1341
+ invoke: async (client, args) => client.debug.getRun(str(args, 'runId')),
1342
+ },
1343
+ {
1344
+ name: 'debug_list_agent_context',
1345
+ group: 'debug',
1346
+ method: 'listAgentContext',
1347
+ operationId: 'listDebugAgentContext',
1348
+ httpMethod: 'GET',
1349
+ path: '/api/v1/debug/runs/{runId}/agent-context',
1350
+ summary: 'List a run\'s agent-context dispatches',
1351
+ minScope: 'read',
1352
+ readOnly: true,
1353
+ result: 'value',
1354
+ pathParams: ['runId'],
1355
+ queryParams: QUERY_DEBUG_LIST_AGENT_CONTEXT,
1356
+ hasBody: false,
1357
+ invoke: async (client, args) => client.debug.listAgentContext(str(args, 'runId'), pick(args, QUERY_DEBUG_LIST_AGENT_CONTEXT)),
1358
+ },
1359
+ {
1360
+ name: 'debug_list_llm_calls',
1361
+ group: 'debug',
1362
+ method: 'listLlmCalls',
1363
+ operationId: 'listDebugLlmCalls',
1364
+ httpMethod: 'GET',
1365
+ path: '/api/v1/debug/runs/{runId}/llm-calls',
1366
+ summary: 'List a run\'s LLM calls',
1367
+ minScope: 'read',
1368
+ readOnly: true,
1369
+ result: 'value',
1370
+ pathParams: ['runId'],
1371
+ queryParams: QUERY_DEBUG_LIST_LLM_CALLS,
1372
+ hasBody: false,
1373
+ invoke: async (client, args) => client.debug.listLlmCalls(str(args, 'runId'), pick(args, QUERY_DEBUG_LIST_LLM_CALLS)),
1374
+ },
1375
+ {
1376
+ name: 'debug_list_logs',
1377
+ group: 'debug',
1378
+ method: 'listLogs',
1379
+ operationId: 'listDebugLogs',
1380
+ httpMethod: 'GET',
1381
+ path: '/api/v1/debug/runs/{runId}/logs',
1382
+ summary: 'List a run\'s infrastructure log',
1383
+ minScope: 'read',
1384
+ readOnly: true,
1385
+ result: 'value',
1386
+ pathParams: ['runId'],
1387
+ queryParams: QUERY_DEBUG_LIST_LOGS,
1388
+ hasBody: false,
1389
+ invoke: async (client, args) => client.debug.listLogs(str(args, 'runId'), pick(args, QUERY_DEBUG_LIST_LOGS)),
1390
+ },
1391
+ {
1392
+ name: 'debug_list_runs',
1393
+ group: 'debug',
1394
+ method: 'listRuns',
1395
+ operationId: 'listDebugRuns',
1396
+ httpMethod: 'GET',
1397
+ path: '/api/v1/debug/runs',
1398
+ summary: 'List the workspace\'s runs',
1399
+ minScope: 'read',
1400
+ readOnly: true,
1401
+ result: 'value',
1402
+ pathParams: [],
1403
+ queryParams: QUERY_DEBUG_LIST_RUNS,
1404
+ hasBody: false,
1405
+ invoke: async (client, args) => client.debug.listRuns(pick(args, QUERY_DEBUG_LIST_RUNS)),
1406
+ },
1407
+ {
1408
+ name: 'debug_list_search_queries',
1409
+ group: 'debug',
1410
+ method: 'listSearchQueries',
1411
+ operationId: 'listDebugSearchQueries',
1412
+ httpMethod: 'GET',
1413
+ path: '/api/v1/debug/runs/{runId}/search-queries',
1414
+ summary: 'List a run\'s web searches',
1415
+ minScope: 'read',
1416
+ readOnly: true,
1417
+ result: 'value',
1418
+ pathParams: ['runId'],
1419
+ queryParams: QUERY_DEBUG_LIST_SEARCH_QUERIES,
1420
+ hasBody: false,
1421
+ invoke: async (client, args) => client.debug.listSearchQueries(str(args, 'runId'), pick(args, QUERY_DEBUG_LIST_SEARCH_QUERIES)),
1422
+ },
1423
+ {
1424
+ name: 'debug_list_tool_calls',
1425
+ group: 'debug',
1426
+ method: 'listToolCalls',
1427
+ operationId: 'listDebugToolCalls',
1428
+ httpMethod: 'GET',
1429
+ path: '/api/v1/debug/runs/{runId}/tool-calls',
1430
+ summary: 'List a run\'s tool calls',
1431
+ minScope: 'read',
1432
+ readOnly: true,
1433
+ result: 'value',
1434
+ pathParams: ['runId'],
1435
+ queryParams: QUERY_DEBUG_LIST_TOOL_CALLS,
1436
+ hasBody: false,
1437
+ invoke: async (client, args) => client.debug.listToolCalls(str(args, 'runId'), pick(args, QUERY_DEBUG_LIST_TOOL_CALLS)),
1438
+ },
1439
+ {
1440
+ name: 'evidence_download_artifact',
1441
+ group: 'evidence',
1442
+ method: 'downloadArtifact',
1443
+ operationId: 'getPublicArtifactBlob',
1444
+ httpMethod: 'GET',
1445
+ path: '/api/v1/artifacts/{artifactId}/blob',
1446
+ summary: 'Download an artifact\'s bytes',
1447
+ minScope: 'read',
1448
+ readOnly: true,
1449
+ result: 'binary',
1450
+ pathParams: ['artifactId'],
1451
+ queryParams: [],
1452
+ hasBody: false,
1453
+ invoke: async (client, args) => client.evidence.downloadArtifact(str(args, 'artifactId')),
1454
+ },
1455
+ {
1456
+ name: 'evidence_get_outcome',
1457
+ group: 'evidence',
1458
+ method: 'getOutcome',
1459
+ operationId: 'getPublicRunOutcome',
1460
+ httpMethod: 'GET',
1461
+ path: '/api/v1/runs/{runId}/outcome',
1462
+ summary: 'Get a run\'s outcome summary',
1463
+ minScope: 'read',
1464
+ readOnly: true,
1465
+ result: 'value',
1466
+ pathParams: ['runId'],
1467
+ queryParams: [],
1468
+ hasBody: false,
1469
+ invoke: async (client, args) => client.evidence.getOutcome(str(args, 'runId')),
1470
+ },
1471
+ {
1472
+ name: 'evidence_get_report',
1473
+ group: 'evidence',
1474
+ method: 'getReport',
1475
+ operationId: 'getPublicRunReport',
1476
+ httpMethod: 'GET',
1477
+ path: '/api/v1/runs/{runId}/report',
1478
+ summary: 'Get a run\'s verification report',
1479
+ minScope: 'read',
1480
+ readOnly: true,
1481
+ result: 'value',
1482
+ pathParams: ['runId'],
1483
+ queryParams: [],
1484
+ hasBody: false,
1485
+ invoke: async (client, args) => client.evidence.getReport(str(args, 'runId')),
1486
+ },
1487
+ {
1488
+ name: 'evidence_list_artifacts',
1489
+ group: 'evidence',
1490
+ method: 'listArtifacts',
1491
+ operationId: 'listPublicRunArtifacts',
1492
+ httpMethod: 'GET',
1493
+ path: '/api/v1/runs/{runId}/artifacts',
1494
+ summary: 'List a run\'s captured artifacts',
1495
+ minScope: 'read',
1496
+ readOnly: true,
1497
+ result: 'value',
1498
+ pathParams: ['runId'],
1499
+ queryParams: [],
1500
+ hasBody: false,
1501
+ invoke: async (client, args) => client.evidence.listArtifacts(str(args, 'runId')),
1502
+ },
1503
+ {
1504
+ name: 'keys_create',
1505
+ group: 'keys',
1506
+ method: 'create',
1507
+ operationId: 'createPublicKey',
1508
+ httpMethod: 'POST',
1509
+ path: '/api/v1/keys',
1510
+ summary: 'Provision an API key',
1511
+ minScope: 'admin',
1512
+ readOnly: false,
1513
+ result: 'value',
1514
+ pathParams: [],
1515
+ queryParams: [],
1516
+ hasBody: true,
1517
+ invoke: async (client, args) => client.keys.create(args.body),
1518
+ },
1519
+ {
1520
+ name: 'keys_list',
1521
+ group: 'keys',
1522
+ method: 'list',
1523
+ operationId: 'listPublicKeys',
1524
+ httpMethod: 'GET',
1525
+ path: '/api/v1/keys',
1526
+ summary: 'List the workspace\'s API keys',
1527
+ minScope: 'admin',
1528
+ readOnly: true,
1529
+ result: 'value',
1530
+ pathParams: [],
1531
+ queryParams: [],
1532
+ hasBody: false,
1533
+ invoke: async (client, args) => client.keys.list(),
1534
+ },
1535
+ {
1536
+ name: 'keys_revoke',
1537
+ group: 'keys',
1538
+ method: 'revoke',
1539
+ operationId: 'revokePublicKey',
1540
+ httpMethod: 'DELETE',
1541
+ path: '/api/v1/keys/{keyId}',
1542
+ summary: 'Revoke an API key',
1543
+ minScope: 'admin',
1544
+ readOnly: false,
1545
+ result: 'value',
1546
+ pathParams: ['keyId'],
1547
+ queryParams: [],
1548
+ hasBody: false,
1549
+ invoke: async (client, args) => client.keys.revoke(str(args, 'keyId')),
1550
+ },
1551
+ ];
1552
+ //# sourceMappingURL=bindings.generated.js.map