openmerit 0.1.11 → 0.2.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.
Files changed (72) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/README.md +20 -56
  3. package/dist/pi/scout-extension.mjs +190 -0
  4. package/dist/pi/src/index.d.ts +6 -32
  5. package/dist/pi/src/index.js +49 -787
  6. package/dist/terminal/public/app.js +37 -37
  7. package/dist/terminal/public/styles.css +0 -125
  8. package/dist/terminal/scout-update.json +1 -1
  9. package/dist/terminal/src/cli.mjs +2 -0
  10. package/dist/terminal/src/install.mjs +103 -166
  11. package/dist/terminal/src/scout-credentials.d.ts +12 -0
  12. package/dist/terminal/src/scout-credentials.js +41 -0
  13. package/dist/terminal/src/scout-credentials.ts +44 -0
  14. package/dist/terminal/src/scout-instructions.d.ts +5 -0
  15. package/dist/terminal/src/scout-instructions.js +116 -0
  16. package/dist/terminal/src/scout-instructions.ts +119 -0
  17. package/dist/terminal/src/scout-pi.d.ts +44 -0
  18. package/dist/terminal/src/scout-pi.js +84 -0
  19. package/dist/terminal/src/scout-pi.ts +76 -0
  20. package/dist/terminal/src/scout.d.ts +77 -0
  21. package/dist/terminal/src/scout.js +181 -0
  22. package/dist/terminal/src/scout.ts +164 -0
  23. package/dist/terminal/src/server.mjs +1 -1
  24. package/dist/terminal/src/telemetry.mjs +2 -2
  25. package/docs/commands.md +3 -77
  26. package/docs/getting-started.md +20 -45
  27. package/docs/index.md +9 -14
  28. package/docs/inference-terminal.md +2 -63
  29. package/docs/pi-extension.md +32 -28
  30. package/docs/roadmap.md +6 -18
  31. package/docs/scout.md +39 -255
  32. package/docs/security.md +8 -14
  33. package/docs/testing.md +8 -34
  34. package/docs/troubleshooting.md +23 -28
  35. package/package.json +6 -27
  36. package/dist/core/src/index.d.ts +0 -101
  37. package/dist/core/src/index.js +0 -1649
  38. package/dist/core/src/store.d.ts +0 -35
  39. package/dist/core/src/store.js +0 -102
  40. package/dist/pi/src/scheduler.d.ts +0 -11
  41. package/dist/pi/src/scheduler.js +0 -137
  42. package/dist/pi/src/wakeup.d.ts +0 -2
  43. package/dist/pi/src/wakeup.js +0 -108
  44. package/dist/protocol/src/index.d.ts +0 -484
  45. package/dist/protocol/src/index.js +0 -47
  46. package/dist/protocol/src/schemas.d.ts +0 -576
  47. package/dist/protocol/src/schemas.js +0 -280
  48. package/dist/terminal/public/brands/vllm.ico +0 -0
  49. package/dist/terminal/public/flow.css +0 -1
  50. package/dist/terminal/public/flow.js +0 -770
  51. package/dist/terminal/src/demo-policy.mjs +0 -205
  52. package/dist/terminal/src/enterprise-sample.mjs +0 -151
  53. package/docs/adapter-guide.md +0 -189
  54. package/docs/architecture.md +0 -59
  55. package/docs/automation.md +0 -74
  56. package/docs/budgets.md +0 -37
  57. package/docs/demo-backfill.md +0 -31
  58. package/docs/demo-fieldkit.md +0 -49
  59. package/docs/demo-placement.md +0 -32
  60. package/docs/demo-spam.md +0 -17
  61. package/docs/demo-support.md +0 -44
  62. package/docs/demo.md +0 -74
  63. package/docs/first-trial.md +0 -60
  64. package/docs/interactive-demo.md +0 -118
  65. package/docs/lifecycle.md +0 -30
  66. package/docs/metrics-and-evidence.md +0 -48
  67. package/docs/operations.md +0 -38
  68. package/docs/pareto-spec.md +0 -76
  69. package/docs/saga/a-steadier-compass.md +0 -25
  70. package/docs/saga/defining-a-task-for-ai.md +0 -154
  71. package/docs/saga/the-benchmark-is-not-the-job.md +0 -33
  72. package/docs/ux-reference.md +0 -32
