agent-hitch 0.2.13 → 0.2.14

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 (126) hide show
  1. package/benchmark-packages/automationbench/RESOURCES.md +27 -0
  2. package/benchmark-packages/automationbench/resources.mjs +86 -0
  3. package/benchmark-packages/shared-tree/README.md +14 -0
  4. package/benchmark-packages/shared-tree/import.mjs +39 -0
  5. package/dist/scripts/canary-automation-resources.js +86 -0
  6. package/dist/scripts/canary-automation-resources.js.map +1 -0
  7. package/dist/scripts/canary-resource-empty-daemon.js +195 -0
  8. package/dist/scripts/canary-resource-empty-daemon.js.map +1 -0
  9. package/dist/scripts/canary-resources.js +89 -0
  10. package/dist/scripts/canary-resources.js.map +1 -0
  11. package/dist/scripts/check-architecture.js +6 -5
  12. package/dist/scripts/check-architecture.js.map +1 -1
  13. package/dist/scripts/resource-space-sampler.js +83 -0
  14. package/dist/scripts/resource-space-sampler.js.map +1 -0
  15. package/dist/src/backends/harbor/backend.js +5 -1
  16. package/dist/src/backends/harbor/backend.js.map +1 -1
  17. package/dist/src/backends/harbor/resource-admission.js +23 -0
  18. package/dist/src/backends/harbor/resource-admission.js.map +1 -0
  19. package/dist/src/cli/commands/resources.js +23 -0
  20. package/dist/src/cli/commands/resources.js.map +1 -0
  21. package/dist/src/cli/main.js +2 -0
  22. package/dist/src/cli/main.js.map +1 -1
  23. package/dist/src/control-plane/remote-offer-contract.js +11 -2
  24. package/dist/src/control-plane/remote-offer-contract.js.map +1 -1
  25. package/dist/src/control-plane/remote-result-transport.js +10 -0
  26. package/dist/src/control-plane/remote-result-transport.js.map +1 -1
  27. package/dist/src/control-plane/remote-work-coordinator.js +4 -1
  28. package/dist/src/control-plane/remote-work-coordinator.js.map +1 -1
  29. package/dist/src/control-plane/remote-work-inputs.js +16 -4
  30. package/dist/src/control-plane/remote-work-inputs.js.map +1 -1
  31. package/dist/src/control-plane/remote-worker-client.js +22 -0
  32. package/dist/src/control-plane/remote-worker-client.js.map +1 -1
  33. package/dist/src/control-plane/remote-worker-codecs.js +1 -1
  34. package/dist/src/control-plane/remote-worker-codecs.js.map +1 -1
  35. package/dist/src/control-plane/remote-worker-protocol.js +12 -2
  36. package/dist/src/control-plane/remote-worker-protocol.js.map +1 -1
  37. package/dist/src/control-plane/remote-worker-runner.js +1 -1
  38. package/dist/src/control-plane/remote-worker-runner.js.map +1 -1
  39. package/dist/src/control-plane/remote-workers.js +2 -1
  40. package/dist/src/control-plane/remote-workers.js.map +1 -1
  41. package/dist/src/evals/benchmark-adapter-manifest.js +4 -0
  42. package/dist/src/evals/benchmark-adapter-manifest.js.map +1 -1
  43. package/dist/src/evals/benchmark-candidate.js +11 -3
  44. package/dist/src/evals/benchmark-candidate.js.map +1 -1
  45. package/dist/src/evals/eval-result-builder.js +22 -1
  46. package/dist/src/evals/eval-result-builder.js.map +1 -1
  47. package/dist/src/evals/index.js +1 -0
  48. package/dist/src/evals/index.js.map +1 -1
  49. package/dist/src/evals/planned-execution.js +5 -14
  50. package/dist/src/evals/planned-execution.js.map +1 -1
  51. package/dist/src/evals/request.js +9 -0
  52. package/dist/src/evals/request.js.map +1 -1
  53. package/dist/src/evals/resource-eval-lifecycle.js +31 -0
  54. package/dist/src/evals/resource-eval-lifecycle.js.map +1 -0
  55. package/dist/src/evals/resource-legacy-export.js +57 -0
  56. package/dist/src/evals/resource-legacy-export.js.map +1 -0
  57. package/dist/src/evals/service.js +5 -20
  58. package/dist/src/evals/service.js.map +1 -1
  59. package/dist/src/evals/task-resources.js +12 -4
  60. package/dist/src/evals/task-resources.js.map +1 -1
  61. package/dist/src/evals/trial-bundle-files.js +81 -0
  62. package/dist/src/evals/trial-bundle-files.js.map +1 -0
  63. package/dist/src/evals/trial-import.js +7 -78
  64. package/dist/src/evals/trial-import.js.map +1 -1
  65. package/dist/src/foundation/durable-json.js +33 -0
  66. package/dist/src/foundation/durable-json.js.map +1 -0
  67. package/dist/src/foundation/index.js +2 -0
  68. package/dist/src/foundation/index.js.map +1 -1
  69. package/dist/src/foundation/resource-image-references.js +52 -0
  70. package/dist/src/foundation/resource-image-references.js.map +1 -0
  71. package/dist/src/images/gc.js +2 -2
  72. package/dist/src/images/gc.js.map +1 -1
  73. package/dist/src/images/registry.js +27 -2
  74. package/dist/src/images/registry.js.map +1 -1
  75. package/dist/src/resources/api.js +207 -0
  76. package/dist/src/resources/api.js.map +1 -0
  77. package/dist/src/resources/bundle.js +117 -0
  78. package/dist/src/resources/bundle.js.map +1 -0
  79. package/dist/src/resources/evidence.js +93 -0
  80. package/dist/src/resources/evidence.js.map +1 -0
  81. package/dist/src/resources/gc.js +123 -0
  82. package/dist/src/resources/gc.js.map +1 -0
  83. package/dist/src/resources/index.js +14 -0
  84. package/dist/src/resources/index.js.map +1 -0
  85. package/dist/src/resources/materialize.js +143 -0
  86. package/dist/src/resources/materialize.js.map +1 -0
  87. package/dist/src/resources/object-store.js +191 -0
  88. package/dist/src/resources/object-store.js.map +1 -0
  89. package/dist/src/resources/oci-layer-validation.js +202 -0
  90. package/dist/src/resources/oci-layer-validation.js.map +1 -0
  91. package/dist/src/resources/oci-provider.js +101 -0
  92. package/dist/src/resources/oci-provider.js.map +1 -0
  93. package/dist/src/resources/oci-registry-bundle.js +253 -0
  94. package/dist/src/resources/oci-registry-bundle.js.map +1 -0
  95. package/dist/src/resources/protocol.js +222 -0
  96. package/dist/src/resources/protocol.js.map +1 -0
  97. package/dist/src/resources/result-retention.js +93 -0
  98. package/dist/src/resources/result-retention.js.map +1 -0
  99. package/dist/src/resources/role-context.js +54 -0
  100. package/dist/src/resources/role-context.js.map +1 -0
  101. package/dist/src/resources/stats.js +36 -0
  102. package/dist/src/resources/stats.js.map +1 -0
  103. package/dist/src/resources/store.js +310 -0
  104. package/dist/src/resources/store.js.map +1 -0
  105. package/dist/src/resources/tasks.js +153 -0
  106. package/dist/src/resources/tasks.js.map +1 -0
  107. package/dist/src/resources/transfer.js +162 -0
  108. package/dist/src/resources/transfer.js.map +1 -0
  109. package/dist/src/resources/views.js +130 -0
  110. package/dist/src/resources/views.js.map +1 -0
  111. package/dist/src/workers/remote-harbor-work-spec.js +9 -3
  112. package/dist/src/workers/remote-harbor-work-spec.js.map +1 -1
  113. package/dist/src/workers/remote-harbor-worker.js +24 -9
  114. package/dist/src/workers/remote-harbor-worker.js.map +1 -1
  115. package/docs/resource-storage.zh-CN.md +95 -0
  116. package/docs/schemas/execution-provider-status.schema.json +20 -0
  117. package/docs/schemas/hitch-resource-dataset-v2.schema.json +590 -0
  118. package/docs/schemas/hitch-resource-lock-v1.schema.json +341 -0
  119. package/docs/schemas/hitch-resource-plan-v1.schema.json +423 -0
  120. package/docs/schemas/hitch-resource-selection-v1.schema.json +608 -0
  121. package/docs/schemas/hitch-tree-v1.schema.json +75 -0
  122. package/docs/schemas/remote-harbor-work-spec.schema.json +47 -3
  123. package/docs/schemas/remote-work-offer.schema.json +2 -1
  124. package/docs/schemas/remote-worker-registration.schema.json +20 -0
  125. package/package.json +9 -3
  126. package/test-contracts/hitch-resources-v1.json +197 -0
