@unbrained/pm-cli 2026.8.10 → 2026.8.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 (175) hide show
  1. package/.claude-plugin/marketplace.json +2 -2
  2. package/CHANGELOG.md +102 -80
  3. package/dist/cli/commander-usage.js +79 -7
  4. package/dist/cli/error-guidance.d.ts +10 -0
  5. package/dist/cli/error-guidance.js +76 -25
  6. package/dist/cli/main.js +6 -2
  7. package/dist/cli/register-assurance.d.ts +8 -0
  8. package/dist/cli/register-assurance.js +52 -0
  9. package/dist/cli/register-files-lookup.js +14 -3
  10. package/dist/cli/register-mutation.js +30 -9
  11. package/dist/cli/register-operations.js +16 -11
  12. package/dist/cli-bundle/bundle-manifest.json +159 -159
  13. package/dist/cli-bundle/chunks/{chunk-TRWXF476.js → chunk-2OOU2AFH.js} +2 -2
  14. package/dist/cli-bundle/chunks/chunk-2RA2YTHJ.js +33 -0
  15. package/dist/cli-bundle/chunks/chunk-A2SJGHSI.js +3 -0
  16. package/dist/cli-bundle/chunks/chunk-DSKYD4LG.js +13 -0
  17. package/dist/cli-bundle/chunks/chunk-HC3GM6YY.js +194 -0
  18. package/dist/cli-bundle/chunks/chunk-IUNRVDAI.js +2 -0
  19. package/dist/cli-bundle/chunks/chunk-W7CPZGSB.js +2 -0
  20. package/dist/cli-bundle/chunks/{chunk-EBO7OUUE.js → chunk-WMEZHCFI.js} +59 -53
  21. package/dist/cli-bundle/chunks/{chunk-ETML5C6H.js → chunk-ZU34C3LH.js} +47 -47
  22. package/dist/cli-bundle/chunks/chunk-ZXOC6HG5.js +5 -0
  23. package/dist/cli-bundle/chunks/{register-list-query-OJ6ZXKV4.js → register-list-query-HAUXVUPY.js} +8 -8
  24. package/dist/cli-bundle/chunks/register-mutation-7Y5U7ABT.js +20 -0
  25. package/dist/cli-bundle/chunks/register-operations-EQX3DLAZ.js +2 -0
  26. package/dist/cli-bundle/chunks/{register-setup-S3KT2LTH.js → register-setup-NOCOOWQY.js} +2 -2
  27. package/dist/cli-bundle/focused-chunks/{chunk-34SX654S.js → chunk-23FTGO3W.js} +2 -2
  28. package/dist/cli-bundle/focused-chunks/{chunk-2COZ67XT.js → chunk-2DL3MRTD.js} +2 -2
  29. package/dist/cli-bundle/focused-chunks/chunk-3AYKXMYX.js +2 -0
  30. package/dist/cli-bundle/focused-chunks/chunk-4AHEC74N.js +2 -0
  31. package/dist/cli-bundle/focused-chunks/{chunk-7UN6BHHO.js → chunk-4H5IA6AV.js} +2 -2
  32. package/dist/cli-bundle/focused-chunks/chunk-4SV3ZKG3.js +16 -0
  33. package/dist/cli-bundle/focused-chunks/chunk-55BIB6DV.js +2 -0
  34. package/dist/cli-bundle/focused-chunks/chunk-6JW6Z2P5.js +8 -0
  35. package/dist/cli-bundle/focused-chunks/{chunk-IW43E4XL.js → chunk-BKPIY34S.js} +2 -2
  36. package/dist/cli-bundle/focused-chunks/chunk-D4PIWE6D.js +2 -0
  37. package/dist/cli-bundle/focused-chunks/{chunk-KR5RVXLQ.js → chunk-DPO7TEFX.js} +29 -29
  38. package/dist/cli-bundle/focused-chunks/{chunk-JMVA4HKR.js → chunk-E3KCL7AY.js} +2 -2
  39. package/dist/cli-bundle/focused-chunks/chunk-ERAAFLPS.js +153 -0
  40. package/dist/cli-bundle/focused-chunks/{chunk-RIIN5V4N.js → chunk-F6E4JZKG.js} +2 -2
  41. package/dist/cli-bundle/focused-chunks/chunk-FPSYO5ZG.js +18 -0
  42. package/dist/cli-bundle/focused-chunks/{chunk-M6RPIXKC.js → chunk-J5EKAIVD.js} +2 -2
  43. package/dist/cli-bundle/focused-chunks/{chunk-2EXI2DKR.js → chunk-KDH5OX3D.js} +2 -2
  44. package/dist/cli-bundle/focused-chunks/chunk-OJ3LVVIS.js +2 -0
  45. package/dist/cli-bundle/focused-chunks/{chunk-DZGAHZZV.js → chunk-TL5M2PAY.js} +2 -2
  46. package/dist/cli-bundle/focused-chunks/{chunk-75774JWP.js → chunk-UDAZWT25.js} +2 -2
  47. package/dist/cli-bundle/focused-chunks/chunk-VABB4L5Y.js +17 -0
  48. package/dist/cli-bundle/main.js +13 -13
  49. package/dist/cli-bundle/sdk-authoring.js +1 -1
  50. package/dist/cli-bundle/sdk-contracts.js +1 -1
  51. package/dist/cli-bundle/sdk-core.js +41 -39
  52. package/dist/cli-bundle/sdk-governance.js +1 -1
  53. package/dist/cli-bundle/sdk-graph.js +1 -1
  54. package/dist/cli-bundle/sdk-merge.js +1 -1
  55. package/dist/cli-bundle/sdk-query.js +1 -1
  56. package/dist/cli-bundle/sdk-runtime.js +1 -1
  57. package/dist/cli-bundle/sdk-testing.js +1 -1
  58. package/dist/cli-bundle/sdk.js +2 -2
  59. package/dist/core/session/session-state.d.ts +47 -0
  60. package/dist/core/session/session-state.js +207 -6
  61. package/dist/core/shared/author.d.ts +7 -1
  62. package/dist/core/shared/author.js +66 -46
  63. package/dist/core/shared/errors.d.ts +8 -0
  64. package/dist/core/shared/errors.js +2 -2
  65. package/dist/sdk/agent/refusal-reachability.d.ts +40 -0
  66. package/dist/sdk/agent/refusal-reachability.js +72 -0
  67. package/dist/sdk/agent/subcommand-recovery.d.ts +40 -0
  68. package/dist/sdk/agent/subcommand-recovery.js +84 -0
  69. package/dist/sdk/cli-bootstrap.d.ts +8 -0
  70. package/dist/sdk/cli-bootstrap.js +7 -7
  71. package/dist/sdk/cli-contracts/completeness.js +13 -3
  72. package/dist/sdk/cli-contracts/enum-contracts.d.ts +1 -1
  73. package/dist/sdk/cli-contracts/enum-contracts.js +3 -2
  74. package/dist/sdk/cli-contracts/flag-contracts.d.ts +2 -0
  75. package/dist/sdk/cli-contracts/flag-contracts.js +17 -2
  76. package/dist/sdk/cli-contracts/runtime-contracts.js +4 -3
  77. package/dist/sdk/cli-contracts/schemas/assurance-definition.d.ts +513 -0
  78. package/dist/sdk/cli-contracts/schemas/assurance-definition.js +251 -0
  79. package/dist/sdk/cli-contracts/tool-parameter-tables.js +79 -2
  80. package/dist/sdk/cli-contracts/tool-schema.d.ts +2 -2
  81. package/dist/sdk/cli-contracts/tool-schema.js +34 -4
  82. package/dist/sdk/cli-contracts.d.ts +1 -1
  83. package/dist/sdk/cli-contracts.js +3 -3
  84. package/dist/sdk/completion.js +9 -3
  85. package/dist/sdk/config.js +9 -3
  86. package/dist/sdk/context/semantic-session-attribution.d.ts +32 -0
  87. package/dist/sdk/context/semantic-session-attribution.js +83 -0
  88. package/dist/sdk/core-governance.d.ts +3 -1
  89. package/dist/sdk/core-governance.js +5 -3
  90. package/dist/sdk/core.d.ts +1 -1
  91. package/dist/sdk/core.js +2 -2
  92. package/dist/sdk/error-code-catalog.d.ts +13 -0
  93. package/dist/sdk/error-code-catalog.js +35 -2
  94. package/dist/sdk/extension.js +18 -17
  95. package/dist/sdk/files.d.ts +11 -0
  96. package/dist/sdk/files.js +82 -24
  97. package/dist/sdk/generated-error-code-catalog.js +32 -13
  98. package/dist/sdk/governance/assurance-action-contracts.d.ts +7 -0
  99. package/dist/sdk/governance/assurance-action-contracts.js +5 -0
  100. package/dist/sdk/governance/assurance-action.d.ts +70 -0
  101. package/dist/sdk/governance/assurance-action.js +198 -0
  102. package/dist/sdk/governance/assurance-limits.d.ts +7 -0
  103. package/dist/sdk/governance/assurance-limits.js +11 -0
  104. package/dist/sdk/governance/assurance-runtime.d.ts +20 -0
  105. package/dist/sdk/governance/assurance-runtime.js +131 -0
  106. package/dist/sdk/governance/assurance.d.ts +432 -0
  107. package/dist/sdk/governance/assurance.js +689 -0
  108. package/dist/sdk/graph/run.js +8 -3
  109. package/dist/sdk/index.d.ts +6 -1
  110. package/dist/sdk/index.js +8 -3
  111. package/dist/sdk/lifecycle/claim.js +18 -3
  112. package/dist/sdk/lifecycle/focus.js +13 -3
  113. package/dist/sdk/lifecycle/plan.js +8 -3
  114. package/dist/sdk/provenance.d.ts +38 -0
  115. package/dist/sdk/provenance.js +64 -2
  116. package/dist/sdk/query/context.js +19 -8
  117. package/dist/sdk/runtime-extended-actions.js +22 -5
  118. package/dist/sdk/runtime-primitives.d.ts +2 -0
  119. package/dist/sdk/runtime-primitives.js +4 -2
  120. package/dist/sdk/runtime.d.ts +4 -0
  121. package/dist/sdk/runtime.js +31 -27
  122. package/dist/sdk/telemetry.js +7 -4
  123. package/dist/sdk/traceability/runtime-files-lookup.d.ts +8 -0
  124. package/dist/sdk/traceability/runtime-files-lookup.js +33 -0
  125. package/dist/sdk/traceability/source-traceability.d.ts +102 -0
  126. package/dist/sdk/traceability/source-traceability.js +293 -0
  127. package/dist/types.d.ts +8 -2
  128. package/dist/types.js +2 -2
  129. package/docs/ASSURANCE.md +132 -0
  130. package/docs/README.md +1 -0
  131. package/docs/RELEASING.md +9 -5
  132. package/docs/SDK.md +12 -1
  133. package/docs/SDK_AGENT_SESSION_CONTEXT.md +40 -4
  134. package/docs/SDK_EVIDENCE_TRACEABILITY.md +39 -1
  135. package/docs/SDK_RUNTIME_BOUNDARIES.md +36 -1
  136. package/docs/TESTING.md +12 -9
  137. package/docs/generated/AGENT_COMMAND_SURFACE.md +1 -0
  138. package/marketplace.json +2 -2
  139. package/package.json +3 -3
  140. package/packages/pm-beads/package.json +1 -1
  141. package/packages/pm-calendar/package.json +1 -1
  142. package/packages/pm-command-kit/package.json +1 -1
  143. package/packages/pm-digital-twin/package.json +1 -1
  144. package/packages/pm-governance-audit/package.json +1 -1
  145. package/packages/pm-guide-shell/package.json +1 -1
  146. package/packages/pm-kanban/package.json +1 -1
  147. package/packages/pm-lifecycle-hooks/package.json +1 -1
  148. package/packages/pm-linked-test-adapters/package.json +1 -1
  149. package/packages/pm-search-advanced/package.json +1 -1
  150. package/packages/pm-templates/extensions/templates/index.ts +9 -3
  151. package/packages/pm-templates/package.json +1 -1
  152. package/packages/pm-todos/package.json +1 -1
  153. package/packages/pm-vcs/package.json +1 -1
  154. package/plugins/pm-claude/.claude-plugin/plugin.json +1 -1
  155. package/plugins/pm-codex/.codex-plugin/plugin.json +1 -1
  156. package/sdk/public-surface.json +840 -28
  157. package/dist/cli-bundle/chunks/chunk-2QYH4QMI.js +0 -30
  158. package/dist/cli-bundle/chunks/chunk-JUDU4RO4.js +0 -194
  159. package/dist/cli-bundle/chunks/chunk-JZSNADRR.js +0 -5
  160. package/dist/cli-bundle/chunks/chunk-MENWVGJW.js +0 -2
  161. package/dist/cli-bundle/chunks/chunk-S4EITGLA.js +0 -3
  162. package/dist/cli-bundle/chunks/chunk-TIGKWVLA.js +0 -13
  163. package/dist/cli-bundle/chunks/chunk-TSLDTJLQ.js +0 -2
  164. package/dist/cli-bundle/chunks/register-mutation-DKI7QC7O.js +0 -20
  165. package/dist/cli-bundle/chunks/register-operations-P5OGMT6I.js +0 -2
  166. package/dist/cli-bundle/focused-chunks/chunk-36FTZ2NT.js +0 -2
  167. package/dist/cli-bundle/focused-chunks/chunk-3CQECMKR.js +0 -16
  168. package/dist/cli-bundle/focused-chunks/chunk-CHIBMEZR.js +0 -8
  169. package/dist/cli-bundle/focused-chunks/chunk-FF4MNAYB.js +0 -153
  170. package/dist/cli-bundle/focused-chunks/chunk-GHTN2ILR.js +0 -2
  171. package/dist/cli-bundle/focused-chunks/chunk-I4YM2I7S.js +0 -2
  172. package/dist/cli-bundle/focused-chunks/chunk-IMDTEN7K.js +0 -2
  173. package/dist/cli-bundle/focused-chunks/chunk-KSNJG4KI.js +0 -16
  174. package/dist/cli-bundle/focused-chunks/chunk-MXYSIQ56.js +0 -18
  175. package/dist/cli-bundle/focused-chunks/chunk-RKWSCYYN.js +0 -2
