@unbrained/pm-cli 2026.8.21 → 2026.8.22
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.
- package/.claude-plugin/marketplace.json +2 -2
- package/CHANGELOG.md +16 -0
- package/dist/cli/error-guidance.d.ts +9 -4
- package/dist/cli/error-guidance.js +16 -15
- package/dist/cli/main.d.ts +3 -0
- package/dist/cli/main.js +40 -7
- package/dist/cli-bundle/bundle-manifest.json +153 -153
- package/dist/cli-bundle/chunks/{chunk-BKYB45NQ.js → chunk-BWX4SK46.js} +48 -48
- package/dist/cli-bundle/chunks/chunk-EMWDM5FI.js +13 -0
- package/dist/cli-bundle/chunks/chunk-HYG6LRL4.js +200 -0
- package/dist/cli-bundle/chunks/{chunk-LARJJ3RK.js → chunk-MYYI3ZOA.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-BUNIEJNE.js → chunk-MZTZQTMS.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-LOVTQ52Z.js → chunk-QI2CT3IX.js} +2 -2
- package/dist/cli-bundle/chunks/chunk-SMWXHMVB.js +35 -0
- package/dist/cli-bundle/chunks/{chunk-N3DSV4CH.js → chunk-U6GQ4VMV.js} +6 -6
- package/dist/cli-bundle/chunks/{chunk-3AFAUHUE.js → chunk-VMMIL3SI.js} +2 -2
- package/dist/cli-bundle/chunks/chunk-WG4STC36.js +5 -0
- package/dist/cli-bundle/chunks/{chunk-JSLOFXGA.js → chunk-YBPJAOQQ.js} +2 -2
- package/dist/cli-bundle/chunks/{register-list-query-F57EWDEF.js → register-list-query-HZKBQNWW.js} +2 -2
- package/dist/cli-bundle/chunks/{register-mutation-7IY2D5KO.js → register-mutation-HTKEEGRD.js} +2 -2
- package/dist/cli-bundle/chunks/{register-operations-FALL3YTU.js → register-operations-6EMRWJJY.js} +2 -2
- package/dist/cli-bundle/chunks/{register-setup-HXU7IZZD.js → register-setup-QK4OTOXN.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-FJ22HNRP.js → chunk-2ARQGDDW.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-CKKQSJNN.js → chunk-2AZT5WXZ.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-F4YEW5I2.js → chunk-2POVTNLY.js} +2 -2
- package/dist/cli-bundle/focused-chunks/chunk-3LKU6PTJ.js +4 -0
- package/dist/cli-bundle/focused-chunks/chunk-5SHSBMX2.js +2 -0
- package/dist/cli-bundle/focused-chunks/{chunk-FH6DYED3.js → chunk-6S2MO3Q3.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-UZE7XUZK.js → chunk-A2BC5PQL.js} +2 -2
- package/dist/cli-bundle/focused-chunks/chunk-C4S4A4JJ.js +5 -0
- package/dist/cli-bundle/focused-chunks/{chunk-KDNG7TKQ.js → chunk-D6RBZEJJ.js} +2 -2
- package/dist/cli-bundle/focused-chunks/chunk-E2EWYPY6.js +16 -0
- package/dist/cli-bundle/focused-chunks/{chunk-4ERLO7QD.js → chunk-GMYPD4FX.js} +2 -2
- package/dist/cli-bundle/focused-chunks/chunk-L5LDSRO2.js +155 -0
- package/dist/cli-bundle/focused-chunks/{chunk-ZOSEELYJ.js → chunk-MB37AYN6.js} +2 -2
- package/dist/cli-bundle/focused-chunks/chunk-MCOR37QK.js +2 -0
- package/dist/cli-bundle/focused-chunks/{chunk-2NIY5NKG.js → chunk-PH2OXXVZ.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-YKBKIEAJ.js → chunk-PMGJUFNQ.js} +2 -2
- package/dist/cli-bundle/focused-chunks/chunk-R6SR45XU.js +50 -0
- package/dist/cli-bundle/focused-chunks/chunk-WZE4LIPW.js +8 -0
- package/dist/cli-bundle/main.js +13 -13
- package/dist/cli-bundle/sdk-authoring.js +1 -1
- package/dist/cli-bundle/sdk-contracts.js +2 -2
- package/dist/cli-bundle/sdk-core.js +40 -40
- package/dist/cli-bundle/sdk-governance.js +1 -1
- package/dist/cli-bundle/sdk-graph.js +1 -1
- package/dist/cli-bundle/sdk-merge.js +32 -32
- package/dist/cli-bundle/sdk-query.js +1 -1
- package/dist/cli-bundle/sdk-runtime.js +1 -1
- package/dist/cli-bundle/sdk-testing.js +1 -1
- package/dist/cli-bundle/sdk.js +5 -5
- package/dist/core/extensions/extension-hook-runtime.js +22 -20
- package/dist/core/extensions/extension-types.d.ts +8 -1
- package/dist/core/extensions/extension-types.js +2 -2
- package/dist/core/extensions/loader.js +7 -3
- package/dist/core/extensions/service-ownership.d.ts +8 -0
- package/dist/core/extensions/service-ownership.js +20 -0
- package/dist/core/item/id.js +20 -5
- package/dist/core/item/item-format.js +27 -2
- package/dist/core/shared/errors.d.ts +4 -0
- package/dist/core/shared/errors.js +2 -2
- package/dist/sdk/agent/refusal-reachability.d.ts +1 -1
- package/dist/sdk/authoring.d.ts +1 -1
- package/dist/sdk/authoring.js +2 -2
- package/dist/sdk/cli-contracts/agent-output-contracts.d.ts +77 -0
- package/dist/sdk/cli-contracts/agent-output-contracts.js +324 -2
- package/dist/sdk/cli-contracts/commander-mutation-options.js +3 -3
- package/dist/sdk/cli-contracts/runtime-contracts.d.ts +3 -1
- package/dist/sdk/cli-contracts/runtime-contracts.js +4 -3
- package/dist/sdk/cli-contracts.d.ts +1 -1
- package/dist/sdk/cli-contracts.js +3 -3
- package/dist/sdk/extension/install-sources.d.ts +1 -1
- package/dist/sdk/extension/install-sources.js +6 -3
- package/dist/sdk/extension/output-ownership.d.ts +1 -0
- package/dist/sdk/extension/output-ownership.js +3 -2
- package/dist/sdk/generated/generated-error-code-catalog-part-1.js +38 -14
- package/dist/sdk/generated/generated-error-code-catalog-part-2.js +14 -2
- package/dist/sdk/governance/health.d.ts +3 -0
- package/dist/sdk/governance/health.js +39 -7
- package/dist/sdk/governance/hierarchy-validation.d.ts +29 -0
- package/dist/sdk/governance/hierarchy-validation.js +109 -0
- package/dist/sdk/governance/validate.d.ts +1 -7
- package/dist/sdk/governance/validate.js +47 -99
- package/dist/sdk/graph/assembly.d.ts +6 -1
- package/dist/sdk/graph/assembly.js +16 -22
- package/dist/sdk/graph/governance-contracts.d.ts +1 -1
- package/dist/sdk/graph/governance-contracts.js +8 -2
- package/dist/sdk/graph/governance.js +46 -2
- package/dist/sdk/graph/hierarchy-integrity.d.ts +94 -0
- package/dist/sdk/graph/hierarchy-integrity.js +311 -0
- package/dist/sdk/graph/index.d.ts +2 -1
- package/dist/sdk/graph/index.js +3 -2
- package/dist/sdk/graph/remediation.js +32 -2
- package/dist/sdk/graph/run.d.ts +31 -2
- package/dist/sdk/graph/run.js +80 -31
- package/dist/sdk/graph/workspace-relationship-kind-registry.d.ts +8 -0
- package/dist/sdk/graph/workspace-relationship-kind-registry.js +28 -0
- package/dist/sdk/index.d.ts +2 -2
- package/dist/sdk/index.js +3 -3
- package/dist/sdk/item-children.js +21 -8
- package/dist/sdk/lifecycle/create.js +125 -96
- package/dist/sdk/lifecycle/hierarchy-mutation-lock.d.ts +15 -0
- package/dist/sdk/lifecycle/hierarchy-mutation-lock.js +25 -0
- package/dist/sdk/lifecycle/update.d.ts +2 -0
- package/dist/sdk/lifecycle/update.js +171 -83
- package/dist/sdk/query/complete-list.d.ts +3 -3
- package/dist/sdk/query/complete-list.js +46 -3
- package/dist/sdk/query/list.d.ts +4 -3
- package/dist/sdk/query/list.js +89 -49
- package/dist/sdk/read-output-contracts.d.ts +5 -1
- package/dist/sdk/read-output-contracts.js +87 -22
- package/dist/sdk/relationship-context.js +3 -4
- package/dist/sdk/relationships.js +17 -10
- package/dist/sdk/runtime.d.ts +3 -2
- package/dist/sdk/runtime.js +3 -2
- package/dist/sdk/test/batch.js +13 -5
- package/dist/sdk/test/execution.js +10 -2
- package/dist/types.d.ts +11 -0
- package/dist/types.js +2 -2
- package/docs/AGENT_UX_CONTRACTS.md +20 -4
- package/docs/COMMANDS.md +29 -14
- package/docs/DEPENDENCY_KIND_CONTRACT.md +31 -3
- package/docs/DIAGNOSTIC_OUTPUT_CONTRACTS.md +98 -0
- package/docs/EXTENSIONS.md +2 -1
- package/docs/README.md +1 -0
- package/docs/READ_OUTPUT_CONTRACTS.md +9 -2
- package/docs/RELATIONSHIP_GRAPH.md +6 -3
- package/docs/TESTING.md +15 -0
- package/marketplace.json +2 -2
- package/package.json +1 -1
- package/packages/pm-beads/package.json +1 -1
- package/packages/pm-calendar/package.json +1 -1
- package/packages/pm-command-kit/package.json +1 -1
- package/packages/pm-digital-twin/package.json +1 -1
- package/packages/pm-governance-audit/package.json +1 -1
- package/packages/pm-guide-shell/package.json +1 -1
- package/packages/pm-kanban/package.json +1 -1
- package/packages/pm-lifecycle-hooks/package.json +1 -1
- package/packages/pm-linked-test-adapters/package.json +1 -1
- package/packages/pm-search-advanced/package.json +1 -1
- package/packages/pm-templates/package.json +1 -1
- package/packages/pm-todos/package.json +1 -1
- package/packages/pm-vcs/package.json +1 -1
- package/plugins/pm-claude/.claude-plugin/plugin.json +1 -1
- package/plugins/pm-codex/.codex-plugin/plugin.json +1 -1
- package/sdk/public-surface.json +593 -35
- package/dist/cli-bundle/chunks/chunk-2MA6ZQVZ.js +0 -197
- package/dist/cli-bundle/chunks/chunk-7VHZS727.js +0 -5
- package/dist/cli-bundle/chunks/chunk-OCLPLFAY.js +0 -35
- package/dist/cli-bundle/chunks/chunk-S4IRYKBU.js +0 -13
- package/dist/cli-bundle/focused-chunks/chunk-7WZRLCYF.js +0 -50
- package/dist/cli-bundle/focused-chunks/chunk-EEFKYMDR.js +0 -16
- package/dist/cli-bundle/focused-chunks/chunk-F2A56DHV.js +0 -8
- package/dist/cli-bundle/focused-chunks/chunk-FV5ACOK7.js +0 -2
- package/dist/cli-bundle/focused-chunks/chunk-JEAVFOWM.js +0 -2
- package/dist/cli-bundle/focused-chunks/chunk-NJ63LOP6.js +0 -155
- package/dist/cli-bundle/focused-chunks/chunk-NXRTQ7HI.js +0 -2
- package/dist/cli-bundle/focused-chunks/chunk-TJ7EMJ46.js +0 -4
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
* output policy without coupling package authors to pm's renderer.
|
|
7
7
|
*/
|
|
8
8
|
|
|
9
|
-
!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]="
|
|
9
|
+
!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]="b3f5a4bc-d853-530e-8f5e-d682d8b93c9d")}catch(e){}}();
|
|
10
10
|
import { PM_CORE_COMMAND_NAMES } from "./enum-contracts.js";
|
|
11
11
|
/** Stable degradation stages applied when an output exceeds its token budget. */
|
|
12
12
|
export const PM_OUTPUT_DEGRADATION_STEPS = [
|
|
@@ -23,6 +23,21 @@ export const PM_OUTPUT_BUDGET_CLASSES = [
|
|
|
23
23
|
"discovery",
|
|
24
24
|
"governance",
|
|
25
25
|
];
|
|
26
|
+
/** Stable diagnostic families that require independent output ceilings. */
|
|
27
|
+
export const PM_DIAGNOSTIC_OUTPUT_CLASSES = [
|
|
28
|
+
"error",
|
|
29
|
+
"warning",
|
|
30
|
+
"validation_summary",
|
|
31
|
+
"recovery_bundle",
|
|
32
|
+
];
|
|
33
|
+
/** Deterministic diagnostic degradation stages, from richest to smallest. */
|
|
34
|
+
export const PM_DIAGNOSTIC_DEGRADATION_STEPS = [
|
|
35
|
+
"full",
|
|
36
|
+
"omit_explanation",
|
|
37
|
+
"limit_collections",
|
|
38
|
+
"compact_recovery",
|
|
39
|
+
"action_only",
|
|
40
|
+
];
|
|
26
41
|
const MUTATION_COMMANDS = new Set([
|
|
27
42
|
"append",
|
|
28
43
|
"claim",
|
|
@@ -84,6 +99,29 @@ const DEFAULT_MAX_ESTIMATED_TOKENS = {
|
|
|
84
99
|
};
|
|
85
100
|
const JSON_BUDGET_NUMERATOR = 3;
|
|
86
101
|
const JSON_BUDGET_DENOMINATOR = 2;
|
|
102
|
+
const MINIMUM_DIAGNOSTIC_BUDGET = 192;
|
|
103
|
+
const DIAGNOSTIC_DEFAULT_BUDGETS = {
|
|
104
|
+
error: { text: 768, json: 2_000 },
|
|
105
|
+
warning: { text: 768, json: 2_000 },
|
|
106
|
+
validation_summary: { text: 1_500, json: 3_000 },
|
|
107
|
+
recovery_bundle: { text: 768, json: 2_000 },
|
|
108
|
+
};
|
|
109
|
+
/** Public default contract for every diagnostic family. */
|
|
110
|
+
export const PM_DIAGNOSTIC_OUTPUT_BUDGET_CONTRACTS = PM_DIAGNOSTIC_OUTPUT_CLASSES.map((diagnosticClass) => ({
|
|
111
|
+
diagnostic_class: diagnosticClass,
|
|
112
|
+
default_max_estimated_tokens_by_format: DIAGNOSTIC_DEFAULT_BUDGETS[diagnosticClass],
|
|
113
|
+
minimum_max_estimated_tokens: MINIMUM_DIAGNOSTIC_BUDGET,
|
|
114
|
+
degradation_ladder: PM_DIAGNOSTIC_DEGRADATION_STEPS,
|
|
115
|
+
corrective_action_paths: [
|
|
116
|
+
"required",
|
|
117
|
+
"recovery.suggested_retry",
|
|
118
|
+
"recovery.suggested_retry_args",
|
|
119
|
+
"recovery.next_best_command",
|
|
120
|
+
"next_steps[0]",
|
|
121
|
+
],
|
|
122
|
+
token_estimate: "ceil(utf8_bytes / 4)",
|
|
123
|
+
}));
|
|
124
|
+
const DIAGNOSTIC_BUDGET_BY_CLASS = new Map(PM_DIAGNOSTIC_OUTPUT_BUDGET_CONTRACTS.map((contract) => [contract.diagnostic_class, contract]));
|
|
87
125
|
/** Infer the conservative workload class for a core or package command. */
|
|
88
126
|
export function inferPmOutputBudgetClass(command) {
|
|
89
127
|
const [rootCommand = ""] = command.trim().split(/\s+/u);
|
|
@@ -150,5 +188,289 @@ export function resolvePmCommandOutputBudget(command, options = {}) {
|
|
|
150
188
|
export function estimatePmOutputTokens(utf8Bytes) {
|
|
151
189
|
return Math.ceil(Math.max(0, utf8Bytes) / 4);
|
|
152
190
|
}
|
|
191
|
+
/** Resolve the binding output contract for one diagnostic family. */
|
|
192
|
+
export function resolvePmDiagnosticOutputBudget(diagnosticClass) {
|
|
193
|
+
const contract = DIAGNOSTIC_BUDGET_BY_CLASS.get(diagnosticClass);
|
|
194
|
+
if (contract === undefined) {
|
|
195
|
+
throw new TypeError(`diagnosticClass must be one of: ${PM_DIAGNOSTIC_OUTPUT_CLASSES.join(", ")}`);
|
|
196
|
+
}
|
|
197
|
+
return contract;
|
|
198
|
+
}
|
|
199
|
+
function estimateJsonDiagnosticTokens(value) {
|
|
200
|
+
return estimatePmOutputTokens(Buffer.byteLength(JSON.stringify(value, null, 2), "utf8"));
|
|
201
|
+
}
|
|
202
|
+
function isDiagnosticRecord(value) {
|
|
203
|
+
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
204
|
+
}
|
|
205
|
+
function compactDiagnosticRecovery(value) {
|
|
206
|
+
if (!isDiagnosticRecord(value))
|
|
207
|
+
return undefined;
|
|
208
|
+
const compact = {};
|
|
209
|
+
for (const key of [
|
|
210
|
+
"suggested_retry",
|
|
211
|
+
"suggested_retry_args",
|
|
212
|
+
"next_best_command",
|
|
213
|
+
"allowed_values",
|
|
214
|
+
"candidate_commands",
|
|
215
|
+
"missing",
|
|
216
|
+
"missing_required_fields",
|
|
217
|
+
"option_scope",
|
|
218
|
+
"retry_after_ms",
|
|
219
|
+
]) {
|
|
220
|
+
const candidate = value[key];
|
|
221
|
+
if (Array.isArray(candidate))
|
|
222
|
+
compact[key] = candidate.slice(0, 3);
|
|
223
|
+
else if (candidate !== undefined)
|
|
224
|
+
compact[key] = candidate;
|
|
225
|
+
}
|
|
226
|
+
return Object.keys(compact).length > 0 ? compact : undefined;
|
|
227
|
+
}
|
|
228
|
+
function truncateDiagnosticString(value, maximum) {
|
|
229
|
+
if (typeof value !== "string" || value.length <= maximum)
|
|
230
|
+
return value;
|
|
231
|
+
return `${value.slice(0, Math.max(1, maximum - 3))}...`;
|
|
232
|
+
}
|
|
233
|
+
function truncateDiagnosticUtf8Text(value, maximumBytes) {
|
|
234
|
+
if (Buffer.byteLength(value, "utf8") <= maximumBytes)
|
|
235
|
+
return value;
|
|
236
|
+
const suffix = "...";
|
|
237
|
+
const codePoints = Array.from(value);
|
|
238
|
+
let lower = 0;
|
|
239
|
+
let upper = codePoints.length;
|
|
240
|
+
while (lower < upper) {
|
|
241
|
+
const middle = Math.ceil((lower + upper) / 2);
|
|
242
|
+
const candidate = `${codePoints.slice(0, middle).join("")}${suffix}`;
|
|
243
|
+
if (Buffer.byteLength(candidate, "utf8") <= maximumBytes)
|
|
244
|
+
lower = middle;
|
|
245
|
+
else
|
|
246
|
+
upper = middle - 1;
|
|
247
|
+
}
|
|
248
|
+
return `${codePoints.slice(0, lower).join("")}${suffix}`;
|
|
249
|
+
}
|
|
250
|
+
function prioritizeDiagnosticFields(diagnostic) {
|
|
251
|
+
const prioritized = {};
|
|
252
|
+
for (const key of [
|
|
253
|
+
"code",
|
|
254
|
+
"required",
|
|
255
|
+
"recovery",
|
|
256
|
+
"next_steps",
|
|
257
|
+
"exit_code",
|
|
258
|
+
"type",
|
|
259
|
+
"title",
|
|
260
|
+
"detail",
|
|
261
|
+
"why",
|
|
262
|
+
"examples",
|
|
263
|
+
]) {
|
|
264
|
+
if (Object.hasOwn(diagnostic, key) && diagnostic[key] !== undefined) {
|
|
265
|
+
prioritized[key] = diagnostic[key];
|
|
266
|
+
}
|
|
267
|
+
}
|
|
268
|
+
for (const [key, value] of Object.entries(diagnostic)) {
|
|
269
|
+
if (key !== "__proto__" && !Object.hasOwn(prioritized, key)) {
|
|
270
|
+
prioritized[key] = value;
|
|
271
|
+
}
|
|
272
|
+
}
|
|
273
|
+
return prioritized;
|
|
274
|
+
}
|
|
275
|
+
const DIAGNOSTIC_COLLECTION_LIMIT_STAGES = new Set(["limit_collections", "compact_recovery", "action_only"]);
|
|
276
|
+
const DIAGNOSTIC_RECOVERY_COMPACTION_STAGES = new Set(["compact_recovery", "action_only"]);
|
|
277
|
+
function actionOnlyDiagnostic(candidate) {
|
|
278
|
+
const actionOnly = {
|
|
279
|
+
code: typeof candidate.code === "string" ? candidate.code : "diagnostic",
|
|
280
|
+
required: truncateDiagnosticString(candidate.required, 160) ??
|
|
281
|
+
"Inspect the diagnostic code and retry with corrected input.",
|
|
282
|
+
};
|
|
283
|
+
const recovery = compactDiagnosticRecovery(candidate.recovery);
|
|
284
|
+
if (recovery !== undefined) {
|
|
285
|
+
actionOnly.recovery = recovery;
|
|
286
|
+
}
|
|
287
|
+
else if (Array.isArray(candidate.next_steps)) {
|
|
288
|
+
actionOnly.next_steps = candidate.next_steps.slice(0, 1);
|
|
289
|
+
}
|
|
290
|
+
if (candidate.exit_code !== undefined)
|
|
291
|
+
actionOnly.exit_code = candidate.exit_code;
|
|
292
|
+
if (candidate.type !== undefined)
|
|
293
|
+
actionOnly.type = candidate.type;
|
|
294
|
+
return actionOnly;
|
|
295
|
+
}
|
|
296
|
+
function diagnosticCandidate(diagnostic, stage) {
|
|
297
|
+
const candidate = structuredClone(diagnostic);
|
|
298
|
+
if (stage !== "full") {
|
|
299
|
+
delete candidate.why;
|
|
300
|
+
delete candidate.examples;
|
|
301
|
+
}
|
|
302
|
+
if (DIAGNOSTIC_COLLECTION_LIMIT_STAGES.has(stage)) {
|
|
303
|
+
for (const [key, value] of Object.entries(candidate)) {
|
|
304
|
+
if (Array.isArray(value))
|
|
305
|
+
candidate[key] = value.slice(0, 3);
|
|
306
|
+
}
|
|
307
|
+
}
|
|
308
|
+
if (DIAGNOSTIC_RECOVERY_COMPACTION_STAGES.has(stage)) {
|
|
309
|
+
const recovery = compactDiagnosticRecovery(candidate.recovery);
|
|
310
|
+
if (recovery)
|
|
311
|
+
candidate.recovery = recovery;
|
|
312
|
+
else
|
|
313
|
+
delete candidate.recovery;
|
|
314
|
+
}
|
|
315
|
+
if (stage !== "action_only")
|
|
316
|
+
return prioritizeDiagnosticFields(candidate);
|
|
317
|
+
return actionOnlyDiagnostic(candidate);
|
|
318
|
+
}
|
|
319
|
+
function attachDiagnosticReceipt(candidate, receipt) {
|
|
320
|
+
const projected = {
|
|
321
|
+
...candidate,
|
|
322
|
+
diagnostic_output: { ...receipt, estimated_tokens: 0 },
|
|
323
|
+
};
|
|
324
|
+
for (let attempt = 0; attempt < 4; attempt += 1) {
|
|
325
|
+
const estimatedTokens = estimateJsonDiagnosticTokens(projected);
|
|
326
|
+
const outputReceipt = projected.diagnostic_output;
|
|
327
|
+
if (outputReceipt.estimated_tokens === estimatedTokens)
|
|
328
|
+
break;
|
|
329
|
+
outputReceipt.estimated_tokens = estimatedTokens;
|
|
330
|
+
}
|
|
331
|
+
return projected;
|
|
332
|
+
}
|
|
333
|
+
function shrinkMinimalDiagnosticCandidate(candidate, receipt, budget) {
|
|
334
|
+
let fallback = attachDiagnosticReceipt(candidate, receipt);
|
|
335
|
+
for (const optionalField of ["recovery", "exit_code"]) {
|
|
336
|
+
if (estimateJsonDiagnosticTokens(fallback) <= budget ||
|
|
337
|
+
candidate[optionalField] === undefined) {
|
|
338
|
+
continue;
|
|
339
|
+
}
|
|
340
|
+
delete candidate[optionalField];
|
|
341
|
+
fallback = attachDiagnosticReceipt(candidate, receipt);
|
|
342
|
+
}
|
|
343
|
+
let maximumActionBytes = 40;
|
|
344
|
+
while (estimateJsonDiagnosticTokens(fallback) > budget &&
|
|
345
|
+
maximumActionBytes > 4) {
|
|
346
|
+
maximumActionBytes -= 4;
|
|
347
|
+
candidate.code = truncateDiagnosticUtf8Text(String(candidate.code), maximumActionBytes);
|
|
348
|
+
candidate.required = truncateDiagnosticUtf8Text(String(candidate.required), maximumActionBytes);
|
|
349
|
+
fallback = attachDiagnosticReceipt(candidate, receipt);
|
|
350
|
+
}
|
|
351
|
+
return fallback;
|
|
352
|
+
}
|
|
353
|
+
function createMinimalDiagnosticFallback(projected, budget) {
|
|
354
|
+
const receipt = projected.diagnostic_output;
|
|
355
|
+
const { estimated_tokens: _estimatedTokens, ...receiptWithoutEstimate } = receipt;
|
|
356
|
+
const boundedOmittedFields = receiptWithoutEstimate.omitted_fields
|
|
357
|
+
.slice(0, 8)
|
|
358
|
+
.map((field) => truncateDiagnosticUtf8Text(field, 32));
|
|
359
|
+
const boundedReceipt = {
|
|
360
|
+
...receiptWithoutEstimate,
|
|
361
|
+
omitted_fields: boundedOmittedFields,
|
|
362
|
+
...(receiptWithoutEstimate.omitted_fields.length >
|
|
363
|
+
boundedOmittedFields.length
|
|
364
|
+
? {
|
|
365
|
+
omitted_fields_overflow_count: receiptWithoutEstimate.omitted_fields.length -
|
|
366
|
+
boundedOmittedFields.length,
|
|
367
|
+
}
|
|
368
|
+
: {}),
|
|
369
|
+
};
|
|
370
|
+
const recoveryCandidate = compactDiagnosticRecovery(projected.recovery);
|
|
371
|
+
const recovery = recoveryCandidate && estimateJsonDiagnosticTokens(recoveryCandidate) <= 48
|
|
372
|
+
? recoveryCandidate
|
|
373
|
+
: undefined;
|
|
374
|
+
const candidate = {
|
|
375
|
+
code: truncateDiagnosticUtf8Text(String(projected.code), 320),
|
|
376
|
+
required: truncateDiagnosticUtf8Text(String(projected.required), 320),
|
|
377
|
+
...(recovery ? { recovery } : {}),
|
|
378
|
+
...(projected.exit_code !== undefined
|
|
379
|
+
? { exit_code: projected.exit_code }
|
|
380
|
+
: {}),
|
|
381
|
+
};
|
|
382
|
+
let fallback = attachDiagnosticReceipt(candidate, boundedReceipt);
|
|
383
|
+
while (estimateJsonDiagnosticTokens(fallback) > budget &&
|
|
384
|
+
boundedReceipt.omitted_fields.length > 0) {
|
|
385
|
+
boundedReceipt.omitted_fields.pop();
|
|
386
|
+
boundedReceipt.omitted_fields_overflow_count =
|
|
387
|
+
receiptWithoutEstimate.omitted_fields.length -
|
|
388
|
+
boundedReceipt.omitted_fields.length;
|
|
389
|
+
fallback = attachDiagnosticReceipt(candidate, boundedReceipt);
|
|
390
|
+
}
|
|
391
|
+
fallback = shrinkMinimalDiagnosticCandidate(candidate, boundedReceipt, budget);
|
|
392
|
+
return fallback;
|
|
393
|
+
}
|
|
394
|
+
/**
|
|
395
|
+
* Bind a JSON diagnostic to its declared ceiling while preserving the first
|
|
396
|
+
* corrective action and reporting every top-level omission.
|
|
397
|
+
*/
|
|
398
|
+
export function projectPmDiagnosticOutput(diagnostic, options = {}) {
|
|
399
|
+
const diagnosticRecord = diagnostic;
|
|
400
|
+
const diagnosticClass = options.diagnosticClass ?? "error";
|
|
401
|
+
const contract = resolvePmDiagnosticOutputBudget(diagnosticClass);
|
|
402
|
+
const explicitBudget = options.maxEstimatedTokens;
|
|
403
|
+
if (explicitBudget !== undefined &&
|
|
404
|
+
(!Number.isSafeInteger(explicitBudget) ||
|
|
405
|
+
explicitBudget < contract.minimum_max_estimated_tokens)) {
|
|
406
|
+
throw new RangeError(`maxEstimatedTokens must be a safe integer >= ${contract.minimum_max_estimated_tokens}`);
|
|
407
|
+
}
|
|
408
|
+
const budget = explicitBudget ?? contract.default_max_estimated_tokens_by_format.json;
|
|
409
|
+
const originalEstimatedTokens = estimateJsonDiagnosticTokens(diagnosticRecord);
|
|
410
|
+
const originalFields = Object.keys(diagnosticRecord);
|
|
411
|
+
if (originalEstimatedTokens <= budget) {
|
|
412
|
+
return prioritizeDiagnosticFields(structuredClone(diagnosticRecord));
|
|
413
|
+
}
|
|
414
|
+
let projected;
|
|
415
|
+
for (const [index, stage] of contract.degradation_ladder.entries()) {
|
|
416
|
+
const candidate = diagnosticCandidate(diagnosticRecord, stage);
|
|
417
|
+
const omittedFields = originalFields.filter((field) => !Object.hasOwn(candidate, field));
|
|
418
|
+
const withReceipt = attachDiagnosticReceipt(candidate, {
|
|
419
|
+
diagnostic_class: diagnosticClass,
|
|
420
|
+
format: "json",
|
|
421
|
+
budget,
|
|
422
|
+
budget_source: explicitBudget === undefined ? "default" : "explicit",
|
|
423
|
+
original_estimated_tokens: originalEstimatedTokens,
|
|
424
|
+
truncated: index > 0,
|
|
425
|
+
degradation_steps: contract.degradation_ladder.slice(0, index + 1),
|
|
426
|
+
omitted_fields: omittedFields,
|
|
427
|
+
});
|
|
428
|
+
projected = withReceipt;
|
|
429
|
+
if (estimateJsonDiagnosticTokens(withReceipt) <= budget)
|
|
430
|
+
break;
|
|
431
|
+
}
|
|
432
|
+
if (estimateJsonDiagnosticTokens(projected) > budget) {
|
|
433
|
+
projected = createMinimalDiagnosticFallback(projected, budget);
|
|
434
|
+
}
|
|
435
|
+
return projected;
|
|
436
|
+
}
|
|
437
|
+
/** Bind human-readable diagnostics without ever truncating the corrective action away. */
|
|
438
|
+
export function projectPmDiagnosticText(output, correctiveAction, options = {}) {
|
|
439
|
+
const diagnosticClass = options.diagnosticClass ?? "error";
|
|
440
|
+
const contract = resolvePmDiagnosticOutputBudget(diagnosticClass);
|
|
441
|
+
const explicitBudget = options.maxEstimatedTokens;
|
|
442
|
+
if (explicitBudget !== undefined &&
|
|
443
|
+
(!Number.isSafeInteger(explicitBudget) ||
|
|
444
|
+
explicitBudget < contract.minimum_max_estimated_tokens)) {
|
|
445
|
+
throw new RangeError(`maxEstimatedTokens must be a safe integer >= ${contract.minimum_max_estimated_tokens}`);
|
|
446
|
+
}
|
|
447
|
+
const budget = explicitBudget ?? contract.default_max_estimated_tokens_by_format.text;
|
|
448
|
+
const originalEstimatedTokens = estimatePmOutputTokens(Buffer.byteLength(output, "utf8"));
|
|
449
|
+
const truncated = originalEstimatedTokens > budget;
|
|
450
|
+
const actionPrefix = "What is required:\n ";
|
|
451
|
+
const actionSuffix = `\n\nDiagnostic output exceeded its declared ${budget}-token ceiling; rerun with structured JSON for the bounded recovery envelope.`;
|
|
452
|
+
const correctiveActionText = correctiveAction.trim() ||
|
|
453
|
+
"Inspect the diagnostic code and retry with corrected input.";
|
|
454
|
+
const availableActionBytes = Math.max(1, budget * 4 - Buffer.byteLength(`${actionPrefix}${actionSuffix}`, "utf8"));
|
|
455
|
+
const projectedOutput = truncated
|
|
456
|
+
? `${actionPrefix}${truncateDiagnosticUtf8Text(correctiveActionText, availableActionBytes)}${actionSuffix}`
|
|
457
|
+
: output;
|
|
458
|
+
return {
|
|
459
|
+
output: projectedOutput,
|
|
460
|
+
diagnostic_output: {
|
|
461
|
+
diagnostic_class: diagnosticClass,
|
|
462
|
+
format: "text",
|
|
463
|
+
budget,
|
|
464
|
+
budget_source: explicitBudget === undefined ? "default" : "explicit",
|
|
465
|
+
original_estimated_tokens: originalEstimatedTokens,
|
|
466
|
+
estimated_tokens: estimatePmOutputTokens(Buffer.byteLength(projectedOutput, "utf8")),
|
|
467
|
+
truncated,
|
|
468
|
+
degradation_steps: truncated
|
|
469
|
+
? [...contract.degradation_ladder]
|
|
470
|
+
: ["full"],
|
|
471
|
+
omitted_fields: truncated ? ["explanation", "collections"] : [],
|
|
472
|
+
},
|
|
473
|
+
};
|
|
474
|
+
}
|
|
153
475
|
//# sourceMappingURL=agent-output-contracts.js.map
|
|
154
|
-
//# debugId=
|
|
476
|
+
//# debugId=b3f5a4bc-d853-530e-8f5e-d682d8b93c9d
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/** Creates commander option registration contracts using the validated operation inputs. */
|
|
2
2
|
|
|
3
|
-
!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]="
|
|
3
|
+
!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]="be7e506f-c48f-5dfb-9fed-ba1e74fa60ff")}catch(e){}}();
|
|
4
4
|
export const CREATE_COMMANDER_OPTION_REGISTRATION_CONTRACTS = [
|
|
5
5
|
{
|
|
6
6
|
target: "title",
|
|
@@ -969,7 +969,7 @@ export const UPDATE_COMMANDER_OPTION_REGISTRATION_CONTRACTS = [
|
|
|
969
969
|
target: "depRemove",
|
|
970
970
|
keys: ["depRemove", "dep_remove"],
|
|
971
971
|
option: "--dep-remove <value>",
|
|
972
|
-
description: "Remove
|
|
972
|
+
description: "Remove by dependency id or exact row signature (repeatable)",
|
|
973
973
|
repeatable: true,
|
|
974
974
|
aliasOptions: [
|
|
975
975
|
{
|
|
@@ -1079,4 +1079,4 @@ export const UPDATE_COMMANDER_STRING_OPTION_CONTRACTS = UPDATE_COMMANDER_OPTION_
|
|
|
1079
1079
|
/** Public contract for update commander repeatable option contracts, shared by SDK and presentation-layer consumers. */
|
|
1080
1080
|
export const UPDATE_COMMANDER_REPEATABLE_OPTION_CONTRACTS = UPDATE_COMMANDER_OPTION_REGISTRATION_CONTRACTS.filter((entry) => entry.repeatable === true).map((entry) => ({ target: entry.target, keys: entry.keys }));
|
|
1081
1081
|
//# sourceMappingURL=commander-mutation-options.js.map
|
|
1082
|
-
//# debugId=
|
|
1082
|
+
//# debugId=be7e506f-c48f-5dfb-9fed-ba1e74fa60ff
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import { type GlobalOptions, type ExtensionRegistrationRegistry, type RegisteredExtensionCommandDefinition, type RegisteredExtensionFlagDefinitions, type RuntimeFieldRegistry, readSettings } from "../runtime-primitives.js";
|
|
7
7
|
import { type McpToolContract } from "../../mcp/tool-definitions.js";
|
|
8
|
-
import { PM_TOOL_ACTIONS, type CliFlagContract, type CommanderOptionAliasContract, type PmCommandOutputBudgetContract, type PmCommandAliasContract } from "../cli-contracts.js";
|
|
8
|
+
import { PM_TOOL_ACTIONS, type CliFlagContract, type CommanderOptionAliasContract, type PmCommandOutputBudgetContract, type PmDiagnosticOutputBudgetContract, type PmCommandAliasContract } from "../cli-contracts.js";
|
|
9
9
|
import { type ListCommandName, type ListProjectionMode } from "../query/list.js";
|
|
10
10
|
import { type PmContextIntentContract } from "../context-intent-contracts.js";
|
|
11
11
|
import { type PmReadOutputSurfaceContract } from "../read-output-contracts.js";
|
|
@@ -187,6 +187,8 @@ export interface ContractsResult {
|
|
|
187
187
|
budget: PmCommandOutputBudgetContract;
|
|
188
188
|
envelope: PmCommandOutputEnvelopeContract;
|
|
189
189
|
}>;
|
|
190
|
+
/** Binding ceilings and action-preserving degradation for diagnostic families. */
|
|
191
|
+
diagnostic_output_contracts?: readonly PmDiagnosticOutputBudgetContract[];
|
|
190
192
|
/** Stable outcome vocabulary and exhaustive per-command process exit sets. */
|
|
191
193
|
command_exit_contracts?: {
|
|
192
194
|
vocabulary: readonly PmCommandExitOutcomeContract[];
|
|
@@ -4,10 +4,10 @@
|
|
|
4
4
|
* Implements the pm contracts 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]="
|
|
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]="e8f1efca-4e83-570f-8c33-96f0405035b0")}catch(e){}}();
|
|
8
8
|
import { EXIT_CODE, SETTINGS_DEFAULTS, PmCliError, activateExtensions, getActiveExtensionRegistrations, loadExtensions, pathExists, commandOptionFlagLabel, resolveCommandOptionPolicyState, resolveItemTypeRegistry, resolveRuntimeFieldRegistry, resolveRuntimeStatusRegistry, getSettingsPath, resolvePmRoot, readSettings, } from "../runtime-primitives.js";
|
|
9
9
|
import { buildMcpToolContracts, } from "../../mcp/tool-definitions.js";
|
|
10
|
-
import { ACTIVITY_COMMANDER_STRING_OPTION_CONTRACTS, ACTIVITY_FLAG_CONTRACTS, AGGREGATE_FLAG_CONTRACTS, ASSURANCE_FLAG_CONTRACTS, APPEND_FLAG_CONTRACTS, CALENDAR_COMMANDER_STRING_OPTION_CONTRACTS, CALENDAR_FLAG_CONTRACTS, CLAIM_FLAG_CONTRACTS, CLOSE_TASK_FLAG_CONTRACTS, COMMENTS_FLAG_CONTRACTS, CLOSE_FLAG_CONTRACTS, CLOSE_MANY_FLAG_CONTRACTS, COMPLETION_FLAG_CONTRACTS, CONFIG_FLAG_CONTRACTS, CONTRACTS_FLAG_CONTRACTS, COPY_FLAG_CONTRACTS, CONTEXT_COMMANDER_STRING_OPTION_CONTRACTS, CONTEXT_FLAG_CONTRACTS, CREATE_COMMANDER_REPEATABLE_OPTION_CONTRACTS, CREATE_COMMANDER_STRING_OPTION_CONTRACTS, CREATE_FLAG_CONTRACTS, DELETE_FLAG_CONTRACTS, DEPS_FLAG_CONTRACTS, GRAPH_FLAG_CONTRACTS, DOCS_FLAG_CONTRACTS, EXTENSION_ACTIVATE_FLAG_CONTRACTS, EXTENSION_ADOPT_ALL_FLAG_CONTRACTS, EXTENSION_ADOPT_FLAG_CONTRACTS, EXTENSION_CATALOG_FLAG_CONTRACTS, EXTENSION_DEACTIVATE_FLAG_CONTRACTS, EXTENSION_DESCRIBE_FLAG_CONTRACTS, EXTENSION_DOCTOR_FLAG_CONTRACTS, EXTENSION_EXPLORE_FLAG_CONTRACTS, EXTENSION_FLAG_CONTRACTS, EXTENSION_INIT_FLAG_CONTRACTS, EXTENSION_INSTALL_FLAG_CONTRACTS, EXTENSION_MANAGE_FLAG_CONTRACTS, EXTENSION_MIGRATE_FLAG_CONTRACTS, EXTENSION_RELOAD_FLAG_CONTRACTS, EXTENSION_UNINSTALL_FLAG_CONTRACTS, FILES_FLAG_CONTRACTS, FOCUS_FLAG_CONTRACTS, GC_FLAG_CONTRACTS, GET_FLAG_CONTRACTS, GUIDE_FLAG_CONTRACTS, GLOBAL_FLAG_CONTRACTS, HEALTH_FLAG_CONTRACTS, HISTORY_FLAG_CONTRACTS, HISTORY_COMPACT_FLAG_CONTRACTS, HISTORY_REDACT_FLAG_CONTRACTS, HISTORY_REPAIR_FLAG_CONTRACTS, HISTORY_AUTHOR_ACKNOWLEDGE_FLAG_CONTRACTS, INSTALL_FLAG_CONTRACTS, INIT_FLAG_CONTRACTS, ITEM_COMPLETE_FLAG_CONTRACTS, ITEM_MUTATE_FLAG_CONTRACTS, ITEM_REOPEN_FLAG_CONTRACTS, LEARNINGS_FLAG_CONTRACTS, LIST_COMMANDER_STRING_OPTION_CONTRACTS, LIST_FILTER_FLAG_CONTRACTS, MERGE_FLAG_CONTRACTS, NOTES_FLAG_CONTRACTS, PACKAGE_FLAG_CONTRACTS, PACKAGE_INIT_FLAG_CONTRACTS, PM_EXTENSION_CAPABILITY_CONTRACTS, PM_EXTENSION_POLICY_MODE_CONTRACTS, PM_EXTENSION_POLICY_SURFACE_CONTRACTS, PM_EXTENSION_SANDBOX_PROFILE_CONTRACTS, PM_EXTENSION_SERVICE_NAME_CONTRACTS, PM_EXTENSION_TRUST_MODE_CONTRACTS, PM_OUTPUT_DEGRADATION_STEPS, PLAN_FLAG_CONTRACTS, PM_CORE_COMMAND_NAMES, PM_DEPRECATED_TOOL_ACTIONS, PM_TOOL_ACTIONS, PM_TOOL_PARAMETERS_SCHEMA, REINDEX_FLAG_CONTRACTS, RELEASE_FLAG_CONTRACTS, RESTORE_FLAG_CONTRACTS, SCHEMA_FLAG_CONTRACTS, PROFILE_FLAG_CONTRACTS, SEARCH_COMMANDER_STRING_OPTION_CONTRACTS, EVAL_FLAG_CONTRACTS, WORKSPACE_FLAG_CONTRACTS, NEXT_FLAG_CONTRACTS, SEARCH_FLAG_CONTRACTS, STATS_FLAG_CONTRACTS, DUPLICATES_FLAG_CONTRACTS, START_TASK_FLAG_CONTRACTS, PAUSE_TASK_FLAG_CONTRACTS, TELEMETRY_FLAG_CONTRACTS, TEST_ALL_FLAG_CONTRACTS, TEST_FLAG_CONTRACTS, TEST_RUNS_FLAG_CONTRACTS, UPDATE_COMMANDER_REPEATABLE_OPTION_CONTRACTS, UPDATE_COMMANDER_STRING_OPTION_CONTRACTS, UPDATE_FLAG_CONTRACTS, UPDATE_MANY_FLAG_CONTRACTS, UPGRADE_FLAG_CONTRACTS, VALIDATE_FLAG_CONTRACTS, compactFlagAliasContracts, PM_COMMAND_ALIAS_CONTRACTS, resolvePmCommandOutputBudget, } from "../cli-contracts.js";
|
|
10
|
+
import { ACTIVITY_COMMANDER_STRING_OPTION_CONTRACTS, ACTIVITY_FLAG_CONTRACTS, AGGREGATE_FLAG_CONTRACTS, ASSURANCE_FLAG_CONTRACTS, APPEND_FLAG_CONTRACTS, CALENDAR_COMMANDER_STRING_OPTION_CONTRACTS, CALENDAR_FLAG_CONTRACTS, CLAIM_FLAG_CONTRACTS, CLOSE_TASK_FLAG_CONTRACTS, COMMENTS_FLAG_CONTRACTS, CLOSE_FLAG_CONTRACTS, CLOSE_MANY_FLAG_CONTRACTS, COMPLETION_FLAG_CONTRACTS, CONFIG_FLAG_CONTRACTS, CONTRACTS_FLAG_CONTRACTS, COPY_FLAG_CONTRACTS, CONTEXT_COMMANDER_STRING_OPTION_CONTRACTS, CONTEXT_FLAG_CONTRACTS, CREATE_COMMANDER_REPEATABLE_OPTION_CONTRACTS, CREATE_COMMANDER_STRING_OPTION_CONTRACTS, CREATE_FLAG_CONTRACTS, DELETE_FLAG_CONTRACTS, DEPS_FLAG_CONTRACTS, GRAPH_FLAG_CONTRACTS, DOCS_FLAG_CONTRACTS, EXTENSION_ACTIVATE_FLAG_CONTRACTS, EXTENSION_ADOPT_ALL_FLAG_CONTRACTS, EXTENSION_ADOPT_FLAG_CONTRACTS, EXTENSION_CATALOG_FLAG_CONTRACTS, EXTENSION_DEACTIVATE_FLAG_CONTRACTS, EXTENSION_DESCRIBE_FLAG_CONTRACTS, EXTENSION_DOCTOR_FLAG_CONTRACTS, EXTENSION_EXPLORE_FLAG_CONTRACTS, EXTENSION_FLAG_CONTRACTS, EXTENSION_INIT_FLAG_CONTRACTS, EXTENSION_INSTALL_FLAG_CONTRACTS, EXTENSION_MANAGE_FLAG_CONTRACTS, EXTENSION_MIGRATE_FLAG_CONTRACTS, EXTENSION_RELOAD_FLAG_CONTRACTS, EXTENSION_UNINSTALL_FLAG_CONTRACTS, FILES_FLAG_CONTRACTS, FOCUS_FLAG_CONTRACTS, GC_FLAG_CONTRACTS, GET_FLAG_CONTRACTS, GUIDE_FLAG_CONTRACTS, GLOBAL_FLAG_CONTRACTS, HEALTH_FLAG_CONTRACTS, HISTORY_FLAG_CONTRACTS, HISTORY_COMPACT_FLAG_CONTRACTS, HISTORY_REDACT_FLAG_CONTRACTS, HISTORY_REPAIR_FLAG_CONTRACTS, HISTORY_AUTHOR_ACKNOWLEDGE_FLAG_CONTRACTS, INSTALL_FLAG_CONTRACTS, INIT_FLAG_CONTRACTS, ITEM_COMPLETE_FLAG_CONTRACTS, ITEM_MUTATE_FLAG_CONTRACTS, ITEM_REOPEN_FLAG_CONTRACTS, LEARNINGS_FLAG_CONTRACTS, LIST_COMMANDER_STRING_OPTION_CONTRACTS, LIST_FILTER_FLAG_CONTRACTS, MERGE_FLAG_CONTRACTS, NOTES_FLAG_CONTRACTS, PACKAGE_FLAG_CONTRACTS, PACKAGE_INIT_FLAG_CONTRACTS, PM_EXTENSION_CAPABILITY_CONTRACTS, PM_EXTENSION_POLICY_MODE_CONTRACTS, PM_EXTENSION_POLICY_SURFACE_CONTRACTS, PM_EXTENSION_SANDBOX_PROFILE_CONTRACTS, PM_EXTENSION_SERVICE_NAME_CONTRACTS, PM_EXTENSION_TRUST_MODE_CONTRACTS, PM_OUTPUT_DEGRADATION_STEPS, PLAN_FLAG_CONTRACTS, PM_CORE_COMMAND_NAMES, PM_DEPRECATED_TOOL_ACTIONS, PM_TOOL_ACTIONS, PM_TOOL_PARAMETERS_SCHEMA, REINDEX_FLAG_CONTRACTS, RELEASE_FLAG_CONTRACTS, RESTORE_FLAG_CONTRACTS, SCHEMA_FLAG_CONTRACTS, PROFILE_FLAG_CONTRACTS, SEARCH_COMMANDER_STRING_OPTION_CONTRACTS, EVAL_FLAG_CONTRACTS, WORKSPACE_FLAG_CONTRACTS, NEXT_FLAG_CONTRACTS, SEARCH_FLAG_CONTRACTS, STATS_FLAG_CONTRACTS, DUPLICATES_FLAG_CONTRACTS, START_TASK_FLAG_CONTRACTS, PAUSE_TASK_FLAG_CONTRACTS, TELEMETRY_FLAG_CONTRACTS, TEST_ALL_FLAG_CONTRACTS, TEST_FLAG_CONTRACTS, TEST_RUNS_FLAG_CONTRACTS, UPDATE_COMMANDER_REPEATABLE_OPTION_CONTRACTS, UPDATE_COMMANDER_STRING_OPTION_CONTRACTS, UPDATE_FLAG_CONTRACTS, UPDATE_MANY_FLAG_CONTRACTS, UPGRADE_FLAG_CONTRACTS, VALIDATE_FLAG_CONTRACTS, compactFlagAliasContracts, PM_COMMAND_ALIAS_CONTRACTS, PM_DIAGNOSTIC_OUTPUT_BUDGET_CONTRACTS, resolvePmCommandOutputBudget, } from "../cli-contracts.js";
|
|
11
11
|
import { PM_POSITIONAL_ACTION_FLAG_CONTRACTS } from "./flag-contracts.js";
|
|
12
12
|
import { GOVERNANCE_CLOSE_VALIDATION_DEFAULT_VALUES, GOVERNANCE_CREATE_MODE_DEFAULT_VALUES, GOVERNANCE_OWNERSHIP_ENFORCEMENT_VALUES, GOVERNANCE_WORKFLOW_ENFORCEMENT_VALUES, } from "../../types.js";
|
|
13
13
|
import { BRIEF_LIST_FIELDS, DEFAULT_COMPACT_LIST_FIELDS, LIST_COMMAND_DEFAULT_PROJECTIONS, } from "../query/list.js";
|
|
@@ -2023,6 +2023,7 @@ export async function runContracts(options, global) {
|
|
|
2023
2023
|
result.error_codes = PM_ERROR_CODE_CATALOG;
|
|
2024
2024
|
result.command_output_contracts =
|
|
2025
2025
|
buildCommandOutputContracts(outputCommands);
|
|
2026
|
+
result.diagnostic_output_contracts = PM_DIAGNOSTIC_OUTPUT_BUDGET_CONTRACTS;
|
|
2026
2027
|
result.command_exit_contracts = {
|
|
2027
2028
|
vocabulary: PM_COMMAND_EXIT_OUTCOME_CONTRACTS,
|
|
2028
2029
|
command_sets: buildCommandExitContractGroups(outputCommands),
|
|
@@ -2064,4 +2065,4 @@ export const _testOnlyContractsCommand = {
|
|
|
2064
2065
|
toRuntimeShortFlagToken,
|
|
2065
2066
|
};
|
|
2066
2067
|
//# sourceMappingURL=runtime-contracts.js.map
|
|
2067
|
-
//# debugId=
|
|
2068
|
+
//# debugId=e8f1efca-4e83-570f-8c33-96f0405035b0
|
|
@@ -25,4 +25,4 @@ export type { PmActionSchemaContract } from "./cli-contracts/tool-schema.js";
|
|
|
25
25
|
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";
|
|
26
26
|
export type { PmActionToolInputSchemaOptions, PmToolCustomFieldCollision, } from "./cli-contracts/tool-schema.js";
|
|
27
27
|
export { analyzeSdkCliParameterCompleteness, type SdkCliActionParameterCoverage, type SdkCliCompletenessContractSource, type SdkCliParameterCoverageEntry, type SdkCliParameterDisposition, } from "./cli-contracts/completeness.js";
|
|
28
|
-
export { PM_COMMAND_OUTPUT_BUDGET_CONTRACTS, PM_OUTPUT_BUDGET_CLASSES, PM_OUTPUT_DEGRADATION_STEPS, createPmCommandOutputBudget, definePmCommandOutputBudget, estimatePmOutputTokens, inferPmOutputBudgetClass, resolvePmCommandOutputBudget, type PmCommandOutputBudgetContract, type PmOutputBudgetClass, type PmOutputDegradationStep, } from "./cli-contracts/agent-output-contracts.js";
|
|
28
|
+
export { PM_COMMAND_OUTPUT_BUDGET_CONTRACTS, PM_DIAGNOSTIC_DEGRADATION_STEPS, PM_DIAGNOSTIC_OUTPUT_BUDGET_CONTRACTS, PM_DIAGNOSTIC_OUTPUT_CLASSES, PM_OUTPUT_BUDGET_CLASSES, PM_OUTPUT_DEGRADATION_STEPS, createPmCommandOutputBudget, definePmCommandOutputBudget, estimatePmOutputTokens, inferPmOutputBudgetClass, projectPmDiagnosticOutput, projectPmDiagnosticText, resolvePmDiagnosticOutputBudget, resolvePmCommandOutputBudget, type PmCommandOutputBudgetContract, type PmDiagnosticDegradationStep, type PmDiagnosticOutputBudgetContract, type PmDiagnosticOutputClass, type PmDiagnosticOutputReceipt, type PmOutputBudgetClass, type PmOutputDegradationStep, type PmProjectedDiagnostic, type PmProjectedTextDiagnostic, } from "./cli-contracts/agent-output-contracts.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]="
|
|
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]="8f665958-197a-5f20-8904-0a59a623f30f")}catch(e){}}();
|
|
3
3
|
export { EXECUTABLE_COMMAND_ALIASES, PM_COMMAND_ALIAS_CONTRACTS, renderPmCommandAliasMigrationHint, resolvePmCommandAlias, } 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";
|
|
@@ -13,6 +13,6 @@ export { PM_POSITIONAL_ACTION_CONTRACTS, } from "./cli-contracts/grammar-contrac
|
|
|
13
13
|
export { withFlagAliasMetadata, compactFlagAliasContracts, resolvePmPositionalActionFlagContracts, 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_REOPEN_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";
|
|
14
14
|
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";
|
|
15
15
|
export { analyzeSdkCliParameterCompleteness, } from "./cli-contracts/completeness.js";
|
|
16
|
-
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
|
+
export { PM_COMMAND_OUTPUT_BUDGET_CONTRACTS, PM_DIAGNOSTIC_DEGRADATION_STEPS, PM_DIAGNOSTIC_OUTPUT_BUDGET_CONTRACTS, PM_DIAGNOSTIC_OUTPUT_CLASSES, PM_OUTPUT_BUDGET_CLASSES, PM_OUTPUT_DEGRADATION_STEPS, createPmCommandOutputBudget, definePmCommandOutputBudget, estimatePmOutputTokens, inferPmOutputBudgetClass, projectPmDiagnosticOutput, projectPmDiagnosticText, resolvePmDiagnosticOutputBudget, resolvePmCommandOutputBudget, } from "./cli-contracts/agent-output-contracts.js";
|
|
17
17
|
//# sourceMappingURL=cli-contracts.js.map
|
|
18
|
-
//# debugId=
|
|
18
|
+
//# debugId=8f665958-197a-5f20-8904-0a59a623f30f
|
|
@@ -91,7 +91,7 @@ export declare function runGitCommand(args: string[], execRunner?: typeof execFi
|
|
|
91
91
|
export declare function resolveNpmCommandName(platform?: NodeJS.Platform): "npm" | "npm.cmd";
|
|
92
92
|
/** Implements should run npm command in shell for the public runtime surface of this module. */
|
|
93
93
|
export declare function shouldRunNpmCommandInShell(platform?: NodeJS.Platform): boolean;
|
|
94
|
-
declare function runNpmCommand(args: string[], cwd?: string, execRunner?: typeof execFileAsync, platform?: NodeJS.Platform): Promise<string>;
|
|
94
|
+
declare function runNpmCommand(args: string[], cwd?: string, execRunner?: typeof execFileAsync, platform?: NodeJS.Platform, environment?: NodeJS.ProcessEnv): Promise<string>;
|
|
95
95
|
declare function npmPackageNameFromSpec(spec: string): string;
|
|
96
96
|
/** Implements check whether npm not found error for the public runtime surface of this module. */
|
|
97
97
|
export declare function isNpmNotFoundError(error: unknown): boolean;
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* Implements extension package-management support for Install Sources.
|
|
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]="
|
|
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]="89b84412-aa15-5868-95b3-c8d898b1f480")}catch(e){}}();
|
|
8
8
|
import { execFile } from "node:child_process";
|
|
9
9
|
import fs from "node:fs/promises";
|
|
10
10
|
import os from "node:os";
|
|
@@ -200,12 +200,15 @@ export function resolveNpmCommandName(platform = process.platform) {
|
|
|
200
200
|
export function shouldRunNpmCommandInShell(platform = process.platform) {
|
|
201
201
|
return platform === "win32";
|
|
202
202
|
}
|
|
203
|
-
async function runNpmCommand(args, cwd, execRunner = execFileAsync, platform = process.platform) {
|
|
203
|
+
async function runNpmCommand(args, cwd, execRunner = execFileAsync, platform = process.platform, environment = process.env) {
|
|
204
204
|
const npmCommand = resolveNpmCommandName(platform);
|
|
205
|
+
const env = Object.fromEntries(Object.entries(environment).filter(([key]) => key.toLowerCase() !== "npm_config_allow_scripts"));
|
|
206
|
+
env.NPM_CONFIG_ALLOW_SCRIPTS = "";
|
|
205
207
|
try {
|
|
206
208
|
const result = await execRunner(npmCommand, args, {
|
|
207
209
|
cwd,
|
|
208
210
|
encoding: "utf8",
|
|
211
|
+
env,
|
|
209
212
|
shell: shouldRunNpmCommandInShell(platform),
|
|
210
213
|
});
|
|
211
214
|
return (result.stdout ?? "").trim();
|
|
@@ -959,4 +962,4 @@ export const _testOnlyInstallSources = {
|
|
|
959
962
|
runNpmCommand,
|
|
960
963
|
};
|
|
961
964
|
//# sourceMappingURL=install-sources.js.map
|
|
962
|
-
//# debugId=
|
|
965
|
+
//# debugId=89b84412-aa15-5868-95b3-c8d898b1f480
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* Classifies output overrides against manifest-declared command ownership.
|
|
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]="
|
|
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]="e5a4cea9-ac5d-5bda-9f7c-6cf8cf9e9998")}catch(e){}}();
|
|
8
8
|
import { normalizeExtensionNameForMatch } from "./shared.js";
|
|
9
9
|
/** Collect doctor warnings for output overrides without an explicit command or result ownership boundary. */
|
|
10
10
|
export function collectGlobalOutputOverrideDoctorWarnings(activationResult, loadResult) {
|
|
@@ -13,6 +13,7 @@ export function collectGlobalOutputOverrideDoctorWarnings(activationResult, load
|
|
|
13
13
|
: []));
|
|
14
14
|
const serviceWarnings = activationResult.services.overrides
|
|
15
15
|
.filter((entry) => entry.service === "output_format")
|
|
16
|
+
.filter((entry) => entry.passThrough !== true)
|
|
16
17
|
.filter((entry) => !commandScopedOwners.has(`${entry.layer}:${normalizeExtensionNameForMatch(entry.name)}`))
|
|
17
18
|
.map((entry) => `extension_output_service_override_global:${entry.service}:${entry.layer}:${entry.name}`);
|
|
18
19
|
const rendererWarnings = activationResult.renderers.overrides
|
|
@@ -22,4 +23,4 @@ export function collectGlobalOutputOverrideDoctorWarnings(activationResult, load
|
|
|
22
23
|
return [...new Set([...serviceWarnings, ...rendererWarnings])].sort((left, right) => left.localeCompare(right));
|
|
23
24
|
}
|
|
24
25
|
//# sourceMappingURL=output-ownership.js.map
|
|
25
|
-
//# debugId=
|
|
26
|
+
//# debugId=e5a4cea9-ac5d-5bda-9f7c-6cf8cf9e9998
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/** Generated partition 1 of the exhaustive error-code catalog. */
|
|
2
2
|
|
|
3
|
-
!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]="
|
|
3
|
+
!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]="2903ebb9-541a-5636-ae3c-e996d3f0cec4")}catch(e){}}();
|
|
4
4
|
export const PM_ERROR_CODE_CATALOG_PART_1 = [
|
|
5
5
|
{
|
|
6
6
|
code: "acceptance_criteria_mutation_conflict",
|
|
@@ -962,6 +962,42 @@ export const PM_ERROR_CODE_CATALOG_PART_1 = [
|
|
|
962
962
|
canonical_code: "github_source_entry_unbuilt",
|
|
963
963
|
aliases: [],
|
|
964
964
|
},
|
|
965
|
+
{
|
|
966
|
+
code: "hierarchy_cardinality_created",
|
|
967
|
+
meaning: "Hierarchy cardinality created condition.",
|
|
968
|
+
stability: "provisional",
|
|
969
|
+
exit_code: 4,
|
|
970
|
+
class: "conflict",
|
|
971
|
+
recovery: "Inspect the structured error guidance and retry the suggested command.",
|
|
972
|
+
sources: ["sdk/graph/hierarchy-integrity.ts"],
|
|
973
|
+
emitting_commands: ["*"],
|
|
974
|
+
canonical_code: "hierarchy_cardinality_created",
|
|
975
|
+
aliases: [],
|
|
976
|
+
},
|
|
977
|
+
{
|
|
978
|
+
code: "hierarchy_cycle_created",
|
|
979
|
+
meaning: "Hierarchy cycle created condition.",
|
|
980
|
+
stability: "provisional",
|
|
981
|
+
exit_code: 4,
|
|
982
|
+
class: "conflict",
|
|
983
|
+
recovery: "Inspect the structured error guidance and retry the suggested command.",
|
|
984
|
+
sources: ["sdk/graph/hierarchy-integrity.ts"],
|
|
985
|
+
emitting_commands: ["*"],
|
|
986
|
+
canonical_code: "hierarchy_cycle_created",
|
|
987
|
+
aliases: [],
|
|
988
|
+
},
|
|
989
|
+
{
|
|
990
|
+
code: "hierarchy_parent_divergence_created",
|
|
991
|
+
meaning: "Hierarchy parent divergence created condition.",
|
|
992
|
+
stability: "provisional",
|
|
993
|
+
exit_code: 4,
|
|
994
|
+
class: "conflict",
|
|
995
|
+
recovery: "Inspect the structured error guidance and retry the suggested command.",
|
|
996
|
+
sources: ["sdk/graph/hierarchy-integrity.ts"],
|
|
997
|
+
emitting_commands: ["*"],
|
|
998
|
+
canonical_code: "hierarchy_parent_divergence_created",
|
|
999
|
+
aliases: [],
|
|
1000
|
+
},
|
|
965
1001
|
{
|
|
966
1002
|
code: "history_author_acknowledge_plan_conflict",
|
|
967
1003
|
meaning: "History author acknowledge plan conflict condition.",
|
|
@@ -1932,18 +1968,6 @@ export const PM_ERROR_CODE_CATALOG_PART_1 = [
|
|
|
1932
1968
|
canonical_code: "missing_budget",
|
|
1933
1969
|
aliases: [],
|
|
1934
1970
|
},
|
|
1935
|
-
{
|
|
1936
|
-
code: "missing_cli_flag",
|
|
1937
|
-
meaning: "Missing cli flag condition.",
|
|
1938
|
-
stability: "provisional",
|
|
1939
|
-
exit_code: 1,
|
|
1940
|
-
class: "generic_failure",
|
|
1941
|
-
recovery: "Inspect the structured error guidance and retry the suggested command.",
|
|
1942
|
-
sources: ["sdk/cli-contracts/tool-option-contracts.ts"],
|
|
1943
|
-
emitting_commands: ["*"],
|
|
1944
|
-
canonical_code: "missing_cli_flag",
|
|
1945
|
-
aliases: [],
|
|
1946
|
-
},
|
|
1947
1971
|
];
|
|
1948
1972
|
//# sourceMappingURL=generated-error-code-catalog-part-1.js.map
|
|
1949
|
-
//# debugId=
|
|
1973
|
+
//# debugId=2903ebb9-541a-5636-ae3c-e996d3f0cec4
|
|
@@ -1,7 +1,19 @@
|
|
|
1
1
|
/** Generated partition 2 of the exhaustive error-code catalog. */
|
|
2
2
|
|
|
3
|
-
!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]="
|
|
3
|
+
!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]="4f1bb829-c6be-5a3e-90f2-4b0062aa2dac")}catch(e){}}();
|
|
4
4
|
export const PM_ERROR_CODE_CATALOG_PART_2 = [
|
|
5
|
+
{
|
|
6
|
+
code: "missing_cli_flag",
|
|
7
|
+
meaning: "Missing cli flag condition.",
|
|
8
|
+
stability: "provisional",
|
|
9
|
+
exit_code: 1,
|
|
10
|
+
class: "generic_failure",
|
|
11
|
+
recovery: "Inspect the structured error guidance and retry the suggested command.",
|
|
12
|
+
sources: ["sdk/cli-contracts/tool-option-contracts.ts"],
|
|
13
|
+
emitting_commands: ["*"],
|
|
14
|
+
canonical_code: "missing_cli_flag",
|
|
15
|
+
aliases: [],
|
|
16
|
+
},
|
|
5
17
|
{
|
|
6
18
|
code: "missing_destination",
|
|
7
19
|
meaning: "Missing destination condition.",
|
|
@@ -1978,4 +1990,4 @@ export const PM_ERROR_CODE_CATALOG_PART_2 = [
|
|
|
1978
1990
|
},
|
|
1979
1991
|
];
|
|
1980
1992
|
//# sourceMappingURL=generated-error-code-catalog-part-2.js.map
|
|
1981
|
-
//# debugId=
|
|
1993
|
+
//# debugId=4f1bb829-c6be-5a3e-90f2-4b0062aa2dac
|