@unbrained/pm-cli 2026.10.10 → 2026.10.12

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 (180) hide show
  1. package/.claude-plugin/marketplace.json +1 -36
  2. package/CHANGELOG.md +31 -4
  3. package/dist/cli/commander-usage.d.ts +5 -5
  4. package/dist/cli/commander-usage.js +3 -3
  5. package/dist/cli/error-guidance.d.ts +2 -0
  6. package/dist/cli/error-guidance.js +2 -2
  7. package/dist/cli/help-json-payload.js +1 -1
  8. package/dist/cli/main.d.ts +1 -0
  9. package/dist/cli/main.js +4 -4
  10. package/dist/cli/register-operations.d.ts +9 -4
  11. package/dist/cli/register-operations.js +1 -1
  12. package/dist/cli-bundle/bundle-manifest.json +1 -382
  13. package/dist/cli-bundle/chunks/{chunk-2JYTSTQP.js → chunk-3LQTJN4J.js} +2 -2
  14. package/dist/cli-bundle/chunks/{chunk-YMLF6QT7.js → chunk-6PZPUJW3.js} +28 -28
  15. package/dist/cli-bundle/chunks/{chunk-RUT3CCAG.js → chunk-B465HPS5.js} +2 -2
  16. package/dist/cli-bundle/chunks/{chunk-ESRACL6K.js → chunk-DT3KUUKY.js} +2 -2
  17. package/dist/cli-bundle/chunks/{chunk-SSY4OSJR.js → chunk-GUVKPOY6.js} +2 -2
  18. package/dist/cli-bundle/chunks/chunk-ILQEZ4Y6.js +2 -0
  19. package/dist/cli-bundle/chunks/{chunk-RBPOO46D.js → chunk-JRRXWH5B.js} +2 -2
  20. package/dist/cli-bundle/chunks/{chunk-MEWBSWE3.js → chunk-LH5QDBMN.js} +2 -2
  21. package/dist/cli-bundle/chunks/{chunk-KNW3RSLS.js → chunk-M5NDSW6E.js} +30 -30
  22. package/dist/cli-bundle/chunks/{chunk-K2UTE75T.js → chunk-MHPU2LDF.js} +2 -2
  23. package/dist/cli-bundle/chunks/{chunk-OBLO45UM.js → chunk-QM3M7GB5.js} +2 -2
  24. package/dist/cli-bundle/chunks/{chunk-S445XEYT.js → chunk-UABZJXIS.js} +2 -2
  25. package/dist/cli-bundle/chunks/{chunk-ZWRLAOA4.js → chunk-X2I2EEAS.js} +2 -2
  26. package/dist/cli-bundle/chunks/{register-list-query-T6BOR67M.js → register-list-query-OR33UEML.js} +2 -2
  27. package/dist/cli-bundle/chunks/{register-mutation-6NXR7SAJ.js → register-mutation-R34EJ3NH.js} +2 -2
  28. package/dist/cli-bundle/chunks/register-operations-UHSMEHSF.js +2 -0
  29. package/dist/cli-bundle/chunks/{register-setup-MAYFPKBX.js → register-setup-5E3PT22L.js} +2 -2
  30. package/dist/cli-bundle/focused-chunks/{chunk-SIEGIPNT.js → chunk-7QIZB2F2.js} +7 -7
  31. package/dist/cli-bundle/focused-chunks/{chunk-PLTTMQAW.js → chunk-AJG3DBXR.js} +2 -2
  32. package/dist/cli-bundle/focused-chunks/chunk-AXBO53EQ.js +2 -0
  33. package/dist/cli-bundle/focused-chunks/{chunk-W5AE7GKZ.js → chunk-CYEZLKLL.js} +2 -2
  34. package/dist/cli-bundle/focused-chunks/{chunk-PBCYGO7X.js → chunk-FXRWJEQ5.js} +2 -2
  35. package/dist/cli-bundle/focused-chunks/{chunk-GVGFUD52.js → chunk-IKJFAU32.js} +2 -2
  36. package/dist/cli-bundle/focused-chunks/{chunk-DMSADMEU.js → chunk-OGOLIS5R.js} +2 -2
  37. package/dist/cli-bundle/focused-chunks/chunk-PPH5N26M.js +2 -0
  38. package/dist/cli-bundle/focused-chunks/{chunk-WAOXID5J.js → chunk-RNAWRTQV.js} +2 -2
  39. package/dist/cli-bundle/focused-chunks/{chunk-B3YW6H2I.js → chunk-RZVNGUT7.js} +2 -2
  40. package/dist/cli-bundle/focused-chunks/{chunk-52UJEHEV.js → chunk-SV6YYZLR.js} +2 -2
  41. package/dist/cli-bundle/focused-chunks/{chunk-EIOQNLBQ.js → chunk-TS46OZD5.js} +2 -2
  42. package/dist/cli-bundle/focused-chunks/{chunk-KNJR2WUO.js → chunk-VBTLX5SN.js} +62 -62
  43. package/dist/cli-bundle/focused-chunks/{chunk-JGFSSR3G.js → chunk-YCOJLIDI.js} +3 -3
  44. package/dist/cli-bundle/focused-chunks/chunk-YDJT33JU.js +2 -0
  45. package/dist/cli-bundle/focused-chunks/{chunk-AU6VJGTY.js → chunk-Z4T3637Y.js} +2 -2
  46. package/dist/cli-bundle/main.js +22 -22
  47. package/dist/cli-bundle/sdk-authoring.js +1 -1
  48. package/dist/cli-bundle/sdk-contracts.js +1 -1
  49. package/dist/cli-bundle/sdk-core.js +31 -31
  50. package/dist/cli-bundle/sdk-governance.js +1 -1
  51. package/dist/cli-bundle/sdk-graph.js +1 -1
  52. package/dist/cli-bundle/sdk-merge.js +24 -24
  53. package/dist/cli-bundle/sdk-query.js +1 -1
  54. package/dist/cli-bundle/sdk-runtime.js +1 -1
  55. package/dist/cli-bundle/sdk-testing.js +1 -1
  56. package/dist/cli-bundle/sdk.js +9 -9
  57. package/dist/core/history/event-classification.d.ts +1 -1
  58. package/dist/core/history/event-classification.js +1 -1
  59. package/dist/core/item/item-format.d.ts +2 -0
  60. package/dist/core/item/item-format.js +2 -2
  61. package/dist/core/telemetry/runtime.d.ts +1 -1
  62. package/dist/core/telemetry/runtime.js +2 -2
  63. package/dist/core/test/background-runs.d.ts +1 -0
  64. package/dist/core/test/background-runs.js +2 -2
  65. package/dist/sdk/agent/command-suggestions.d.ts +2 -0
  66. package/dist/sdk/agent/command-suggestions.js +1 -1
  67. package/dist/sdk/cli-contracts/flag-contracts.js +1 -1
  68. package/dist/sdk/cli-contracts/flag-lexicon-contracts.js +1 -1
  69. package/dist/sdk/cli-contracts/grammar-contracts.js +1 -1
  70. package/dist/sdk/cli-contracts/registration-helpers.d.ts +1 -4
  71. package/dist/sdk/cli-contracts/registration-helpers.js +1 -1
  72. package/dist/sdk/cli-contracts/tool-parameter-tables.js +1 -1
  73. package/dist/sdk/cli-contracts/tool-schema.d.ts +1 -1
  74. package/dist/sdk/cli-contracts/tool-schema.js +1 -1
  75. package/dist/sdk/core.d.ts +1 -0
  76. package/dist/sdk/core.js +1 -1
  77. package/dist/sdk/generated/generated-error-code-catalog-part-1.js +1 -1
  78. package/dist/sdk/generated/generated-error-code-catalog-part-2.js +1 -1
  79. package/dist/sdk/governance/artifact-ledgers.d.ts +59 -0
  80. package/dist/sdk/governance/artifact-ledgers.js +2 -0
  81. package/dist/sdk/governance.d.ts +1 -0
  82. package/dist/sdk/governance.js +1 -1
  83. package/dist/sdk/index.d.ts +2 -0
  84. package/dist/sdk/index.js +1 -1
  85. package/dist/sdk/public-surface.json +1 -1
  86. package/dist/sdk/test/batch.js +1 -1
  87. package/dist/sdk/test/command-args.d.ts +4 -0
  88. package/dist/sdk/test/command-args.js +2 -0
  89. package/dist/sdk/test/entry.d.ts +3 -0
  90. package/dist/sdk/test/entry.js +1 -1
  91. package/dist/sdk/test/execution.d.ts +15 -4
  92. package/dist/sdk/test/execution.js +2 -2
  93. package/dist/sdk/test/prerequisites.d.ts +6 -0
  94. package/dist/sdk/test/prerequisites.js +2 -0
  95. package/dist/sdk/test/trust.js +1 -1
  96. package/dist/sdk/test/update.d.ts +55 -0
  97. package/dist/sdk/test/update.js +2 -0
  98. package/dist/types.d.ts +4 -0
  99. package/dist/types.js +1 -1
  100. package/docs/LINKED_TEST_EDITS.md +79 -0
  101. package/docs/RELEASE_LEDGER_RECONCILIATION.md +148 -0
  102. package/docs/RELEASE_RELIABILITY.md +4 -0
  103. package/docs/RELEASING.md +53 -13
  104. package/docs/SDK.md +178 -636
  105. package/docs/SDK_EVIDENCE_TRACEABILITY.md +4 -0
  106. package/docs/TESTING.md +13 -0
  107. package/docs/agent-task-token-baseline.json +1 -292
  108. package/docs/agent-task-transcripts.json +1 -478
  109. package/docs/ecosystem-review-2026-09-28.json +1 -2866
  110. package/docs/examples/policy-restricted-extension/manifest.json +1 -22
  111. package/docs/examples/policy-restricted-extension/package.json +1 -8
  112. package/docs/examples/sdk-agent-environment/package.json +1 -8
  113. package/docs/examples/sdk-app-embedding/package.json +1 -9
  114. package/docs/examples/sdk-contract-consumer/package.json +1 -11
  115. package/docs/examples/sdk-custom-tool/package.json +1 -13
  116. package/docs/examples/starter-extension/manifest.json +1 -33
  117. package/docs/examples/starter-extension/package.json +1 -10
  118. package/docs/generated/FLAG_LEXICON_BUDGETS.md +2 -2
  119. package/docs/generated/REFUSAL_CLOSURE_CENSUS.md +8 -3
  120. package/docs/performance/corpus-shape-comparison.json +1 -108
  121. package/docs/performance/latest-scale-report.json +1 -418
  122. package/docs/performance/runner-qualification.md +36 -0
  123. package/docs/performance/scale-100k-report.json +1 -418
  124. package/docs/schemas/extension-manifest.schema.json +1 -165
  125. package/marketplace.json +1 -36
  126. package/package.json +1 -1
  127. package/packages/pm-beads/extensions/beads/manifest.json +1 -28
  128. package/packages/pm-beads/extensions/beads/package.json +1 -3
  129. package/packages/pm-beads/package.json +1 -50
  130. package/packages/pm-calendar/extensions/calendar/manifest.json +1 -22
  131. package/packages/pm-calendar/extensions/calendar/package.json +1 -3
  132. package/packages/pm-calendar/package.json +1 -51
  133. package/packages/pm-command-kit/extensions/command-kit/manifest.json +1 -22
  134. package/packages/pm-command-kit/extensions/command-kit/package.json +1 -3
  135. package/packages/pm-command-kit/package.json +1 -53
  136. package/packages/pm-digital-twin/extensions/digital-twin/manifest.json +1 -19
  137. package/packages/pm-digital-twin/extensions/digital-twin/package.json +1 -3
  138. package/packages/pm-digital-twin/package.json +1 -58
  139. package/packages/pm-governance-audit/extensions/governance-audit/manifest.json +1 -19
  140. package/packages/pm-governance-audit/extensions/governance-audit/package.json +1 -3
  141. package/packages/pm-governance-audit/package.json +1 -55
  142. package/packages/pm-guide-shell/extensions/guide-shell/manifest.json +1 -22
  143. package/packages/pm-guide-shell/extensions/guide-shell/package.json +1 -3
  144. package/packages/pm-guide-shell/package.json +1 -52
  145. package/packages/pm-kanban/extensions/kanban/manifest.json +1 -19
  146. package/packages/pm-kanban/extensions/kanban/package.json +1 -3
  147. package/packages/pm-kanban/package.json +1 -57
  148. package/packages/pm-lifecycle-hooks/extensions/lifecycle-hooks/manifest.json +1 -19
  149. package/packages/pm-lifecycle-hooks/extensions/lifecycle-hooks/package.json +1 -3
  150. package/packages/pm-lifecycle-hooks/package.json +1 -52
  151. package/packages/pm-linked-test-adapters/extensions/linked-test-adapters/manifest.json +1 -29
  152. package/packages/pm-linked-test-adapters/extensions/linked-test-adapters/package.json +1 -3
  153. package/packages/pm-linked-test-adapters/package.json +1 -53
  154. package/packages/pm-search-advanced/extensions/search-advanced/manifest.json +1 -29
  155. package/packages/pm-search-advanced/extensions/search-advanced/package.json +1 -3
  156. package/packages/pm-search-advanced/package.json +1 -54
  157. package/packages/pm-templates/extensions/templates/manifest.json +1 -22
  158. package/packages/pm-templates/extensions/templates/package.json +1 -3
  159. package/packages/pm-templates/package.json +1 -50
  160. package/packages/pm-todos/extensions/todos/manifest.json +1 -29
  161. package/packages/pm-todos/extensions/todos/package.json +1 -3
  162. package/packages/pm-todos/package.json +1 -51
  163. package/packages/pm-vcs/extensions/vcs/manifest.json +1 -19
  164. package/packages/pm-vcs/extensions/vcs/package.json +1 -3
  165. package/packages/pm-vcs/package.json +1 -55
  166. package/plugins/pm-claude/.claude-plugin/plugin.json +1 -25
  167. package/plugins/pm-claude/.mcp.json +1 -8
  168. package/plugins/pm-claude/hooks/hooks.json +1 -17
  169. package/plugins/pm-claude/package.json +1 -9
  170. package/plugins/pm-codex/.codex-plugin/plugin.json +1 -45
  171. package/plugins/pm-codex/.mcp.json +1 -11
  172. package/plugins/pm-codex/mcp.json +1 -11
  173. package/plugins/pm-codex/package.json +1 -9
  174. package/plugins/pm-codex/plugin.json +1 -45
  175. package/runtime-dependencies.json +1 -512
  176. package/dist/cli-bundle/chunks/chunk-BXSXT5Z6.js +0 -2
  177. package/dist/cli-bundle/chunks/register-operations-PDOBQZUJ.js +0 -2
  178. package/dist/cli-bundle/focused-chunks/chunk-2CJWTLQG.js +0 -2
  179. package/dist/cli-bundle/focused-chunks/chunk-MJQ253F3.js +0 -2
  180. package/dist/cli-bundle/focused-chunks/chunk-WOEZJUA2.js +0 -2