@@ -0,0 +1,341 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "$id": "https://hitch.dev/schemas/hitch-resource-lock-v1.schema.json",
4
+ "type": "object",
5
+ "additionalProperties": false,
6
+ "properties": {
7
+ "protocol": {
8
+ "const": "hitch-resource-lock@1"
9
+ },
10
+ "resources": {
11
+ "type": "object",
12
+ "propertyNames": {
13
+ "type": "string",
14
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9_.-]{0,127}$"
15
+ },
16
+ "additionalProperties": {
17
+ "oneOf": [
18
+ {
19
+ "type": "object",
20
+ "additionalProperties": false,
21
+ "properties": {
22
+ "kind": {
23
+ "const": "blob"
24
+ },
25
+ "digest": {
26
+ "type": "string",
27
+ "pattern": "^sha256:[a-f0-9]{64}$"
28
+ },
29
+ "size": {
30
+ "type": "integer",
31
+ "minimum": 0,
32
+ "maximum": 9007199254740991
33
+ }
34
+ },
35
+ "required": [
36
+ "kind",
37
+ "digest",
38
+ "size"
39
+ ]
40
+ },
41
+ {
42
+ "type": "object",
43
+ "additionalProperties": false,
44
+ "properties": {
45
+ "kind": {
46
+ "const": "tree"
47
+ },
48
+ "format": {
49
+ "const": "hitch-tree@1"
50
+ },
51
+ "manifestDigest": {
52
+ "type": "string",
53
+ "pattern": "^sha256:[a-f0-9]{64}$"
54
+ }
55
+ },
56
+ "required": [
57
+ "kind",
58
+ "format",
59
+ "manifestDigest"
60
+ ]
61
+ },
62
+ {
63
+ "type": "object",
64
+ "additionalProperties": false,
65
+ "properties": {
66
+ "kind": {
67
+ "const": "oci-image"
68
+ },
69
+ "manifestDigest": {
70
+ "type": "string",
71
+ "pattern": "^sha256:[a-f0-9]{64}$"
72
+ },
73
+ "platform": {
74
+ "type": "string",
75
+ "pattern": "^linux/(amd64|arm64)(/v[0-9]+)?$"
76
+ },
77
+ "indexDigest": {
78
+ "type": "string",
79
+ "pattern": "^sha256:[a-f0-9]{64}$"
80
+ }
81
+ },
82
+ "required": [
83
+ "kind",
84
+ "manifestDigest",
85
+ "platform"
86
+ ]
87
+ }
88
+ ]
89
+ }
90
+ },
91
+ "bindings": {
92
+ "type": "array",
93
+ "items": {
94
+ "oneOf": [
95
+ {
96
+ "type": "object",
97
+ "additionalProperties": false,
98
+ "properties": {
99
+ "resource": {
100
+ "type": "string",
101
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9_.-]{0,127}$"
102
+ },
103
+ "consumer": {
104
+ "oneOf": [
105
+ {
106
+ "type": "object",
107
+ "additionalProperties": false,
108
+ "properties": {
109
+ "role": {
110
+ "const": "candidate"
111
+ }
112
+ },
113
+ "required": [
114
+ "role"
115
+ ]
116
+ },
117
+ {
118
+ "type": "object",
119
+ "additionalProperties": false,
120
+ "properties": {
121
+ "role": {
122
+ "const": "verifier"
123
+ }
124
+ },
125
+ "required": [
126
+ "role"
127
+ ]
128
+ },
129
+ {
130
+ "type": "object",
131
+ "additionalProperties": false,
132
+ "properties": {
133
+ "role": {
134
+ "const": "service"
135
+ },
136
+ "serviceId": {
137
+ "type": "string",
138
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9_.-]{0,127}$"
139
+ }
140
+ },
141
+ "required": [
142
+ "role",
143
+ "serviceId"
144
+ ]
145
+ }
146
+ ]
147
+ },
148
+ "use": {
149
+ "const": "input-file"
150
+ },
151
+ "target": {
152
+ "type": "string",
153
+ "minLength": 1,
154
+ "maxLength": 4096,
155
+ "pattern": "^(?!/)(?!.*(?:^|/)\\.\\.?(/|$))(?!.*[\\\\\\u0000-\\u001f\\u007f:])(?!.*//)(?!.*[/ ]$).+"
156
+ },
157
+ "executable": {
158
+ "type": "boolean"
159
+ },
160
+ "access": {
161
+ "enum": [
162
+ "read-only",
163
+ "private-copy"
164
+ ]
165
+ }
166
+ },
167
+ "required": [
168
+ "resource",
169
+ "consumer",
170
+ "use",
171
+ "target",
172
+ "executable",
173
+ "access"
174
+ ]
175
+ },
176
+ {
177
+ "type": "object",
178
+ "additionalProperties": false,
179
+ "properties": {
180
+ "resource": {
181
+ "type": "string",
182
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9_.-]{0,127}$"
183
+ },
184
+ "consumer": {
185
+ "oneOf": [
186
+ {
187
+ "type": "object",
188
+ "additionalProperties": false,
189
+ "properties": {
190
+ "role": {
191
+ "const": "candidate"
192
+ }
193
+ },
194
+ "required": [
195
+ "role"
196
+ ]
197
+ },
198
+ {
199
+ "type": "object",
200
+ "additionalProperties": false,
201
+ "properties": {
202
+ "role": {
203
+ "const": "verifier"
204
+ }
205
+ },
206
+ "required": [
207
+ "role"
208
+ ]
209
+ },
210
+ {
211
+ "type": "object",
212
+ "additionalProperties": false,
213
+ "properties": {
214
+ "role": {
215
+ "const": "service"
216
+ },
217
+ "serviceId": {
218
+ "type": "string",
219
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9_.-]{0,127}$"
220
+ }
221
+ },
222
+ "required": [
223
+ "role",
224
+ "serviceId"
225
+ ]
226
+ }
227
+ ]
228
+ },
229
+ "use": {
230
+ "const": "input-tree"
231
+ },
232
+ "target": {
233
+ "type": "string",
234
+ "minLength": 1,
235
+ "maxLength": 4096,
236
+ "pattern": "^(?!/)(?!.*(?:^|/)\\.\\.?(/|$))(?!.*[\\\\\\u0000-\\u001f\\u007f:])(?!.*//)(?!.*[/ ]$).+"
237
+ },
238
+ "access": {
239
+ "enum": [
240
+ "read-only",
241
+ "private-copy"
242
+ ]
243
+ }
244
+ },
245
+ "required": [
246
+ "resource",
247
+ "consumer",
248
+ "use",
249
+ "target",
250
+ "access"
251
+ ]
252
+ },
253
+ {
254
+ "type": "object",
255
+ "additionalProperties": false,
256
+ "properties": {
257
+ "resource": {
258
+ "type": "string",
259
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9_.-]{0,127}$"
260
+ },
261
+ "consumer": {
262
+ "oneOf": [
263
+ {
264
+ "type": "object",
265
+ "additionalProperties": false,
266
+ "properties": {
267
+ "role": {
268
+ "const": "candidate"
269
+ }
270
+ },
271
+ "required": [
272
+ "role"
273
+ ]
274
+ },
275
+ {
276
+ "type": "object",
277
+ "additionalProperties": false,
278
+ "properties": {
279
+ "role": {
280
+ "const": "verifier"
281
+ }
282
+ },
283
+ "required": [
284
+ "role"
285
+ ]
286
+ },
287
+ {
288
+ "type": "object",
289
+ "additionalProperties": false,
290
+ "properties": {
291
+ "role": {
292
+ "const": "service"
293
+ },
294
+ "serviceId": {
295
+ "type": "string",
296
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9_.-]{0,127}$"
297
+ }
298
+ },
299
+ "required": [
300
+ "role",
301
+ "serviceId"
302
+ ]
303
+ }
304
+ ]
305
+ },
306
+ "use": {
307
+ "const": "environment-image"
308
+ },
309
+ "slot": {
310
+ "enum": [
311
+ "runtime",
312
+ "build-base"
313
+ ]
314
+ }
315
+ },
316
+ "required": [
317
+ "resource",
318
+ "consumer",
319
+ "use",
320
+ "slot"
321
+ ]
322
+ }
323
+ ]
324
+ }
325
+ },
326
+ "requiredCapabilities": {
327
+ "type": "array",
328
+ "uniqueItems": true,
329
+ "items": {
330
+ "type": "string",
331
+ "pattern": "^[a-z][a-z0-9-]*@[1-9][0-9]*$"
332
+ }
333
+ }
334
+ },
335
+ "required": [
336
+ "protocol",
337
+ "resources",
338
+ "bindings",
339
+ "requiredCapabilities"
340
+ ]
341
+ }