@openpond/evals 0.4.2 → 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.
Files changed (64) hide show
  1. package/CONTRACT.md +27 -1
  2. package/README.md +31 -2
  3. package/conformance/telemetry/v1/invalid-batch.json +17 -0
  4. package/conformance/telemetry/v1/valid-batch.json +58 -0
  5. package/dist/artifact-verification.js +172 -0
  6. package/dist/builtin-benchmarks/harness-refiner.js +469 -24
  7. package/dist/execution-contracts.js +153 -0
  8. package/dist/execution-receipts.js +185 -0
  9. package/dist/graders.js +8 -2
  10. package/dist/index.js +10 -0
  11. package/dist/learned-preference.js +334 -0
  12. package/dist/preferences.js +803 -0
  13. package/dist/rollouts.js +241 -0
  14. package/dist/tasksets.js +24 -0
  15. package/dist/telemetry/index.js +4 -0
  16. package/dist/telemetry-analysis.js +183 -0
  17. package/dist/telemetry-bundle.js +60 -0
  18. package/dist/telemetry-catalog.js +50 -0
  19. package/dist/telemetry.js +112 -0
  20. package/dist/types/artifact-verification.d.ts +31 -0
  21. package/dist/types/artifact-verification.d.ts.map +1 -0
  22. package/dist/types/builtin-benchmarks/harness-refiner.d.ts +22 -0
  23. package/dist/types/builtin-benchmarks/harness-refiner.d.ts.map +1 -1
  24. package/dist/types/conformance.d.ts +44 -0
  25. package/dist/types/conformance.d.ts.map +1 -1
  26. package/dist/types/evidence/conformance.d.ts +24 -24
  27. package/dist/types/evidence/contracts.d.ts +42 -42
  28. package/dist/types/execution-contracts.d.ts +806 -0
  29. package/dist/types/execution-contracts.d.ts.map +1 -0
  30. package/dist/types/execution-receipts.d.ts +55 -0
  31. package/dist/types/execution-receipts.d.ts.map +1 -0
  32. package/dist/types/graders.d.ts.map +1 -1
  33. package/dist/types/index.d.ts +10 -0
  34. package/dist/types/index.d.ts.map +1 -1
  35. package/dist/types/learned-preference.d.ts +282 -0
  36. package/dist/types/learned-preference.d.ts.map +1 -0
  37. package/dist/types/preferences.d.ts +583 -0
  38. package/dist/types/preferences.d.ts.map +1 -0
  39. package/dist/types/review-conformance.d.ts +20 -15
  40. package/dist/types/review-conformance.d.ts.map +1 -1
  41. package/dist/types/rollouts.d.ts +221 -0
  42. package/dist/types/rollouts.d.ts.map +1 -0
  43. package/dist/types/tasksets.d.ts +89 -0
  44. package/dist/types/tasksets.d.ts.map +1 -1
  45. package/dist/types/telemetry/index.d.ts +5 -0
  46. package/dist/types/telemetry/index.d.ts.map +1 -0
  47. package/dist/types/telemetry-analysis.d.ts +116 -0
  48. package/dist/types/telemetry-analysis.d.ts.map +1 -0
  49. package/dist/types/telemetry-bundle.d.ts +309 -0
  50. package/dist/types/telemetry-bundle.d.ts.map +1 -0
  51. package/dist/types/telemetry-catalog.d.ts +269 -0
  52. package/dist/types/telemetry-catalog.d.ts.map +1 -0
  53. package/dist/types/telemetry.d.ts +266 -0
  54. package/dist/types/telemetry.d.ts.map +1 -0
  55. package/package.json +20 -2
  56. package/schemas/telemetry/v1/evidence-completeness.schema.json +82 -0
  57. package/schemas/telemetry/v1/evidence-reference.schema.json +41 -0
  58. package/schemas/telemetry/v1/metric-definition.schema.json +96 -0
  59. package/schemas/telemetry/v1/metric-observation.schema.json +182 -0
  60. package/schemas/telemetry/v1/run-metric-summary.schema.json +98 -0
  61. package/schemas/telemetry/v1/run-telemetry-batch.schema.json +405 -0
  62. package/schemas/telemetry/v1/run-telemetry-event.schema.json +201 -0
  63. package/schemas/telemetry/v1/telemetry-cohort.schema.json +100 -0
  64. package/schemas/telemetry/v1/telemetry-export-bundle.schema.json +655 -0