@@ -0,0 +1,251 @@
1
+ /**
2
+ * @module sdk/cli-contracts/schemas/assurance-definition
3
+ *
4
+ * Defines the strict JSON Schema accepted by assurance definition mutations.
5
+ */
6
+
7
+ !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="13e7d51c-8464-578c-8780-5ddb6e029705")}catch(e){}}();
8
+ const ASSURANCE_VALUE_SCHEMA = {
9
+ oneOf: [{ type: "number" }, { type: "array", items: { type: "string" } }],
10
+ };
11
+ const ITEMS_FIELD_CONDITIONAL_SCHEMA = {
12
+ if: { required: ["field"] },
13
+ };
14
+ // Keep the JSON Schema keyword visible while avoiding unicorn/no-thenable,
15
+ // which intentionally rejects object literals with a `then` property.
16
+ Reflect.set(ITEMS_FIELD_CONDITIONAL_SCHEMA, "then", {
17
+ required: ["equals"],
18
+ });
19
+ /** JSON Schema for measurement, assertion, and gate assurance definitions. */
20
+ export const ASSURANCE_DEFINITION_SCHEMA = {
21
+ oneOf: [
22
+ {
23
+ type: "object",
24
+ additionalProperties: false,
25
+ required: ["id", "source"],
26
+ properties: {
27
+ id: { type: "string", minLength: 1 },
28
+ description: { type: "string" },
29
+ max_cost: { type: "number", minimum: 0 },
30
+ source: {
31
+ oneOf: [
32
+ {
33
+ type: "object",
34
+ additionalProperties: false,
35
+ required: ["kind"],
36
+ allOf: [ITEMS_FIELD_CONDITIONAL_SCHEMA],
37
+ properties: {
38
+ kind: { const: "items" },
39
+ statuses: { type: "array", items: { type: "string" } },
40
+ types: { type: "array", items: { type: "string" } },
41
+ tags: { type: "array", items: { type: "string" } },
42
+ field: { type: "string" },
43
+ equals: { type: ["string", "number", "boolean", "null"] },
44
+ },
45
+ },
46
+ {
47
+ type: "object",
48
+ additionalProperties: false,
49
+ required: ["kind", "dependency_kind"],
50
+ properties: {
51
+ kind: { const: "dependency_kind" },
52
+ dependency_kind: { type: "string", minLength: 1 },
53
+ },
54
+ },
55
+ {
56
+ type: "object",
57
+ required: ["kind", "operation", "field"],
58
+ properties: {
59
+ kind: { const: "graph" },
60
+ operation: { type: "string", minLength: 1 },
61
+ field: { type: "string", minLength: 1 },
62
+ parameters: { type: "object" },
63
+ },
64
+ additionalProperties: false,
65
+ },
66
+ ...["validate", "health"].map((kind) => ({
67
+ type: "object",
68
+ required: ["kind", "check", "field"],
69
+ properties: {
70
+ kind: { const: kind },
71
+ check: { type: "string", minLength: 1 },
72
+ field: { type: "string", minLength: 1 },
73
+ },
74
+ additionalProperties: false,
75
+ })),
76
+ {
77
+ type: "object",
78
+ additionalProperties: false,
79
+ required: ["kind"],
80
+ properties: {
81
+ kind: { const: "history" },
82
+ op: { type: "string" },
83
+ author: { type: "string" },
84
+ harness: { type: "string" },
85
+ model: { type: "string" },
86
+ },
87
+ },
88
+ {
89
+ type: "object",
90
+ additionalProperties: false,
91
+ required: ["kind", "link", "state"],
92
+ properties: {
93
+ kind: { const: "links" },
94
+ link: { enum: ["files", "tests", "docs"] },
95
+ state: { enum: ["present", "missing"] },
96
+ },
97
+ },
98
+ {
99
+ type: "object",
100
+ additionalProperties: false,
101
+ required: ["kind", "provider", "key"],
102
+ properties: {
103
+ kind: { const: "provider" },
104
+ provider: { type: "string", minLength: 1 },
105
+ key: { type: "string", minLength: 1 },
106
+ parameters: { type: "object" },
107
+ },
108
+ },
109
+ {
110
+ type: "object",
111
+ additionalProperties: false,
112
+ required: ["kind", "expression"],
113
+ properties: {
114
+ kind: { const: "derived" },
115
+ expression: { type: "object", minProperties: 1 },
116
+ },
117
+ },
118
+ ],
119
+ },
120
+ },
121
+ },
122
+ {
123
+ type: "object",
124
+ additionalProperties: false,
125
+ required: [
126
+ "id",
127
+ "measurement_id",
128
+ "owner_item_id",
129
+ "scope",
130
+ "enforcement",
131
+ "negative_control",
132
+ ],
133
+ oneOf: [
134
+ { required: ["ceiling"] },
135
+ { required: ["floor"] },
136
+ { required: ["equals"] },
137
+ { required: ["zero"] },
138
+ { required: ["monotone_nondecreasing"] },
139
+ { required: ["monotone_nonincreasing"] },
140
+ { required: ["subset_of"] },
141
+ ],
142
+ allOf: [
143
+ {
144
+ oneOf: [
145
+ {
146
+ not: {
147
+ required: ["lifetime"],
148
+ properties: { lifetime: { const: "retire" } },
149
+ },
150
+ },
151
+ {
152
+ required: ["lifetime", "retire_reason"],
153
+ properties: {
154
+ lifetime: { const: "retire" },
155
+ retire_reason: { type: "string", minLength: 1 },
156
+ },
157
+ },
158
+ ],
159
+ },
160
+ ],
161
+ properties: {
162
+ id: { type: "string", minLength: 1 },
163
+ measurement_id: { type: "string", minLength: 1 },
164
+ owner_item_id: { type: "string", minLength: 1 },
165
+ scope: {
166
+ oneOf: [
167
+ {
168
+ type: "object",
169
+ additionalProperties: false,
170
+ required: ["kind"],
171
+ properties: { kind: { enum: ["all", "active"] } },
172
+ },
173
+ {
174
+ type: "object",
175
+ additionalProperties: false,
176
+ required: ["kind", "measurement_id"],
177
+ properties: {
178
+ kind: { const: "filter" },
179
+ measurement_id: { type: "string", minLength: 1 },
180
+ },
181
+ },
182
+ ],
183
+ },
184
+ ceiling: { type: "number" },
185
+ floor: { type: "number" },
186
+ equals: ASSURANCE_VALUE_SCHEMA,
187
+ zero: { const: true },
188
+ monotone_nondecreasing: { type: "number" },
189
+ monotone_nonincreasing: { type: "number" },
190
+ subset_of: { type: "array", items: { type: "string" } },
191
+ lifetime: { enum: ["hold", "retire"] },
192
+ retire_reason: { type: "string", minLength: 1 },
193
+ enforcement: { enum: ["block", "warn", "observe"] },
194
+ authorization_decision: { type: "string", minLength: 1 },
195
+ negative_control: {
196
+ type: "object",
197
+ additionalProperties: false,
198
+ required: ["cases"],
199
+ properties: {
200
+ cases: {
201
+ type: "array",
202
+ minItems: 2,
203
+ items: {
204
+ type: "object",
205
+ additionalProperties: false,
206
+ required: ["observed", "expected"],
207
+ properties: {
208
+ observed: ASSURANCE_VALUE_SCHEMA,
209
+ expected: { enum: ["pass", "fail"] },
210
+ },
211
+ },
212
+ },
213
+ },
214
+ },
215
+ },
216
+ },
217
+ {
218
+ type: "object",
219
+ additionalProperties: false,
220
+ required: ["id", "assertion_ids", "triggers"],
221
+ properties: {
222
+ id: { type: "string", minLength: 1 },
223
+ description: { type: "string" },
224
+ assertion_ids: {
225
+ type: "array",
226
+ minItems: 1,
227
+ items: { type: "string", minLength: 1 },
228
+ },
229
+ triggers: {
230
+ type: "array",
231
+ minItems: 1,
232
+ items: {
233
+ enum: [
234
+ "pre-commit",
235
+ "pre-push",
236
+ "pre-merge",
237
+ "ci",
238
+ "pre-release",
239
+ "post-release",
240
+ "scheduled",
241
+ "on-claim",
242
+ "on-close",
243
+ ],
244
+ },
245
+ },
246
+ },
247
+ },
248
+ ],
249
+ };
250
+ //# sourceMappingURL=assurance-definition.js.map
251
+ //# debugId=13e7d51c-8464-578c-8780-5ddb6e029705
@@ -4,9 +4,10 @@
4
4
  * Defines SDK command-contract metadata for Tool Parameter Tables.