@@ -1,576 +0,0 @@
1
- import { Type, type TSchema } from "typebox";
2
- import type { IntentKind } from "./index.ts";
3
- export declare const OPENMERIT_SCHEMA_DIALECT: "https://json-schema.org/draft/2020-12/schema";
4
- export declare const OPENMERIT_RESULT_SCHEMA_VERSION: "0.2";
5
- export declare const EvidenceReferenceSchema: Type.TObject<{
6
- id: Type.TString;
7
- source: Type.TUnion<Type.TLiteral<string>[]>;
8
- uri: Type.TString;
9
- mediaType: Type.TOptional<Type.TString>;
10
- digest: Type.TOptional<Type.TString>;
11
- }>;
12
- export declare const MetricObjectiveSchema: Type.TObject<{
13
- metricId: Type.TUnion<Type.TLiteral<string>[]>;
14
- required: Type.TBoolean;
15
- minimumSamples: Type.TInteger;
16
- tolerance: Type.TNumber;
17
- samplingPlan: Type.TObject<{
18
- strategy: Type.TUnion<Type.TLiteral<string>[]>;
19
- representativeCaseCount: Type.TInteger;
20
- repetitionsPerCase: Type.TInteger;
21
- aggregation: Type.TUnion<Type.TLiteral<string>[]>;
22
- rationale: Type.TString;
23
- }>;
24
- constraint: Type.TOptional<Type.TObject<{
25
- operator: Type.TUnion<Type.TLiteral<string>[]>;
26
- value: Type.TNumber;
27
- }>>;
28
- }>;
29
- export declare const ApplicationLlmTargetSchema: Type.TObject<{
30
- id: Type.TString;
31
- kind: Type.TLiteral<"application_llm_call">;
32
- name: Type.TString;
33
- applicationId: Type.TString;
34
- callSites: Type.TArray<Type.TString>;
35
- routeKey: Type.TString;
36
- confirmedAt: Type.TString;
37
- }>;
38
- export declare const TaskProfileSchema: Type.TObject<{
39
- id: Type.TString;
40
- revision: Type.TInteger;
41
- name: Type.TString;
42
- goal: Type.TString;
43
- applicationTarget: Type.TObject<{
44
- id: Type.TString;
45
- kind: Type.TLiteral<"application_llm_call">;
46
- name: Type.TString;
47
- applicationId: Type.TString;
48
- callSites: Type.TArray<Type.TString>;
49
- routeKey: Type.TString;
50
- confirmedAt: Type.TString;
51
- }>;
52
- objectives: Type.TArray<Type.TObject<{
53
- metricId: Type.TUnion<Type.TLiteral<string>[]>;
54
- required: Type.TBoolean;
55
- minimumSamples: Type.TInteger;
56
- tolerance: Type.TNumber;
57
- samplingPlan: Type.TObject<{
58
- strategy: Type.TUnion<Type.TLiteral<string>[]>;
59
- representativeCaseCount: Type.TInteger;
60
- repetitionsPerCase: Type.TInteger;
61
- aggregation: Type.TUnion<Type.TLiteral<string>[]>;
62
- rationale: Type.TString;
63
- }>;
64
- constraint: Type.TOptional<Type.TObject<{
65
- operator: Type.TUnion<Type.TLiteral<string>[]>;
66
- value: Type.TNumber;
67
- }>>;
68
- }>>;
69
- createdAt: Type.TString;
70
- confirmedAt: Type.TOptional<Type.TString>;
71
- }>;
72
- export declare const ObservabilityCoverageSchema: Type.TObject<{
73
- targetId: Type.TString;
74
- status: Type.TUnion<Type.TLiteral<string>[]>;
75
- requiredMetricIds: Type.TArray<Type.TUnion<Type.TLiteral<string>[]>>;
76
- coveredMetricIds: Type.TArray<Type.TUnion<Type.TLiteral<string>[]>>;
77
- missingMetricIds: Type.TArray<Type.TUnion<Type.TLiteral<string>[]>>;
78
- checkedAt: Type.TString;
79
- }>;
80
- export declare const SupervisedGraduationPolicySchema: Type.TObject<{
81
- mode: Type.TLiteral<"supervised_graduation">;
82
- evaluationBudget: Type.TObject<{
83
- currency: Type.TString;
84
- maximumSpend: Type.TNumber;
85
- maximumCandidateCount: Type.TOptional<Type.TInteger>;
86
- maximumRunsPerCandidate: Type.TOptional<Type.TInteger>;
87
- expiresAt: Type.TOptional<Type.TString>;
88
- }>;
89
- automaticSwapsEnabled: Type.TBoolean;
90
- confirmationRequiredUntilVerifiedSwaps: Type.TInteger;
91
- requirePostSwapVerification: Type.TLiteral<true>;
92
- rollbackOnRegression: Type.TBoolean;
93
- checkPolicy: Type.TObject<{
94
- baselineAssessment: Type.TObject<{
95
- afterCompletedTasks: Type.TOptional<Type.TInteger>;
96
- afterElapsedSeconds: Type.TOptional<Type.TInteger>;
97
- }>;
98
- frontierReassessment: Type.TObject<{
99
- afterCompletedTasks: Type.TOptional<Type.TInteger>;
100
- afterElapsedSeconds: Type.TOptional<Type.TInteger>;
101
- onModelCatalogChange: Type.TBoolean;
102
- }>;
103
- regressionCheck: Type.TObject<{
104
- afterCompletedTasks: Type.TOptional<Type.TInteger>;
105
- afterElapsedSeconds: Type.TOptional<Type.TInteger>;
106
- thresholds: Type.TArray<Type.TObject<{
107
- metricId: Type.TUnion<Type.TLiteral<string>[]>;
108
- relativeChangeAtLeast: Type.TNumber;
109
- }>>;
110
- }>;
111
- postSwapVerification: Type.TObject<{
112
- afterCompletedTasks: Type.TOptional<Type.TInteger>;
113
- afterElapsedSeconds: Type.TOptional<Type.TInteger>;
114
- }>;
115
- cooldownSeconds: Type.TInteger;
116
- execution: Type.TObject<{
117
- mode: Type.TUnion<Type.TLiteral<string>[]>;
118
- infrastructureChangesAllowed: Type.TBoolean;
119
- }>;
120
- }>;
121
- }>;
122
- export declare const MetricRecordSchema: Type.TObject<{
123
- targetId: Type.TString;
124
- metricId: Type.TUnion<Type.TLiteral<string>[]>;
125
- state: Type.TUnion<Type.TLiteral<string>[]>;
126
- scope: Type.TUnion<Type.TLiteral<string>[]>;
127
- direction: Type.TUnion<Type.TLiteral<string>[]>;
128
- method: Type.TUnion<Type.TLiteral<string>[]>;
129
- aggregation: Type.TUnion<Type.TLiteral<string>[]>;
130
- value: Type.TOptional<Type.TNumber>;
131
- unit: Type.TString;
132
- sampleCount: Type.TInteger;
133
- interval: Type.TOptional<Type.TObject<{
134
- lower: Type.TNumber;
135
- upper: Type.TNumber;
136
- confidenceLevel: Type.TOptional<Type.TNumber>;
137
- }>>;
138
- window: Type.TOptional<Type.TObject<{
139
- startedAt: Type.TString;
140
- endedAt: Type.TString;
141
- }>>;
142
- evidence: Type.TArray<Type.TObject<{
143
- id: Type.TString;
144
- source: Type.TUnion<Type.TLiteral<string>[]>;
145
- uri: Type.TString;
146
- mediaType: Type.TOptional<Type.TString>;
147
- digest: Type.TOptional<Type.TString>;
148
- }>>;
149
- note: Type.TOptional<Type.TString>;
150
- }>;
151
- export declare const CandidateDescriptorSchema: Type.TObject<{
152
- targetId: Type.TString;
153
- candidateId: Type.TString;
154
- modelId: Type.TString;
155
- modelVersion: Type.TOptional<Type.TString>;
156
- reasons: Type.TArray<Type.TString>;
157
- }>;
158
- export declare const PreliminaryModelLeadSchema: Type.TObject<{
159
- targetId: Type.TString;
160
- modelId: Type.TString;
161
- modelVersion: Type.TOptional<Type.TString>;
162
- estimatedPrice: Type.TObject<{
163
- currency: Type.TString;
164
- inputPerMillionTokens: Type.TNumber;
165
- outputPerMillionTokens: Type.TNumber;
166
- sourceUri: Type.TString;
167
- checkedAt: Type.TString;
168
- }>;
169
- reputation: Type.TObject<{
170
- summary: Type.TString;
171
- sourceUri: Type.TString;
172
- checkedAt: Type.TString;
173
- }>;
174
- }>;
175
- export declare const CandidateAssessmentSchema: Type.TObject<{
176
- id: Type.TString;
177
- targetId: Type.TString;
178
- taskProfileId: Type.TString;
179
- taskProfileRevision: Type.TInteger;
180
- candidateId: Type.TString;
181
- modelId: Type.TString;
182
- modelVersion: Type.TOptional<Type.TString>;
183
- productRevision: Type.TString;
184
- harnessId: Type.TString;
185
- startedAt: Type.TString;
186
- completedAt: Type.TString;
187
- metrics: Type.TArray<Type.TObject<{
188
- targetId: Type.TString;
189
- metricId: Type.TUnion<Type.TLiteral<string>[]>;
190
- state: Type.TUnion<Type.TLiteral<string>[]>;
191
- scope: Type.TUnion<Type.TLiteral<string>[]>;
192
- direction: Type.TUnion<Type.TLiteral<string>[]>;
193
- method: Type.TUnion<Type.TLiteral<string>[]>;
194
- aggregation: Type.TUnion<Type.TLiteral<string>[]>;
195
- value: Type.TOptional<Type.TNumber>;
196
- unit: Type.TString;
197
- sampleCount: Type.TInteger;
198
- interval: Type.TOptional<Type.TObject<{
199
- lower: Type.TNumber;
200
- upper: Type.TNumber;
201
- confidenceLevel: Type.TOptional<Type.TNumber>;
202
- }>>;
203
- window: Type.TOptional<Type.TObject<{
204
- startedAt: Type.TString;
205
- endedAt: Type.TString;
206
- }>>;
207
- evidence: Type.TArray<Type.TObject<{
208
- id: Type.TString;
209
- source: Type.TUnion<Type.TLiteral<string>[]>;
210
- uri: Type.TString;
211
- mediaType: Type.TOptional<Type.TString>;
212
- digest: Type.TOptional<Type.TString>;
213
- }>>;
214
- note: Type.TOptional<Type.TString>;
215
- }>>;
216
- }>;
217
- export declare const FrontierSnapshotSchema: Type.TObject<{
218
- id: Type.TString;
219
- targetId: Type.TString;
220
- taskProfileId: Type.TString;
221
- taskProfileRevision: Type.TInteger;
222
- productRevision: Type.TString;
223
- createdAt: Type.TString;
224
- frontierCandidateIds: Type.TArray<Type.TString>;
225
- dominatedCandidateIds: Type.TArray<Type.TString>;
226
- ineligibleCandidateIds: Type.TArray<Type.TString>;
227
- unresolvedCandidateIds: Type.TArray<Type.TString>;
228
- comparisons: Type.TArray<Type.TObject<{
229
- candidateId: Type.TString;
230
- otherCandidateId: Type.TString;
231
- state: Type.TUnion<Type.TLiteral<string>[]>;
232
- reasons: Type.TArray<Type.TString>;
233
- }>>;
234
- assessmentIds: Type.TArray<Type.TString>;
235
- calculationEvidence: Type.TArray<Type.TObject<{
236
- id: Type.TString;
237
- source: Type.TUnion<Type.TLiteral<string>[]>;
238
- uri: Type.TString;
239
- mediaType: Type.TOptional<Type.TString>;
240
- digest: Type.TOptional<Type.TString>;
241
- }>>;
242
- }>;
243
- export declare const FrontierRecommendationSchema: Type.TObject<{
244
- targetId: Type.TString;
245
- frontierSnapshotId: Type.TString;
246
- selectedCandidateId: Type.TString;
247
- currentCandidateId: Type.TString;
248
- reasons: Type.TArray<Type.TString>;
249
- preferenceEvidence: Type.TArray<Type.TObject<{
250
- id: Type.TString;
251
- source: Type.TUnion<Type.TLiteral<string>[]>;
252
- uri: Type.TString;
253
- mediaType: Type.TOptional<Type.TString>;
254
- digest: Type.TOptional<Type.TString>;
255
- }>>;
256
- }>;
257
- export declare const INTENT_OUTPUT_SCHEMAS: {
258
- readonly establish_evals: Type.TObject<{
259
- taskProfile: Type.TObject<{
260
- confirmedAt: Type.TString;
261
- id: Type.TString;
262
- revision: Type.TInteger;
263
- name: Type.TString;
264
- goal: Type.TString;
265
- applicationTarget: Type.TObject<{
266
- id: Type.TString;
267
- kind: Type.TLiteral<"application_llm_call">;
268
- name: Type.TString;
269
- applicationId: Type.TString;
270
- callSites: Type.TArray<Type.TString>;
271
- routeKey: Type.TString;
272
- confirmedAt: Type.TString;
273
- }>;
274
- objectives: Type.TArray<Type.TObject<{
275
- metricId: Type.TUnion<Type.TLiteral<string>[]>;
276
- required: Type.TBoolean;
277
- minimumSamples: Type.TInteger;
278
- tolerance: Type.TNumber;
279
- samplingPlan: Type.TObject<{
280
- strategy: Type.TUnion<Type.TLiteral<string>[]>;
281
- representativeCaseCount: Type.TInteger;
282
- repetitionsPerCase: Type.TInteger;
283
- aggregation: Type.TUnion<Type.TLiteral<string>[]>;
284
- rationale: Type.TString;
285
- }>;
286
- constraint: Type.TOptional<Type.TObject<{
287
- operator: Type.TUnion<Type.TLiteral<string>[]>;
288
- value: Type.TNumber;
289
- }>>;
290
- }>>;
291
- createdAt: Type.TString;
292
- }>;
293
- incumbent: Type.TObject<{
294
- targetId: Type.TString;
295
- candidateId: Type.TString;
296
- modelId: Type.TString;
297
- modelVersion: Type.TOptional<Type.TString>;
298
- reasons: Type.TArray<Type.TString>;
299
- }>;
300
- policy: Type.TObject<{
301
- mode: Type.TLiteral<"supervised_graduation">;
302
- evaluationBudget: Type.TObject<{
303
- currency: Type.TString;
304
- maximumSpend: Type.TNumber;
305
- maximumCandidateCount: Type.TOptional<Type.TInteger>;
306
- maximumRunsPerCandidate: Type.TOptional<Type.TInteger>;
307
- expiresAt: Type.TOptional<Type.TString>;
308
- }>;
309
- automaticSwapsEnabled: Type.TBoolean;
310
- confirmationRequiredUntilVerifiedSwaps: Type.TInteger;
311
- requirePostSwapVerification: Type.TLiteral<true>;
312
- rollbackOnRegression: Type.TBoolean;
313
- checkPolicy: Type.TObject<{
314
- baselineAssessment: Type.TObject<{
315
- afterCompletedTasks: Type.TOptional<Type.TInteger>;
316
- afterElapsedSeconds: Type.TOptional<Type.TInteger>;
317
- }>;
318
- frontierReassessment: Type.TObject<{
319
- afterCompletedTasks: Type.TOptional<Type.TInteger>;
320
- afterElapsedSeconds: Type.TOptional<Type.TInteger>;
321
- onModelCatalogChange: Type.TBoolean;
322
- }>;
323
- regressionCheck: Type.TObject<{
324
- afterCompletedTasks: Type.TOptional<Type.TInteger>;
325
- afterElapsedSeconds: Type.TOptional<Type.TInteger>;
326
- thresholds: Type.TArray<Type.TObject<{
327
- metricId: Type.TUnion<Type.TLiteral<string>[]>;
328
- relativeChangeAtLeast: Type.TNumber;
329
- }>>;
330
- }>;
331
- postSwapVerification: Type.TObject<{
332
- afterCompletedTasks: Type.TOptional<Type.TInteger>;
333
- afterElapsedSeconds: Type.TOptional<Type.TInteger>;
334
- }>;
335
- cooldownSeconds: Type.TInteger;
336
- execution: Type.TObject<{
337
- mode: Type.TUnion<Type.TLiteral<string>[]>;
338
- infrastructureChangesAllowed: Type.TBoolean;
339
- }>;
340
- }>;
341
- }>;
342
- observability: Type.TObject<{
343
- targetId: Type.TString;
344
- status: Type.TUnion<Type.TLiteral<string>[]>;
345
- requiredMetricIds: Type.TArray<Type.TUnion<Type.TLiteral<string>[]>>;
346
- coveredMetricIds: Type.TArray<Type.TUnion<Type.TLiteral<string>[]>>;
347
- missingMetricIds: Type.TArray<Type.TUnion<Type.TLiteral<string>[]>>;
348
- checkedAt: Type.TString;
349
- }>;
350
- preliminaryModelLeads: Type.TOptional<Type.TArray<Type.TObject<{
351
- targetId: Type.TString;
352
- modelId: Type.TString;
353
- modelVersion: Type.TOptional<Type.TString>;
354
- estimatedPrice: Type.TObject<{
355
- currency: Type.TString;
356
- inputPerMillionTokens: Type.TNumber;
357
- outputPerMillionTokens: Type.TNumber;
358
- sourceUri: Type.TString;
359
- checkedAt: Type.TString;
360
- }>;
361
- reputation: Type.TObject<{
362
- summary: Type.TString;
363
- sourceUri: Type.TString;
364
- checkedAt: Type.TString;
365
- }>;
366
- }>>>;
367
- }>;
368
- readonly instrument_observability: Type.TObject<{
369
- targetId: Type.TString;
370
- coveredMetricIds: Type.TArray<Type.TUnion<Type.TLiteral<string>[]>>;
371
- missingMetricIds: Type.TArray<Type.TUnion<Type.TLiteral<string>[]>>;
372
- }>;
373
- readonly run_assessment: Type.TObject<{
374
- targetId: Type.TString;
375
- baselineEvidenceSufficient: Type.TBoolean;
376
- metrics: Type.TArray<Type.TObject<{
377
- targetId: Type.TString;
378
- metricId: Type.TUnion<Type.TLiteral<string>[]>;
379
- state: Type.TUnion<Type.TLiteral<string>[]>;
380
- scope: Type.TUnion<Type.TLiteral<string>[]>;
381
- direction: Type.TUnion<Type.TLiteral<string>[]>;
382
- method: Type.TUnion<Type.TLiteral<string>[]>;
383
- aggregation: Type.TUnion<Type.TLiteral<string>[]>;
384
- value: Type.TOptional<Type.TNumber>;
385
- unit: Type.TString;
386
- sampleCount: Type.TInteger;
387
- interval: Type.TOptional<Type.TObject<{
388
- lower: Type.TNumber;
389
- upper: Type.TNumber;
390
- confidenceLevel: Type.TOptional<Type.TNumber>;
391
- }>>;
392
- window: Type.TOptional<Type.TObject<{
393
- startedAt: Type.TString;
394
- endedAt: Type.TString;
395
- }>>;
396
- evidence: Type.TArray<Type.TObject<{
397
- id: Type.TString;
398
- source: Type.TUnion<Type.TLiteral<string>[]>;
399
- uri: Type.TString;
400
- mediaType: Type.TOptional<Type.TString>;
401
- digest: Type.TOptional<Type.TString>;
402
- }>>;
403
- note: Type.TOptional<Type.TString>;
404
- }>>;
405
- }>;
406
- readonly discover_candidates: Type.TObject<{
407
- targetId: Type.TString;
408
- candidates: Type.TArray<Type.TObject<{
409
- targetId: Type.TString;
410
- candidateId: Type.TString;
411
- modelId: Type.TString;
412
- modelVersion: Type.TOptional<Type.TString>;
413
- reasons: Type.TArray<Type.TString>;
414
- }>>;
415
- }>;
416
- readonly run_challenger_trials: Type.TObject<{
417
- targetId: Type.TString;
418
- assessments: Type.TArray<Type.TObject<{
419
- id: Type.TString;
420
- targetId: Type.TString;
421
- taskProfileId: Type.TString;
422
- taskProfileRevision: Type.TInteger;
423
- candidateId: Type.TString;
424
- modelId: Type.TString;
425
- modelVersion: Type.TOptional<Type.TString>;
426
- productRevision: Type.TString;
427
- harnessId: Type.TString;
428
- startedAt: Type.TString;
429
- completedAt: Type.TString;
430
- metrics: Type.TArray<Type.TObject<{
431
- targetId: Type.TString;
432
- metricId: Type.TUnion<Type.TLiteral<string>[]>;
433
- state: Type.TUnion<Type.TLiteral<string>[]>;
434
- scope: Type.TUnion<Type.TLiteral<string>[]>;
435
- direction: Type.TUnion<Type.TLiteral<string>[]>;
436
- method: Type.TUnion<Type.TLiteral<string>[]>;
437
- aggregation: Type.TUnion<Type.TLiteral<string>[]>;
438
- value: Type.TOptional<Type.TNumber>;
439
- unit: Type.TString;
440
- sampleCount: Type.TInteger;
441
- interval: Type.TOptional<Type.TObject<{
442
- lower: Type.TNumber;
443
- upper: Type.TNumber;
444
- confidenceLevel: Type.TOptional<Type.TNumber>;
445
- }>>;
446
- window: Type.TOptional<Type.TObject<{
447
- startedAt: Type.TString;
448
- endedAt: Type.TString;
449
- }>>;
450
- evidence: Type.TArray<Type.TObject<{
451
- id: Type.TString;
452
- source: Type.TUnion<Type.TLiteral<string>[]>;
453
- uri: Type.TString;
454
- mediaType: Type.TOptional<Type.TString>;
455
- digest: Type.TOptional<Type.TString>;
456
- }>>;
457
- note: Type.TOptional<Type.TString>;
458
- }>>;
459
- }>>;
460
- experimentManifest: Type.TObject<{
461
- id: Type.TString;
462
- source: Type.TUnion<Type.TLiteral<string>[]>;
463
- uri: Type.TString;
464
- mediaType: Type.TOptional<Type.TString>;
465
- digest: Type.TOptional<Type.TString>;
466
- }>;
467
- }>;
468
- readonly calculate_frontier: Type.TObject<{
469
- targetId: Type.TString;
470
- assessments: Type.TArray<Type.TObject<{
471
- id: Type.TString;
472
- targetId: Type.TString;
473
- taskProfileId: Type.TString;
474
- taskProfileRevision: Type.TInteger;
475
- candidateId: Type.TString;
476
- modelId: Type.TString;
477
- modelVersion: Type.TOptional<Type.TString>;
478
- productRevision: Type.TString;
479
- harnessId: Type.TString;
480
- startedAt: Type.TString;
481
- completedAt: Type.TString;
482
- metrics: Type.TArray<Type.TObject<{
483
- targetId: Type.TString;
484
- metricId: Type.TUnion<Type.TLiteral<string>[]>;
485
- state: Type.TUnion<Type.TLiteral<string>[]>;
486
- scope: Type.TUnion<Type.TLiteral<string>[]>;
487
- direction: Type.TUnion<Type.TLiteral<string>[]>;
488
- method: Type.TUnion<Type.TLiteral<string>[]>;
489
- aggregation: Type.TUnion<Type.TLiteral<string>[]>;
490
- value: Type.TOptional<Type.TNumber>;
491
- unit: Type.TString;
492
- sampleCount: Type.TInteger;
493
- interval: Type.TOptional<Type.TObject<{
494
- lower: Type.TNumber;
495
- upper: Type.TNumber;
496
- confidenceLevel: Type.TOptional<Type.TNumber>;
497
- }>>;
498
- window: Type.TOptional<Type.TObject<{
499
- startedAt: Type.TString;
500
- endedAt: Type.TString;
501
- }>>;
502
- evidence: Type.TArray<Type.TObject<{
503
- id: Type.TString;
504
- source: Type.TUnion<Type.TLiteral<string>[]>;
505
- uri: Type.TString;
506
- mediaType: Type.TOptional<Type.TString>;
507
- digest: Type.TOptional<Type.TString>;
508
- }>>;
509
- note: Type.TOptional<Type.TString>;
510
- }>>;
511
- }>>;
512
- frontierSnapshot: Type.TObject<{
513
- id: Type.TString;
514
- targetId: Type.TString;
515
- taskProfileId: Type.TString;
516
- taskProfileRevision: Type.TInteger;
517
- productRevision: Type.TString;
518
- createdAt: Type.TString;
519
- frontierCandidateIds: Type.TArray<Type.TString>;
520
- dominatedCandidateIds: Type.TArray<Type.TString>;
521
- ineligibleCandidateIds: Type.TArray<Type.TString>;
522
- unresolvedCandidateIds: Type.TArray<Type.TString>;
523
- comparisons: Type.TArray<Type.TObject<{
524
- candidateId: Type.TString;
525
- otherCandidateId: Type.TString;
526
- state: Type.TUnion<Type.TLiteral<string>[]>;
527
- reasons: Type.TArray<Type.TString>;
528
- }>>;
529
- assessmentIds: Type.TArray<Type.TString>;
530
- calculationEvidence: Type.TArray<Type.TObject<{
531
- id: Type.TString;
532
- source: Type.TUnion<Type.TLiteral<string>[]>;
533
- uri: Type.TString;
534
- mediaType: Type.TOptional<Type.TString>;
535
- digest: Type.TOptional<Type.TString>;
536
- }>>;
537
- }>;
538
- recommendation: Type.TOptional<Type.TObject<{
539
- targetId: Type.TString;
540
- frontierSnapshotId: Type.TString;
541
- selectedCandidateId: Type.TString;
542
- currentCandidateId: Type.TString;
543
- reasons: Type.TArray<Type.TString>;
544
- preferenceEvidence: Type.TArray<Type.TObject<{
545
- id: Type.TString;
546
- source: Type.TUnion<Type.TLiteral<string>[]>;
547
- uri: Type.TString;
548
- mediaType: Type.TOptional<Type.TString>;
549
- digest: Type.TOptional<Type.TString>;
550
- }>>;
551
- }>>;
552
- }>;
553
- readonly investigate_regression: Type.TObject<{
554
- targetId: Type.TString;
555
- regressionDetected: Type.TBoolean;
556
- affectedMetricIds: Type.TArray<Type.TUnion<Type.TLiteral<string>[]>>;
557
- likelyCause: Type.TOptional<Type.TString>;
558
- }>;
559
- readonly apply_model_swap: Type.TObject<{
560
- targetId: Type.TString;
561
- appliedCandidateId: Type.TString;
562
- previousCandidateId: Type.TOptional<Type.TString>;
563
- }>;
564
- readonly verify_model_swap: Type.TObject<{
565
- targetId: Type.TString;
566
- verified: Type.TBoolean;
567
- regressionDetected: Type.TBoolean;
568
- }>;
569
- readonly rollback_model_swap: Type.TObject<{
570
- targetId: Type.TString;
571
- restoredCandidateId: Type.TString;
572
- }>;
573
- };
574
- export declare function intentOutputSchemaFor(kind: IntentKind): TSchema;
575
- export declare function validateIntentOutputSchema(kind: IntentKind, output: unknown): readonly string[];
576
- export declare function completionToolSchemaFor(kind: IntentKind): TSchema;