specrails-core 5.3.0 → 5.4.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 (117) hide show
  1. package/dist/agent-runtime/capabilities.d.ts +27 -0
  2. package/dist/agent-runtime/capabilities.js +73 -0
  3. package/dist/agent-runtime/capabilities.js.map +1 -0
  4. package/dist/agent-runtime/cli-executor.d.ts +9 -0
  5. package/dist/agent-runtime/cli-executor.js +100 -30
  6. package/dist/agent-runtime/cli-executor.js.map +1 -1
  7. package/dist/agent-runtime/cli.d.ts +1 -0
  8. package/dist/agent-runtime/cli.js +59 -11
  9. package/dist/agent-runtime/cli.js.map +1 -1
  10. package/dist/agent-runtime/codex-schema.d.ts +4 -0
  11. package/dist/agent-runtime/codex-schema.js +31 -0
  12. package/dist/agent-runtime/codex-schema.js.map +1 -0
  13. package/dist/agent-runtime/config.d.ts +4 -0
  14. package/dist/agent-runtime/config.js +110 -9
  15. package/dist/agent-runtime/config.js.map +1 -1
  16. package/dist/agent-runtime/core-host.d.ts +9 -1
  17. package/dist/agent-runtime/core-host.js +55 -20
  18. package/dist/agent-runtime/core-host.js.map +1 -1
  19. package/dist/agent-runtime/efficiency-summary.d.ts +67 -0
  20. package/dist/agent-runtime/efficiency-summary.js +52 -0
  21. package/dist/agent-runtime/efficiency-summary.js.map +1 -0
  22. package/dist/agent-runtime/efficiency-types.d.ts +60 -0
  23. package/dist/agent-runtime/efficiency-types.js +8 -0
  24. package/dist/agent-runtime/efficiency-types.js.map +1 -0
  25. package/dist/agent-runtime/efficiency.d.ts +5 -0
  26. package/dist/agent-runtime/efficiency.js +35 -0
  27. package/dist/agent-runtime/efficiency.js.map +1 -0
  28. package/dist/agent-runtime/evaluation-corpus.d.ts +13 -0
  29. package/dist/agent-runtime/evaluation-corpus.js +8 -0
  30. package/dist/agent-runtime/evaluation-corpus.js.map +1 -0
  31. package/dist/agent-runtime/evaluation.d.ts +43 -0
  32. package/dist/agent-runtime/evaluation.js +171 -0
  33. package/dist/agent-runtime/evaluation.js.map +1 -0
  34. package/dist/agent-runtime/executor-types.d.ts +35 -2
  35. package/dist/agent-runtime/executor-types.js.map +1 -1
  36. package/dist/agent-runtime/executors.d.ts +1 -0
  37. package/dist/agent-runtime/executors.js +4 -0
  38. package/dist/agent-runtime/executors.js.map +1 -1
  39. package/dist/agent-runtime/graph/artifacts.d.ts +8 -22
  40. package/dist/agent-runtime/graph/artifacts.js +99 -73
  41. package/dist/agent-runtime/graph/artifacts.js.map +1 -1
  42. package/dist/agent-runtime/graph/nodes.d.ts +3 -0
  43. package/dist/agent-runtime/graph/nodes.js +73 -26
  44. package/dist/agent-runtime/graph/nodes.js.map +1 -1
  45. package/dist/agent-runtime/graph/roles.d.ts +4 -1
  46. package/dist/agent-runtime/graph/roles.js +100 -36
  47. package/dist/agent-runtime/graph/roles.js.map +1 -1
  48. package/dist/agent-runtime/graph/state.d.ts +8 -0
  49. package/dist/agent-runtime/graph/state.js.map +1 -1
  50. package/dist/agent-runtime/index.d.ts +7 -1
  51. package/dist/agent-runtime/index.js +7 -1
  52. package/dist/agent-runtime/index.js.map +1 -1
  53. package/dist/agent-runtime/kimi-acp.d.ts +4 -0
  54. package/dist/agent-runtime/kimi-acp.js +20 -9
  55. package/dist/agent-runtime/kimi-acp.js.map +1 -1
  56. package/dist/agent-runtime/openai-executor.d.ts +8 -0
  57. package/dist/agent-runtime/openai-executor.js +28 -10
  58. package/dist/agent-runtime/openai-executor.js.map +1 -1
  59. package/dist/agent-runtime/openspec-tool-server.d.ts +1 -0
  60. package/dist/agent-runtime/openspec-tool-server.js +37 -0
  61. package/dist/agent-runtime/openspec-tool-server.js.map +1 -0
  62. package/dist/agent-runtime/openspec.d.ts +123 -0
  63. package/dist/agent-runtime/openspec.js +263 -0
  64. package/dist/agent-runtime/openspec.js.map +1 -0
  65. package/dist/agent-runtime/prompts.d.ts +5 -1
  66. package/dist/agent-runtime/prompts.js +59 -40
  67. package/dist/agent-runtime/prompts.js.map +1 -1
  68. package/dist/agent-runtime/provider-diagnostic.d.ts +2 -0
  69. package/dist/agent-runtime/provider-diagnostic.js +25 -0
  70. package/dist/agent-runtime/provider-diagnostic.js.map +1 -0
  71. package/dist/agent-runtime/repository-context.d.ts +25 -0
  72. package/dist/agent-runtime/repository-context.js +100 -0
  73. package/dist/agent-runtime/repository-context.js.map +1 -0
  74. package/dist/agent-runtime/review-context.d.ts +14 -0
  75. package/dist/agent-runtime/review-context.js +41 -0
  76. package/dist/agent-runtime/review-context.js.map +1 -0
  77. package/dist/agent-runtime/role-routing.d.ts +10 -0
  78. package/dist/agent-runtime/role-routing.js +29 -0
  79. package/dist/agent-runtime/role-routing.js.map +1 -0
  80. package/dist/agent-runtime/role-state.d.ts +19 -0
  81. package/dist/agent-runtime/role-state.js +24 -0
  82. package/dist/agent-runtime/role-state.js.map +1 -0
  83. package/dist/agent-runtime/runtime-identity.d.ts +11 -0
  84. package/dist/agent-runtime/runtime-identity.js +33 -0
  85. package/dist/agent-runtime/runtime-identity.js.map +1 -0
  86. package/dist/agent-runtime/tool-event.d.ts +3 -0
  87. package/dist/agent-runtime/tool-event.js +24 -0
  88. package/dist/agent-runtime/tool-event.js.map +1 -0
  89. package/dist/agent-runtime/verification-plan.d.ts +55 -0
  90. package/dist/agent-runtime/verification-plan.js +206 -0
  91. package/dist/agent-runtime/verification-plan.js.map +1 -0
  92. package/dist/agent-runtime/workflow-types.d.ts +17 -1
  93. package/dist/agent-runtime/workflow.js +28 -1
  94. package/dist/agent-runtime/workflow.js.map +1 -1
  95. package/dist/agent-runtime/workspace-tools.d.ts +4 -0
  96. package/dist/agent-runtime/workspace-tools.js +182 -20
  97. package/dist/agent-runtime/workspace-tools.js.map +1 -1
  98. package/dist/installer/phases/scaffold.js +39 -109
  99. package/dist/installer/phases/scaffold.js.map +1 -1
  100. package/dist/installer/runtime/pipeline-state.d.ts +142 -1
  101. package/dist/installer/runtime/pipeline-state.js +477 -28
  102. package/dist/installer/runtime/pipeline-state.js.map +1 -1
  103. package/docs/agent-runtime-efficiency.md +65 -0
  104. package/docs/agent-runtime.md +86 -15
  105. package/integration-contract.json +2 -1
  106. package/package.json +5 -2
  107. package/schemas/agent-runtime.schema.json +25 -3
  108. package/schemas/fixtures/runtime-efficiency-summary.v1.json +790 -0
  109. package/templates/codex-skills/batch-implement/SKILL.md +33 -58
  110. package/templates/codex-skills/implement/SKILL.md +21 -124
  111. package/templates/codex-skills/retry/SKILL.md +8 -34
  112. package/templates/commands/specrails/batch-implement.md +21 -16
  113. package/templates/commands/specrails/implement.md +17 -276
  114. package/templates/commands/specrails/retry.md +6 -34
  115. package/templates/gemini-commands/batch-implement.toml +34 -28
  116. package/templates/gemini-commands/implement.toml +34 -55
  117. package/templates/gemini-commands/retry.toml +10 -16