5
5
  */
6
6
 
7
- !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="6e0b4ff7-5aca-562b-b36c-c0c53987138d")}catch(e){}}();
7
+ !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="28d82e94-0359-5ae8-87f1-145f412df35e")}catch(e){}}();
8
8
  import { PLAN_HARNESS_VALUES, PLAN_MODE_VALUES, PLAN_STEP_LINK_KIND_VALUES, PLAN_STEP_STATUS_VALUES, } from "../../types/index.js";
9
9
  import { PM_READ_OUTPUT_SESSION_MAX_SEEN_ITEM_IDS } from "../read-output-session.js";
10
+ import { ASSURANCE_DEFINITION_SCHEMA } from "./schemas/assurance-definition.js";
10
11
  /** Public contract for pm tool parameter properties, shared by SDK and presentation-layer consumers. */
11
12
  export const PM_TOOL_PARAMETER_PROPERTIES = {
12
13
  json: { type: "boolean", default: true },
@@ -492,6 +493,23 @@ export const PM_TOOL_PARAMETER_PROPERTIES = {
492
493
  sum: { type: "string" },
493
494
  avg: { type: "string" },
494
495
  tree: { type: "boolean" },
496
+ treeId: { type: "string", minLength: 1 },
497
+ definition: { type: "object" },
498
+ trigger: {
499
+ type: "string",
500
+ enum: [
501
+ "pre-commit",
502
+ "pre-push",
503
+ "pre-merge",
504
+ "ci",
505
+ "pre-release",
506
+ "post-release",
507
+ "scheduled",
508
+ "on-claim",
509
+ "on-close",
510
+ ],
511
+ },
512
+ gate: { type: "string", minLength: 1 },
495
513
  treeDepth: { anyOf: [{ type: "string" }, { type: "number" }] },
496
514
  includeUnparented: { type: "boolean" },
497
515
  gcScope: {
@@ -548,6 +566,9 @@ export const PM_TOOL_PARAMETER_PROPERTIES = {
548
566
  apply: { type: "boolean" },
549
567
  discoveryNote: { type: "string" },
550
568
  lookupPath: { type: "array", items: { type: "string" } },
569
+ explain: { type: "boolean" },
570
+ lines: { type: "string", pattern: "^[1-9]\\d*:[1-9]\\d*$" },
571
+ decisionDepth: { type: "integer", minimum: 1, maximum: 32 },
551
572
  // GH-170 (pm-pfnx): single-string note for files/docs add batches (the shared
552
573
  // `note` key below is the array-typed create/update note seed).
553
574
  addNote: { type: "string" },
@@ -610,6 +631,18 @@ export const PM_TOOL_PARAMETER_PROPERTIES = {
610
631
  };
611
632
  /** Per-action property overrides for parameters whose transport shape differs from their shared default. */
612
633
  export const PM_TOOL_ACTION_SCOPED_PARAMETER_PROPERTIES = {
634
+ assurance: {
635
+ definition: ASSURANCE_DEFINITION_SCHEMA,
636
+ kind: {
637
+ type: "string",
638
+ enum: ["measurement", "assertion", "gate"],
639
+ },
640
+ subcommand: {
641
+ type: "string",
642
+ enum: ["list", "show", "put", "remove", "run", "verdicts"],
643
+ },
644
+ limit: { type: "integer", minimum: 1, maximum: 1000 },
645
+ },
613
646
  activity: {
614
647
  harness: {
615
648
  anyOf: [{ type: "string" }, { type: "array", items: { type: "string" } }],
@@ -912,6 +945,21 @@ export const PM_TOOL_PARAMETER_METADATA = {
912
945
  description: "Item identifier for read or mutation actions.",
913
946
  examples: ["pm-a1b2"],
914
947
  },
948
+ treeId: {
949
+ description: "Commit, tree, snapshot, or immutable workspace identity judged by an assurance gate.",
950
+ examples: ["0123456789abcdef", "release-candidate-3"],
951
+ },
952
+ definition: {
953
+ description: "Structured measurement, assertion, or gate declaration used by assurance put.",
954
+ },
955
+ trigger: {
956
+ description: "Lifecycle trigger used to evaluate an assurance gate.",
957
+ examples: ["ci", "pre-release"],
958
+ },
959
+ gate: {
960
+ description: "Stable assurance gate id used to filter durable verdict history.",
961
+ examples: ["release-readiness"],
962
+ },
915
963
  runId: {
916
964
  description: "Background test run identifier.",
917
965
  examples: ["tr-kq9x3f-93acde"],
@@ -1164,6 +1212,17 @@ export const PM_TOOL_PARAMETER_METADATA = {
1164
1212
  description: "One or more source paths whose referencing pm items should be returned by files lookup.",
1165
1213
  examples: [["src/sdk/files.ts"], ["README.md", "docs/SDK.md"]],
1166
1214
  },
1215
+ explain: {
1216
+ description: "Include ranked linked-file, rationale, and governing-decision evidence for a files lookup.",
1217
+ },
1218
+ lines: {
1219
+ description: "Inclusive start:end source-line range for Git contribution attribution; requires one lookup path.",
1220
+ examples: ["10:24"],
1221
+ },
1222
+ decisionDepth: {
1223
+ description: "Maximum typed relationship depth searched for a governing Decision during files lookup.",
1224
+ examples: [8],
1225
+ },
1167
1226
  clearComments: {
1168
1227
  description: "When true, clear item comments.",
1169
1228
  },
@@ -1769,6 +1828,24 @@ export const PM_TOOL_PARAMETER_METADATA = {
1769
1828
  * because its single `name` property must cover every action at once.
1770
1829
  */
1771
1830
  export const PM_TOOL_ACTION_SCOPED_PARAMETER_METADATA = {
1831
+ assurance: {
1832
+ subcommand: {
1833
+ description: "Assurance operation: list, show, put, remove, run, or verdicts.",
1834
+ examples: ["list", "run", "verdicts"],
1835
+ },
1836
+ kind: {
1837
+ description: "Assurance declaration kind for registry operations: measurement, assertion, or gate.",
1838
+ examples: ["measurement", "assertion", "gate"],
1839
+ },
1840
+ id: {
1841
+ description: "Stable assurance declaration id or gate id, depending on subcommand.",
1842
+ examples: ["active-issues", "release-readiness"],
1843
+ },
1844
+ limit: {
1845
+ description: "Maximum number of newest assurance verdicts returned.",
1846
+ examples: [10, 25],
1847
+ },
1848
+ },
1772
1849
  update: {
1773
1850
  acceptanceCriteria: {
1774
1851
  description: "Complete acceptance-criteria replacement text. Use removeAc plus addAc together for an atomic one-entry repair that preserves unrelated criteria.",
@@ -1922,4 +1999,4 @@ export const PM_TOOL_ACTION_SCOPED_PARAMETER_METADATA = {
1922
1999
  },
1923
2000
  };
1924
2001
  //# sourceMappingURL=tool-parameter-tables.js.map
1925
- //# debugId=6e0b4ff7-5aca-562b-b36c-c0c53987138d
2002
+ //# debugId=28d82e94-0359-5ae8-87f1-145f412df35e
@@ -91,14 +91,14 @@ export interface PmActionToolInputSchemaOptions {
91
91
  */
92
92
  export declare function buildPmActionToolInputSchema(action: PmToolAction, options?: PmActionToolInputSchemaOptions): Record<string, unknown>;
93
93
  /** Canonical version of the action-scoped strict MCP tool-parameters schema (`PM_TOOL_PARAMETERS_SCHEMA`). Exported as the single source of truth so the MCP server, the `pm contracts` command, SDK consumers, and the contract tests all bind to one constant instead of re-typing the `"4.0.2"` literal (pm-r9sz). Bump the patch/minor for additive, backward-compatible schema changes; bump the MAJOR for breaking changes — the major also drives the `$id` `tool-parameters-v{major}` slug, so the two never drift. */
94
- export declare const PM_TOOL_PARAMETERS_SCHEMA_VERSION: "4.4.1";
94
+ export declare const PM_TOOL_PARAMETERS_SCHEMA_VERSION: "4.6.0";
95
95
  /**
96
96
  * Major component of {@link PM_TOOL_PARAMETERS_SCHEMA_VERSION}, used to build the
97
97
  * schema `$id` slug so a breaking version bump renames the document in lockstep.
98
98
  */
99
99
  export declare const PM_TOOL_PARAMETERS_SCHEMA_MAJOR: string;
100
100
  /** Version of the provider-compatible flat tool-parameters schema (`PM_PROVIDER_TOOL_PARAMETERS_SCHEMA`). Tracked separately from the strict schema because the flat projection evolves independently. */
101
- export declare const PM_PROVIDER_TOOL_PARAMETERS_SCHEMA_VERSION: "1.1.0";
101
+ export declare const PM_PROVIDER_TOOL_PARAMETERS_SCHEMA_VERSION: "1.3.0";
102
102
  /** Public contract for pm tool parameters schema, shared by SDK and presentation-layer consumers. */
103
103
  export declare const PM_TOOL_PARAMETERS_SCHEMA: Record<string, unknown>;
104
104
  declare function toProviderCompatibleParameterDefinition(key: string, definition: unknown): Record<string, unknown>;
@@ -7,7 +7,7 @@
7
7
  * consumers from a single source of truth.
8
8
  */
9
9
 
10
- !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="4ce3417b-2ccc-5304-8275-30f6eb749db8")}catch(e){}}();
10
+ !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="9882d78a-8742-5d50-b345-debe47322b65")}catch(e){}}();
11
11
  import { normalizeUniqueStringList } from "./string-lists.js";
12
12
  import { PM_TOOL_ACTIONS } from "./enum-contracts.js";
13
13
  import { TOOL_CREATE_OPTION_CONTRACTS, TOOL_SHARED_CREATE_UPDATE_OPTION_CONTRACTS, TOOL_UPDATE_OPTION_CONTRACTS, TOOL_UPDATE_MANY_FILTER_OPTION_CONTRACTS, TOOL_CONTEXT_OPTION_CONTRACTS, TOOL_ACTIVITY_OPTION_CONTRACTS, TOOL_LIST_FILTER_OPTION_CONTRACTS, TOOL_AGGREGATE_OPTION_CONTRACTS, TOOL_SEARCH_FILTER_OPTION_CONTRACTS, TOOL_CLOSE_MANY_FILTER_OPTION_CONTRACTS, } from "./tool-option-contracts.js";
@@ -82,6 +82,7 @@ const PM_TOOL_ACTION_MUTATION_PARAMETER_KEYS = {
82
82
  append: ["fullChangedFields"],
83
83
  "update-many": ["fullChangedFields"],
84
84
  "close-many": ["fullChangedFields"],
85
+ assurance: ["fullChangedFields", "idOnly"],
85
86
  };
86
87
  /** Create-compatible metadata parameters reused by Plan materialization and CLI registration. */
87
88
  export const PLAN_CREATE_METADATA_PARAMETER_KEYS = [
@@ -889,6 +890,9 @@ const PM_TOOL_ACTION_SCHEMA_CONTRACTS = {
889
890
  "offset",
890
891
  "noTruncate",
891
892
  "strictRead",
893
+ "explain",
894
+ "lines",
895
+ "decisionDepth",
892
896
  ...AUTHOR_MESSAGE_FORCE_PARAMETER_KEYS,
893
897
  ],
894
898
  anyOfRequired: [["id"], ["lookupPath"]],
@@ -1099,6 +1103,32 @@ const PM_TOOL_ACTION_SCHEMA_CONTRACTS = {
1099
1103
  "full",
1100
1104
  ],
1101
1105
  },
1106
+ assurance: {
1107
+ required: ["subcommand"],
1108
+ optional: [
1109
+ "kind",
1110
+ "id",
1111
+ "definition",
1112
+ "trigger",
1113
+ "treeId",
1114
+ "gate",
1115
+ "limit",
1116
+ "dryRun",
1117
+ "author",
1118
+ "message",
1119
+ ],
1120
+ conditionalRequired: [
1121
+ { property: "subcommand", value: "list", required: ["kind"] },
1122
+ { property: "subcommand", value: "show", required: ["kind", "id"] },
1123
+ {
1124
+ property: "subcommand",
1125
+ value: "put",
1126
+ required: ["kind", "id", "definition"],
1127
+ },
1128
+ { property: "subcommand", value: "remove", required: ["kind", "id"] },
1129
+ { property: "subcommand", value: "run", required: ["id", "trigger"] },
1130
+ ],
1131
+ },
1102
1132
  gc: { optional: ["dryRun", "gcScope"] },
1103
1133
  contracts: {
1104
1134
  optional: [
@@ -1443,14 +1473,14 @@ function createLazyContractSchema(build) {
1443
1473
  });
1444
1474
  }
1445
1475
  /** Canonical version of the action-scoped strict MCP tool-parameters schema (`PM_TOOL_PARAMETERS_SCHEMA`). Exported as the single source of truth so the MCP server, the `pm contracts` command, SDK consumers, and the contract tests all bind to one constant instead of re-typing the `"4.0.2"` literal (pm-r9sz). Bump the patch/minor for additive, backward-compatible schema changes; bump the MAJOR for breaking changes — the major also drives the `$id` `tool-parameters-v{major}` slug, so the two never drift. */
1446
- export const PM_TOOL_PARAMETERS_SCHEMA_VERSION = "4.4.1";
1476
+ export const PM_TOOL_PARAMETERS_SCHEMA_VERSION = "4.6.0";
1447
1477
  /**
1448
1478
  * Major component of {@link PM_TOOL_PARAMETERS_SCHEMA_VERSION}, used to build the
1449
1479
  * schema `$id` slug so a breaking version bump renames the document in lockstep.
1450
1480
  */
1451
1481
  export const PM_TOOL_PARAMETERS_SCHEMA_MAJOR = PM_TOOL_PARAMETERS_SCHEMA_VERSION.split(".")[0];
1452
1482
  /** Version of the provider-compatible flat tool-parameters schema (`PM_PROVIDER_TOOL_PARAMETERS_SCHEMA`). Tracked separately from the strict schema because the flat projection evolves independently. */
1453
- export const PM_PROVIDER_TOOL_PARAMETERS_SCHEMA_VERSION = "1.1.0";
1483
+ export const PM_PROVIDER_TOOL_PARAMETERS_SCHEMA_VERSION = "1.3.0";
1454
1484
  /** Public contract for pm tool parameters schema, shared by SDK and presentation-layer consumers. */
1455
1485
  export const PM_TOOL_PARAMETERS_SCHEMA = createLazyContractSchema(() => ({
1456
1486
  $schema: "https://json-schema.org/draft/2020-12/schema",
@@ -1525,4 +1555,4 @@ export const _testOnlyCliContracts = {
1525
1555
  withFlagAliasMetadata,
1526
1556
  };
1527
1557
  //# sourceMappingURL=tool-schema.js.map
1528
- //# debugId=4ce3417b-2ccc-5304-8275-30f6eb749db8
1558
+ //# debugId=9882d78a-8742-5d50-b345-debe47322b65
@@ -19,7 +19,7 @@ export type { PmExtensionCapabilityContract, PmExtensionServiceNameContract, PmE
19
19
  export { TOOL_LIST_FILTER_OPTION_CONTRACTS, TOOL_AGGREGATE_OPTION_CONTRACTS, TOOL_SEARCH_FILTER_OPTION_CONTRACTS, TOOL_SHARED_CREATE_UPDATE_OPTION_CONTRACTS, TOOL_CREATE_OPTION_CONTRACTS, TOOL_UPDATE_OPTION_CONTRACTS, TOOL_UPDATE_MANY_FILTER_OPTION_CONTRACTS, TOOL_CLOSE_MANY_FILTER_OPTION_CONTRACTS, TOOL_CALENDAR_OPTION_CONTRACTS, TOOL_ACTIVITY_OPTION_CONTRACTS, TOOL_CONTEXT_OPTION_CONTRACTS, TOOL_DEPS_OPTION_CONTRACTS, TOOL_GRAPH_OPTION_CONTRACTS, TOOL_BULK_MUTATION_FILTER_OPTION_CONTRACT_SOURCE, TOOL_CREATE_OPTION_CONTRACT_SOURCE, TOOL_SHARED_CREATE_UPDATE_OPTION_CONTRACT_SOURCE, TOOL_UPDATE_OPTION_CONTRACT_SOURCE, } from "./cli-contracts/tool-option-contracts.js";
20
20
  export type { OptionsFromContracts, PmBulkMutationControlOptions, PmBulkMutationFilterOptions, PmCloseActionOptions, PmCloseManyActionOptions, PmCreateActionOptions, PmMutationAttributionOptions, PmOptionScalar, PmUpdateActionOptions, PmUpdateManyActionOptions, } from "./cli-contracts/typed-action-inputs.js";
21
21
  export type { CliFlagContract, ToolOptionFlagContract, } from "./cli-contracts/flag-contracts.js";
22
- export { withFlagAliasMetadata, compactFlagAliasContracts, SUBCOMMAND_GLOBAL_FLAG_CONTRACTS, GLOBAL_FLAG_CONTRACTS, LIST_FILTER_FLAG_CONTRACTS, AGGREGATE_FLAG_CONTRACTS, COMMENTS_FLAG_CONTRACTS, NOTES_FLAG_CONTRACTS, LEARNINGS_FLAG_CONTRACTS, FILES_FLAG_CONTRACTS, DOCS_FLAG_CONTRACTS, HISTORY_FLAG_CONTRACTS, HISTORY_REDACT_FLAG_CONTRACTS, HISTORY_REPAIR_FLAG_CONTRACTS, HISTORY_AUTHOR_ACKNOWLEDGE_FLAG_CONTRACTS, HISTORY_COMPACT_FLAG_CONTRACTS, MERGE_FLAG_CONTRACTS, SCHEMA_FLAG_CONTRACTS, PROFILE_FLAG_CONTRACTS, PLAN_FLAG_CONTRACTS, INIT_FLAG_CONTRACTS, CONFIG_FLAG_CONTRACTS, EXTENSION_FLAG_CONTRACTS, EXTENSION_SCOPE_FLAG_CONTRACTS, EXTENSION_INIT_FLAG_CONTRACTS, EXTENSION_MIGRATE_FLAG_CONTRACTS, PACKAGE_FLAG_CONTRACTS, PACKAGE_INIT_FLAG_CONTRACTS, EXTENSION_INSTALL_FLAG_CONTRACTS, EXTENSION_UNINSTALL_FLAG_CONTRACTS, EXTENSION_EXPLORE_FLAG_CONTRACTS, EXTENSION_DESCRIBE_FLAG_CONTRACTS, EXTENSION_ADOPT_ALL_FLAG_CONTRACTS, EXTENSION_ACTIVATE_FLAG_CONTRACTS, EXTENSION_DEACTIVATE_FLAG_CONTRACTS, EXTENSION_MANAGE_FLAG_CONTRACTS, EXTENSION_RELOAD_FLAG_CONTRACTS, EXTENSION_DOCTOR_FLAG_CONTRACTS, EXTENSION_CATALOG_FLAG_CONTRACTS, EXTENSION_ADOPT_FLAG_CONTRACTS, INSTALL_FLAG_CONTRACTS, UPGRADE_FLAG_CONTRACTS, REINDEX_FLAG_CONTRACTS, CLOSE_FLAG_CONTRACTS, CLOSE_MANY_FLAG_CONTRACTS, APPEND_FLAG_CONTRACTS, CLAIM_FLAG_CONTRACTS, RESTORE_FLAG_CONTRACTS, DELETE_FLAG_CONTRACTS, RELEASE_FLAG_CONTRACTS, START_TASK_FLAG_CONTRACTS, PAUSE_TASK_FLAG_CONTRACTS, CLOSE_TASK_FLAG_CONTRACTS, MEET_FLAG_CONTRACTS, EVENT_FLAG_CONTRACTS, EVENTS_FLAG_CONTRACTS, REMIND_FLAG_CONTRACTS, TEST_FLAG_CONTRACTS, TEST_ALL_FLAG_CONTRACTS, TELEMETRY_FLAG_CONTRACTS, TEST_RUNS_FLAG_CONTRACTS, GC_FLAG_CONTRACTS, STATS_FLAG_CONTRACTS, DUPLICATES_FLAG_CONTRACTS, HEALTH_FLAG_CONTRACTS, VALIDATE_FLAG_CONTRACTS, CREATE_FLAG_CONTRACTS, ITEM_COMPLETE_FLAG_CONTRACTS, ITEM_MUTATE_FLAG_CONTRACTS, COPY_FLAG_CONTRACTS, FOCUS_FLAG_CONTRACTS, UPDATE_FLAG_CONTRACTS, UPDATE_MANY_FLAG_CONTRACTS, CALENDAR_FLAG_CONTRACTS, ACTIVITY_FLAG_CONTRACTS, CONTEXT_FLAG_CONTRACTS, GET_FLAG_CONTRACTS, GUIDE_FLAG_CONTRACTS, DEPS_FLAG_CONTRACTS, GRAPH_FLAG_CONTRACTS, EVAL_FLAG_CONTRACTS, WORKSPACE_FLAG_CONTRACTS, NEXT_FLAG_CONTRACTS, SEARCH_FLAG_CONTRACTS, CONTRACTS_FLAG_CONTRACTS, COMPLETION_FLAG_CONTRACTS, hasSubcommandFlagContractsForCommand, resolveSubcommandFlagContractsForCommand, toCompletionFlagString, } from "./cli-contracts/flag-contracts.js";
22
+ export { withFlagAliasMetadata, compactFlagAliasContracts, SUBCOMMAND_GLOBAL_FLAG_CONTRACTS, GLOBAL_FLAG_CONTRACTS, LIST_FILTER_FLAG_CONTRACTS, AGGREGATE_FLAG_CONTRACTS, COMMENTS_FLAG_CONTRACTS, NOTES_FLAG_CONTRACTS, LEARNINGS_FLAG_CONTRACTS, FILES_FLAG_CONTRACTS, DOCS_FLAG_CONTRACTS, HISTORY_FLAG_CONTRACTS, HISTORY_REDACT_FLAG_CONTRACTS, HISTORY_REPAIR_FLAG_CONTRACTS, HISTORY_AUTHOR_ACKNOWLEDGE_FLAG_CONTRACTS, HISTORY_COMPACT_FLAG_CONTRACTS, MERGE_FLAG_CONTRACTS, SCHEMA_FLAG_CONTRACTS, PROFILE_FLAG_CONTRACTS, PLAN_FLAG_CONTRACTS, INIT_FLAG_CONTRACTS, CONFIG_FLAG_CONTRACTS, EXTENSION_FLAG_CONTRACTS, EXTENSION_SCOPE_FLAG_CONTRACTS, EXTENSION_INIT_FLAG_CONTRACTS, EXTENSION_MIGRATE_FLAG_CONTRACTS, PACKAGE_FLAG_CONTRACTS, PACKAGE_INIT_FLAG_CONTRACTS, EXTENSION_INSTALL_FLAG_CONTRACTS, EXTENSION_UNINSTALL_FLAG_CONTRACTS, EXTENSION_EXPLORE_FLAG_CONTRACTS, EXTENSION_DESCRIBE_FLAG_CONTRACTS, EXTENSION_ADOPT_ALL_FLAG_CONTRACTS, EXTENSION_ACTIVATE_FLAG_CONTRACTS, EXTENSION_DEACTIVATE_FLAG_CONTRACTS, EXTENSION_MANAGE_FLAG_CONTRACTS, EXTENSION_RELOAD_FLAG_CONTRACTS, EXTENSION_DOCTOR_FLAG_CONTRACTS, EXTENSION_CATALOG_FLAG_CONTRACTS, EXTENSION_ADOPT_FLAG_CONTRACTS, INSTALL_FLAG_CONTRACTS, UPGRADE_FLAG_CONTRACTS, REINDEX_FLAG_CONTRACTS, CLOSE_FLAG_CONTRACTS, CLOSE_MANY_FLAG_CONTRACTS, APPEND_FLAG_CONTRACTS, CLAIM_FLAG_CONTRACTS, RESTORE_FLAG_CONTRACTS, DELETE_FLAG_CONTRACTS, RELEASE_FLAG_CONTRACTS, START_TASK_FLAG_CONTRACTS, PAUSE_TASK_FLAG_CONTRACTS, CLOSE_TASK_FLAG_CONTRACTS, MEET_FLAG_CONTRACTS, EVENT_FLAG_CONTRACTS, EVENTS_FLAG_CONTRACTS, REMIND_FLAG_CONTRACTS, TEST_FLAG_CONTRACTS, TEST_ALL_FLAG_CONTRACTS, TELEMETRY_FLAG_CONTRACTS, TEST_RUNS_FLAG_CONTRACTS, GC_FLAG_CONTRACTS, STATS_FLAG_CONTRACTS, DUPLICATES_FLAG_CONTRACTS, HEALTH_FLAG_CONTRACTS, VALIDATE_FLAG_CONTRACTS, ASSURANCE_FLAG_CONTRACTS, CREATE_FLAG_CONTRACTS, ITEM_COMPLETE_FLAG_CONTRACTS, ITEM_MUTATE_FLAG_CONTRACTS, COPY_FLAG_CONTRACTS, FOCUS_FLAG_CONTRACTS, UPDATE_FLAG_CONTRACTS, UPDATE_MANY_FLAG_CONTRACTS, CALENDAR_FLAG_CONTRACTS, ACTIVITY_FLAG_CONTRACTS, CONTEXT_FLAG_CONTRACTS, GET_FLAG_CONTRACTS, GUIDE_FLAG_CONTRACTS, DEPS_FLAG_CONTRACTS, GRAPH_FLAG_CONTRACTS, EVAL_FLAG_CONTRACTS, WORKSPACE_FLAG_CONTRACTS, NEXT_FLAG_CONTRACTS, SEARCH_FLAG_CONTRACTS, CONTRACTS_FLAG_CONTRACTS, COMPLETION_FLAG_CONTRACTS, hasSubcommandFlagContractsForCommand, resolveSubcommandFlagContractsForCommand, toCompletionFlagString, } from "./cli-contracts/flag-contracts.js";
23
23
  export type { PmActionSchemaContract } from "./cli-contracts/tool-schema.js";
24
24
  export { buildPmActionToolInputSchema, PM_TOOL_RESERVED_CUSTOM_FIELD_PROPERTIES, resolvePmToolCustomFieldCollision, CLOSE_ACTION_OPTION_KEYS, PLAN_CREATE_METADATA_PARAMETER_KEYS, PM_TOOL_ACTION_PARAMETER_CONTRACTS, PM_TOOL_PARAMETERS_SCHEMA_VERSION, PM_TOOL_PARAMETERS_SCHEMA_MAJOR, PM_PROVIDER_TOOL_PARAMETERS_SCHEMA_VERSION, PM_TOOL_PARAMETERS_SCHEMA, PM_PROVIDER_TOOL_PARAMETERS_SCHEMA, _testOnlyCliContracts, } from "./cli-contracts/tool-schema.js";
25
25
  export type { PmActionToolInputSchemaOptions, PmToolCustomFieldCollision, } from "./cli-contracts/tool-schema.js";
@@ -1,5 +1,5 @@
1
1
 
2
- !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="8071fd9d-649a-5fce-b342-84b11066d559")}catch(e){}}();
2
+ !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="969b5bd2-e7de-5db8-bef2-6748675a100c")}catch(e){}}();
3
3
  export { EXECUTABLE_COMMAND_ALIASES } from "./cli-contracts/command-aliases.js";
4
4
  export { ACTIVITY_COMMANDER_STRING_OPTION_CONTRACTS, CALENDAR_COMMANDER_STRING_OPTION_CONTRACTS, CONTEXT_COMMANDER_STRING_OPTION_CONTRACTS, LIST_COMMANDER_STRING_OPTION_CONTRACTS, NEXT_COMMANDER_STRING_OPTION_CONTRACTS, SEARCH_COMMANDER_STRING_OPTION_CONTRACTS, readFirstValueFromCommanderOptions, readFirstStringFromCommanderOptions, readStringArrayFromCommanderOptions, } from "./cli-contracts/commander-types.js";
5
5
  export { CREATE_COMMANDER_OPTION_REGISTRATION_CONTRACTS, CREATE_COMMANDER_REPEATABLE_OPTION_CONTRACTS, CREATE_COMMANDER_STRING_OPTION_CONTRACTS, UPDATE_COMMANDER_OPTION_REGISTRATION_CONTRACTS, UPDATE_COMMANDER_REPEATABLE_OPTION_CONTRACTS, UPDATE_COMMANDER_STRING_OPTION_CONTRACTS, } from "./cli-contracts/commander-mutation-options.js";
@@ -9,9 +9,9 @@ export { CREATE_COMMANDER_OPTION_REGISTRATION_CONTRACTS, CREATE_COMMANDER_REPEAT
9
9
  // keep importing everything from "./cli-contracts.js" unchanged.
10
10
  export { PM_EXTENSION_CAPABILITY_CONTRACTS, PM_EXTENSION_SERVICE_NAME_CONTRACTS, PM_EXTENSION_POLICY_MODE_CONTRACTS, PM_EXTENSION_TRUST_MODE_CONTRACTS, PM_EXTENSION_SANDBOX_PROFILE_CONTRACTS, PM_EXTENSION_POLICY_SURFACE_CONTRACTS, PM_CORE_COMMAND_NAMES, PM_CLI_ONLY_TOOL_ACTION_WAIVERS, PM_EXTENSION_PACKAGE_ACTION_SUBCOMMANDS, PM_TOOL_ACTIONS, analyzePmToolActionParity, isPmToolAction, isPmExtensionCapabilityContract, isPmExtensionServiceNameContract, isPmExtensionPolicyModeContract, isPmExtensionPolicySurfaceContract, } from "./cli-contracts/enum-contracts.js";
11
11
  export { TOOL_LIST_FILTER_OPTION_CONTRACTS, TOOL_AGGREGATE_OPTION_CONTRACTS, TOOL_SEARCH_FILTER_OPTION_CONTRACTS, TOOL_SHARED_CREATE_UPDATE_OPTION_CONTRACTS, TOOL_CREATE_OPTION_CONTRACTS, TOOL_UPDATE_OPTION_CONTRACTS, TOOL_UPDATE_MANY_FILTER_OPTION_CONTRACTS, TOOL_CLOSE_MANY_FILTER_OPTION_CONTRACTS, TOOL_CALENDAR_OPTION_CONTRACTS, TOOL_ACTIVITY_OPTION_CONTRACTS, TOOL_CONTEXT_OPTION_CONTRACTS, TOOL_DEPS_OPTION_CONTRACTS, TOOL_GRAPH_OPTION_CONTRACTS, TOOL_BULK_MUTATION_FILTER_OPTION_CONTRACT_SOURCE, TOOL_CREATE_OPTION_CONTRACT_SOURCE, TOOL_SHARED_CREATE_UPDATE_OPTION_CONTRACT_SOURCE, TOOL_UPDATE_OPTION_CONTRACT_SOURCE, } from "./cli-contracts/tool-option-contracts.js";
12
- export { withFlagAliasMetadata, compactFlagAliasContracts, SUBCOMMAND_GLOBAL_FLAG_CONTRACTS, GLOBAL_FLAG_CONTRACTS, LIST_FILTER_FLAG_CONTRACTS, AGGREGATE_FLAG_CONTRACTS, COMMENTS_FLAG_CONTRACTS, NOTES_FLAG_CONTRACTS, LEARNINGS_FLAG_CONTRACTS, FILES_FLAG_CONTRACTS, DOCS_FLAG_CONTRACTS, HISTORY_FLAG_CONTRACTS, HISTORY_REDACT_FLAG_CONTRACTS, HISTORY_REPAIR_FLAG_CONTRACTS, HISTORY_AUTHOR_ACKNOWLEDGE_FLAG_CONTRACTS, HISTORY_COMPACT_FLAG_CONTRACTS, MERGE_FLAG_CONTRACTS, SCHEMA_FLAG_CONTRACTS, PROFILE_FLAG_CONTRACTS, PLAN_FLAG_CONTRACTS, INIT_FLAG_CONTRACTS, CONFIG_FLAG_CONTRACTS, EXTENSION_FLAG_CONTRACTS, EXTENSION_SCOPE_FLAG_CONTRACTS, EXTENSION_INIT_FLAG_CONTRACTS, EXTENSION_MIGRATE_FLAG_CONTRACTS, PACKAGE_FLAG_CONTRACTS, PACKAGE_INIT_FLAG_CONTRACTS, EXTENSION_INSTALL_FLAG_CONTRACTS, EXTENSION_UNINSTALL_FLAG_CONTRACTS, EXTENSION_EXPLORE_FLAG_CONTRACTS, EXTENSION_DESCRIBE_FLAG_CONTRACTS, EXTENSION_ADOPT_ALL_FLAG_CONTRACTS, EXTENSION_ACTIVATE_FLAG_CONTRACTS, EXTENSION_DEACTIVATE_FLAG_CONTRACTS, EXTENSION_MANAGE_FLAG_CONTRACTS, EXTENSION_RELOAD_FLAG_CONTRACTS, EXTENSION_DOCTOR_FLAG_CONTRACTS, EXTENSION_CATALOG_FLAG_CONTRACTS, EXTENSION_ADOPT_FLAG_CONTRACTS, INSTALL_FLAG_CONTRACTS, UPGRADE_FLAG_CONTRACTS, REINDEX_FLAG_CONTRACTS, CLOSE_FLAG_CONTRACTS, CLOSE_MANY_FLAG_CONTRACTS, APPEND_FLAG_CONTRACTS, CLAIM_FLAG_CONTRACTS, RESTORE_FLAG_CONTRACTS, DELETE_FLAG_CONTRACTS, RELEASE_FLAG_CONTRACTS, START_TASK_FLAG_CONTRACTS, PAUSE_TASK_FLAG_CONTRACTS, CLOSE_TASK_FLAG_CONTRACTS, MEET_FLAG_CONTRACTS, EVENT_FLAG_CONTRACTS, EVENTS_FLAG_CONTRACTS, REMIND_FLAG_CONTRACTS, TEST_FLAG_CONTRACTS, TEST_ALL_FLAG_CONTRACTS, TELEMETRY_FLAG_CONTRACTS, TEST_RUNS_FLAG_CONTRACTS, GC_FLAG_CONTRACTS, STATS_FLAG_CONTRACTS, DUPLICATES_FLAG_CONTRACTS, HEALTH_FLAG_CONTRACTS, VALIDATE_FLAG_CONTRACTS, CREATE_FLAG_CONTRACTS, ITEM_COMPLETE_FLAG_CONTRACTS, ITEM_MUTATE_FLAG_CONTRACTS, COPY_FLAG_CONTRACTS, FOCUS_FLAG_CONTRACTS, UPDATE_FLAG_CONTRACTS, UPDATE_MANY_FLAG_CONTRACTS, CALENDAR_FLAG_CONTRACTS, ACTIVITY_FLAG_CONTRACTS, CONTEXT_FLAG_CONTRACTS, GET_FLAG_CONTRACTS, GUIDE_FLAG_CONTRACTS, DEPS_FLAG_CONTRACTS, GRAPH_FLAG_CONTRACTS, EVAL_FLAG_CONTRACTS, WORKSPACE_FLAG_CONTRACTS, NEXT_FLAG_CONTRACTS, SEARCH_FLAG_CONTRACTS, CONTRACTS_FLAG_CONTRACTS, COMPLETION_FLAG_CONTRACTS, hasSubcommandFlagContractsForCommand, resolveSubcommandFlagContractsForCommand, toCompletionFlagString, } from "./cli-contracts/flag-contracts.js";
12
+ export { withFlagAliasMetadata, compactFlagAliasContracts, SUBCOMMAND_GLOBAL_FLAG_CONTRACTS, GLOBAL_FLAG_CONTRACTS, LIST_FILTER_FLAG_CONTRACTS, AGGREGATE_FLAG_CONTRACTS, COMMENTS_FLAG_CONTRACTS, NOTES_FLAG_CONTRACTS, LEARNINGS_FLAG_CONTRACTS, FILES_FLAG_CONTRACTS, DOCS_FLAG_CONTRACTS, HISTORY_FLAG_CONTRACTS, HISTORY_REDACT_FLAG_CONTRACTS, HISTORY_REPAIR_FLAG_CONTRACTS, HISTORY_AUTHOR_ACKNOWLEDGE_FLAG_CONTRACTS, HISTORY_COMPACT_FLAG_CONTRACTS, MERGE_FLAG_CONTRACTS, SCHEMA_FLAG_CONTRACTS, PROFILE_FLAG_CONTRACTS, PLAN_FLAG_CONTRACTS, INIT_FLAG_CONTRACTS, CONFIG_FLAG_CONTRACTS, EXTENSION_FLAG_CONTRACTS, EXTENSION_SCOPE_FLAG_CONTRACTS, EXTENSION_INIT_FLAG_CONTRACTS, EXTENSION_MIGRATE_FLAG_CONTRACTS, PACKAGE_FLAG_CONTRACTS, PACKAGE_INIT_FLAG_CONTRACTS, EXTENSION_INSTALL_FLAG_CONTRACTS, EXTENSION_UNINSTALL_FLAG_CONTRACTS, EXTENSION_EXPLORE_FLAG_CONTRACTS, EXTENSION_DESCRIBE_FLAG_CONTRACTS, EXTENSION_ADOPT_ALL_FLAG_CONTRACTS, EXTENSION_ACTIVATE_FLAG_CONTRACTS, EXTENSION_DEACTIVATE_FLAG_CONTRACTS, EXTENSION_MANAGE_FLAG_CONTRACTS, EXTENSION_RELOAD_FLAG_CONTRACTS, EXTENSION_DOCTOR_FLAG_CONTRACTS, EXTENSION_CATALOG_FLAG_CONTRACTS, EXTENSION_ADOPT_FLAG_CONTRACTS, INSTALL_FLAG_CONTRACTS, UPGRADE_FLAG_CONTRACTS, REINDEX_FLAG_CONTRACTS, CLOSE_FLAG_CONTRACTS, CLOSE_MANY_FLAG_CONTRACTS, APPEND_FLAG_CONTRACTS, CLAIM_FLAG_CONTRACTS, RESTORE_FLAG_CONTRACTS, DELETE_FLAG_CONTRACTS, RELEASE_FLAG_CONTRACTS, START_TASK_FLAG_CONTRACTS, PAUSE_TASK_FLAG_CONTRACTS, CLOSE_TASK_FLAG_CONTRACTS, MEET_FLAG_CONTRACTS, EVENT_FLAG_CONTRACTS, EVENTS_FLAG_CONTRACTS, REMIND_FLAG_CONTRACTS, TEST_FLAG_CONTRACTS, TEST_ALL_FLAG_CONTRACTS, TELEMETRY_FLAG_CONTRACTS, TEST_RUNS_FLAG_CONTRACTS, GC_FLAG_CONTRACTS, STATS_FLAG_CONTRACTS, DUPLICATES_FLAG_CONTRACTS, HEALTH_FLAG_CONTRACTS, VALIDATE_FLAG_CONTRACTS, ASSURANCE_FLAG_CONTRACTS, CREATE_FLAG_CONTRACTS, ITEM_COMPLETE_FLAG_CONTRACTS, ITEM_MUTATE_FLAG_CONTRACTS, COPY_FLAG_CONTRACTS, FOCUS_FLAG_CONTRACTS, UPDATE_FLAG_CONTRACTS, UPDATE_MANY_FLAG_CONTRACTS, CALENDAR_FLAG_CONTRACTS, ACTIVITY_FLAG_CONTRACTS, CONTEXT_FLAG_CONTRACTS, GET_FLAG_CONTRACTS, GUIDE_FLAG_CONTRACTS, DEPS_FLAG_CONTRACTS, GRAPH_FLAG_CONTRACTS, EVAL_FLAG_CONTRACTS, WORKSPACE_FLAG_CONTRACTS, NEXT_FLAG_CONTRACTS, SEARCH_FLAG_CONTRACTS, CONTRACTS_FLAG_CONTRACTS, COMPLETION_FLAG_CONTRACTS, hasSubcommandFlagContractsForCommand, resolveSubcommandFlagContractsForCommand, toCompletionFlagString, } from "./cli-contracts/flag-contracts.js";
13
13
  export { buildPmActionToolInputSchema, PM_TOOL_RESERVED_CUSTOM_FIELD_PROPERTIES, resolvePmToolCustomFieldCollision, CLOSE_ACTION_OPTION_KEYS, PLAN_CREATE_METADATA_PARAMETER_KEYS, PM_TOOL_ACTION_PARAMETER_CONTRACTS, PM_TOOL_PARAMETERS_SCHEMA_VERSION, PM_TOOL_PARAMETERS_SCHEMA_MAJOR, PM_PROVIDER_TOOL_PARAMETERS_SCHEMA_VERSION, PM_TOOL_PARAMETERS_SCHEMA, PM_PROVIDER_TOOL_PARAMETERS_SCHEMA, _testOnlyCliContracts, } from "./cli-contracts/tool-schema.js";
14
14
  export { analyzeSdkCliParameterCompleteness, } from "./cli-contracts/completeness.js";
15
15
  export { PM_COMMAND_OUTPUT_BUDGET_CONTRACTS, PM_OUTPUT_BUDGET_CLASSES, PM_OUTPUT_DEGRADATION_STEPS, createPmCommandOutputBudget, definePmCommandOutputBudget, estimatePmOutputTokens, inferPmOutputBudgetClass, resolvePmCommandOutputBudget, } from "./cli-contracts/agent-output-contracts.js";
16
16
  //# sourceMappingURL=cli-contracts.js.map
17
- //# debugId=8071fd9d-649a-5fce-b342-84b11066d559
17
+ //# debugId=969b5bd2-e7de-5db8-bef2-6748675a100c
@@ -4,7 +4,7 @@
4
4
  * Implements the pm completion command surface and its agent-facing runtime behavior.
5
5
  */
6
6
 
7
- !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="6c9648d7-ab14-5e0d-8793-86ae13643fa6")}catch(e){}}();
7
+ !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="381bfd99-bd9b-5f8f-9783-65c2bf2cd810")}catch(e){}}();
8
8
  import { EXIT_CODE, PmCliError } from "./runtime-primitives.js";
