@irogane/kaji 0.2.0-beta.11

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 (136) hide show
  1. package/LICENSE +105 -0
  2. package/README.md +598 -0
  3. package/contracts/README.md +14 -0
  4. package/contracts/beta-core-v1.json +52 -0
  5. package/contracts/cli/init-cases-v1.json +27 -0
  6. package/contracts/errors/error-codes.json +48 -0
  7. package/contracts/errors/integration-recovery-v1.json +127 -0
  8. package/contracts/errors/provider-normalization.json +111 -0
  9. package/contracts/events/conformance-invalid.json +20 -0
  10. package/contracts/events/conformance.json +511 -0
  11. package/contracts/events/new-kaji-event-v1.schema.json +1021 -0
  12. package/contracts/events/stored-kaji-event-v1.schema.json +1025 -0
  13. package/contracts/feature-tiers-v1.json +488 -0
  14. package/contracts/integrations/abi-index-v1.json +8 -0
  15. package/contracts/integrations/conformance-invalid.json +443 -0
  16. package/contracts/integrations/conformance-valid.json +121 -0
  17. package/contracts/integrations/copy-provenance-v1.schema.json +61 -0
  18. package/contracts/integrations/echo-tool-abi-v1.json +37 -0
  19. package/contracts/integrations/github-api-conformance-v1.json +644 -0
  20. package/contracts/integrations/github-tool-abi-typescript-v1.json +369 -0
  21. package/contracts/integrations/github-tool-abi-v1.json +146 -0
  22. package/contracts/integrations/gmail-api-conformance-v1.json +750 -0
  23. package/contracts/integrations/gmail-tool-abi-v1.json +62 -0
  24. package/contracts/integrations/index.schema.json +37 -0
  25. package/contracts/integrations/manifest.schema.json +119 -0
  26. package/contracts/parity/expected-normalized.json +4906 -0
  27. package/contracts/parity/scenarios.json +100 -0
  28. package/contracts/parity/scenarios.schema.json +214 -0
  29. package/contracts/providers/cost-conformance.json +112 -0
  30. package/contracts/release/github-proof-v1.schema.json +138 -0
  31. package/contracts/release/gmail-proof-v1.schema.json +138 -0
  32. package/contracts/release/kaji-ts-consumer-handoff-v1.schema.json +1289 -0
  33. package/contracts/release/publisher-identity-receipt-v1.schema.json +319 -0
  34. package/contracts/release/typescript-onboarding-evidence-v1.schema.json +740 -0
  35. package/contracts/tools/conformance-invalid.json +271 -0
  36. package/contracts/tools/conformance-valid.json +78 -0
  37. package/contracts/tools/tool-schema-v1.schema.json +18 -0
  38. package/dist/anthropic.cjs +1231 -0
  39. package/dist/anthropic.cjs.map +1 -0
  40. package/dist/anthropic.d.cts +26 -0
  41. package/dist/anthropic.d.ts +26 -0
  42. package/dist/anthropic.js +270 -0
  43. package/dist/anthropic.js.map +1 -0
  44. package/dist/auth.cjs +1507 -0
  45. package/dist/auth.cjs.map +1 -0
  46. package/dist/auth.d.cts +129 -0
  47. package/dist/auth.d.ts +129 -0
  48. package/dist/auth.js +1039 -0
  49. package/dist/auth.js.map +1 -0
  50. package/dist/base-B9FRMcP8.d.cts +140 -0
  51. package/dist/base-nHQd1VtS.d.ts +140 -0
  52. package/dist/chunk-AAM33KAO.js +4367 -0
  53. package/dist/chunk-AAM33KAO.js.map +1 -0
  54. package/dist/chunk-KAJ6BM64.js +153 -0
  55. package/dist/chunk-KAJ6BM64.js.map +1 -0
  56. package/dist/chunk-KCAXIOZS.js +308 -0
  57. package/dist/chunk-KCAXIOZS.js.map +1 -0
  58. package/dist/chunk-LSJ4AVO2.js +243 -0
  59. package/dist/chunk-LSJ4AVO2.js.map +1 -0
  60. package/dist/chunk-TM7ZGOJX.js +716 -0
  61. package/dist/chunk-TM7ZGOJX.js.map +1 -0
  62. package/dist/cli/bin.d.ts +2 -0
  63. package/dist/cli/bin.js +13 -0
  64. package/dist/cli/bin.js.map +1 -0
  65. package/dist/cli/chunk-2RCWPRVY.js +6277 -0
  66. package/dist/cli/chunk-2RCWPRVY.js.map +1 -0
  67. package/dist/cli/chunk-SEBX54TR.js +681 -0
  68. package/dist/cli/chunk-SEBX54TR.js.map +1 -0
  69. package/dist/cli/index.d.ts +232 -0
  70. package/dist/cli/index.js +11 -0
  71. package/dist/cli/index.js.map +1 -0
  72. package/dist/cli/init-worker.d.ts +2 -0
  73. package/dist/cli/init-worker.js +18 -0
  74. package/dist/cli/init-worker.js.map +1 -0
  75. package/dist/cli/integration-copy-worker.js +48 -0
  76. package/dist/cli/integration-copy-worker.js.map +1 -0
  77. package/dist/cli/package-entry-cjs.cjs +21 -0
  78. package/dist/cli/package-entry-cjs.cjs.map +1 -0
  79. package/dist/cli/package-entry-cjs.d.cts +2 -0
  80. package/dist/cli/package-entry.d.ts +2 -0
  81. package/dist/cli/package-entry.js +13 -0
  82. package/dist/cli/package-entry.js.map +1 -0
  83. package/dist/context-BaFHrQHv.d.cts +21 -0
  84. package/dist/context-BaFHrQHv.d.ts +21 -0
  85. package/dist/context-C-YPY-GS.d.cts +1538 -0
  86. package/dist/context-C-YPY-GS.d.ts +1538 -0
  87. package/dist/index.cjs +12346 -0
  88. package/dist/index.cjs.map +1 -0
  89. package/dist/index.d.cts +1560 -0
  90. package/dist/index.d.ts +1560 -0
  91. package/dist/index.js +7852 -0
  92. package/dist/index.js.map +1 -0
  93. package/dist/integrations/github.cjs +2092 -0
  94. package/dist/integrations/github.cjs.map +1 -0
  95. package/dist/integrations/github.d.cts +21 -0
  96. package/dist/integrations/github.d.ts +21 -0
  97. package/dist/integrations/github.js +2088 -0
  98. package/dist/integrations/github.js.map +1 -0
  99. package/dist/integrations.cjs +3370 -0
  100. package/dist/integrations.cjs.map +1 -0
  101. package/dist/integrations.d.cts +202 -0
  102. package/dist/integrations.d.ts +202 -0
  103. package/dist/integrations.js +2650 -0
  104. package/dist/integrations.js.map +1 -0
  105. package/dist/observability-Cj--OkME.d.cts +96 -0
  106. package/dist/observability-Cj--OkME.d.ts +96 -0
  107. package/dist/openai.cjs +1235 -0
  108. package/dist/openai.cjs.map +1 -0
  109. package/dist/openai.d.cts +32 -0
  110. package/dist/openai.d.ts +32 -0
  111. package/dist/openai.js +272 -0
  112. package/dist/openai.js.map +1 -0
  113. package/dist/testing.cjs +554 -0
  114. package/dist/testing.cjs.map +1 -0
  115. package/dist/testing.d.cts +43 -0
  116. package/dist/testing.d.ts +43 -0
  117. package/dist/testing.js +118 -0
  118. package/dist/testing.js.map +1 -0
  119. package/package.json +188 -0
  120. package/registry/echo/index.ts +53 -0
  121. package/registry/echo/manifest.json +53 -0
  122. package/registry/github/LICENSE +105 -0
  123. package/registry/github/client.ts +1727 -0
  124. package/registry/github/index.ts +263 -0
  125. package/registry/github/manifest.json +227 -0
  126. package/registry/github/owner-fixtures.json +10 -0
  127. package/registry/github/tests/github.test.ts +32 -0
  128. package/registry/gmail/LICENSE +105 -0
  129. package/registry/gmail/client.ts +548 -0
  130. package/registry/gmail/index.ts +165 -0
  131. package/registry/gmail/manifest.json +102 -0
  132. package/registry/gmail/owner-fixtures.json +10 -0
  133. package/registry/gmail/tests/gmail.test.ts +32 -0
  134. package/registry/index.json +21 -0
  135. package/registry/index.schema.json +37 -0
  136. package/registry/schema.json +119 -0