@@ -0,0 +1,790 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "synthetic": true,
4
+ "fixtures": {
5
+ "success": {
6
+ "schemaVersion": 1,
7
+ "currentEvidenceIds": [
8
+ "aee408847d35e44e99430f0979c3357b85fe8dbb4535a494301198adbee85f27"
9
+ ],
10
+ "planHash": "64879f7d6b960a01909762d911a32d4582c20010c5641ee90278b644a9e3b525",
11
+ "candidateHash": "dda18a0e21ae47c53b4309434cbc02ae8bf764fa83a6defbb719431242722aa7",
12
+ "runId": "success",
13
+ "workflowVersion": "5",
14
+ "technicalAcceptance": "validated",
15
+ "archive": "pending",
16
+ "delivery": "pending-host",
17
+ "roles": [
18
+ {
19
+ "role": "architect",
20
+ "provider": "fixture",
21
+ "model": "base",
22
+ "effort": null,
23
+ "observedModel": null,
24
+ "observedEffort": null,
25
+ "origin": "frozen-runtime-config",
26
+ "tier": "base"
27
+ },
28
+ {
29
+ "role": "developer",
30
+ "provider": "fixture",
31
+ "model": "base",
32
+ "effort": null,
33
+ "observedModel": null,
34
+ "observedEffort": null,
35
+ "origin": "frozen-runtime-config",
36
+ "tier": "base"
37
+ },
38
+ {
39
+ "role": "reviewer",
40
+ "provider": "fixture",
41
+ "model": "base",
42
+ "effort": null,
43
+ "observedModel": null,
44
+ "observedEffort": null,
45
+ "origin": "frozen-runtime-config",
46
+ "tier": "base"
47
+ }
48
+ ],
49
+ "invocations": {
50
+ "byKind": {
51
+ "initial": 1,
52
+ "correction": 0,
53
+ "repair": 0,
54
+ "deepen": 0,
55
+ "session-fallback": 0
56
+ },
57
+ "total": 1,
58
+ "complete": true,
59
+ "promptBytes": 100,
60
+ "contextBytes": 80,
61
+ "handoffBytes": 20,
62
+ "fullContexts": 1,
63
+ "incrementalContexts": 0
64
+ },
65
+ "escalations": [],
66
+ "escalationsTruncated": false,
67
+ "checks": {
68
+ "invalidated": 0,
69
+ "available": true,
70
+ "complete": true,
71
+ "executed": 1,
72
+ "reused": 0,
73
+ "notRun": 0,
74
+ "durationMs": 5
75
+ },
76
+ "metrics": {
77
+ "schemaVersion": 1,
78
+ "total": {
79
+ "attempts": 1,
80
+ "measuredAttempts": 1,
81
+ "durationMs": 1000,
82
+ "agentDurationMs": 12,
83
+ "providerCalls": 1,
84
+ "toolCalls": 0,
85
+ "inputTokens": 100,
86
+ "outputTokens": 10,
87
+ "costUsd": null,
88
+ "uncachedInputTokens": null,
89
+ "cacheReadInputTokens": null,
90
+ "cacheWriteInputTokens": null
91
+ },
92
+ "phases": [
93
+ {
94
+ "stepId": "developer",
95
+ "attempts": 1,
96
+ "measuredAttempts": 1,
97
+ "durationMs": 1000,
98
+ "agentDurationMs": 12,
99
+ "providerCalls": 1,
100
+ "toolCalls": 0,
101
+ "inputTokens": 100,
102
+ "outputTokens": 10,
103
+ "costUsd": null,
104
+ "uncachedInputTokens": null,
105
+ "cacheReadInputTokens": null,
106
+ "cacheWriteInputTokens": null,
107
+ "providers": [
108
+ "fixture"
109
+ ],
110
+ "models": [
111
+ "base"
112
+ ]
113
+ }
114
+ ]
115
+ }
116
+ },
117
+ "correction-success": {
118
+ "schemaVersion": 1,
119
+ "currentEvidenceIds": [
120
+ "b47d1513dcfde9cdb70a36525d07d27c07d3e6047d08756586ddb06fbf9d9033"
121
+ ],
122
+ "planHash": "64879f7d6b960a01909762d911a32d4582c20010c5641ee90278b644a9e3b525",
123
+ "candidateHash": "dda18a0e21ae47c53b4309434cbc02ae8bf764fa83a6defbb719431242722aa7",
124
+ "runId": "correction-success",
125
+ "workflowVersion": "5",
126
+ "technicalAcceptance": "validated",
127
+ "archive": "pending",
128
+ "delivery": "pending-host",
129
+ "roles": [
130
+ {
131
+ "role": "architect",
132
+ "provider": "fixture",
133
+ "model": "base",
134
+ "effort": null,
135
+ "observedModel": null,
136
+ "observedEffort": null,
137
+ "origin": "frozen-runtime-config",
138
+ "tier": "base"
139
+ },
140
+ {
141
+ "role": "developer",
142
+ "provider": "fixture",
143
+ "model": "base",
144
+ "effort": null,
145
+ "observedModel": null,
146
+ "observedEffort": null,
147
+ "origin": "frozen-runtime-config",
148
+ "tier": "base"
149
+ },
150
+ {
151
+ "role": "reviewer",
152
+ "provider": "fixture",
153
+ "model": "base",
154
+ "effort": null,
155
+ "observedModel": null,
156
+ "observedEffort": null,
157
+ "origin": "frozen-runtime-config",
158
+ "tier": "base"
159
+ }
160
+ ],
161
+ "invocations": {
162
+ "byKind": {
163
+ "initial": 1,
164
+ "correction": 1,
165
+ "repair": 0,
166
+ "deepen": 0,
167
+ "session-fallback": 0
168
+ },
169
+ "total": 2,
170
+ "complete": true,
171
+ "promptBytes": 140,
172
+ "contextBytes": 100,
173
+ "handoffBytes": 40,
174
+ "fullContexts": 1,
175
+ "incrementalContexts": 1
176
+ },
177
+ "escalations": [],
178
+ "escalationsTruncated": false,
179
+ "checks": {
180
+ "invalidated": 0,
181
+ "available": true,
182
+ "complete": true,
183
+ "executed": 1,
184
+ "reused": 0,
185
+ "notRun": 0,
186
+ "durationMs": 5
187
+ },
188
+ "metrics": {
189
+ "schemaVersion": 1,
190
+ "total": {
191
+ "attempts": 2,
192
+ "measuredAttempts": 2,
193
+ "durationMs": 1000,
194
+ "agentDurationMs": 24,
195
+ "providerCalls": 2,
196
+ "toolCalls": 0,
197
+ "inputTokens": 100,
198
+ "outputTokens": 10,
199
+ "costUsd": null,
200
+ "uncachedInputTokens": null,
201
+ "cacheReadInputTokens": null,
202
+ "cacheWriteInputTokens": null
203
+ },
204
+ "phases": [
205
+ {
206
+ "stepId": "developer",
207
+ "attempts": 2,
208
+ "measuredAttempts": 2,
209
+ "durationMs": 2000,
210
+ "agentDurationMs": 24,
211
+ "providerCalls": 2,
212
+ "toolCalls": 0,
213
+ "inputTokens": 200,
214
+ "outputTokens": 20,
215
+ "costUsd": null,
216
+ "uncachedInputTokens": null,
217
+ "cacheReadInputTokens": null,
218
+ "cacheWriteInputTokens": null,
219
+ "providers": [
220
+ "fixture"
221
+ ],
222
+ "models": [
223
+ "base"
224
+ ]
225
+ }
226
+ ]
227
+ }
228
+ },
229
+ "failure": {
230
+ "schemaVersion": 1,
231
+ "currentEvidenceIds": [
232
+ "16d34b5e7bcb341ee6cb3d16495d90e93fbe57c46d3827432613210a24ebca30"
233
+ ],
234
+ "planHash": "64879f7d6b960a01909762d911a32d4582c20010c5641ee90278b644a9e3b525",
235
+ "candidateHash": "dda18a0e21ae47c53b4309434cbc02ae8bf764fa83a6defbb719431242722aa7",
236
+ "runId": "failure",
237
+ "workflowVersion": "5",
238
+ "technicalAcceptance": "blocked",
239
+ "archive": "pending",
240
+ "delivery": "pending-host",
241
+ "roles": [
242
+ {
243
+ "role": "architect",
244
+ "provider": "fixture",
245
+ "model": "base",
246
+ "effort": null,
247
+ "observedModel": null,
248
+ "observedEffort": null,
249
+ "origin": "frozen-runtime-config",
250
+ "tier": "base"
251
+ },
252
+ {
253
+ "role": "developer",
254
+ "provider": "fixture",
255
+ "model": "base",
256
+ "effort": null,
257
+ "observedModel": null,
258
+ "observedEffort": null,
259
+ "origin": "frozen-runtime-config",
260
+ "tier": "base"
261
+ },
262
+ {
263
+ "role": "reviewer",
264
+ "provider": "fixture",
265
+ "model": "base",
266
+ "effort": null,
267
+ "observedModel": null,
268
+ "observedEffort": null,
269
+ "origin": "frozen-runtime-config",
270
+ "tier": "base"
271
+ }
272
+ ],
273
+ "invocations": {
274
+ "byKind": {
275
+ "initial": 1,
276
+ "correction": 0,
277
+ "repair": 0,
278
+ "deepen": 0,
279
+ "session-fallback": 0
280
+ },
281
+ "total": 1,
282
+ "complete": true,
283
+ "promptBytes": 100,
284
+ "contextBytes": 80,
285
+ "handoffBytes": 20,
286
+ "fullContexts": 1,
287
+ "incrementalContexts": 0
288
+ },
289
+ "escalations": [],
290
+ "escalationsTruncated": false,
291
+ "checks": {
292
+ "invalidated": 0,
293
+ "available": true,
294
+ "complete": true,
295
+ "executed": 1,
296
+ "reused": 0,
297
+ "notRun": 0,
298
+ "durationMs": 5
299
+ },
300
+ "metrics": {
301
+ "schemaVersion": 1,
302
+ "total": {
303
+ "attempts": 1,
304
+ "measuredAttempts": 1,
305
+ "durationMs": 1000,
306
+ "agentDurationMs": 12,
307
+ "providerCalls": 1,
308
+ "toolCalls": 0,
309
+ "inputTokens": 100,
310
+ "outputTokens": 10,
311
+ "costUsd": null,
312
+ "uncachedInputTokens": null,
313
+ "cacheReadInputTokens": null,
314
+ "cacheWriteInputTokens": null
315
+ },
316
+ "phases": [
317
+ {
318
+ "stepId": "developer",
319
+ "attempts": 1,
320
+ "measuredAttempts": 1,
321
+ "durationMs": 1000,
322
+ "agentDurationMs": 12,
323
+ "providerCalls": 1,
324
+ "toolCalls": 0,
325
+ "inputTokens": 100,
326
+ "outputTokens": 10,
327
+ "costUsd": null,
328
+ "uncachedInputTokens": null,
329
+ "cacheReadInputTokens": null,
330
+ "cacheWriteInputTokens": null,
331
+ "providers": [
332
+ "fixture"
333
+ ],
334
+ "models": [
335
+ "base"
336
+ ]
337
+ }
338
+ ]
339
+ }
340
+ },
341
+ "reuse": {
342
+ "schemaVersion": 1,
343
+ "currentEvidenceIds": [
344
+ "d9c0d34144c1defc65b0d4f0501b8315aeb60f3c728d00e48898ec9523361f85"
345
+ ],
346
+ "planHash": "64879f7d6b960a01909762d911a32d4582c20010c5641ee90278b644a9e3b525",
347
+ "candidateHash": "dda18a0e21ae47c53b4309434cbc02ae8bf764fa83a6defbb719431242722aa7",
348
+ "runId": "reuse",
349
+ "workflowVersion": "5",
350
+ "technicalAcceptance": "validated",
351
+ "archive": "pending",
352
+ "delivery": "pending-host",
353
+ "roles": [
354
+ {
355
+ "role": "architect",
356
+ "provider": "fixture",
357
+ "model": "base",
358
+ "effort": null,
359
+ "observedModel": null,
360
+ "observedEffort": null,
361
+ "origin": "frozen-runtime-config",
362
+ "tier": "base"
363
+ },
364
+ {
365
+ "role": "developer",
366
+ "provider": "fixture",
367
+ "model": "base",
368
+ "effort": null,
369
+ "observedModel": null,
370
+ "observedEffort": null,
371
+ "origin": "frozen-runtime-config",
372
+ "tier": "base"
373
+ },
374
+ {
375
+ "role": "reviewer",
376
+ "provider": "fixture",
377
+ "model": "base",
378
+ "effort": null,
379
+ "observedModel": null,
380
+ "observedEffort": null,
381
+ "origin": "frozen-runtime-config",
382
+ "tier": "base"
383
+ }
384
+ ],
385
+ "invocations": {
386
+ "byKind": {
387
+ "initial": 1,
388
+ "correction": 0,
389
+ "repair": 0,
390
+ "deepen": 0,
391
+ "session-fallback": 0
392
+ },
393
+ "total": 1,
394
+ "complete": true,
395
+ "promptBytes": 100,
396
+ "contextBytes": 80,
397
+ "handoffBytes": 20,
398
+ "fullContexts": 1,
399
+ "incrementalContexts": 0
400
+ },
401
+ "escalations": [],
402
+ "escalationsTruncated": false,
403
+ "checks": {
404
+ "invalidated": 0,
405
+ "available": true,
406
+ "complete": true,
407
+ "executed": 0,
408
+ "reused": 1,
409
+ "notRun": 0,
410
+ "durationMs": 0
411
+ },
412
+ "metrics": {
413
+ "schemaVersion": 1,
414
+ "total": {
415
+ "attempts": 1,
416
+ "measuredAttempts": 1,
417
+ "durationMs": 1000,
418
+ "agentDurationMs": 12,
419
+ "providerCalls": 1,
420
+ "toolCalls": 0,
421
+ "inputTokens": 100,
422
+ "outputTokens": 10,
423
+ "costUsd": null,
424
+ "uncachedInputTokens": null,
425
+ "cacheReadInputTokens": null,
426
+ "cacheWriteInputTokens": null
427
+ },
428
+ "phases": [
429
+ {
430
+ "stepId": "developer",
431
+ "attempts": 1,
432
+ "measuredAttempts": 1,
433
+ "durationMs": 1000,
434
+ "agentDurationMs": 12,
435
+ "providerCalls": 1,
436
+ "toolCalls": 0,
437
+ "inputTokens": 100,
438
+ "outputTokens": 10,
439
+ "costUsd": null,
440
+ "uncachedInputTokens": null,
441
+ "cacheReadInputTokens": null,
442
+ "cacheWriteInputTokens": null,
443
+ "providers": [
444
+ "fixture"
445
+ ],
446
+ "models": [
447
+ "base"
448
+ ]
449
+ }
450
+ ]
451
+ }
452
+ },
453
+ "invalidation": {
454
+ "schemaVersion": 1,
455
+ "currentEvidenceIds": [
456
+ "67ffbb68835e9ad6daf875866d3283a13455450a8e39370a60076c5fe3ccd5d1"
457
+ ],
458
+ "planHash": "64879f7d6b960a01909762d911a32d4582c20010c5641ee90278b644a9e3b525",
459
+ "candidateHash": "dda18a0e21ae47c53b4309434cbc02ae8bf764fa83a6defbb719431242722aa7",
460
+ "runId": "invalidation",
461
+ "workflowVersion": "5",
462
+ "technicalAcceptance": "validated",
463
+ "archive": "pending",
464
+ "delivery": "pending-host",
465
+ "roles": [
466
+ {
467
+ "role": "architect",
468
+ "provider": "fixture",
469
+ "model": "base",
470
+ "effort": null,
471
+ "observedModel": null,
472
+ "observedEffort": null,
473
+ "origin": "frozen-runtime-config",
474
+ "tier": "base"
475
+ },
476
+ {
477
+ "role": "developer",
478
+ "provider": "fixture",
479
+ "model": "base",
480
+ "effort": null,
481
+ "observedModel": null,
482
+ "observedEffort": null,
483
+ "origin": "frozen-runtime-config",
484
+ "tier": "base"
485
+ },
486
+ {
487
+ "role": "reviewer",
488
+ "provider": "fixture",
489
+ "model": "base",
490
+ "effort": null,
491
+ "observedModel": null,
492
+ "observedEffort": null,
493
+ "origin": "frozen-runtime-config",
494
+ "tier": "base"
495
+ }
496
+ ],
497
+ "invocations": {
498
+ "byKind": {
499
+ "initial": 1,
500
+ "correction": 0,
501
+ "repair": 0,
502
+ "deepen": 0,
503
+ "session-fallback": 0
504
+ },
505
+ "total": 1,
506
+ "complete": true,
507
+ "promptBytes": 100,
508
+ "contextBytes": 80,
509
+ "handoffBytes": 20,
510
+ "fullContexts": 1,
511
+ "incrementalContexts": 0
512
+ },
513
+ "escalations": [],
514
+ "escalationsTruncated": false,
515
+ "checks": {
516
+ "invalidated": 1,
517
+ "available": true,
518
+ "complete": true,
519
+ "executed": 1,
520
+ "reused": 0,
521
+ "notRun": 0,
522
+ "durationMs": 5
523
+ },
524
+ "metrics": {
525
+ "schemaVersion": 1,
526
+ "total": {
527
+ "attempts": 1,
528
+ "measuredAttempts": 1,
529
+ "durationMs": 1000,
530
+ "agentDurationMs": 12,
531
+ "providerCalls": 1,
532
+ "toolCalls": 0,
533
+ "inputTokens": 100,
534
+ "outputTokens": 10,
535
+ "costUsd": null,
536
+ "uncachedInputTokens": null,
537
+ "cacheReadInputTokens": null,
538
+ "cacheWriteInputTokens": null
539
+ },
540
+ "phases": [
541
+ {
542
+ "stepId": "developer",
543
+ "attempts": 1,
544
+ "measuredAttempts": 1,
545
+ "durationMs": 1000,
546
+ "agentDurationMs": 12,
547
+ "providerCalls": 1,
548
+ "toolCalls": 0,
549
+ "inputTokens": 100,
550
+ "outputTokens": 10,
551
+ "costUsd": null,
552
+ "uncachedInputTokens": null,
553
+ "cacheReadInputTokens": null,
554
+ "cacheWriteInputTokens": null,
555
+ "providers": [
556
+ "fixture"
557
+ ],
558
+ "models": [
559
+ "base"
560
+ ]
561
+ }
562
+ ]
563
+ }
564
+ },
565
+ "incomplete-metrics": {
566
+ "schemaVersion": 1,
567
+ "currentEvidenceIds": [
568
+ "cb4761bb25432804d943e2adde4382dffba2710628fd627c25e21919cbaf69b7"
569
+ ],
570
+ "planHash": "64879f7d6b960a01909762d911a32d4582c20010c5641ee90278b644a9e3b525",
571
+ "candidateHash": "dda18a0e21ae47c53b4309434cbc02ae8bf764fa83a6defbb719431242722aa7",
572
+ "runId": "incomplete-metrics",
573
+ "workflowVersion": "5",
574
+ "technicalAcceptance": "validated",
575
+ "archive": "pending",
576
+ "delivery": "pending-host",
577
+ "roles": [
578
+ {
579
+ "role": "architect",
580
+ "provider": "fixture",
581
+ "model": "base",
582
+ "effort": null,
583
+ "observedModel": null,
584
+ "observedEffort": null,
585
+ "origin": "frozen-runtime-config",
586
+ "tier": "base"
587
+ },
588
+ {
589
+ "role": "developer",
590
+ "provider": "fixture",
591
+ "model": "base",
592
+ "effort": null,
593
+ "observedModel": null,
594
+ "observedEffort": null,
595
+ "origin": "frozen-runtime-config",
596
+ "tier": "base"
597
+ },
598
+ {
599
+ "role": "reviewer",
600
+ "provider": "fixture",
601
+ "model": "base",
602
+ "effort": null,
603
+ "observedModel": null,
604
+ "observedEffort": null,
605
+ "origin": "frozen-runtime-config",
606
+ "tier": "base"
607
+ }
608
+ ],
609
+ "invocations": {
610
+ "byKind": {
611
+ "initial": 2,
612
+ "correction": 0,
613
+ "repair": 0,
614
+ "deepen": 0,
615
+ "session-fallback": 0
616
+ },
617
+ "total": 2,
618
+ "complete": false,
619
+ "promptBytes": 200,
620
+ "contextBytes": 160,
621
+ "handoffBytes": 40,
622
+ "fullContexts": 2,
623
+ "incrementalContexts": 0
624
+ },
625
+ "escalations": [],
626
+ "escalationsTruncated": false,
627
+ "checks": {
628
+ "invalidated": 0,
629
+ "available": true,
630
+ "complete": true,
631
+ "executed": 1,
632
+ "reused": 0,
633
+ "notRun": 0,
634
+ "durationMs": 5
635
+ },
636
+ "metrics": {
637
+ "schemaVersion": 1,
638
+ "total": {
639
+ "attempts": 1,
640
+ "measuredAttempts": 1,
641
+ "durationMs": 1000,
642
+ "agentDurationMs": null,
643
+ "providerCalls": null,
644
+ "toolCalls": null,
645
+ "inputTokens": null,
646
+ "outputTokens": null,
647
+ "costUsd": null,
648
+ "uncachedInputTokens": null,
649
+ "cacheReadInputTokens": null,
650
+ "cacheWriteInputTokens": null
651
+ },
652
+ "phases": [
653
+ {
654
+ "stepId": "developer",
655
+ "attempts": 1,
656
+ "measuredAttempts": 1,
657
+ "durationMs": 1000,
658
+ "agentDurationMs": null,
659
+ "providerCalls": null,
660
+ "toolCalls": null,
661
+ "inputTokens": 100,
662
+ "outputTokens": 10,
663
+ "costUsd": null,
664
+ "uncachedInputTokens": null,
665
+ "cacheReadInputTokens": null,
666
+ "cacheWriteInputTokens": null,
667
+ "providers": [
668
+ "fixture"
669
+ ],
670
+ "models": [
671
+ "base"
672
+ ]
673
+ }
674
+ ]
675
+ }
676
+ },
677
+ "unavailable-evidence": {
678
+ "schemaVersion": 1,
679
+ "currentEvidenceIds": [
680
+ "68b1b2c408cc053b096f26e9dec655395a4b105ca83b805f8de78d1cac95ef76"
681
+ ],
682
+ "planHash": "64879f7d6b960a01909762d911a32d4582c20010c5641ee90278b644a9e3b525",
683
+ "candidateHash": "dda18a0e21ae47c53b4309434cbc02ae8bf764fa83a6defbb719431242722aa7",
684
+ "runId": "unavailable-evidence",
685
+ "workflowVersion": "5",
686
+ "technicalAcceptance": "validated",
687
+ "archive": "pending",
688
+ "delivery": "pending-host",
689
+ "roles": [
690
+ {
691
+ "role": "architect",
692
+ "provider": "fixture",
693
+ "model": "base",
694
+ "effort": null,
695
+ "observedModel": null,
696
+ "observedEffort": null,
697
+ "origin": "frozen-runtime-config",
698
+ "tier": "base"
699
+ },
700
+ {
701
+ "role": "developer",
702
+ "provider": "fixture",
703
+ "model": "base",
704
+ "effort": null,
705
+ "observedModel": null,
706
+ "observedEffort": null,
707
+ "origin": "frozen-runtime-config",
708
+ "tier": "base"
709
+ },
710
+ {
711
+ "role": "reviewer",
712
+ "provider": "fixture",
713
+ "model": "base",
714
+ "effort": null,
715
+ "observedModel": null,
716
+ "observedEffort": null,
717
+ "origin": "frozen-runtime-config",
718
+ "tier": "base"
719
+ }
720
+ ],
721
+ "invocations": {
722
+ "byKind": {
723
+ "initial": 1,
724
+ "correction": 0,
725
+ "repair": 0,
726
+ "deepen": 0,
727
+ "session-fallback": 0
728
+ },
729
+ "total": 1,
730
+ "complete": true,
731
+ "promptBytes": 100,
732
+ "contextBytes": 80,
733
+ "handoffBytes": 20,
734
+ "fullContexts": 1,
735
+ "incrementalContexts": 0
736
+ },
737
+ "escalations": [],
738
+ "escalationsTruncated": false,
739
+ "checks": {
740
+ "invalidated": null,
741
+ "available": false,
742
+ "complete": false,
743
+ "executed": null,
744
+ "reused": null,
745
+ "notRun": null,
746
+ "durationMs": null
747
+ },
748
+ "metrics": {
749
+ "schemaVersion": 1,
750
+ "total": {
751
+ "attempts": 1,
752
+ "measuredAttempts": 1,
753
+ "durationMs": 1000,
754
+ "agentDurationMs": 12,
755
+ "providerCalls": 1,
756
+ "toolCalls": 0,
757
+ "inputTokens": 100,
758
+ "outputTokens": 10,
759
+ "costUsd": null,
760
+ "uncachedInputTokens": null,
761
+ "cacheReadInputTokens": null,
762
+ "cacheWriteInputTokens": null
763
+ },
764
+ "phases": [
765
+ {
766
+ "stepId": "developer",
767
+ "attempts": 1,
768
+ "measuredAttempts": 1,
769
+ "durationMs": 1000,
770
+ "agentDurationMs": 12,
771
+ "providerCalls": 1,
772
+ "toolCalls": 0,
773
+ "inputTokens": 100,
774
+ "outputTokens": 10,
775
+ "costUsd": null,
776
+ "uncachedInputTokens": null,
777
+ "cacheReadInputTokens": null,
778
+ "cacheWriteInputTokens": null,
779
+ "providers": [
780
+ "fixture"
781
+ ],
782
+ "models": [
783
+ "base"
784
+ ]
785
+ }
786
+ ]
787
+ }
788
+ }
789
+ }
790
+ }