9
9
  import { listPmCommandsForTier } from "./agent-capability-contracts.js";
10
10
  import { SCAFFOLD_CAPABILITIES } from "./extension/scaffold.js";
@@ -608,7 +608,7 @@ export function generateBashScript(itemTypes = [], tags = [], eagerTagExpansion
608
608
  ` COMPREPLY=(${compgen("--add --stdin --file --edit --delete --limit --full-history --author --message --force --json --quiet --no-changed-fields --pm-path --path --no-extensions --no-pager --profile --help")})`,
609
609
  " ;;",
610
610
  " files)",
611
- ` COMPREPLY=(${compgen("discover lookup --add --add-glob --remove --migrate --list --apply --note --append-stable --validate-paths --scope --limit --offset --no-truncate --strict-read --author --message --force --json --quiet --no-changed-fields --pm-path --path --no-extensions --no-pager --profile --help")})`,
611
+ ` COMPREPLY=(${compgen("discover lookup --add --add-glob --remove --migrate --list --apply --note --append-stable --validate-paths --scope --limit --offset --no-truncate --strict-read --explain --lines --decision-depth --author --message --force --json --quiet --no-changed-fields --pm-path --path --no-extensions --no-pager --profile --help")})`,
612
612
  " ;;",
613
613
  " docs)",
614
614
  ` COMPREPLY=(${compgen("--add --add-glob --remove --migrate --note --validate-paths --author --message --force --json --quiet --no-changed-fields --pm-path --path --no-extensions --no-pager --profile --help")})`,
@@ -1412,6 +1412,9 @@ ${zshSearchRuntimeFieldFlags} '--json[Output JSON]' \\
1412
1412
  '--offset[Skip the first lookup matches]:number' \\
1413
1413
  '--no-truncate[Return every lookup match]' \\
1414
1414
  '--strict-read[Require authoritative source reads]' \\
1415
+ '--explain[Include ranked source-to-work rationale]' \\
1416
+ '--lines[Attribute an inclusive source line range]:start_end' \\
1417
+ '--decision-depth[Maximum governing-decision relationship depth]:number' \\
1415
1418
  '--author[Mutation author]:author' \\
1416
1419
  '--message[History message]:message' \\
1417
1420
  '--force[Force override]' \\
@@ -2137,6 +2140,9 @@ complete -c pm -n '__fish_seen_subcommand_from files' -l limit -d 'Maximum looku
2137
2140
  complete -c pm -n '__fish_seen_subcommand_from files' -l offset -d 'Skip the first lookup matches' -r
2138
2141
  complete -c pm -n '__fish_seen_subcommand_from files' -l no-truncate -d 'Return every lookup match'
2139
2142
  complete -c pm -n '__fish_seen_subcommand_from files' -l strict-read -d 'Require authoritative source reads'
2143
+ complete -c pm -n '__fish_seen_subcommand_from files' -l explain -d 'Include ranked source-to-work rationale'
2144
+ complete -c pm -n '__fish_seen_subcommand_from files' -l lines -d 'Attribute an inclusive source line range' -r
2145
+ complete -c pm -n '__fish_seen_subcommand_from files' -l decision-depth -d 'Maximum governing-decision relationship depth' -r
2140
2146
 
2141
2147
 
2142
2148
  # search flags
@@ -2747,4 +2753,4 @@ export function runCompletion(shell, itemTypes = [], tags = [], eagerTagExpansio
2747
2753
  };
2748
2754
  }
