@alpic-ai/api 0.0.0-staging.0cb031e → 0.0.0-staging.0ce6981

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.mts CHANGED
@@ -1,4 +1,4 @@
1
- import * as _orpc_contract0 from "@orpc/contract";
1
+ import * as _$_orpc_contract0 from "@orpc/contract";
2
2
  import { InferContractRouterInputs, InferContractRouterOutputs } from "@orpc/contract";
3
3
  import { z } from "zod";
4
4
 
@@ -10,7 +10,13 @@ type ApiContext = {
10
10
  awsCognitoUserSub: string | undefined;
11
11
  };
12
12
  };
13
- declare const createEnvironmentContractV1: _orpc_contract0.ContractProcedureBuilderWithInputOutput<z.ZodObject<{
13
+ declare const deploymentStatusSchema: z.ZodEnum<{
14
+ ongoing: "ongoing";
15
+ deployed: "deployed";
16
+ failed: "failed";
17
+ canceled: "canceled";
18
+ }>;
19
+ declare const createEnvironmentContractV1: _$_orpc_contract0.ContractProcedureBuilderWithInputOutput<z.ZodObject<{
14
20
  projectId: z.ZodString;
15
21
  name: z.ZodString;
16
22
  sourceBranch: z.ZodString;
@@ -26,14 +32,14 @@ declare const createEnvironmentContractV1: _orpc_contract0.ContractProcedureBuil
26
32
  urls: z.ZodArray<z.ZodString>;
27
33
  createdAt: z.ZodCoercedDate<unknown>;
28
34
  projectId: z.ZodString;
29
- }, z.core.$strip>, _orpc_contract0.MergedErrorMap<Record<never, never>, {
35
+ }, z.core.$strip>, _$_orpc_contract0.MergedErrorMap<Record<never, never>, {
30
36
  NOT_FOUND: {};
31
37
  BAD_REQUEST: {};
32
38
  }>, Record<never, never>>;
33
39
  declare const contract: {
34
40
  teams: {
35
41
  list: {
36
- v1: _orpc_contract0.ContractProcedureBuilderWithOutput<_orpc_contract0.Schema<unknown, unknown>, z.ZodArray<z.ZodObject<{
42
+ v1: _$_orpc_contract0.ContractProcedureBuilderWithOutput<_$_orpc_contract0.Schema<unknown, unknown>, z.ZodArray<z.ZodObject<{
37
43
  id: z.ZodString;
38
44
  name: z.ZodString;
39
45
  createdAt: z.ZodCoercedDate<unknown>;
@@ -43,7 +49,7 @@ declare const contract: {
43
49
  };
44
50
  analytics: {
45
51
  get: {
46
- v1: _orpc_contract0.ContractProcedureBuilderWithInputOutput<z.ZodObject<{
52
+ v1: _$_orpc_contract0.ContractProcedureBuilderWithInputOutput<z.ZodObject<{
47
53
  projectId: z.ZodString;
48
54
  startTimestamp: z.ZodCoercedNumber<unknown>;
49
55
  endTimestamp: z.ZodCoercedNumber<unknown>;
@@ -86,7 +92,7 @@ declare const contract: {
86
92
  categories: z.ZodRecord<z.ZodString, z.ZodUnknown>;
87
93
  }, z.core.$strip>>;
88
94
  }, z.core.$strip>;
89
- }, z.core.$strip>, _orpc_contract0.MergedErrorMap<Record<never, never>, {
95
+ }, z.core.$strip>, _$_orpc_contract0.MergedErrorMap<Record<never, never>, {
90
96
  NOT_FOUND: {};
91
97
  BAD_REQUEST: {};
92
98
  }>, Record<never, never>>;
@@ -94,8 +100,15 @@ declare const contract: {
94
100
  };
95
101
  deployments: {
96
102
  list: {
97
- v1: _orpc_contract0.ContractProcedureBuilderWithInputOutput<z.ZodObject<{
103
+ v1: _$_orpc_contract0.ContractProcedureBuilderWithInputOutput<z.ZodObject<{
98
104
  projectId: z.ZodString;
105
+ status: z.ZodOptional<z.ZodArray<z.ZodEnum<{
106
+ ongoing: "ongoing";
107
+ deployed: "deployed";
108
+ failed: "failed";
109
+ canceled: "canceled";
110
+ }>>>;
111
+ environmentId: z.ZodOptional<z.ZodString>;
99
112
  }, z.core.$strip>, z.ZodArray<z.ZodObject<{
100
113
  id: z.ZodString;
101
114
  status: z.ZodEnum<{
@@ -111,14 +124,16 @@ declare const contract: {
111
124
  authorAvatarUrl: z.ZodNullable<z.ZodString>;
112
125
  startedAt: z.ZodNullable<z.ZodCoercedDate<unknown>>;
113
126
  completedAt: z.ZodNullable<z.ZodCoercedDate<unknown>>;
114
- isCurrent: z.ZodBoolean;
115
127
  environmentId: z.ZodString;
116
- }, z.core.$strip>>, _orpc_contract0.MergedErrorMap<Record<never, never>, {
128
+ environmentName: z.ZodString;
129
+ isCurrent: z.ZodBoolean;
130
+ deploymentPageUrl: z.ZodNullable<z.ZodURL>;
131
+ }, z.core.$strip>>, _$_orpc_contract0.MergedErrorMap<Record<never, never>, {
117
132
  NOT_FOUND: {};
118
133
  }>, Record<never, never>>;
119
134
  };
120
135
  get: {
121
- v1: _orpc_contract0.ContractProcedureBuilderWithInputOutput<z.ZodObject<{
136
+ v1: _$_orpc_contract0.ContractProcedureBuilderWithInputOutput<z.ZodObject<{
122
137
  deploymentId: z.ZodString;
123
138
  }, z.core.$strip>, z.ZodObject<{
124
139
  id: z.ZodString;
@@ -135,22 +150,25 @@ declare const contract: {
135
150
  authorAvatarUrl: z.ZodNullable<z.ZodString>;
136
151
  startedAt: z.ZodNullable<z.ZodCoercedDate<unknown>>;
137
152
  completedAt: z.ZodNullable<z.ZodCoercedDate<unknown>>;
153
+ environmentId: z.ZodString;
154
+ environmentName: z.ZodString;
155
+ isCurrent: z.ZodBoolean;
138
156
  deploymentPageUrl: z.ZodNullable<z.ZodURL>;
139
- }, z.core.$strip>, _orpc_contract0.MergedErrorMap<Record<never, never>, {
157
+ }, z.core.$strip>, _$_orpc_contract0.MergedErrorMap<Record<never, never>, {
140
158
  NOT_FOUND: {};
141
159
  }>, Record<never, never>>;
142
160
  };
143
161
  uploadArtifact: {
144
- v1: _orpc_contract0.ContractProcedureBuilderWithInputOutput<z.ZodOptional<z.ZodObject<{
162
+ v1: _$_orpc_contract0.ContractProcedureBuilderWithInputOutput<z.ZodOptional<z.ZodObject<{
145
163
  teamId: z.ZodOptional<z.ZodString>;
146
164
  }, z.core.$strip>>, z.ZodObject<{
147
- uploadUrl: z.ZodString;
165
+ uploadUrl: z.ZodURL;
148
166
  token: z.ZodString;
149
167
  expiresAt: z.ZodCoercedDate<unknown>;
150
168
  }, z.core.$strip>, Record<never, never>, Record<never, never>>;
151
169
  };
152
170
  getLogs: {
153
- v1: _orpc_contract0.ContractProcedureBuilderWithInputOutput<z.ZodObject<{
171
+ v1: _$_orpc_contract0.ContractProcedureBuilderWithInputOutput<z.ZodObject<{
154
172
  deploymentId: z.ZodString;
155
173
  }, z.core.$strip>, z.ZodObject<{
156
174
  logs: z.ZodArray<z.ZodObject<{
@@ -158,14 +176,14 @@ declare const contract: {
158
176
  content: z.ZodOptional<z.ZodString>;
159
177
  }, z.core.$strip>>;
160
178
  hasMoreLogs: z.ZodBoolean;
161
- }, z.core.$strip>, _orpc_contract0.MergedErrorMap<Record<never, never>, {
179
+ }, z.core.$strip>, _$_orpc_contract0.MergedErrorMap<Record<never, never>, {
162
180
  NOT_FOUND: {};
163
181
  }>, Record<never, never>>;
164
182
  };
165
183
  };
166
184
  environments: {
167
185
  create: {
168
- v1: _orpc_contract0.ContractProcedureBuilderWithInputOutput<z.ZodObject<{
186
+ v1: _$_orpc_contract0.ContractProcedureBuilderWithInputOutput<z.ZodObject<{
169
187
  projectId: z.ZodString;
170
188
  name: z.ZodString;
171
189
  sourceBranch: z.ZodString;
@@ -181,13 +199,13 @@ declare const contract: {
181
199
  urls: z.ZodArray<z.ZodString>;
182
200
  createdAt: z.ZodCoercedDate<unknown>;
183
201
  projectId: z.ZodString;
184
- }, z.core.$strip>, _orpc_contract0.MergedErrorMap<Record<never, never>, {
202
+ }, z.core.$strip>, _$_orpc_contract0.MergedErrorMap<Record<never, never>, {
185
203
  NOT_FOUND: {};
186
204
  BAD_REQUEST: {};
187
205
  }>, Record<never, never>>;
188
206
  };
189
207
  get: {
190
- v1: _orpc_contract0.ContractProcedureBuilderWithInputOutput<z.ZodObject<{
208
+ v1: _$_orpc_contract0.ContractProcedureBuilderWithInputOutput<z.ZodObject<{
191
209
  environmentId: z.ZodString;
192
210
  }, z.core.$strip>, z.ZodObject<{
193
211
  id: z.ZodString;
@@ -197,12 +215,12 @@ declare const contract: {
197
215
  domains: z.ZodArray<z.ZodURL>;
198
216
  createdAt: z.ZodCoercedDate<unknown>;
199
217
  projectId: z.ZodString;
200
- }, z.core.$strip>, _orpc_contract0.MergedErrorMap<Record<never, never>, {
218
+ }, z.core.$strip>, _$_orpc_contract0.MergedErrorMap<Record<never, never>, {
201
219
  NOT_FOUND: {};
202
220
  }>, Record<never, never>>;
203
221
  };
204
222
  deploy: {
205
- v1: _orpc_contract0.ContractProcedureBuilderWithInputOutput<z.ZodObject<{
223
+ v1: _$_orpc_contract0.ContractProcedureBuilderWithInputOutput<z.ZodObject<{
206
224
  environmentId: z.ZodString;
207
225
  token: z.ZodOptional<z.ZodString>;
208
226
  }, z.core.$strip>, z.ZodObject<{
@@ -220,8 +238,79 @@ declare const contract: {
220
238
  authorAvatarUrl: z.ZodNullable<z.ZodString>;
221
239
  startedAt: z.ZodNullable<z.ZodCoercedDate<unknown>>;
222
240
  completedAt: z.ZodNullable<z.ZodCoercedDate<unknown>>;
241
+ environmentId: z.ZodString;
242
+ environmentName: z.ZodString;
243
+ isCurrent: z.ZodBoolean;
223
244
  deploymentPageUrl: z.ZodNullable<z.ZodURL>;
224
- }, z.core.$strip>, _orpc_contract0.MergedErrorMap<Record<never, never>, {
245
+ }, z.core.$strip>, _$_orpc_contract0.MergedErrorMap<Record<never, never>, {
246
+ NOT_FOUND: {};
247
+ BAD_REQUEST: {};
248
+ }>, Record<never, never>>;
249
+ };
250
+ getLogs: {
251
+ v1: _$_orpc_contract0.ContractProcedureBuilderWithInputOutput<z.ZodObject<{
252
+ environmentId: z.ZodString;
253
+ since: z.ZodOptional<z.ZodString>;
254
+ until: z.ZodOptional<z.ZodString>;
255
+ limit: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
256
+ level: z.ZodOptional<z.ZodArray<z.ZodEnum<{
257
+ INFO: "INFO";
258
+ ERROR: "ERROR";
259
+ WARNING: "WARNING";
260
+ DEBUG: "DEBUG";
261
+ }>>>;
262
+ search: z.ZodOptional<z.ZodString>;
263
+ nextToken: z.ZodOptional<z.ZodString>;
264
+ }, z.core.$strip>, z.ZodObject<{
265
+ logs: z.ZodArray<z.ZodObject<{
266
+ timestamp: z.ZodCoercedDate<unknown>;
267
+ type: z.ZodEnum<{
268
+ INFO: "INFO";
269
+ ERROR: "ERROR";
270
+ WARNING: "WARNING";
271
+ DEBUG: "DEBUG";
272
+ START: "START";
273
+ END: "END";
274
+ }>;
275
+ requestId: z.ZodString;
276
+ content: z.ZodOptional<z.ZodString>;
277
+ method: z.ZodOptional<z.ZodString>;
278
+ durationInMs: z.ZodOptional<z.ZodNumber>;
279
+ }, z.core.$strip>>;
280
+ nextToken: z.ZodNullable<z.ZodString>;
281
+ }, z.core.$strip>, _$_orpc_contract0.MergedErrorMap<Record<never, never>, {
282
+ NOT_FOUND: {};
283
+ BAD_REQUEST: {};
284
+ }>, Record<never, never>>;
285
+ };
286
+ getLatestLogs: {
287
+ v1: _$_orpc_contract0.ContractProcedureBuilderWithInputOutput<z.ZodObject<{
288
+ environmentId: z.ZodString;
289
+ limit: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
290
+ level: z.ZodOptional<z.ZodArray<z.ZodEnum<{
291
+ INFO: "INFO";
292
+ ERROR: "ERROR";
293
+ WARNING: "WARNING";
294
+ DEBUG: "DEBUG";
295
+ }>>>;
296
+ search: z.ZodOptional<z.ZodString>;
297
+ }, z.core.$strip>, z.ZodObject<{
298
+ logs: z.ZodArray<z.ZodObject<{
299
+ timestamp: z.ZodCoercedDate<unknown>;
300
+ type: z.ZodEnum<{
301
+ INFO: "INFO";
302
+ ERROR: "ERROR";
303
+ WARNING: "WARNING";
304
+ DEBUG: "DEBUG";
305
+ START: "START";
306
+ END: "END";
307
+ }>;
308
+ requestId: z.ZodString;
309
+ content: z.ZodOptional<z.ZodString>;
310
+ method: z.ZodOptional<z.ZodString>;
311
+ durationInMs: z.ZodOptional<z.ZodNumber>;
312
+ }, z.core.$strip>>;
313
+ }, z.core.$strip>, _$_orpc_contract0.MergedErrorMap<Record<never, never>, {
225
314
  NOT_FOUND: {};
226
315
  BAD_REQUEST: {};
227
316
  }>, Record<never, never>>;
@@ -229,7 +318,7 @@ declare const contract: {
229
318
  };
230
319
  environmentVariables: {
231
320
  list: {
232
- v1: _orpc_contract0.ContractProcedureBuilderWithInputOutput<z.ZodObject<{
321
+ v1: _$_orpc_contract0.ContractProcedureBuilderWithInputOutput<z.ZodObject<{
233
322
  environmentId: z.ZodString;
234
323
  }, z.core.$strip>, z.ZodArray<z.ZodObject<{
235
324
  id: z.ZodString;
@@ -237,12 +326,12 @@ declare const contract: {
237
326
  value: z.ZodString;
238
327
  isSecret: z.ZodBoolean;
239
328
  createdAt: z.ZodCoercedDate<unknown>;
240
- }, z.core.$strip>>, _orpc_contract0.MergedErrorMap<Record<never, never>, {
329
+ }, z.core.$strip>>, _$_orpc_contract0.MergedErrorMap<Record<never, never>, {
241
330
  NOT_FOUND: {};
242
331
  }>, Record<never, never>>;
243
332
  };
244
333
  create: {
245
- v1: _orpc_contract0.ContractProcedureBuilderWithInputOutput<z.ZodObject<{
334
+ v1: _$_orpc_contract0.ContractProcedureBuilderWithInputOutput<z.ZodObject<{
246
335
  environmentId: z.ZodString;
247
336
  environmentVariables: z.ZodArray<z.ZodObject<{
248
337
  key: z.ZodString;
@@ -251,37 +340,37 @@ declare const contract: {
251
340
  }, z.core.$strip>>;
252
341
  }, z.core.$strip>, z.ZodObject<{
253
342
  success: z.ZodLiteral<true>;
254
- }, z.core.$strip>, _orpc_contract0.MergedErrorMap<Record<never, never>, {
343
+ }, z.core.$strip>, _$_orpc_contract0.MergedErrorMap<Record<never, never>, {
255
344
  NOT_FOUND: {};
256
345
  BAD_REQUEST: {};
257
346
  }>, Record<never, never>>;
258
347
  };
259
348
  update: {
260
- v1: _orpc_contract0.ContractProcedureBuilderWithInputOutput<z.ZodObject<{
349
+ v1: _$_orpc_contract0.ContractProcedureBuilderWithInputOutput<z.ZodObject<{
261
350
  environmentVariableId: z.ZodString;
262
351
  key: z.ZodString;
263
352
  value: z.ZodOptional<z.ZodString>;
264
- isSecret: z.ZodDefault<z.ZodBoolean>;
353
+ isSecret: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
265
354
  }, z.core.$strip>, z.ZodObject<{
266
355
  success: z.ZodLiteral<true>;
267
- }, z.core.$strip>, _orpc_contract0.MergedErrorMap<Record<never, never>, {
356
+ }, z.core.$strip>, _$_orpc_contract0.MergedErrorMap<Record<never, never>, {
268
357
  NOT_FOUND: {};
269
358
  BAD_REQUEST: {};
270
359
  }>, Record<never, never>>;
271
360
  };
272
361
  delete: {
273
- v1: _orpc_contract0.ContractProcedureBuilderWithInputOutput<z.ZodObject<{
362
+ v1: _$_orpc_contract0.ContractProcedureBuilderWithInputOutput<z.ZodObject<{
274
363
  environmentVariableId: z.ZodString;
275
364
  }, z.core.$strip>, z.ZodObject<{
276
365
  success: z.ZodLiteral<true>;
277
- }, z.core.$strip>, _orpc_contract0.MergedErrorMap<Record<never, never>, {
366
+ }, z.core.$strip>, _$_orpc_contract0.MergedErrorMap<Record<never, never>, {
278
367
  NOT_FOUND: {};
279
368
  }>, Record<never, never>>;
280
369
  };
281
370
  };
282
371
  projects: {
283
372
  update: {
284
- v1: _orpc_contract0.ContractProcedureBuilderWithInputOutput<z.ZodObject<{
373
+ v1: _$_orpc_contract0.ContractProcedureBuilderWithInputOutput<z.ZodObject<{
285
374
  projectId: z.ZodString;
286
375
  name: z.ZodOptional<z.ZodString>;
287
376
  sourceRepository: z.ZodOptional<z.ZodNullable<z.ZodString>>;
@@ -353,13 +442,13 @@ declare const contract: {
353
442
  completedAt: z.ZodNullable<z.ZodCoercedDate<unknown>>;
354
443
  }, z.core.$strip>>;
355
444
  }, z.core.$strip>>;
356
- }, z.core.$strip>, _orpc_contract0.MergedErrorMap<Record<never, never>, {
445
+ }, z.core.$strip>, _$_orpc_contract0.MergedErrorMap<Record<never, never>, {
357
446
  NOT_FOUND: {};
358
447
  BAD_REQUEST: {};
359
448
  }>, Record<never, never>>;
360
449
  };
361
450
  get: {
362
- v1: _orpc_contract0.ContractProcedureBuilderWithInputOutput<z.ZodObject<{
451
+ v1: _$_orpc_contract0.ContractProcedureBuilderWithInputOutput<z.ZodObject<{
363
452
  projectId: z.ZodString;
364
453
  }, z.core.$strip>, z.ZodObject<{
365
454
  id: z.ZodString;
@@ -429,12 +518,12 @@ declare const contract: {
429
518
  completedAt: z.ZodNullable<z.ZodCoercedDate<unknown>>;
430
519
  }, z.core.$strip>>;
431
520
  }, z.core.$strip>>;
432
- }, z.core.$strip>, _orpc_contract0.MergedErrorMap<Record<never, never>, {
521
+ }, z.core.$strip>, _$_orpc_contract0.MergedErrorMap<Record<never, never>, {
433
522
  NOT_FOUND: {};
434
523
  }>, Record<never, never>>;
435
524
  };
436
525
  list: {
437
- v1: _orpc_contract0.ContractProcedureBuilderWithInputOutput<z.ZodOptional<z.ZodObject<{
526
+ v1: _$_orpc_contract0.ContractProcedureBuilderWithInputOutput<z.ZodOptional<z.ZodObject<{
438
527
  teamId: z.ZodOptional<z.ZodString>;
439
528
  }, z.core.$strip>>, z.ZodArray<z.ZodObject<{
440
529
  id: z.ZodString;
@@ -507,7 +596,7 @@ declare const contract: {
507
596
  }, z.core.$strip>>, Record<never, never>, Record<never, never>>;
508
597
  };
509
598
  create: {
510
- v1: _orpc_contract0.ContractProcedureBuilderWithInputOutput<z.ZodObject<{
599
+ v1: _$_orpc_contract0.ContractProcedureBuilderWithInputOutput<z.ZodObject<{
511
600
  teamId: z.ZodOptional<z.ZodString>;
512
601
  name: z.ZodString;
513
602
  sourceRepository: z.ZodOptional<z.ZodString>;
@@ -565,30 +654,275 @@ declare const contract: {
565
654
  installCommand: z.ZodNullable<z.ZodString>;
566
655
  startCommand: z.ZodNullable<z.ZodString>;
567
656
  createdAt: z.ZodCoercedDate<unknown>;
568
- }, z.core.$strip>, _orpc_contract0.MergedErrorMap<Record<never, never>, {
657
+ }, z.core.$strip>, _$_orpc_contract0.MergedErrorMap<Record<never, never>, {
569
658
  NOT_FOUND: {};
570
659
  BAD_REQUEST: {};
571
660
  }>, Record<never, never>>;
572
661
  };
573
662
  delete: {
574
- v1: _orpc_contract0.ContractProcedureBuilderWithInputOutput<z.ZodObject<{
663
+ v1: _$_orpc_contract0.ContractProcedureBuilderWithInputOutput<z.ZodObject<{
575
664
  projectId: z.ZodString;
576
665
  }, z.core.$strip>, z.ZodObject<{
577
666
  success: z.ZodLiteral<true>;
578
- }, z.core.$strip>, _orpc_contract0.MergedErrorMap<Record<never, never>, {
667
+ }, z.core.$strip>, _$_orpc_contract0.MergedErrorMap<Record<never, never>, {
579
668
  NOT_FOUND: {};
580
669
  }>, Record<never, never>>;
581
670
  };
582
671
  };
672
+ playground: {
673
+ get: {
674
+ v1: _$_orpc_contract0.ContractProcedureBuilderWithInputOutput<z.ZodObject<{
675
+ environmentId: z.ZodString;
676
+ }, z.core.$strip>, z.ZodObject<{
677
+ isPlaygroundEnabled: z.ZodBoolean;
678
+ serverMetadata: z.ZodNullable<z.ZodObject<{
679
+ name: z.ZodString;
680
+ description: z.ZodString;
681
+ headers: z.ZodArray<z.ZodObject<{
682
+ name: z.ZodString;
683
+ description: z.ZodString;
684
+ isRequired: z.ZodBoolean;
685
+ isSecret: z.ZodBoolean;
686
+ }, z.core.$strip>>;
687
+ examplePrompts: z.ZodArray<z.ZodObject<{
688
+ title: z.ZodString;
689
+ prompt: z.ZodString;
690
+ }, z.core.$strip>>;
691
+ }, z.core.$strip>>;
692
+ }, z.core.$strip>, _$_orpc_contract0.MergedErrorMap<Record<never, never>, {
693
+ NOT_FOUND: {};
694
+ }>, Record<never, never>>;
695
+ };
696
+ upsert: {
697
+ v1: _$_orpc_contract0.ContractProcedureBuilderWithInputOutput<z.ZodObject<{
698
+ environmentId: z.ZodString;
699
+ isPlaygroundEnabled: z.ZodOptional<z.ZodBoolean>;
700
+ name: z.ZodOptional<z.ZodString>;
701
+ description: z.ZodOptional<z.ZodString>;
702
+ headers: z.ZodOptional<z.ZodArray<z.ZodObject<{
703
+ name: z.ZodString;
704
+ description: z.ZodString;
705
+ isRequired: z.ZodDefault<z.ZodBoolean>;
706
+ isSecret: z.ZodDefault<z.ZodBoolean>;
707
+ }, z.core.$strip>>>;
708
+ examplePrompts: z.ZodOptional<z.ZodArray<z.ZodObject<{
709
+ title: z.ZodString;
710
+ prompt: z.ZodString;
711
+ }, z.core.$strip>>>;
712
+ }, z.core.$strip>, z.ZodObject<{
713
+ isPlaygroundEnabled: z.ZodBoolean;
714
+ serverMetadata: z.ZodNullable<z.ZodObject<{
715
+ name: z.ZodString;
716
+ description: z.ZodString;
717
+ headers: z.ZodArray<z.ZodObject<{
718
+ name: z.ZodString;
719
+ description: z.ZodString;
720
+ isRequired: z.ZodBoolean;
721
+ isSecret: z.ZodBoolean;
722
+ }, z.core.$strip>>;
723
+ examplePrompts: z.ZodArray<z.ZodObject<{
724
+ title: z.ZodString;
725
+ prompt: z.ZodString;
726
+ }, z.core.$strip>>;
727
+ }, z.core.$strip>>;
728
+ }, z.core.$strip>, _$_orpc_contract0.MergedErrorMap<Record<never, never>, {
729
+ NOT_FOUND: {};
730
+ BAD_REQUEST: {};
731
+ }>, Record<never, never>>;
732
+ };
733
+ };
583
734
  tunnels: {
584
735
  getTicket: {
585
- v1: _orpc_contract0.ContractProcedureBuilderWithOutput<_orpc_contract0.Schema<unknown, unknown>, z.ZodObject<{
736
+ v1: _$_orpc_contract0.ContractProcedureBuilderWithOutput<_$_orpc_contract0.Schema<unknown, unknown>, z.ZodObject<{
586
737
  subdomain: z.ZodString;
587
738
  ticket: z.ZodString;
588
739
  tunnelHost: z.ZodString;
589
740
  }, z.core.$strip>, Record<never, never>, Record<never, never>>;
590
741
  };
591
742
  };
743
+ distribution: {
744
+ publish: {
745
+ v1: _$_orpc_contract0.ContractProcedureBuilderWithInputOutput<z.ZodObject<{
746
+ projectId: z.ZodString;
747
+ domain: z.ZodString;
748
+ title: z.ZodString;
749
+ description: z.ZodString;
750
+ websiteUrl: z.ZodOptional<z.ZodURL>;
751
+ iconSrc: z.ZodOptional<z.ZodURL>;
752
+ dryRun: z.ZodOptional<z.ZodBoolean>;
753
+ }, z.core.$strip>, z.ZodObject<{
754
+ serverFields: z.ZodObject<{
755
+ $schema: z.ZodString;
756
+ name: z.ZodString;
757
+ description: z.ZodString;
758
+ version: z.ZodOptional<z.ZodString>;
759
+ title: z.ZodOptional<z.ZodString>;
760
+ websiteUrl: z.ZodOptional<z.ZodURL>;
761
+ icons: z.ZodOptional<z.ZodArray<z.ZodObject<{
762
+ src: z.ZodURL;
763
+ mimeType: z.ZodOptional<z.ZodString>;
764
+ sizes: z.ZodOptional<z.ZodArray<z.ZodString>>;
765
+ }, z.core.$strip>>>;
766
+ remotes: z.ZodOptional<z.ZodArray<z.ZodObject<{
767
+ type: z.ZodString;
768
+ url: z.ZodOptional<z.ZodURL>;
769
+ headers: z.ZodOptional<z.ZodArray<z.ZodObject<{
770
+ name: z.ZodString;
771
+ description: z.ZodString;
772
+ isRequired: z.ZodOptional<z.ZodBoolean>;
773
+ isSecret: z.ZodOptional<z.ZodBoolean>;
774
+ }, z.core.$strip>>>;
775
+ }, z.core.$strip>>>;
776
+ }, z.core.$strip>;
777
+ }, z.core.$strip>, _$_orpc_contract0.MergedErrorMap<Record<never, never>, {
778
+ NOT_FOUND: {};
779
+ BAD_REQUEST: {};
780
+ }>, Record<never, never>>;
781
+ };
782
+ get: {
783
+ v1: _$_orpc_contract0.ContractProcedureBuilderWithInputOutput<z.ZodObject<{
784
+ projectId: z.ZodString;
785
+ domain: z.ZodString;
786
+ }, z.core.$strip>, z.ZodObject<{
787
+ serverFields: z.ZodObject<{
788
+ $schema: z.ZodString;
789
+ name: z.ZodString;
790
+ description: z.ZodString;
791
+ version: z.ZodOptional<z.ZodString>;
792
+ title: z.ZodOptional<z.ZodString>;
793
+ websiteUrl: z.ZodOptional<z.ZodURL>;
794
+ icons: z.ZodOptional<z.ZodArray<z.ZodObject<{
795
+ src: z.ZodURL;
796
+ mimeType: z.ZodOptional<z.ZodString>;
797
+ sizes: z.ZodOptional<z.ZodArray<z.ZodString>>;
798
+ }, z.core.$strip>>>;
799
+ remotes: z.ZodOptional<z.ZodArray<z.ZodObject<{
800
+ type: z.ZodString;
801
+ url: z.ZodOptional<z.ZodURL>;
802
+ headers: z.ZodOptional<z.ZodArray<z.ZodObject<{
803
+ name: z.ZodString;
804
+ description: z.ZodString;
805
+ isRequired: z.ZodOptional<z.ZodBoolean>;
806
+ isSecret: z.ZodOptional<z.ZodBoolean>;
807
+ }, z.core.$strip>>>;
808
+ }, z.core.$strip>>>;
809
+ }, z.core.$strip>;
810
+ }, z.core.$strip>, _$_orpc_contract0.MergedErrorMap<Record<never, never>, {
811
+ NOT_FOUND: {};
812
+ BAD_REQUEST: {};
813
+ }>, Record<never, never>>;
814
+ };
815
+ };
816
+ beacon: {
817
+ create: {
818
+ v1: _$_orpc_contract0.ContractProcedureBuilderWithInputOutput<z.ZodObject<{
819
+ targetUrl: z.ZodURL;
820
+ teamId: z.ZodOptional<z.ZodString>;
821
+ projectId: z.ZodOptional<z.ZodString>;
822
+ excludeCategories: z.ZodOptional<z.ZodArray<z.ZodEnum<{
823
+ connectivity: "connectivity";
824
+ "tool-metadata": "tool-metadata";
825
+ "resource-metadata": "resource-metadata";
826
+ performance: "performance";
827
+ e2e: "e2e";
828
+ }>>>;
829
+ }, z.core.$strip>, z.ZodObject<{
830
+ id: z.ZodString;
831
+ }, z.core.$strip>, _$_orpc_contract0.MergedErrorMap<Record<never, never>, {
832
+ NOT_FOUND: {};
833
+ BAD_REQUEST: {};
834
+ }>, Record<never, never>>;
835
+ };
836
+ get: {
837
+ v1: _$_orpc_contract0.ContractProcedureBuilderWithInputOutput<z.ZodObject<{
838
+ auditId: z.ZodString;
839
+ }, z.core.$strip>, z.ZodObject<{
840
+ id: z.ZodString;
841
+ targetUrl: z.ZodString;
842
+ status: z.ZodEnum<{
843
+ failed: "failed";
844
+ pending: "pending";
845
+ partial: "partial";
846
+ completed: "completed";
847
+ }>;
848
+ durationMs: z.ZodNullable<z.ZodNumber>;
849
+ createdAt: z.ZodCoercedDate<unknown>;
850
+ report: z.ZodNullable<z.ZodObject<{
851
+ schemaVersion: z.ZodString;
852
+ auditId: z.ZodString;
853
+ targetUrl: z.ZodString;
854
+ startedAt: z.ZodString;
855
+ completedAt: z.ZodString;
856
+ durationMs: z.ZodNumber;
857
+ results: z.ZodArray<z.ZodObject<{
858
+ checkId: z.ZodString;
859
+ checkName: z.ZodString;
860
+ description: z.ZodString;
861
+ status: z.ZodEnum<{
862
+ pending: "pending";
863
+ pass: "pass";
864
+ fail: "fail";
865
+ skip: "skip";
866
+ }>;
867
+ message: z.ZodString;
868
+ skipReason: z.ZodOptional<z.ZodString>;
869
+ severity: z.ZodEnum<{
870
+ error: "error";
871
+ warning: "warning";
872
+ info: "info";
873
+ }>;
874
+ category: z.ZodEnum<{
875
+ connectivity: "connectivity";
876
+ "tool-metadata": "tool-metadata";
877
+ "resource-metadata": "resource-metadata";
878
+ performance: "performance";
879
+ e2e: "e2e";
880
+ }>;
881
+ scope: z.ZodEnum<{
882
+ server: "server";
883
+ view: "view";
884
+ }>;
885
+ platforms: z.ZodOptional<z.ZodReadonly<z.ZodArray<z.ZodEnum<{
886
+ chatgpt: "chatgpt";
887
+ claudeai: "claudeai";
888
+ }>>>>;
889
+ durationMs: z.ZodNumber;
890
+ details: z.ZodOptional<z.ZodArray<z.ZodObject<{
891
+ label: z.ZodString;
892
+ value: z.ZodOptional<z.ZodString>;
893
+ }, z.core.$strip>>>;
894
+ hint: z.ZodOptional<z.ZodObject<{
895
+ text: z.ZodString;
896
+ }, z.core.$strip>>;
897
+ }, z.core.$strip>>;
898
+ requiresAuth: z.ZodBoolean;
899
+ hasViewSupport: z.ZodBoolean;
900
+ viewPlatforms: z.ZodOptional<z.ZodReadonly<z.ZodArray<z.ZodEnum<{
901
+ chatgpt: "chatgpt";
902
+ claudeai: "claudeai";
903
+ }>>>>;
904
+ isReadyForPlatform: z.ZodRecord<z.ZodEnum<{
905
+ chatgpt: "chatgpt";
906
+ claudeai: "claudeai";
907
+ }>, z.ZodBoolean>;
908
+ widgetScreenshotKeys: z.ZodObject<{
909
+ chatgpt: z.ZodOptional<z.ZodString>;
910
+ claudeai: z.ZodOptional<z.ZodString>;
911
+ }, z.core.$strip>;
912
+ widgetScreenshots: z.ZodObject<{
913
+ chatgpt: z.ZodOptional<z.ZodObject<{
914
+ url: z.ZodString;
915
+ }, z.core.$strip>>;
916
+ claudeai: z.ZodOptional<z.ZodObject<{
917
+ url: z.ZodString;
918
+ }, z.core.$strip>>;
919
+ }, z.core.$strip>;
920
+ }, z.core.$strip>>;
921
+ }, z.core.$strip>, _$_orpc_contract0.MergedErrorMap<Record<never, never>, {
922
+ NOT_FOUND: {};
923
+ }>, Record<never, never>>;
924
+ };
925
+ };
592
926
  };
593
927
  type RouterInput = InferContractRouterInputs<typeof contract>;
594
928
  type RouterOutput = InferContractRouterOutputs<typeof contract>;
@@ -604,6 +938,11 @@ declare const environmentVariablesSchema: z.ZodArray<z.ZodObject<{
604
938
  value: z.ZodString;
605
939
  isSecret: z.ZodDefault<z.ZodBoolean>;
606
940
  }, z.core.$strip>>;
941
+ declare const updateEnvironmentVariableSchema: z.ZodObject<{
942
+ key: z.ZodString;
943
+ value: z.ZodOptional<z.ZodString>;
944
+ isSecret: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
945
+ }, z.core.$strip>;
607
946
  declare const buildSettingsSchema: z.ZodObject<{
608
947
  installCommand: z.ZodOptional<z.ZodString>;
609
948
  buildCommand: z.ZodOptional<z.ZodString>;
@@ -623,5 +962,38 @@ declare const transportSchema: z.ZodEnum<{
623
962
  streamablehttp: "streamablehttp";
624
963
  }>;
625
964
  type Transport = z.infer<typeof transportSchema>;
965
+ declare const playgroundHeaderSchema: z.ZodObject<{
966
+ name: z.ZodString;
967
+ description: z.ZodString;
968
+ isRequired: z.ZodDefault<z.ZodBoolean>;
969
+ isSecret: z.ZodDefault<z.ZodBoolean>;
970
+ }, z.core.$strip>;
971
+ declare const playgroundExamplePromptSchema: z.ZodObject<{
972
+ title: z.ZodString;
973
+ prompt: z.ZodString;
974
+ }, z.core.$strip>;
975
+ declare const serverFieldsSchema: z.ZodObject<{
976
+ $schema: z.ZodString;
977
+ name: z.ZodString;
978
+ description: z.ZodString;
979
+ version: z.ZodOptional<z.ZodString>;
980
+ title: z.ZodOptional<z.ZodString>;
981
+ websiteUrl: z.ZodOptional<z.ZodURL>;
982
+ icons: z.ZodOptional<z.ZodArray<z.ZodObject<{
983
+ src: z.ZodURL;
984
+ mimeType: z.ZodOptional<z.ZodString>;
985
+ sizes: z.ZodOptional<z.ZodArray<z.ZodString>>;
986
+ }, z.core.$strip>>>;
987
+ remotes: z.ZodOptional<z.ZodArray<z.ZodObject<{
988
+ type: z.ZodString;
989
+ url: z.ZodOptional<z.ZodURL>;
990
+ headers: z.ZodOptional<z.ZodArray<z.ZodObject<{
991
+ name: z.ZodString;
992
+ description: z.ZodString;
993
+ isRequired: z.ZodOptional<z.ZodBoolean>;
994
+ isSecret: z.ZodOptional<z.ZodBoolean>;
995
+ }, z.core.$strip>>>;
996
+ }, z.core.$strip>>>;
997
+ }, z.core.$strip>;
626
998
  //#endregion
627
- export { ApiContext, RouterInput, RouterOutput, Runtime, Transport, buildSettingsSchema, contract, createEnvironmentContractV1, environmentVariableSchema, environmentVariablesSchema, runtimeSchema, transportSchema };
999
+ export { ApiContext, RouterInput, RouterOutput, Runtime, Transport, buildSettingsSchema, contract, createEnvironmentContractV1, deploymentStatusSchema, environmentVariableSchema, environmentVariablesSchema, playgroundExamplePromptSchema, playgroundHeaderSchema, runtimeSchema, serverFieldsSchema, transportSchema, updateEnvironmentVariableSchema };
package/dist/index.mjs CHANGED
@@ -1,4 +1,6 @@
1
+ import { auditReportWithScreenshotsSchema, auditStatusSchema, checkCategorySchema } from "@alpic-ai/domains";
1
2
  import { oc } from "@orpc/contract";
3
+ import ms from "ms";
2
4
  import { z } from "zod";
3
5
  //#region src/schemas.ts
4
6
  const RESERVED_KEYS = [
@@ -34,7 +36,8 @@ const RESERVED_KEYS = [
34
36
  "BUILD_ARG_BUILD_OUTPUT_DIR",
35
37
  "BUILD_ARG_START_COMMAND",
36
38
  "ALPIC_HOST",
37
- "ALPIC_CUSTOM_DOMAINS"
39
+ "ALPIC_CUSTOM_DOMAINS",
40
+ "ALPIC_PROMPT_META_KEY"
38
41
  ];
39
42
  const environmentVariableSchema = z.object({
40
43
  key: z.string().min(2, "Key must be at least 2 characters").regex(/^[a-zA-Z]([a-zA-Z0-9_])+$/, "Key must start with a letter and contain only letters, numbers, and underscores").refine((key) => !RESERVED_KEYS.includes(key), "This key is reserved and cannot be used as an environment variable key"),
@@ -42,6 +45,10 @@ const environmentVariableSchema = z.object({
42
45
  isSecret: z.boolean().default(false)
43
46
  });
44
47
  const environmentVariablesSchema = z.array(environmentVariableSchema);
48
+ const updateEnvironmentVariableSchema = environmentVariableSchema.partial({
49
+ value: true,
50
+ isSecret: true
51
+ });
45
52
  const buildSettingsSchema = z.object({
46
53
  installCommand: z.string().optional(),
47
54
  buildCommand: z.string().optional(),
@@ -59,6 +66,39 @@ const transportSchema = z.enum([
59
66
  "sse",
60
67
  "streamablehttp"
61
68
  ]);
69
+ const playgroundHeaderSchema = z.object({
70
+ name: z.string().min(1).max(100),
71
+ description: z.string().max(200),
72
+ isRequired: z.boolean().default(false),
73
+ isSecret: z.boolean().default(false)
74
+ });
75
+ const playgroundExamplePromptSchema = z.object({
76
+ title: z.string().min(1).max(100),
77
+ prompt: z.string().min(1).max(500)
78
+ });
79
+ const serverFieldsSchema = z.object({
80
+ $schema: z.string(),
81
+ name: z.string(),
82
+ description: z.string(),
83
+ version: z.string().optional(),
84
+ title: z.string().optional(),
85
+ websiteUrl: z.url().optional(),
86
+ icons: z.array(z.object({
87
+ src: z.url(),
88
+ mimeType: z.string().optional(),
89
+ sizes: z.array(z.string()).optional()
90
+ })).optional(),
91
+ remotes: z.array(z.object({
92
+ type: z.string(),
93
+ url: z.url().optional(),
94
+ headers: z.array(z.object({
95
+ name: z.string(),
96
+ description: z.string(),
97
+ isRequired: z.boolean().optional(),
98
+ isSecret: z.boolean().optional()
99
+ })).optional()
100
+ })).optional()
101
+ });
62
102
  //#endregion
63
103
  //#region src/api.contract.ts
64
104
  const deploymentStatusSchema = z.enum([
@@ -83,9 +123,16 @@ const deploymentSchema = z.object({
83
123
  authorUsername: z.string().nullable(),
84
124
  authorAvatarUrl: z.string().nullable(),
85
125
  startedAt: z.coerce.date().nullable(),
86
- completedAt: z.coerce.date().nullable()
126
+ completedAt: z.coerce.date().nullable(),
127
+ environmentId: z.string(),
128
+ environmentName: z.string(),
129
+ isCurrent: z.boolean(),
130
+ deploymentPageUrl: z.url().nullable()
87
131
  });
88
- const deploymentWithPageUrlSchema = deploymentSchema.extend({ deploymentPageUrl: z.url().nullable() });
132
+ const isValidLogTimeInput = (value) => {
133
+ if (ms(value) !== void 0) return true;
134
+ return !Number.isNaN(new Date(value).getTime());
135
+ };
89
136
  const createEnvironmentContractV1 = oc.route({
90
137
  path: "/v1/environments",
91
138
  method: "POST",
@@ -267,7 +314,7 @@ const updateEnvironmentVariableContractV1 = oc.route({
267
314
  environmentVariableId: z.string().describe("The ID of the environment variable"),
268
315
  key: environmentVariableSchema.shape.key,
269
316
  value: environmentVariableSchema.shape.value.optional(),
270
- isSecret: environmentVariableSchema.shape.isSecret
317
+ isSecret: environmentVariableSchema.shape.isSecret.optional()
271
318
  })).output(z.object({ success: z.literal(true) }));
272
319
  const deleteEnvironmentVariableContractV1 = oc.route({
273
320
  path: "/v1/environment-variables/{environmentVariableId}",
@@ -278,7 +325,7 @@ const deleteEnvironmentVariableContractV1 = oc.route({
278
325
  successDescription: "The environment variable has been deleted successfully"
279
326
  }).errors({ NOT_FOUND: {} }).input(z.object({ environmentVariableId: z.string().describe("The ID of the environment variable") })).output(z.object({ success: z.literal(true) }));
280
327
  const deleteProjectContractV1 = oc.route({
281
- path: "/v1/projects/:projectId",
328
+ path: "/v1/projects/{projectId}",
282
329
  method: "DELETE",
283
330
  summary: "Delete a project",
284
331
  description: "Delete a project and all its environments",
@@ -313,7 +360,7 @@ const deployEnvironmentContractV1 = oc.route({
313
360
  }).input(z.object({
314
361
  environmentId: z.string().describe("The ID of the environment to deploy"),
315
362
  token: z.string().describe("The token to identify the source archive").optional()
316
- })).output(deploymentWithPageUrlSchema);
363
+ })).output(deploymentSchema);
317
364
  const uploadDeploymentArtifactContractV1 = oc.route({
318
365
  path: "/v1/deployments/upload",
319
366
  method: "POST",
@@ -322,21 +369,22 @@ const uploadDeploymentArtifactContractV1 = oc.route({
322
369
  tags: ["deployments"],
323
370
  successDescription: "The presigned upload URL has been generated successfully"
324
371
  }).input(z.object({ teamId: z.string().optional() }).optional()).output(z.object({
325
- uploadUrl: z.string().url().describe("Presigned S3 URL to upload the source archive with HTTP PUT"),
372
+ uploadUrl: z.url().describe("Presigned S3 URL to upload the source archive with HTTP PUT"),
326
373
  token: z.string().describe("Token to identify the source archive"),
327
374
  expiresAt: z.coerce.date().describe("Expiration date of the presigned URL")
328
375
  }));
329
- const listProjectDeploymentsContractV1 = oc.route({
376
+ const listDeploymentsContractV1 = oc.route({
330
377
  path: "/v1/projects/{projectId}/deployments",
331
378
  method: "GET",
332
379
  summary: "List project deployments",
333
380
  description: "List all deployments for a project",
334
381
  tags: ["deployments"],
335
382
  successDescription: "The list of deployments"
336
- }).errors({ NOT_FOUND: {} }).input(z.object({ projectId: z.string().describe("The ID of the project") })).output(z.array(deploymentSchema.extend({
337
- isCurrent: z.boolean(),
338
- environmentId: z.string()
339
- })));
383
+ }).errors({ NOT_FOUND: {} }).input(z.object({
384
+ projectId: z.string().describe("The ID of the project"),
385
+ status: z.array(deploymentStatusSchema).optional().describe("Filter by one or more statuses"),
386
+ environmentId: z.string().optional().describe("Filter by environment ID")
387
+ })).output(z.array(deploymentSchema));
340
388
  const getDeploymentContractV1 = oc.route({
341
389
  path: "/v1/deployments/{deploymentId}",
342
390
  method: "GET",
@@ -344,7 +392,83 @@ const getDeploymentContractV1 = oc.route({
344
392
  description: "Get a deployment by ID",
345
393
  tags: ["deployments"],
346
394
  successDescription: "The deployment details"
347
- }).errors({ NOT_FOUND: {} }).input(z.object({ deploymentId: z.string().describe("The ID of the deployment") })).output(deploymentWithPageUrlSchema);
395
+ }).errors({ NOT_FOUND: {} }).input(z.object({ deploymentId: z.string().describe("The ID of the deployment") })).output(deploymentSchema);
396
+ const getLogsContractV1 = oc.route({
397
+ path: "/v1/environments/{environmentId}/logs",
398
+ method: "GET",
399
+ summary: "Get logs",
400
+ description: "Get logs for an environment",
401
+ tags: ["environments"],
402
+ successDescription: "The logs"
403
+ }).errors({
404
+ NOT_FOUND: {},
405
+ BAD_REQUEST: {}
406
+ }).input(z.object({
407
+ environmentId: z.string().describe("The ID of the environment"),
408
+ since: z.string().refine(isValidLogTimeInput, { message: "Invalid time. Use relative (1h, 30m, 2d) or ISO 8601 format." }).optional().describe("Start time — ISO 8601 (2024-01-01T00:00:00Z) or relative (1h, 30m, 2d)"),
409
+ until: z.string().refine(isValidLogTimeInput, { message: "Invalid time. Use relative (1h, 30m, 2d) or ISO 8601 format." }).optional().describe("End time — ISO 8601 or relative"),
410
+ limit: z.coerce.number().int().min(1).max(1e3).default(1e3).describe("Maximum number of log entries to return."),
411
+ level: z.array(z.enum([
412
+ "INFO",
413
+ "ERROR",
414
+ "WARNING",
415
+ "DEBUG"
416
+ ])).optional().describe("Filter by log level"),
417
+ search: z.string().optional().describe("Filter pattern to search for in log content"),
418
+ nextToken: z.string().optional().describe("Pagination token from a previous response")
419
+ })).output(z.object({
420
+ logs: z.array(z.object({
421
+ timestamp: z.coerce.date(),
422
+ type: z.enum([
423
+ "START",
424
+ "END",
425
+ "INFO",
426
+ "ERROR",
427
+ "WARNING",
428
+ "DEBUG"
429
+ ]),
430
+ requestId: z.string(),
431
+ content: z.string().optional(),
432
+ method: z.string().optional(),
433
+ durationInMs: z.number().optional()
434
+ })),
435
+ nextToken: z.string().nullable()
436
+ }));
437
+ const getLatestLogsContractV1 = oc.route({
438
+ path: "/v1/environments/{environmentId}/latest-logs",
439
+ method: "GET",
440
+ summary: "Get latest logs",
441
+ description: "Get the N most recent logs for an environment",
442
+ tags: ["environments"],
443
+ successDescription: "The latest logs"
444
+ }).errors({
445
+ NOT_FOUND: {},
446
+ BAD_REQUEST: {}
447
+ }).input(z.object({
448
+ environmentId: z.string().describe("The ID of the environment"),
449
+ limit: z.coerce.number().int().min(1).max(1e3).default(100).describe("Number of most recent log entries to return"),
450
+ level: z.array(z.enum([
451
+ "INFO",
452
+ "ERROR",
453
+ "WARNING",
454
+ "DEBUG"
455
+ ])).optional().describe("Filter by log level"),
456
+ search: z.string().optional().describe("Filter pattern to search for in log content")
457
+ })).output(z.object({ logs: z.array(z.object({
458
+ timestamp: z.coerce.date(),
459
+ type: z.enum([
460
+ "START",
461
+ "END",
462
+ "INFO",
463
+ "ERROR",
464
+ "WARNING",
465
+ "DEBUG"
466
+ ]),
467
+ requestId: z.string(),
468
+ content: z.string().optional(),
469
+ method: z.string().optional(),
470
+ durationInMs: z.number().optional()
471
+ })) }));
348
472
  const getDeploymentLogsContractV1 = oc.route({
349
473
  path: "/v1/deployments/{deploymentId}/logs",
350
474
  method: "GET",
@@ -422,11 +546,115 @@ const getTunnelTicketContractV1 = oc.route({
422
546
  ticket: z.string().describe("The signed tunnel ticket"),
423
547
  tunnelHost: z.string().describe("The tunnel host to connect to")
424
548
  }));
549
+ const publishServerContractV1 = oc.route({
550
+ path: "/v1/distribution/publish",
551
+ method: "POST",
552
+ summary: "Publish a server to the MCP registry",
553
+ tags: ["distribution"],
554
+ successDescription: "The server has been published successfully"
555
+ }).errors({
556
+ NOT_FOUND: {},
557
+ BAD_REQUEST: {}
558
+ }).input(z.object({
559
+ projectId: z.string(),
560
+ domain: z.string(),
561
+ title: z.string().min(1).max(100),
562
+ description: z.string().min(1).max(100),
563
+ websiteUrl: z.url().max(255).optional(),
564
+ iconSrc: z.url().max(255).optional(),
565
+ dryRun: z.boolean().optional()
566
+ })).output(z.object({ serverFields: serverFieldsSchema }));
567
+ const getServerInfoContractV1 = oc.route({
568
+ path: "/v1/distribution/get",
569
+ method: "GET",
570
+ summary: "Get server info",
571
+ description: "Get info about a server",
572
+ tags: ["distribution"],
573
+ successDescription: "The server info"
574
+ }).errors({
575
+ NOT_FOUND: {},
576
+ BAD_REQUEST: {}
577
+ }).input(z.object({
578
+ projectId: z.string(),
579
+ domain: z.string()
580
+ })).output(z.object({ serverFields: serverFieldsSchema }));
581
+ const playgroundServerMetadataOutputSchema = z.object({
582
+ name: z.string(),
583
+ description: z.string(),
584
+ headers: z.array(z.object({
585
+ name: z.string(),
586
+ description: z.string(),
587
+ isRequired: z.boolean(),
588
+ isSecret: z.boolean()
589
+ })),
590
+ examplePrompts: z.array(playgroundExamplePromptSchema)
591
+ });
592
+ const playgroundOutputSchema = z.object({
593
+ isPlaygroundEnabled: z.boolean(),
594
+ serverMetadata: playgroundServerMetadataOutputSchema.nullable()
595
+ });
596
+ const getPlaygroundContractV1 = oc.route({
597
+ path: "/v1/environments/{environmentId}/playground",
598
+ method: "GET",
599
+ summary: "Get playground configuration",
600
+ description: "Get the playground configuration for an environment",
601
+ tags: ["environments"],
602
+ successDescription: "The playground configuration"
603
+ }).errors({ NOT_FOUND: {} }).input(z.object({ environmentId: z.string().describe("The ID of the environment") })).output(playgroundOutputSchema);
604
+ const upsertPlaygroundContractV1 = oc.route({
605
+ path: "/v1/environments/{environmentId}/playground",
606
+ method: "PUT",
607
+ summary: "Update playground configuration",
608
+ description: "Update the playground configuration for an environment. All fields are optional — only provided fields are updated.",
609
+ tags: ["environments"],
610
+ successDescription: "The updated playground configuration"
611
+ }).errors({
612
+ NOT_FOUND: {},
613
+ BAD_REQUEST: {}
614
+ }).input(z.object({
615
+ environmentId: z.string().describe("The ID of the environment"),
616
+ isPlaygroundEnabled: z.boolean().optional(),
617
+ name: z.string().min(1).max(100).optional(),
618
+ description: z.string().min(1).max(500).optional(),
619
+ headers: z.array(playgroundHeaderSchema).optional(),
620
+ examplePrompts: z.array(playgroundExamplePromptSchema).max(3).optional()
621
+ })).output(playgroundOutputSchema);
622
+ const createBeaconContractV1 = oc.route({
623
+ path: "/v1/beacon/audits",
624
+ method: "POST",
625
+ summary: "Create a beacon audit",
626
+ description: "Audit an MCP server for spec compliance and AI client compatibility",
627
+ tags: ["beacon"],
628
+ successDescription: "The audit has been created"
629
+ }).errors({
630
+ NOT_FOUND: {},
631
+ BAD_REQUEST: {}
632
+ }).input(z.object({
633
+ targetUrl: z.url().describe("The HTTPS URL of the MCP server to audit"),
634
+ teamId: z.string().optional().describe("The team ID to associate the audit with"),
635
+ projectId: z.string().optional().describe("The project ID to associate the audit with"),
636
+ excludeCategories: z.array(checkCategorySchema).optional().describe("Check categories to exclude from the audit")
637
+ })).output(z.object({ id: z.string() }));
638
+ const getBeaconContractV1 = oc.route({
639
+ path: "/v1/beacon/audits/{auditId}",
640
+ method: "GET",
641
+ summary: "Get a beacon audit",
642
+ description: "Get a beacon audit by ID, including the report if completed",
643
+ tags: ["beacon"],
644
+ successDescription: "The audit details"
645
+ }).errors({ NOT_FOUND: {} }).input(z.object({ auditId: z.string().describe("The ID of the audit") })).output(z.object({
646
+ id: z.string(),
647
+ targetUrl: z.string(),
648
+ status: auditStatusSchema,
649
+ durationMs: z.number().nullable(),
650
+ createdAt: z.coerce.date(),
651
+ report: auditReportWithScreenshotsSchema.nullable()
652
+ }));
425
653
  const contract = {
426
654
  teams: { list: { v1: listTeamsContractV1 } },
427
655
  analytics: { get: { v1: getProjectAnalyticsContractV1 } },
428
656
  deployments: {
429
- list: { v1: listProjectDeploymentsContractV1 },
657
+ list: { v1: listDeploymentsContractV1 },
430
658
  get: { v1: getDeploymentContractV1 },
431
659
  uploadArtifact: { v1: uploadDeploymentArtifactContractV1 },
432
660
  getLogs: { v1: getDeploymentLogsContractV1 }
@@ -434,7 +662,9 @@ const contract = {
434
662
  environments: {
435
663
  create: { v1: createEnvironmentContractV1 },
436
664
  get: { v1: getEnvironmentContractV1 },
437
- deploy: { v1: deployEnvironmentContractV1 }
665
+ deploy: { v1: deployEnvironmentContractV1 },
666
+ getLogs: { v1: getLogsContractV1 },
667
+ getLatestLogs: { v1: getLatestLogsContractV1 }
438
668
  },
439
669
  environmentVariables: {
440
670
  list: { v1: listEnvironmentVariablesContractV1 },
@@ -449,7 +679,19 @@ const contract = {
449
679
  create: { v1: createProjectContractV1 },
450
680
  delete: { v1: deleteProjectContractV1 }
451
681
  },
452
- tunnels: { getTicket: { v1: getTunnelTicketContractV1 } }
682
+ playground: {
683
+ get: { v1: getPlaygroundContractV1 },
684
+ upsert: { v1: upsertPlaygroundContractV1 }
685
+ },
686
+ tunnels: { getTicket: { v1: getTunnelTicketContractV1 } },
687
+ distribution: {
688
+ publish: { v1: publishServerContractV1 },
689
+ get: { v1: getServerInfoContractV1 }
690
+ },
691
+ beacon: {
692
+ create: { v1: createBeaconContractV1 },
693
+ get: { v1: getBeaconContractV1 }
694
+ }
453
695
  };
454
696
  //#endregion
455
- export { buildSettingsSchema, contract, createEnvironmentContractV1, environmentVariableSchema, environmentVariablesSchema, runtimeSchema, transportSchema };
697
+ export { buildSettingsSchema, contract, createEnvironmentContractV1, deploymentStatusSchema, environmentVariableSchema, environmentVariablesSchema, playgroundExamplePromptSchema, playgroundHeaderSchema, runtimeSchema, serverFieldsSchema, transportSchema, updateEnvironmentVariableSchema };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@alpic-ai/api",
3
- "version": "0.0.0-staging.0cb031e",
3
+ "version": "0.0.0-staging.0ce6981",
4
4
  "description": "Contract for the Alpic API",
5
5
  "type": "module",
6
6
  "main": "./dist/index.mjs",
@@ -14,25 +14,40 @@
14
14
  "files": [
15
15
  "dist"
16
16
  ],
17
+ "nx": {
18
+ "targets": {
19
+ "build": {
20
+ "dependsOn": [
21
+ "^build"
22
+ ]
23
+ }
24
+ }
25
+ },
17
26
  "author": "Alpic",
18
27
  "license": "ISC",
19
28
  "dependencies": {
20
- "@orpc/contract": "^1.13.6",
21
- "zod": "^4.3.6"
29
+ "@orpc/contract": "^1.13.14",
30
+ "ms": "^2.1.3",
31
+ "zod": "^4.3.6",
32
+ "@alpic-ai/domains": "0.0.0"
22
33
  },
23
34
  "devDependencies": {
35
+ "@orpc/openapi": "^1.13.14",
36
+ "@orpc/zod": "^1.13.14",
24
37
  "@total-typescript/tsconfig": "^1.0.4",
38
+ "@types/ms": "^2.1.0",
25
39
  "shx": "^0.4.0",
26
- "tsdown": "^0.21.1",
27
- "typescript": "^5.9.3",
28
- "vitest": "^4.0.18"
40
+ "tsdown": "^0.21.9",
41
+ "typescript": "^6.0.3",
42
+ "vitest": "^4.1.4"
29
43
  },
30
44
  "scripts": {
31
45
  "build": "shx rm -rf dist && tsdown",
32
- "format": "biome check --write --error-on-warnings",
46
+ "format": "biome check --write --error-on-warnings .",
33
47
  "test": "pnpm run test:unit && pnpm run test:type && pnpm run test:format",
34
48
  "test:unit": "vitest run",
35
- "test:format": "prettier --check .",
36
- "test:type": "tsc --noEmit"
49
+ "test:format": "biome check --error-on-warnings .",
50
+ "test:type": "tsc --noEmit",
51
+ "publish:npm": "pnpm publish --tag \"${NPM_TAG}\" --access public --no-git-checks"
37
52
  }
38
53
  }