@@ -58,6 +58,10 @@ not contain the rationale and graph fields required to support the answer.
58
58
 
59
59
  ## SDK and MCP
60
60
 
61
+ [Linked-test metadata edits](LINKED_TEST_EDITS.md) provide a public SDK operation
62
+ for correcting one test while retaining its position, original provenance and
63
+ immutable history, with matching CLI and MCP action options.
64
+
61
65
  The public SDK exposes both reusable-client and one-shot forms:
62
66
 
63
67
  ```ts
package/docs/TESTING.md CHANGED
@@ -506,6 +506,9 @@ the descriptor registry does not yet know about.
506
506
 
507
507
  ## Linked Tests
508
508
 
509
+ For in-place metadata corrections and context admission/refusal semantics, see
510
+ [Linked-test edits](LINKED_TEST_EDITS.md).
511
+
509
512
  Add tests to the item that owns the work:
510
513
 
511
514
  ```bash
@@ -735,6 +738,16 @@ transient process logs are gone.
735
738
 
736
739
  ## Linked-Test Assertions
737
740
 
741
+ Tracked by [pm-test-measure-prerequisite](../.agents/pm/issues/pm-test-measure-prerequisite.toon):
742
+ `--measure` requires `--run`, as declared by CLI help and machine contracts.
743
+ A measurement-only request refuses before writing item or history data. Its
744
+ tokenized recovery preserves measurement values and run selectors and keeps
745
+ clone-local command trust enforced. Measurement evidence describes execution;
746
+ it cannot be added to an item without running its linked tests.
747
+
748
+ See [startup runner qualification](performance/runner-qualification.md) for the
749
+ independent control measurements retained by the SDK and CLI performance gates.
750
+
738
751
  Linked tests can include assertion metadata:
739
752
 
740
753
  ```bash
@@ -1,292 +1 @@
1
- {
2
- "version": 5,
3
- "transcript_version": 2,
4
- "transcript_digest": "sha256:6d4041acfaa4075dde1972d6127a74f18916f7661738b4f5d5fd47a61c179a78",
5
- "estimator": "ceil(utf8_bytes / 4)",
6
- "comparison_scope": "plan_recovery_tracker_root_canonicalized",
7
- "measurement_scope": "output_before_token_accounting",
8
- "published_with_release": true,
9
- "orientation": {
10
- "canonical_task_id": "orientation-context-intent",
11
- "required_capabilities": [
12
- "actionable_work",
13
- "active_ownership",
14
- "workspace_state"
15
- ],
16
- "measured_winner_tokens": 1087,
17
- "protocols": [
18
- {
19
- "task_id": "orientation-context-intent",
20
- "command_count": 1,
21
- "estimated_tokens": 1087,
22
- "capabilities": [
23
- "actionable_work",
24
- "active_ownership",
25
- "workspace_state"
26
- ],
27
- "capability_evidence": {
28
- "actionable_work": [
29
- {
30
- "step_id": "context",
31
- "field_path": "hierarchy"
32
- }
33
- ],
34
- "active_ownership": [
35
- {
36
- "step_id": "context",
37
- "field_path": "activity"
38
- }
39
- ],
40
- "workspace_state": [
41
- {
42
- "step_id": "context",
43
- "field_path": "summary.active_items"
44
- }
45
- ]
46
- }
47
- },
48
- {
49
- "task_id": "orientation-operating-rules",
50
- "command_count": 4,
51
- "estimated_tokens": 2325,
52
- "capabilities": [
53
- "actionable_work",
54
- "active_ownership",
55
- "workspace_state"
56
- ],
57
- "capability_evidence": {
58
- "actionable_work": [
59
- {
60
- "step_id": "open",
61
- "field_path": "items"
62
- }
63
- ],
64
- "active_ownership": [
65
- {
66
- "step_id": "in-progress",
67
- "field_path": "items"
68
- }
69
- ],
70
- "workspace_state": [
71
- {
72
- "step_id": "context",
73
- "field_path": "summary.active_items"
74
- }
75
- ]
76
- }
77
- },
78
- {
79
- "task_id": "orientation-contracts-next",
80
- "command_count": 2,
81
- "estimated_tokens": 5203,
82
- "capabilities": [
83
- "actionable_work",
84
- "active_ownership",
85
- "workspace_state"
86
- ],
87
- "capability_evidence": {
88
- "actionable_work": [
89
- {
90
- "step_id": "next",
91
- "field_path": "recommended.id"
92
- }
93
- ],
94
- "active_ownership": [
95
- {
96
- "step_id": "next",
97
- "field_path": "held_by_others"
98
- }
99
- ],
100
- "workspace_state": [
101
- {
102
- "step_id": "next",
103
- "field_path": "summary.in_progress"
104
- }
105
- ]
106
- }
107
- }
108
- ]
109
- },
110
- "tasks": [
111
- {
112
- "id": "orientation-context-intent",
113
- "max_estimated_tokens": 1087,
114
- "steps": [
115
- {
116
- "id": "context",
117
- "max_estimated_tokens": 1087,
118
- "accounting_mode": "self_reported"
119
- }
120
- ]
121
- },
122
- {
123
- "id": "orientation-contracts-next",
124
- "max_estimated_tokens": 5203,
125
- "steps": [
126
- {
127
- "id": "contracts",
128
- "max_estimated_tokens": 4481,
129
- "accounting_mode": "self_reported"
130
- },
131
- {
132
- "id": "next",
133
- "max_estimated_tokens": 722,
134
- "accounting_mode": "self_reported"
135
- }
136
- ]
137
- },
138
- {
139
- "id": "orientation-operating-rules",
140
- "max_estimated_tokens": 2325,
141
- "steps": [
142
- {
143
- "id": "context",
144
- "max_estimated_tokens": 1087,
145
- "accounting_mode": "self_reported"
146
- },
147
- {
148
- "id": "search",
149
- "max_estimated_tokens": 164,
150
- "accounting_mode": "self_reported"
151
- },
152
- {
153
- "id": "open",
154
- "max_estimated_tokens": 878,
155
- "accounting_mode": "self_reported"
156
- },
157
- {
158
- "id": "in-progress",
159
- "max_estimated_tokens": 196,
160
- "accounting_mode": "self_reported"
161
- }
162
- ]
163
- },
164
- {
165
- "id": "context-bootstrap",
166
- "max_estimated_tokens": 2010,
167
- "steps": [
168
- {
169
- "id": "triage",
170
- "max_estimated_tokens": 552,
171
- "accounting_mode": "self_reported"
172
- },
173
- {
174
- "id": "orient",
175
- "max_estimated_tokens": 1087,
176
- "accounting_mode": "self_reported"
177
- },
178
- {
179
- "id": "inspect",
180
- "max_estimated_tokens": 371,
181
- "accounting_mode": "self_reported"
182
- }
183
- ]
184
- },
185
- {
186
- "id": "closed-domain-recovery",
187
- "max_estimated_tokens": 630,
188
- "steps": [
189
- {
190
- "id": "refuse-intent",
191
- "max_estimated_tokens": 259,
192
- "accounting_mode": "self_reported"
193
- },
194
- {
195
- "id": "retry-intent",
196
- "max_estimated_tokens": 371,
197
- "accounting_mode": "self_reported"
198
- }
199
- ]
200
- },
201
- {
202
- "id": "unknown-option-recovery",
203
- "max_estimated_tokens": 596,
204
- "steps": [
205
- {
206
- "id": "refuse-option",
207
- "max_estimated_tokens": 433,
208
- "accounting_mode": "self_reported"
209
- },
210
- {
211
- "id": "retry-option",
212
- "max_estimated_tokens": 163,
213
- "accounting_mode": "self_reported"
214
- }
215
- ]
216
- },
217
- {
218
- "id": "lifecycle-mutation",
219
- "max_estimated_tokens": 812,
220
- "steps": [
221
- {
222
- "id": "create",
223
- "max_estimated_tokens": 20,
224
- "accounting_mode": "self_reported"
225
- },
226
- {
227
- "id": "inspect-open",
228
- "max_estimated_tokens": 363,
229
- "accounting_mode": "self_reported"
230
- },
231
- {
232
- "id": "close",
233
- "max_estimated_tokens": 31,
234
- "accounting_mode": "self_reported"
235
- },
236
- {
237
- "id": "inspect-closed",
238
- "max_estimated_tokens": 398,
239
- "accounting_mode": "self_reported"
240
- }
241
- ]
242
- },
243
- {
244
- "id": "bulk-effect-outcomes",
245
- "max_estimated_tokens": 326,
246
- "steps": [
247
- {
248
- "id": "create-bulk-target",
249
- "max_estimated_tokens": 20,
250
- "accounting_mode": "self_reported"
251
- },
252
- {
253
- "id": "partial-effect",
254
- "max_estimated_tokens": 174,
255
- "accounting_mode": "self_reported"
256
- },
257
- {
258
- "id": "no-effect",
259
- "max_estimated_tokens": 132,
260
- "accounting_mode": "self_reported"
261
- }
262
- ]
263
- },
264
- {
265
- "id": "plan-execution-mutations",
266
- "max_estimated_tokens": 806,
267
- "steps": [
268
- {
269
- "id": "create-plan",
270
- "max_estimated_tokens": 21,
271
- "accounting_mode": "self_reported"
272
- },
273
- {
274
- "id": "add-step",
275
- "max_estimated_tokens": 254,
276
- "accounting_mode": "self_reported"
277
- },
278
- {
279
- "id": "complete-step",
280
- "max_estimated_tokens": 253,
281
- "accounting_mode": "self_reported"
282
- },
283
- {
284
- "id": "inspect-plan",
285
- "max_estimated_tokens": 278,
286
- "accounting_mode": "self_reported"
287
- }
288
- ]
289
- }
290
- ],
291
- "composite_max_estimated_tokens": 13795
292
- }
1
+ {"version":5,"transcript_version":2,"transcript_digest":"sha256:6d4041acfaa4075dde1972d6127a74f18916f7661738b4f5d5fd47a61c179a78","estimator":"ceil(utf8_bytes / 4)","comparison_scope":"plan_recovery_tracker_root_canonicalized","measurement_scope":"output_before_token_accounting","published_with_release":true,"orientation":{"canonical_task_id":"orientation-context-intent","required_capabilities":["actionable_work","active_ownership","workspace_state"],"measured_winner_tokens":1087,"protocols":[{"task_id":"orientation-context-intent","command_count":1,"estimated_tokens":1087,"capabilities":["actionable_work","active_ownership","workspace_state"],"capability_evidence":{"actionable_work":[{"step_id":"context","field_path":"hierarchy"}],"active_ownership":[{"step_id":"context","field_path":"activity"}],"workspace_state":[{"step_id":"context","field_path":"summary.active_items"}]}},{"task_id":"orientation-operating-rules","command_count":4,"estimated_tokens":2325,"capabilities":["actionable_work","active_ownership","workspace_state"],"capability_evidence":{"actionable_work":[{"step_id":"open","field_path":"items"}],"active_ownership":[{"step_id":"in-progress","field_path":"items"}],"workspace_state":[{"step_id":"context","field_path":"summary.active_items"}]}},{"task_id":"orientation-contracts-next","command_count":2,"estimated_tokens":5203,"capabilities":["actionable_work","active_ownership","workspace_state"],"capability_evidence":{"actionable_work":[{"step_id":"next","field_path":"recommended.id"}],"active_ownership":[{"step_id":"next","field_path":"held_by_others"}],"workspace_state":[{"step_id":"next","field_path":"summary.in_progress"}]}}]},"tasks":[{"id":"orientation-context-intent","max_estimated_tokens":1087,"steps":[{"id":"context","max_estimated_tokens":1087,"accounting_mode":"self_reported"}]},{"id":"orientation-contracts-next","max_estimated_tokens":5203,"steps":[{"id":"contracts","max_estimated_tokens":4481,"accounting_mode":"self_reported"},{"id":"next","max_estimated_tokens":722,"accounting_mode":"self_reported"}]},{"id":"orientation-operating-rules","max_estimated_tokens":2325,"steps":[{"id":"context","max_estimated_tokens":1087,"accounting_mode":"self_reported"},{"id":"search","max_estimated_tokens":164,"accounting_mode":"self_reported"},{"id":"open","max_estimated_tokens":878,"accounting_mode":"self_reported"},{"id":"in-progress","max_estimated_tokens":196,"accounting_mode":"self_reported"}]},{"id":"context-bootstrap","max_estimated_tokens":2010,"steps":[{"id":"triage","max_estimated_tokens":552,"accounting_mode":"self_reported"},{"id":"orient","max_estimated_tokens":1087,"accounting_mode":"self_reported"},{"id":"inspect","max_estimated_tokens":371,"accounting_mode":"self_reported"}]},{"id":"closed-domain-recovery","max_estimated_tokens":630,"steps":[{"id":"refuse-intent","max_estimated_tokens":259,"accounting_mode":"self_reported"},{"id":"retry-intent","max_estimated_tokens":371,"accounting_mode":"self_reported"}]},{"id":"unknown-option-recovery","max_estimated_tokens":596,"steps":[{"id":"refuse-option","max_estimated_tokens":433,"accounting_mode":"self_reported"},{"id":"retry-option","max_estimated_tokens":163,"accounting_mode":"self_reported"}]},{"id":"lifecycle-mutation","max_estimated_tokens":812,"steps":[{"id":"create","max_estimated_tokens":20,"accounting_mode":"self_reported"},{"id":"inspect-open","max_estimated_tokens":363,"accounting_mode":"self_reported"},{"id":"close","max_estimated_tokens":31,"accounting_mode":"self_reported"},{"id":"inspect-closed","max_estimated_tokens":398,"accounting_mode":"self_reported"}]},{"id":"bulk-effect-outcomes","max_estimated_tokens":326,"steps":[{"id":"create-bulk-target","max_estimated_tokens":20,"accounting_mode":"self_reported"},{"id":"partial-effect","max_estimated_tokens":174,"accounting_mode":"self_reported"},{"id":"no-effect","max_estimated_tokens":132,"accounting_mode":"self_reported"}]},{"id":"plan-execution-mutations","max_estimated_tokens":806,"steps":[{"id":"create-plan","max_estimated_tokens":21,"accounting_mode":"self_reported"},{"id":"add-step","max_estimated_tokens":254,"accounting_mode":"self_reported"},{"id":"complete-step","max_estimated_tokens":253,"accounting_mode":"self_reported"},{"id":"inspect-plan","max_estimated_tokens":278,"accounting_mode":"self_reported"}]}],"composite_max_estimated_tokens":13795}