2749
2755
  //# sourceMappingURL=completion.js.map
2750
- //# debugId=6c9648d7-ab14-5e0d-8793-86ae13643fa6
2756
+ //# debugId=381bfd99-bd9b-5f8f-9783-65c2bf2cd810
@@ -4,7 +4,7 @@
4
4
  * Implements the pm config command surface and its agent-facing runtime behavior.
5
5
  */
6
6
 
7
- !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="2a186a29-9d21-5ebe-9c66-3e889253b15b")}catch(e){}}();
7
+ !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="a9a8d99c-df4e-55b3-81f5-27124d598c5f")}catch(e){}}();
8
8
  import { pathExists } from "../core/fs/fs-utils.js";
9
9
  import { resolveConfigPositionalValue, } from "../core/config/positional-value.js";
10
10
  import { NESTED_SETTING_DESCRIPTORS, parseNestedSettingValue, readNestedSettingValue, resolveNestedSettingDescriptor, writeNestedSettingValue, } from "../core/config/nested-settings.js";
@@ -16,6 +16,7 @@ import { buildInvalidTypeError } from "../core/schema/item-types-file.js";
16
16
  import { resolveItemTypesFilePath } from "../core/schema/runtime-schema.js";
17
17
  import { EXIT_CODE } from "../core/shared/constants.js";