@@ -0,0 +1,309 @@
1
+ import { z } from "zod";
2
+ import { type TelemetryVisibility } from "./telemetry.js";
3
+ export declare const TelemetryExportBundleContentSchema: z.ZodObject<{
4
+ schemaVersion: z.ZodLiteral<"openpond.telemetryExportBundle.v1">;
5
+ id: z.ZodString;
6
+ runId: z.ZodString;
7
+ exportedAt: z.ZodString;
8
+ definitions: z.ZodArray<z.ZodObject<{
9
+ schemaVersion: z.ZodLiteral<"openpond.metricDefinition.v1">;
10
+ id: z.ZodString;
11
+ displayName: z.ZodString;
12
+ description: z.ZodString;
13
+ valueType: z.ZodEnum<{
14
+ gauge: "gauge";
15
+ counter: "counter";
16
+ distribution: "distribution";
17
+ }>;
18
+ unit: z.ZodEnum<{
19
+ ratio: "ratio";
20
+ count: "count";
21
+ seconds: "seconds";
22
+ milliseconds: "milliseconds";
23
+ tokens: "tokens";
24
+ bytes: "bytes";
25
+ usd: "usd";
26
+ scalar: "scalar";
27
+ }>;
28
+ direction: z.ZodEnum<{
29
+ higher: "higher";
30
+ lower: "lower";
31
+ neutral: "neutral";
32
+ }>;
33
+ aggregation: z.ZodEnum<{
34
+ last: "last";
35
+ sum: "sum";
36
+ mean: "mean";
37
+ min: "min";
38
+ max: "max";
39
+ p50: "p50";
40
+ p95: "p95";
41
+ }>;
42
+ visibility: z.ZodEnum<{
43
+ host_private: "host_private";
44
+ policy_visible: "policy_visible";
45
+ team_visible: "team_visible";
46
+ }>;
47
+ boundedDimensions: z.ZodArray<z.ZodString>;
48
+ }, z.core.$strict>>;
49
+ events: z.ZodArray<z.ZodObject<{
50
+ schemaVersion: z.ZodLiteral<"openpond.runTelemetryEvent.v1">;
51
+ eventId: z.ZodString;
52
+ sequence: z.ZodNumber;
53
+ occurredAt: z.ZodString;
54
+ source: z.ZodEnum<{
55
+ environment: "environment";
56
+ evaluation: "evaluation";
57
+ runtime: "runtime";
58
+ grader: "grader";
59
+ optimizer: "optimizer";
60
+ control_plane: "control_plane";
61
+ }>;
62
+ type: z.ZodEnum<{
63
+ cleanup_completed: "cleanup_completed";
64
+ run_started: "run_started";
65
+ run_state_changed: "run_state_changed";
66
+ rollout_group_started: "rollout_group_started";
67
+ attempt_completed: "attempt_completed";
68
+ grader_completed: "grader_completed";
69
+ reward_composed: "reward_composed";
70
+ optimizer_step_completed: "optimizer_step_completed";
71
+ checkpoint_committed: "checkpoint_committed";
72
+ evaluation_completed: "evaluation_completed";
73
+ run_completed: "run_completed";
74
+ run_failed: "run_failed";
75
+ }>;
76
+ visibility: z.ZodEnum<{
77
+ host_private: "host_private";
78
+ policy_visible: "policy_visible";
79
+ team_visible: "team_visible";
80
+ }>;
81
+ lineage: z.ZodObject<{
82
+ modelProjectId: z.ZodString;
83
+ runId: z.ZodString;
84
+ modelVersionId: z.ZodNullable<z.ZodString>;
85
+ harnessReleaseHash: z.ZodString;
86
+ tasksetReleaseHash: z.ZodString;
87
+ environmentReleaseHash: z.ZodNullable<z.ZodString>;
88
+ checkpointId: z.ZodNullable<z.ZodString>;
89
+ step: z.ZodNullable<z.ZodNumber>;
90
+ rolloutGroupId: z.ZodNullable<z.ZodString>;
91
+ attemptId: z.ZodNullable<z.ZodString>;
92
+ scenarioId: z.ZodNullable<z.ZodString>;
93
+ }, z.core.$strict>;
94
+ attributes: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
95
+ }, z.core.$strict>>;
96
+ observations: z.ZodArray<z.ZodObject<{
97
+ schemaVersion: z.ZodLiteral<"openpond.metricObservation.v1">;
98
+ observationId: z.ZodString;
99
+ metricId: z.ZodString;
100
+ eventId: z.ZodString;
101
+ sequence: z.ZodNumber;
102
+ observedAt: z.ZodString;
103
+ value: z.ZodNumber;
104
+ lineage: z.ZodObject<{
105
+ modelProjectId: z.ZodString;
106
+ runId: z.ZodString;
107
+ modelVersionId: z.ZodNullable<z.ZodString>;
108
+ harnessReleaseHash: z.ZodString;
109
+ tasksetReleaseHash: z.ZodString;
110
+ environmentReleaseHash: z.ZodNullable<z.ZodString>;
111
+ checkpointId: z.ZodNullable<z.ZodString>;
112
+ step: z.ZodNullable<z.ZodNumber>;
113
+ rolloutGroupId: z.ZodNullable<z.ZodString>;
114
+ attemptId: z.ZodNullable<z.ZodString>;
115
+ scenarioId: z.ZodNullable<z.ZodString>;
116
+ }, z.core.$strict>;
117
+ dimensions: z.ZodRecord<z.ZodString, z.ZodString>;
118
+ }, z.core.$strict>>;
119
+ evidenceRefs: z.ZodArray<z.ZodObject<{
120
+ id: z.ZodString;
121
+ contentHash: z.ZodString;
122
+ kind: z.ZodEnum<{
123
+ artifact: "artifact";
124
+ attempt: "attempt";
125
+ trace: "trace";
126
+ grader: "grader";
127
+ rollout: "rollout";
128
+ checkpoint: "checkpoint";
129
+ }>;
130
+ visibility: z.ZodEnum<{
131
+ host_private: "host_private";
132
+ policy_visible: "policy_visible";
133
+ team_visible: "team_visible";
134
+ }>;
135
+ }, z.core.$strict>>;
136
+ completeness: z.ZodObject<{
137
+ schemaVersion: z.ZodLiteral<"openpond.telemetryEvidenceCompleteness.v1">;
138
+ runId: z.ZodString;
139
+ status: z.ZodEnum<{
140
+ missing: "missing";
141
+ complete: "complete";
142
+ partial: "partial";
143
+ }>;
144
+ expectedEventTypes: z.ZodArray<z.ZodString>;
145
+ observedEventTypes: z.ZodArray<z.ZodString>;
146
+ missingEventTypes: z.ZodArray<z.ZodString>;
147
+ lastSequence: z.ZodNullable<z.ZodNumber>;
148
+ sequenceGaps: z.ZodArray<z.ZodNumber>;
149
+ }, z.core.$strict>;
150
+ }, z.core.$strict>;
151
+ export declare const TelemetryExportBundleSchema: z.ZodObject<{
152
+ schemaVersion: z.ZodLiteral<"openpond.telemetryExportBundle.v1">;
153
+ id: z.ZodString;
154
+ runId: z.ZodString;
155
+ exportedAt: z.ZodString;
156
+ definitions: z.ZodArray<z.ZodObject<{
157
+ schemaVersion: z.ZodLiteral<"openpond.metricDefinition.v1">;
158
+ id: z.ZodString;
159
+ displayName: z.ZodString;
160
+ description: z.ZodString;
161
+ valueType: z.ZodEnum<{
162
+ gauge: "gauge";
163
+ counter: "counter";
164
+ distribution: "distribution";
165
+ }>;
166
+ unit: z.ZodEnum<{
167
+ ratio: "ratio";
168
+ count: "count";
169
+ seconds: "seconds";
170
+ milliseconds: "milliseconds";
171
+ tokens: "tokens";
172
+ bytes: "bytes";
173
+ usd: "usd";
174
+ scalar: "scalar";
175
+ }>;
176
+ direction: z.ZodEnum<{
177
+ higher: "higher";
178
+ lower: "lower";
179
+ neutral: "neutral";
180
+ }>;
181
+ aggregation: z.ZodEnum<{
182
+ last: "last";
183
+ sum: "sum";
184
+ mean: "mean";
185
+ min: "min";
186
+ max: "max";
187
+ p50: "p50";
188
+ p95: "p95";
189
+ }>;
190
+ visibility: z.ZodEnum<{
191
+ host_private: "host_private";
192
+ policy_visible: "policy_visible";
193
+ team_visible: "team_visible";
194
+ }>;
195
+ boundedDimensions: z.ZodArray<z.ZodString>;
196
+ }, z.core.$strict>>;
197
+ events: z.ZodArray<z.ZodObject<{
198
+ schemaVersion: z.ZodLiteral<"openpond.runTelemetryEvent.v1">;
199
+ eventId: z.ZodString;
200
+ sequence: z.ZodNumber;
201
+ occurredAt: z.ZodString;
202
+ source: z.ZodEnum<{
203
+ environment: "environment";
204
+ evaluation: "evaluation";
205
+ runtime: "runtime";
206
+ grader: "grader";
207
+ optimizer: "optimizer";
208
+ control_plane: "control_plane";
209
+ }>;
210
+ type: z.ZodEnum<{
211
+ cleanup_completed: "cleanup_completed";
212
+ run_started: "run_started";
213
+ run_state_changed: "run_state_changed";
214
+ rollout_group_started: "rollout_group_started";
215
+ attempt_completed: "attempt_completed";
216
+ grader_completed: "grader_completed";
217
+ reward_composed: "reward_composed";
218
+ optimizer_step_completed: "optimizer_step_completed";
219
+ checkpoint_committed: "checkpoint_committed";
220
+ evaluation_completed: "evaluation_completed";
221
+ run_completed: "run_completed";
222
+ run_failed: "run_failed";
223
+ }>;
224
+ visibility: z.ZodEnum<{
225
+ host_private: "host_private";
226
+ policy_visible: "policy_visible";
227
+ team_visible: "team_visible";
228
+ }>;
229
+ lineage: z.ZodObject<{
230
+ modelProjectId: z.ZodString;
231
+ runId: z.ZodString;
232
+ modelVersionId: z.ZodNullable<z.ZodString>;
233
+ harnessReleaseHash: z.ZodString;
234
+ tasksetReleaseHash: z.ZodString;
235
+ environmentReleaseHash: z.ZodNullable<z.ZodString>;
236
+ checkpointId: z.ZodNullable<z.ZodString>;
237
+ step: z.ZodNullable<z.ZodNumber>;
238
+ rolloutGroupId: z.ZodNullable<z.ZodString>;
239
+ attemptId: z.ZodNullable<z.ZodString>;
240
+ scenarioId: z.ZodNullable<z.ZodString>;
241
+ }, z.core.$strict>;
242
+ attributes: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
243
+ }, z.core.$strict>>;
244
+ observations: z.ZodArray<z.ZodObject<{
245
+ schemaVersion: z.ZodLiteral<"openpond.metricObservation.v1">;
246
+ observationId: z.ZodString;
247
+ metricId: z.ZodString;
248
+ eventId: z.ZodString;
249
+ sequence: z.ZodNumber;
250
+ observedAt: z.ZodString;
251
+ value: z.ZodNumber;
252
+ lineage: z.ZodObject<{
253
+ modelProjectId: z.ZodString;
254
+ runId: z.ZodString;
255
+ modelVersionId: z.ZodNullable<z.ZodString>;
256
+ harnessReleaseHash: z.ZodString;
257
+ tasksetReleaseHash: z.ZodString;
258
+ environmentReleaseHash: z.ZodNullable<z.ZodString>;
259
+ checkpointId: z.ZodNullable<z.ZodString>;
260
+ step: z.ZodNullable<z.ZodNumber>;
261
+ rolloutGroupId: z.ZodNullable<z.ZodString>;
262
+ attemptId: z.ZodNullable<z.ZodString>;
263
+ scenarioId: z.ZodNullable<z.ZodString>;
264
+ }, z.core.$strict>;
265
+ dimensions: z.ZodRecord<z.ZodString, z.ZodString>;
266
+ }, z.core.$strict>>;
267
+ evidenceRefs: z.ZodArray<z.ZodObject<{
268
+ id: z.ZodString;
269
+ contentHash: z.ZodString;
270
+ kind: z.ZodEnum<{
271
+ artifact: "artifact";
272
+ attempt: "attempt";
273
+ trace: "trace";
274
+ grader: "grader";
275
+ rollout: "rollout";
276
+ checkpoint: "checkpoint";
277
+ }>;
278
+ visibility: z.ZodEnum<{
279
+ host_private: "host_private";
280
+ policy_visible: "policy_visible";
281
+ team_visible: "team_visible";
282
+ }>;
283
+ }, z.core.$strict>>;
284
+ completeness: z.ZodObject<{
285
+ schemaVersion: z.ZodLiteral<"openpond.telemetryEvidenceCompleteness.v1">;
286
+ runId: z.ZodString;
287
+ status: z.ZodEnum<{
288
+ missing: "missing";
289
+ complete: "complete";
290
+ partial: "partial";
291
+ }>;
292
+ expectedEventTypes: z.ZodArray<z.ZodString>;
293
+ observedEventTypes: z.ZodArray<z.ZodString>;
294
+ missingEventTypes: z.ZodArray<z.ZodString>;
295
+ lastSequence: z.ZodNullable<z.ZodNumber>;
296
+ sequenceGaps: z.ZodArray<z.ZodNumber>;
297
+ }, z.core.$strict>;
298
+ contentHash: z.ZodString;
299
+ }, z.core.$strict>;
300
+ export declare function createTelemetryExportBundle(input: z.input<typeof TelemetryExportBundleContentSchema>): z.infer<typeof TelemetryExportBundleSchema>;
301
+ export declare function verifyTelemetryExportBundle(input: unknown): boolean;
302
+ export declare function redactTelemetryExportBundle(input: {
303
+ bundle: z.infer<typeof TelemetryExportBundleSchema>;
304
+ maximumVisibility: TelemetryVisibility;
305
+ deniedAttributeKeys?: string[];
306
+ id: string;
307
+ exportedAt: string;
308
+ }): z.infer<typeof TelemetryExportBundleSchema>;
309
+ //# sourceMappingURL=telemetry-bundle.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"telemetry-bundle.d.ts","sourceRoot":"","sources":["../../../../src/telemetry-bundle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,OAAO,EAAoD,KAAK,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAE5G,eAAO,MAAM,kCAAkC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAUpC,CAAC;AAEZ,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAE7B,CAAC;AAEZ,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,kCAAkC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CASlJ;AAED,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAKnE;AAED,wBAAgB,2BAA2B,CAAC,KAAK,EAAE;IACjD,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;IACpD,iBAAiB,EAAE,mBAAmB,CAAC;IACvC,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,MAAM,CAAC;CACpB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAsB9C"}
@@ -0,0 +1,269 @@
1
+ import { z } from "zod";
2
+ import { type MetricDefinition, type MetricObservation } from "./telemetry.js";
3
+ export declare const CORE_METRIC_CATALOG: readonly [{
4
+ schemaVersion: "openpond.metricDefinition.v1";
5
+ id: string;
6
+ displayName: string;
7
+ description: string;
8
+ valueType: "gauge" | "counter" | "distribution";
9
+ unit: "ratio" | "count" | "seconds" | "milliseconds" | "tokens" | "bytes" | "usd" | "scalar";
10
+ direction: "higher" | "lower" | "neutral";
11
+ aggregation: "last" | "sum" | "mean" | "min" | "max" | "p50" | "p95";
12
+ visibility: "host_private" | "policy_visible" | "team_visible";
13
+ boundedDimensions: string[];
14
+ }, {
15
+ schemaVersion: "openpond.metricDefinition.v1";
16
+ id: string;
17
+ displayName: string;
18
+ description: string;
19
+ valueType: "gauge" | "counter" | "distribution";
20
+ unit: "ratio" | "count" | "seconds" | "milliseconds" | "tokens" | "bytes" | "usd" | "scalar";
21
+ direction: "higher" | "lower" | "neutral";
22
+ aggregation: "last" | "sum" | "mean" | "min" | "max" | "p50" | "p95";
23
+ visibility: "host_private" | "policy_visible" | "team_visible";
24
+ boundedDimensions: string[];
25
+ }, {
26
+ schemaVersion: "openpond.metricDefinition.v1";
27
+ id: string;
28
+ displayName: string;
29
+ description: string;
30
+ valueType: "gauge" | "counter" | "distribution";
31
+ unit: "ratio" | "count" | "seconds" | "milliseconds" | "tokens" | "bytes" | "usd" | "scalar";
32
+ direction: "higher" | "lower" | "neutral";
33
+ aggregation: "last" | "sum" | "mean" | "min" | "max" | "p50" | "p95";
34
+ visibility: "host_private" | "policy_visible" | "team_visible";
35
+ boundedDimensions: string[];
36
+ }, {
37
+ schemaVersion: "openpond.metricDefinition.v1";
38
+ id: string;
39
+ displayName: string;
40
+ description: string;
41
+ valueType: "gauge" | "counter" | "distribution";
42
+ unit: "ratio" | "count" | "seconds" | "milliseconds" | "tokens" | "bytes" | "usd" | "scalar";
43
+ direction: "higher" | "lower" | "neutral";
44
+ aggregation: "last" | "sum" | "mean" | "min" | "max" | "p50" | "p95";
45
+ visibility: "host_private" | "policy_visible" | "team_visible";
46
+ boundedDimensions: string[];
47
+ }, {
48
+ schemaVersion: "openpond.metricDefinition.v1";
49
+ id: string;
50
+ displayName: string;
51
+ description: string;
52
+ valueType: "gauge" | "counter" | "distribution";
53
+ unit: "ratio" | "count" | "seconds" | "milliseconds" | "tokens" | "bytes" | "usd" | "scalar";
54
+ direction: "higher" | "lower" | "neutral";
55
+ aggregation: "last" | "sum" | "mean" | "min" | "max" | "p50" | "p95";
56
+ visibility: "host_private" | "policy_visible" | "team_visible";
57
+ boundedDimensions: string[];
58
+ }, {
59
+ schemaVersion: "openpond.metricDefinition.v1";
60
+ id: string;
61
+ displayName: string;
62
+ description: string;
63
+ valueType: "gauge" | "counter" | "distribution";
64
+ unit: "ratio" | "count" | "seconds" | "milliseconds" | "tokens" | "bytes" | "usd" | "scalar";
65
+ direction: "higher" | "lower" | "neutral";
66
+ aggregation: "last" | "sum" | "mean" | "min" | "max" | "p50" | "p95";
67
+ visibility: "host_private" | "policy_visible" | "team_visible";
68
+ boundedDimensions: string[];
69
+ }, {
70
+ schemaVersion: "openpond.metricDefinition.v1";
71
+ id: string;
72
+ displayName: string;
73
+ description: string;
74
+ valueType: "gauge" | "counter" | "distribution";
75
+ unit: "ratio" | "count" | "seconds" | "milliseconds" | "tokens" | "bytes" | "usd" | "scalar";
76
+ direction: "higher" | "lower" | "neutral";
77
+ aggregation: "last" | "sum" | "mean" | "min" | "max" | "p50" | "p95";
78
+ visibility: "host_private" | "policy_visible" | "team_visible";
79
+ boundedDimensions: string[];
80
+ }, {
81
+ schemaVersion: "openpond.metricDefinition.v1";
82
+ id: string;
83
+ displayName: string;
84
+ description: string;
85
+ valueType: "gauge" | "counter" | "distribution";
86
+ unit: "ratio" | "count" | "seconds" | "milliseconds" | "tokens" | "bytes" | "usd" | "scalar";
87
+ direction: "higher" | "lower" | "neutral";
88
+ aggregation: "last" | "sum" | "mean" | "min" | "max" | "p50" | "p95";
89
+ visibility: "host_private" | "policy_visible" | "team_visible";
90
+ boundedDimensions: string[];
91
+ }, {
92
+ schemaVersion: "openpond.metricDefinition.v1";
93
+ id: string;
94
+ displayName: string;
95
+ description: string;
96
+ valueType: "gauge" | "counter" | "distribution";
97
+ unit: "ratio" | "count" | "seconds" | "milliseconds" | "tokens" | "bytes" | "usd" | "scalar";
98
+ direction: "higher" | "lower" | "neutral";
99
+ aggregation: "last" | "sum" | "mean" | "min" | "max" | "p50" | "p95";
100
+ visibility: "host_private" | "policy_visible" | "team_visible";
101
+ boundedDimensions: string[];
102
+ }, {
103
+ schemaVersion: "openpond.metricDefinition.v1";
104
+ id: string;
105
+ displayName: string;
106
+ description: string;
107
+ valueType: "gauge" | "counter" | "distribution";
108
+ unit: "ratio" | "count" | "seconds" | "milliseconds" | "tokens" | "bytes" | "usd" | "scalar";
109
+ direction: "higher" | "lower" | "neutral";
110
+ aggregation: "last" | "sum" | "mean" | "min" | "max" | "p50" | "p95";
111
+ visibility: "host_private" | "policy_visible" | "team_visible";
112
+ boundedDimensions: string[];
113
+ }, {
114
+ schemaVersion: "openpond.metricDefinition.v1";
115
+ id: string;
116
+ displayName: string;
117
+ description: string;
118
+ valueType: "gauge" | "counter" | "distribution";
119
+ unit: "ratio" | "count" | "seconds" | "milliseconds" | "tokens" | "bytes" | "usd" | "scalar";
120
+ direction: "higher" | "lower" | "neutral";
121
+ aggregation: "last" | "sum" | "mean" | "min" | "max" | "p50" | "p95";
122
+ visibility: "host_private" | "policy_visible" | "team_visible";
123
+ boundedDimensions: string[];
124
+ }, {
125
+ schemaVersion: "openpond.metricDefinition.v1";
126
+ id: string;
127
+ displayName: string;
128
+ description: string;
129
+ valueType: "gauge" | "counter" | "distribution";
130
+ unit: "ratio" | "count" | "seconds" | "milliseconds" | "tokens" | "bytes" | "usd" | "scalar";
131
+ direction: "higher" | "lower" | "neutral";
132
+ aggregation: "last" | "sum" | "mean" | "min" | "max" | "p50" | "p95";
133
+ visibility: "host_private" | "policy_visible" | "team_visible";
134
+ boundedDimensions: string[];
135
+ }, {
136
+ schemaVersion: "openpond.metricDefinition.v1";
137
+ id: string;
138
+ displayName: string;
139
+ description: string;
140
+ valueType: "gauge" | "counter" | "distribution";
141
+ unit: "ratio" | "count" | "seconds" | "milliseconds" | "tokens" | "bytes" | "usd" | "scalar";
142
+ direction: "higher" | "lower" | "neutral";
143
+ aggregation: "last" | "sum" | "mean" | "min" | "max" | "p50" | "p95";
144
+ visibility: "host_private" | "policy_visible" | "team_visible";
145
+ boundedDimensions: string[];
146
+ }, {
147
+ schemaVersion: "openpond.metricDefinition.v1";
148
+ id: string;
149
+ displayName: string;
150
+ description: string;
151
+ valueType: "gauge" | "counter" | "distribution";
152
+ unit: "ratio" | "count" | "seconds" | "milliseconds" | "tokens" | "bytes" | "usd" | "scalar";
153
+ direction: "higher" | "lower" | "neutral";
154
+ aggregation: "last" | "sum" | "mean" | "min" | "max" | "p50" | "p95";
155
+ visibility: "host_private" | "policy_visible" | "team_visible";
156
+ boundedDimensions: string[];
157
+ }, {
158
+ schemaVersion: "openpond.metricDefinition.v1";
159
+ id: string;
160
+ displayName: string;
161
+ description: string;
162
+ valueType: "gauge" | "counter" | "distribution";
163
+ unit: "ratio" | "count" | "seconds" | "milliseconds" | "tokens" | "bytes" | "usd" | "scalar";
164
+ direction: "higher" | "lower" | "neutral";
165
+ aggregation: "last" | "sum" | "mean" | "min" | "max" | "p50" | "p95";
166
+ visibility: "host_private" | "policy_visible" | "team_visible";
167
+ boundedDimensions: string[];
168
+ }, {
169
+ schemaVersion: "openpond.metricDefinition.v1";
170
+ id: string;
171
+ displayName: string;
172
+ description: string;
173
+ valueType: "gauge" | "counter" | "distribution";
174
+ unit: "ratio" | "count" | "seconds" | "milliseconds" | "tokens" | "bytes" | "usd" | "scalar";
175
+ direction: "higher" | "lower" | "neutral";
176
+ aggregation: "last" | "sum" | "mean" | "min" | "max" | "p50" | "p95";
177
+ visibility: "host_private" | "policy_visible" | "team_visible";
178
+ boundedDimensions: string[];
179
+ }, {
180
+ schemaVersion: "openpond.metricDefinition.v1";
181
+ id: string;
182
+ displayName: string;
183
+ description: string;
184
+ valueType: "gauge" | "counter" | "distribution";
185
+ unit: "ratio" | "count" | "seconds" | "milliseconds" | "tokens" | "bytes" | "usd" | "scalar";
186
+ direction: "higher" | "lower" | "neutral";
187
+ aggregation: "last" | "sum" | "mean" | "min" | "max" | "p50" | "p95";
188
+ visibility: "host_private" | "policy_visible" | "team_visible";
189
+ boundedDimensions: string[];
190
+ }, {
191
+ schemaVersion: "openpond.metricDefinition.v1";
192
+ id: string;
193
+ displayName: string;
194
+ description: string;
195
+ valueType: "gauge" | "counter" | "distribution";
196
+ unit: "ratio" | "count" | "seconds" | "milliseconds" | "tokens" | "bytes" | "usd" | "scalar";
197
+ direction: "higher" | "lower" | "neutral";
198
+ aggregation: "last" | "sum" | "mean" | "min" | "max" | "p50" | "p95";
199
+ visibility: "host_private" | "policy_visible" | "team_visible";
200
+ boundedDimensions: string[];
201
+ }, {
202
+ schemaVersion: "openpond.metricDefinition.v1";
203
+ id: string;
204
+ displayName: string;
205
+ description: string;
206
+ valueType: "gauge" | "counter" | "distribution";
207
+ unit: "ratio" | "count" | "seconds" | "milliseconds" | "tokens" | "bytes" | "usd" | "scalar";
208
+ direction: "higher" | "lower" | "neutral";
209
+ aggregation: "last" | "sum" | "mean" | "min" | "max" | "p50" | "p95";
210
+ visibility: "host_private" | "policy_visible" | "team_visible";
211
+ boundedDimensions: string[];
212
+ }, {
213
+ schemaVersion: "openpond.metricDefinition.v1";
214
+ id: string;
215
+ displayName: string;
216
+ description: string;
217
+ valueType: "gauge" | "counter" | "distribution";
218
+ unit: "ratio" | "count" | "seconds" | "milliseconds" | "tokens" | "bytes" | "usd" | "scalar";
219
+ direction: "higher" | "lower" | "neutral";
220
+ aggregation: "last" | "sum" | "mean" | "min" | "max" | "p50" | "p95";
221
+ visibility: "host_private" | "policy_visible" | "team_visible";
222
+ boundedDimensions: string[];
223
+ }];
224
+ export type CoreMetricId = (typeof CORE_METRIC_CATALOG)[number]["id"];
225
+ export declare function getCoreMetricDefinition(metricId: string): MetricDefinition | undefined;
226
+ export declare function validateCoreMetricObservation(input: MetricObservation): MetricObservation;
227
+ export declare function validateMetricObservation(input: MetricObservation, definitions: readonly MetricDefinition[]): MetricObservation;
228
+ export declare const MetricCatalogSchema: z.ZodArray<z.ZodObject<{
229
+ schemaVersion: z.ZodLiteral<"openpond.metricDefinition.v1">;
230
+ id: z.ZodString;
231
+ displayName: z.ZodString;
232
+ description: z.ZodString;
233
+ valueType: z.ZodEnum<{
234
+ gauge: "gauge";
235
+ counter: "counter";
236
+ distribution: "distribution";
237
+ }>;
238
+ unit: z.ZodEnum<{
239
+ ratio: "ratio";
240
+ count: "count";
241
+ seconds: "seconds";
242
+ milliseconds: "milliseconds";
243
+ tokens: "tokens";
244
+ bytes: "bytes";
245
+ usd: "usd";
246
+ scalar: "scalar";
247
+ }>;
248
+ direction: z.ZodEnum<{
249
+ higher: "higher";
250
+ lower: "lower";
251
+ neutral: "neutral";
252
+ }>;
253
+ aggregation: z.ZodEnum<{
254
+ last: "last";
255
+ sum: "sum";
256
+ mean: "mean";
257
+ min: "min";
258
+ max: "max";
259
+ p50: "p50";
260
+ p95: "p95";
261
+ }>;
262
+ visibility: z.ZodEnum<{
263
+ host_private: "host_private";
264
+ policy_visible: "policy_visible";
265
+ team_visible: "team_visible";
266
+ }>;
267
+ boundedDimensions: z.ZodArray<z.ZodString>;
268
+ }, z.core.$strict>>;
269
+ //# sourceMappingURL=telemetry-catalog.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"telemetry-catalog.d.ts","sourceRoot":"","sources":["../../../../src/telemetry-catalog.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAA0B,KAAK,gBAAgB,EAAE,KAAK,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAKvG,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAqBtB,CAAC;AAEX,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC;AAGtE,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,MAAM,GAAG,gBAAgB,GAAG,SAAS,CAEtF;AAED,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,iBAAiB,GAAG,iBAAiB,CAEzF;AAED,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,iBAAiB,EAAE,WAAW,EAAE,SAAS,gBAAgB,EAAE,GAAG,iBAAiB,CAU/H;AAED,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAI9B,CAAC"}