@@ -0,0 +1,740 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://kaji.dev/contracts/release/typescript-onboarding-evidence-v1.schema.json",
4
+ "title": "Kaji TypeScript onboarding evidence v1",
5
+ "type": "object",
6
+ "additionalProperties": false,
7
+ "required": [
8
+ "schemaVersion",
9
+ "commit",
10
+ "releaseManifestSha256",
11
+ "packageArtifact",
12
+ "producerArtifact",
13
+ "cells"
14
+ ],
15
+ "properties": {
16
+ "schemaVersion": {
17
+ "const": "1.0.0"
18
+ },
19
+ "commit": {
20
+ "$ref": "#/$defs/commit"
21
+ },
22
+ "releaseManifestSha256": {
23
+ "$ref": "#/$defs/sha256"
24
+ },
25
+ "packageArtifact": {
26
+ "$ref": "#/$defs/packageArtifact"
27
+ },
28
+ "producerArtifact": {
29
+ "$ref": "#/$defs/producerArtifact"
30
+ },
31
+ "cells": {
32
+ "type": "array",
33
+ "minItems": 2,
34
+ "maxItems": 2,
35
+ "prefixItems": [
36
+ {
37
+ "$ref": "#/$defs/node22Cell"
38
+ },
39
+ {
40
+ "$ref": "#/$defs/node24Cell"
41
+ }
42
+ ],
43
+ "items": false
44
+ }
45
+ },
46
+ "$defs": {
47
+ "commit": {
48
+ "type": "string",
49
+ "pattern": "^[0-9a-f]{40}$"
50
+ },
51
+ "sha256": {
52
+ "type": "string",
53
+ "pattern": "^[0-9a-f]{64}$"
54
+ },
55
+ "artifactDigest": {
56
+ "type": "string",
57
+ "pattern": "^sha256:[0-9a-f]{64}$"
58
+ },
59
+ "positiveSafeInteger": {
60
+ "type": "integer",
61
+ "minimum": 1,
62
+ "maximum": 9007199254740991
63
+ },
64
+ "nonnegativeSafeInteger": {
65
+ "type": "integer",
66
+ "minimum": 0,
67
+ "maximum": 9007199254740991
68
+ },
69
+ "imageVersion": {
70
+ "type": "string",
71
+ "pattern": "^[0-9A-Za-z][0-9A-Za-z._-]{0,127}$"
72
+ },
73
+ "semver": {
74
+ "type": "string",
75
+ "pattern": "^(0|[1-9][0-9]*)\\.(0|[1-9][0-9]*)\\.(0|[1-9][0-9]*)(?:-((?:0|[1-9][0-9]*|[0-9]*[A-Za-z-][0-9A-Za-z-]*)(?:\\.(?:0|[1-9][0-9]*|[0-9]*[A-Za-z-][0-9A-Za-z-]*))*))?(?:\\+([0-9A-Za-z-]+(?:\\.[0-9A-Za-z-]+)*))?$"
76
+ },
77
+ "typescriptVersion": {
78
+ "type": "string",
79
+ "pattern": "^5\\.7\\.3 and (?!5\\.7\\.3$)(0|[1-9][0-9]*)\\.(0|[1-9][0-9]*)\\.(0|[1-9][0-9]*)(?:-((?:0|[1-9][0-9]*|[0-9]*[A-Za-z-][0-9A-Za-z-]*)(?:\\.(?:0|[1-9][0-9]*|[0-9]*[A-Za-z-][0-9A-Za-z-]*))*))?(?:\\+([0-9A-Za-z-]+(?:\\.[0-9A-Za-z-]+)*))?$"
80
+ },
81
+ "node22Version": {
82
+ "type": "string",
83
+ "pattern": "^v22\\.[0-9]+\\.[0-9]+$"
84
+ },
85
+ "node24Version": {
86
+ "type": "string",
87
+ "pattern": "^v24\\.[0-9]+\\.[0-9]+$"
88
+ },
89
+ "packageArtifact": {
90
+ "type": "object",
91
+ "additionalProperties": false,
92
+ "required": [
93
+ "name",
94
+ "size",
95
+ "sha256"
96
+ ],
97
+ "properties": {
98
+ "name": {
99
+ "const": "kaji-0.2.0-beta.11.tgz"
100
+ },
101
+ "size": {
102
+ "$ref": "#/$defs/positiveSafeInteger"
103
+ },
104
+ "sha256": {
105
+ "$ref": "#/$defs/sha256"
106
+ }
107
+ }
108
+ },
109
+ "producerArtifact": {
110
+ "type": "object",
111
+ "additionalProperties": false,
112
+ "required": [
113
+ "name",
114
+ "id",
115
+ "digest",
116
+ "runId",
117
+ "runAttempt",
118
+ "headSha"
119
+ ],
120
+ "properties": {
121
+ "name": {
122
+ "const": "kaji-artifacts"
123
+ },
124
+ "id": {
125
+ "$ref": "#/$defs/positiveSafeInteger"
126
+ },
127
+ "digest": {
128
+ "$ref": "#/$defs/artifactDigest"
129
+ },
130
+ "runId": {
131
+ "$ref": "#/$defs/positiveSafeInteger"
132
+ },
133
+ "runAttempt": {
134
+ "const": 1
135
+ },
136
+ "headSha": {
137
+ "$ref": "#/$defs/commit"
138
+ }
139
+ }
140
+ },
141
+ "sourceArtifact22": {
142
+ "type": "object",
143
+ "additionalProperties": false,
144
+ "required": [
145
+ "name",
146
+ "id",
147
+ "digest",
148
+ "runId",
149
+ "runAttempt",
150
+ "headSha",
151
+ "receiptSha256"
152
+ ],
153
+ "properties": {
154
+ "name": {
155
+ "const": "kaji-node-compat-22"
156
+ },
157
+ "id": {
158
+ "$ref": "#/$defs/positiveSafeInteger"
159
+ },
160
+ "digest": {
161
+ "$ref": "#/$defs/artifactDigest"
162
+ },
163
+ "runId": {
164
+ "$ref": "#/$defs/positiveSafeInteger"
165
+ },
166
+ "runAttempt": {
167
+ "const": 1
168
+ },
169
+ "headSha": {
170
+ "$ref": "#/$defs/commit"
171
+ },
172
+ "receiptSha256": {
173
+ "$ref": "#/$defs/sha256"
174
+ }
175
+ }
176
+ },
177
+ "sourceArtifact24": {
178
+ "type": "object",
179
+ "additionalProperties": false,
180
+ "required": [
181
+ "name",
182
+ "id",
183
+ "digest",
184
+ "runId",
185
+ "runAttempt",
186
+ "headSha",
187
+ "receiptSha256"
188
+ ],
189
+ "properties": {
190
+ "name": {
191
+ "const": "kaji-node-compat-24"
192
+ },
193
+ "id": {
194
+ "$ref": "#/$defs/positiveSafeInteger"
195
+ },
196
+ "digest": {
197
+ "$ref": "#/$defs/artifactDigest"
198
+ },
199
+ "runId": {
200
+ "$ref": "#/$defs/positiveSafeInteger"
201
+ },
202
+ "runAttempt": {
203
+ "const": 1
204
+ },
205
+ "headSha": {
206
+ "$ref": "#/$defs/commit"
207
+ },
208
+ "receiptSha256": {
209
+ "$ref": "#/$defs/sha256"
210
+ }
211
+ }
212
+ },
213
+ "runtime22": {
214
+ "type": "object",
215
+ "additionalProperties": false,
216
+ "required": [
217
+ "version"
218
+ ],
219
+ "properties": {
220
+ "version": {
221
+ "$ref": "#/$defs/node22Version"
222
+ }
223
+ }
224
+ },
225
+ "runtime24": {
226
+ "type": "object",
227
+ "additionalProperties": false,
228
+ "required": [
229
+ "version"
230
+ ],
231
+ "properties": {
232
+ "version": {
233
+ "$ref": "#/$defs/node24Version"
234
+ }
235
+ }
236
+ },
237
+ "runner22": {
238
+ "type": "object",
239
+ "additionalProperties": false,
240
+ "required": [
241
+ "configuredLabel",
242
+ "environment",
243
+ "runnerOS",
244
+ "runnerArch",
245
+ "platformOS",
246
+ "platformArch",
247
+ "imageOS",
248
+ "imageVersion"
249
+ ],
250
+ "properties": {
251
+ "configuredLabel": {
252
+ "const": "ubuntu-22.04"
253
+ },
254
+ "environment": {
255
+ "const": "github-hosted"
256
+ },
257
+ "runnerOS": {
258
+ "const": "Linux"
259
+ },
260
+ "runnerArch": {
261
+ "const": "X64"
262
+ },
263
+ "platformOS": {
264
+ "const": "linux"
265
+ },
266
+ "platformArch": {
267
+ "const": "x64"
268
+ },
269
+ "imageOS": {
270
+ "const": "ubuntu22"
271
+ },
272
+ "imageVersion": {
273
+ "$ref": "#/$defs/imageVersion"
274
+ }
275
+ }
276
+ },
277
+ "runner24": {
278
+ "type": "object",
279
+ "additionalProperties": false,
280
+ "required": [
281
+ "configuredLabel",
282
+ "environment",
283
+ "runnerOS",
284
+ "runnerArch",
285
+ "platformOS",
286
+ "platformArch",
287
+ "imageOS",
288
+ "imageVersion"
289
+ ],
290
+ "properties": {
291
+ "configuredLabel": {
292
+ "const": "ubuntu-24.04"
293
+ },
294
+ "environment": {
295
+ "const": "github-hosted"
296
+ },
297
+ "runnerOS": {
298
+ "const": "Linux"
299
+ },
300
+ "runnerArch": {
301
+ "const": "X64"
302
+ },
303
+ "platformOS": {
304
+ "const": "linux"
305
+ },
306
+ "platformArch": {
307
+ "const": "x64"
308
+ },
309
+ "imageOS": {
310
+ "const": "ubuntu24"
311
+ },
312
+ "imageVersion": {
313
+ "$ref": "#/$defs/imageVersion"
314
+ }
315
+ }
316
+ },
317
+ "invocation": {
318
+ "type": "object",
319
+ "additionalProperties": false,
320
+ "required": [
321
+ "workflowRun",
322
+ "runId",
323
+ "runAttempt",
324
+ "workflowRef",
325
+ "workflowSha",
326
+ "job"
327
+ ],
328
+ "properties": {
329
+ "workflowRun": {
330
+ "type": "string",
331
+ "pattern": "^https://github\\.com/enkyuan/alloy/actions/runs/[1-9][0-9]*$"
332
+ },
333
+ "runId": {
334
+ "$ref": "#/$defs/positiveSafeInteger"
335
+ },
336
+ "runAttempt": {
337
+ "const": 1
338
+ },
339
+ "workflowRef": {
340
+ "enum": [
341
+ "enkyuan/alloy/.github/workflows/kaji.rehearsal.yml@refs/heads/main",
342
+ "enkyuan/alloy/.github/workflows/kaji.publish.yml@refs/tags/kaji-v0.2.0-beta.11"
343
+ ]
344
+ },
345
+ "workflowSha": {
346
+ "$ref": "#/$defs/commit"
347
+ },
348
+ "job": {
349
+ "const": "node-compat"
350
+ }
351
+ }
352
+ },
353
+ "phases": {
354
+ "type": "object",
355
+ "additionalProperties": false,
356
+ "required": [
357
+ "artifactInstall",
358
+ "scaffoldInit",
359
+ "noKeyRun",
360
+ "echoSetup",
361
+ "echoRun",
362
+ "coldRun",
363
+ "warmRun"
364
+ ],
365
+ "properties": {
366
+ "artifactInstall": {
367
+ "const": true
368
+ },
369
+ "scaffoldInit": {
370
+ "const": true
371
+ },
372
+ "noKeyRun": {
373
+ "const": true
374
+ },
375
+ "echoSetup": {
376
+ "const": true
377
+ },
378
+ "echoRun": {
379
+ "const": true
380
+ },
381
+ "coldRun": {
382
+ "const": true
383
+ },
384
+ "warmRun": {
385
+ "const": true
386
+ }
387
+ }
388
+ },
389
+ "echoLifecycleCounts": {
390
+ "type": "object",
391
+ "additionalProperties": false,
392
+ "required": [
393
+ "requested",
394
+ "started",
395
+ "completed"
396
+ ],
397
+ "properties": {
398
+ "requested": {
399
+ "const": 1
400
+ },
401
+ "started": {
402
+ "const": 1
403
+ },
404
+ "completed": {
405
+ "const": 1
406
+ }
407
+ }
408
+ },
409
+ "echoResult": {
410
+ "type": "object",
411
+ "additionalProperties": false,
412
+ "required": [
413
+ "message"
414
+ ],
415
+ "properties": {
416
+ "message": {
417
+ "const": "hello"
418
+ }
419
+ }
420
+ },
421
+ "assertions": {
422
+ "type": "object",
423
+ "additionalProperties": false,
424
+ "required": [
425
+ "noKeyText",
426
+ "deterministicText",
427
+ "turnIdPresent",
428
+ "finalSequencePositive",
429
+ "echoLifecycle",
430
+ "echoLifecycleCounts",
431
+ "echoToolCallIdentityCount",
432
+ "echoToolCallIdNonempty",
433
+ "echoResult",
434
+ "echoFinalText",
435
+ "forbiddenTerminalEventsAbsent",
436
+ "coldWarmEqual"
437
+ ],
438
+ "properties": {
439
+ "noKeyText": {
440
+ "const": "The mock provider has completed the tool loop."
441
+ },
442
+ "deterministicText": {
443
+ "const": "The mock provider has completed the tool loop."
444
+ },
445
+ "turnIdPresent": {
446
+ "const": true
447
+ },
448
+ "finalSequencePositive": {
449
+ "const": true
450
+ },
451
+ "echoLifecycle": {
452
+ "type": "array",
453
+ "minItems": 3,
454
+ "maxItems": 3,
455
+ "prefixItems": [
456
+ {
457
+ "const": "requested"
458
+ },
459
+ {
460
+ "const": "started"
461
+ },
462
+ {
463
+ "const": "completed"
464
+ }
465
+ ],
466
+ "items": false
467
+ },
468
+ "echoLifecycleCounts": {
469
+ "$ref": "#/$defs/echoLifecycleCounts"
470
+ },
471
+ "echoToolCallIdentityCount": {
472
+ "const": 1
473
+ },
474
+ "echoToolCallIdNonempty": {
475
+ "const": true
476
+ },
477
+ "echoResult": {
478
+ "$ref": "#/$defs/echoResult"
479
+ },
480
+ "echoFinalText": {
481
+ "const": "The mock provider has completed the tool loop."
482
+ },
483
+ "forbiddenTerminalEventsAbsent": {
484
+ "const": true
485
+ },
486
+ "coldWarmEqual": {
487
+ "const": true
488
+ }
489
+ }
490
+ },
491
+ "npmOnboardingProof": {
492
+ "type": "object",
493
+ "additionalProperties": false,
494
+ "required": [
495
+ "manager",
496
+ "phases",
497
+ "assertions"
498
+ ],
499
+ "properties": {
500
+ "manager": {
501
+ "const": "npm"
502
+ },
503
+ "phases": {
504
+ "$ref": "#/$defs/phases"
505
+ },
506
+ "assertions": {
507
+ "$ref": "#/$defs/assertions"
508
+ }
509
+ }
510
+ },
511
+ "bunOnboardingProof": {
512
+ "type": "object",
513
+ "additionalProperties": false,
514
+ "required": [
515
+ "manager",
516
+ "phases",
517
+ "assertions"
518
+ ],
519
+ "properties": {
520
+ "manager": {
521
+ "const": "bun"
522
+ },
523
+ "phases": {
524
+ "$ref": "#/$defs/phases"
525
+ },
526
+ "assertions": {
527
+ "$ref": "#/$defs/assertions"
528
+ }
529
+ }
530
+ },
531
+ "onboardingProofs": {
532
+ "type": "object",
533
+ "additionalProperties": false,
534
+ "required": [
535
+ "npm",
536
+ "bun"
537
+ ],
538
+ "properties": {
539
+ "npm": {
540
+ "$ref": "#/$defs/npmOnboardingProof"
541
+ },
542
+ "bun": {
543
+ "$ref": "#/$defs/bunOnboardingProof"
544
+ }
545
+ }
546
+ },
547
+ "timing": {
548
+ "type": "object",
549
+ "additionalProperties": false,
550
+ "required": [
551
+ "coldSetupToOutputMs",
552
+ "warmRunMs"
553
+ ],
554
+ "properties": {
555
+ "coldSetupToOutputMs": {
556
+ "$ref": "#/$defs/nonnegativeSafeInteger"
557
+ },
558
+ "warmRunMs": {
559
+ "$ref": "#/$defs/nonnegativeSafeInteger"
560
+ }
561
+ }
562
+ },
563
+ "timings": {
564
+ "type": "object",
565
+ "additionalProperties": false,
566
+ "required": [
567
+ "npm",
568
+ "bun"
569
+ ],
570
+ "properties": {
571
+ "npm": {
572
+ "$ref": "#/$defs/timing"
573
+ },
574
+ "bun": {
575
+ "$ref": "#/$defs/timing"
576
+ }
577
+ }
578
+ },
579
+ "toolchain22": {
580
+ "type": "object",
581
+ "additionalProperties": false,
582
+ "required": [
583
+ "python",
584
+ "uv",
585
+ "node",
586
+ "npm",
587
+ "bun",
588
+ "typescript"
589
+ ],
590
+ "properties": {
591
+ "python": {
592
+ "const": "not-used"
593
+ },
594
+ "uv": {
595
+ "const": "not-used"
596
+ },
597
+ "node": {
598
+ "$ref": "#/$defs/node22Version"
599
+ },
600
+ "npm": {
601
+ "$ref": "#/$defs/semver"
602
+ },
603
+ "bun": {
604
+ "const": "1.3.11"
605
+ },
606
+ "typescript": {
607
+ "$ref": "#/$defs/typescriptVersion"
608
+ }
609
+ }
610
+ },
611
+ "toolchain24": {
612
+ "type": "object",
613
+ "additionalProperties": false,
614
+ "required": [
615
+ "python",
616
+ "uv",
617
+ "node",
618
+ "npm",
619
+ "bun",
620
+ "typescript"
621
+ ],
622
+ "properties": {
623
+ "python": {
624
+ "const": "not-used"
625
+ },
626
+ "uv": {
627
+ "const": "not-used"
628
+ },
629
+ "node": {
630
+ "$ref": "#/$defs/node24Version"
631
+ },
632
+ "npm": {
633
+ "$ref": "#/$defs/semver"
634
+ },
635
+ "bun": {
636
+ "const": "1.3.11"
637
+ },
638
+ "typescript": {
639
+ "$ref": "#/$defs/typescriptVersion"
640
+ }
641
+ }
642
+ },
643
+ "node22Cell": {
644
+ "type": "object",
645
+ "additionalProperties": false,
646
+ "required": [
647
+ "executionMode",
648
+ "sourceArtifact",
649
+ "runtime",
650
+ "runner",
651
+ "invocation",
652
+ "onboardingProofs",
653
+ "timings",
654
+ "toolchain",
655
+ "conclusion",
656
+ "failureCode"
657
+ ],
658
+ "properties": {
659
+ "executionMode": {
660
+ "const": "protected"
661
+ },
662
+ "sourceArtifact": {
663
+ "$ref": "#/$defs/sourceArtifact22"
664
+ },
665
+ "runtime": {
666
+ "$ref": "#/$defs/runtime22"
667
+ },
668
+ "runner": {
669
+ "$ref": "#/$defs/runner22"
670
+ },
671
+ "invocation": {
672
+ "$ref": "#/$defs/invocation"
673
+ },
674
+ "onboardingProofs": {
675
+ "$ref": "#/$defs/onboardingProofs"
676
+ },
677
+ "timings": {
678
+ "$ref": "#/$defs/timings"
679
+ },
680
+ "toolchain": {
681
+ "$ref": "#/$defs/toolchain22"
682
+ },
683
+ "conclusion": {
684
+ "const": "passed"
685
+ },
686
+ "failureCode": {
687
+ "type": "null"
688
+ }
689
+ }
690
+ },
691
+ "node24Cell": {
692
+ "type": "object",
693
+ "additionalProperties": false,
694
+ "required": [
695
+ "executionMode",
696
+ "sourceArtifact",
697
+ "runtime",
698
+ "runner",
699
+ "invocation",
700
+ "onboardingProofs",
701
+ "timings",
702
+ "toolchain",
703
+ "conclusion",
704
+ "failureCode"
705
+ ],
706
+ "properties": {
707
+ "executionMode": {
708
+ "const": "protected"
709
+ },
710
+ "sourceArtifact": {
711
+ "$ref": "#/$defs/sourceArtifact24"
712
+ },
713
+ "runtime": {
714
+ "$ref": "#/$defs/runtime24"
715
+ },
716
+ "runner": {
717
+ "$ref": "#/$defs/runner24"
718
+ },
719
+ "invocation": {
720
+ "$ref": "#/$defs/invocation"
721
+ },
722
+ "onboardingProofs": {
723
+ "$ref": "#/$defs/onboardingProofs"
724
+ },
725
+ "timings": {
726
+ "$ref": "#/$defs/timings"
727
+ },
728
+ "toolchain": {
729
+ "$ref": "#/$defs/toolchain24"
730
+ },
731
+ "conclusion": {
732
+ "const": "passed"
733
+ },
734
+ "failureCode": {
735
+ "type": "null"
736
+ }
737
+ }
738
+ }
739
+ }
740
+ }