18
18
  import { PmCliError } from "../core/shared/errors.js";
19
+ import { createUnknownSubcommandError } from "./agent/subcommand-recovery.js";
19
20
  import { migrateItemFilesToFormat } from "../core/store/item-format-migration.js";
20
21
  import { getSettingsPath, resolveGlobalPmRoot, resolvePmRoot, } from "../core/store/paths.js";
21
22
  import { readSettingsWithMetadata, writeSettings, } from "../core/store/settings.js";
@@ -181,7 +182,12 @@ function normalizeAction(value) {
181
182
  value === "export") {
182
183
  return value;
183
184
  }
184
- throw new PmCliError(`Invalid config action "${value}". Allowed: get, set, list, export`, EXIT_CODE.USAGE);
185
+ throw createUnknownSubcommandError({
186
+ command_path: "config",
187
+ token: value.trim() || "<empty>",
188
+ allowed: ["export", "get", "list", "set"],
189
+ token_kind: "action",
190
+ });
185
191
  }
186
192
  function normalizeKey(value) {
187
193
  const key = CONFIG_KEY_BY_ALIAS[value];
@@ -1091,4 +1097,4 @@ export const _testOnlyConfigCommand = {
1091
1097
  normalizeWarnings,
1092
1098
  };
1093
1099
  //# sourceMappingURL=config.js.map
1094
- //# debugId=2a186a29-9d21-5ebe-9c66-3e889253b15b
1100
+ //# debugId=a9a8d99c-df4e-55b3-81f5-27124d598c5f