@unbrained/pm-cli 2026.8.22 → 2026.8.23

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 (168) hide show
  1. package/.claude-plugin/marketplace.json +2 -2
  2. package/CHANGELOG.md +28 -0
  3. package/dist/cli/error-guidance.d.ts +13 -0
  4. package/dist/cli/error-guidance.js +62 -6
  5. package/dist/cli/main.js +13 -4
  6. package/dist/cli/register-mutation.js +6 -6
  7. package/dist/cli/register-operations.d.ts +73 -0
  8. package/dist/cli/register-operations.js +39 -14
  9. package/dist/cli/register-setup.js +3 -3
  10. package/dist/cli/schema-registration-helpers.d.ts +8 -1
  11. package/dist/cli/schema-registration-helpers.js +14 -5
  12. package/dist/cli-bundle/bundle-manifest.json +155 -155
  13. package/dist/cli-bundle/chunks/chunk-3ENVHX6C.js +36 -0
  14. package/dist/cli-bundle/chunks/{chunk-QI2CT3IX.js → chunk-DW2CGEMU.js} +2 -2
  15. package/dist/cli-bundle/chunks/{chunk-WG4STC36.js → chunk-EG6CLDZT.js} +2 -2
  16. package/dist/cli-bundle/chunks/{chunk-MYYI3ZOA.js → chunk-F3AI2JFL.js} +2 -2
  17. package/dist/cli-bundle/chunks/{chunk-U6GQ4VMV.js → chunk-HWZ6CELB.js} +4 -4
  18. package/dist/cli-bundle/chunks/chunk-HZBMLSZI.js +201 -0
  19. package/dist/cli-bundle/chunks/chunk-JB4KZWBF.js +3 -0
  20. package/dist/cli-bundle/chunks/chunk-KPH73XXJ.js +2 -0
  21. package/dist/cli-bundle/chunks/{chunk-BWX4SK46.js → chunk-KXPMB2YL.js} +58 -58
  22. package/dist/cli-bundle/chunks/{chunk-MZTZQTMS.js → chunk-QDVHNHAQ.js} +2 -2
  23. package/dist/cli-bundle/chunks/chunk-TFI5V5N2.js +13 -0
  24. package/dist/cli-bundle/chunks/{register-list-query-HZKBQNWW.js → register-list-query-UJB5FMV2.js} +2 -2
  25. package/dist/cli-bundle/chunks/register-mutation-NX5XE4VX.js +20 -0
  26. package/dist/cli-bundle/chunks/register-operations-RXIJIYXC.js +2 -0
  27. package/dist/cli-bundle/chunks/{register-setup-QK4OTOXN.js → register-setup-GFUZEKRE.js} +2 -2
  28. package/dist/cli-bundle/focused-chunks/{chunk-2POVTNLY.js → chunk-37Z4OEAP.js} +2 -2
  29. package/dist/cli-bundle/focused-chunks/chunk-3UPTYG44.js +8 -0
  30. package/dist/cli-bundle/focused-chunks/{chunk-E2EWYPY6.js → chunk-5S7E72FY.js} +2 -2
  31. package/dist/cli-bundle/focused-chunks/{chunk-GMYPD4FX.js → chunk-AUFH5H35.js} +2 -2
  32. package/dist/cli-bundle/focused-chunks/chunk-E7X25GC3.js +2 -0
  33. package/dist/cli-bundle/focused-chunks/{chunk-3LKU6PTJ.js → chunk-FQCSTBWE.js} +2 -2
  34. package/dist/cli-bundle/focused-chunks/{chunk-6S2MO3Q3.js → chunk-FZS4H32O.js} +2 -2
  35. package/dist/cli-bundle/focused-chunks/chunk-IFLWKY2R.js +156 -0
  36. package/dist/cli-bundle/focused-chunks/{chunk-PMGJUFNQ.js → chunk-JOWDB2MH.js} +2 -2
  37. package/dist/cli-bundle/focused-chunks/chunk-LYVSW5VM.js +2 -0
  38. package/dist/cli-bundle/focused-chunks/chunk-MRCNF3U6.js +2 -0
  39. package/dist/cli-bundle/focused-chunks/{chunk-A2BC5PQL.js → chunk-OFVUGTLJ.js} +2 -2
  40. package/dist/cli-bundle/focused-chunks/{chunk-2ARQGDDW.js → chunk-OGLQBL46.js} +2 -2
  41. package/dist/cli-bundle/focused-chunks/{chunk-R6SR45XU.js → chunk-OY7QAV4Y.js} +48 -47
  42. package/dist/cli-bundle/focused-chunks/chunk-QGFNI65N.js +26 -0
  43. package/dist/cli-bundle/focused-chunks/{chunk-D6RBZEJJ.js → chunk-R27IDGHD.js} +2 -2
  44. package/dist/cli-bundle/focused-chunks/chunk-UYRFYCDQ.js +5 -0
  45. package/dist/cli-bundle/focused-chunks/{chunk-PH2OXXVZ.js → chunk-ZHVA42R5.js} +9 -9
  46. package/dist/cli-bundle/main.js +13 -13
  47. package/dist/cli-bundle/sdk-authoring.js +1 -1
  48. package/dist/cli-bundle/sdk-contracts.js +2 -2
  49. package/dist/cli-bundle/sdk-core.js +40 -40
  50. package/dist/cli-bundle/sdk-governance.js +1 -1
  51. package/dist/cli-bundle/sdk-graph.js +1 -1
  52. package/dist/cli-bundle/sdk-merge.js +33 -32
  53. package/dist/cli-bundle/sdk-query.js +1 -1
  54. package/dist/cli-bundle/sdk-runtime.js +1 -1
  55. package/dist/cli-bundle/sdk-testing.js +1 -1
  56. package/dist/cli-bundle/sdk.js +5 -5
  57. package/dist/core/config/nested-settings.js +8 -2
  58. package/dist/core/config/positional-value.d.ts +1 -1
  59. package/dist/core/config/positional-value.js +5 -2
  60. package/dist/core/history/history.js +3 -3
  61. package/dist/core/item/item-format.js +66 -12
  62. package/dist/core/reproducibility/context.d.ts +4 -0
  63. package/dist/core/reproducibility/context.js +14 -8
  64. package/dist/core/shared/author.d.ts +55 -1
  65. package/dist/core/shared/author.js +333 -16
  66. package/dist/core/shared/constants.js +3 -2
  67. package/dist/core/store/settings-validator.d.ts +1 -0
  68. package/dist/core/store/settings-validator.js +6 -3
  69. package/dist/core/store/settings.js +5 -2
  70. package/dist/mcp/server.d.ts +1 -1
  71. package/dist/mcp/server.js +30 -9
  72. package/dist/sdk/agent/identity-config.d.ts +63 -0
  73. package/dist/sdk/agent/identity-config.js +107 -0
  74. package/dist/sdk/agent/refusal-corpus-contracts.d.ts +76 -0
  75. package/dist/sdk/agent/refusal-corpus-contracts.js +194 -0
  76. package/dist/sdk/cli-contracts/agent-output-contracts.js +6 -4
  77. package/dist/sdk/cli-contracts/enum-contracts.d.ts +4 -0
  78. package/dist/sdk/cli-contracts/enum-contracts.js +9 -2
  79. package/dist/sdk/cli-contracts/flag-contracts.js +9 -2
  80. package/dist/sdk/cli-contracts/flag-lexicon-contracts.js +4 -4
  81. package/dist/sdk/cli-contracts/registration-helpers.js +5 -2
  82. package/dist/sdk/cli-contracts/tool-parameter-tables.js +22 -2
  83. package/dist/sdk/cli-contracts/tool-schema.d.ts +1 -1
  84. package/dist/sdk/cli-contracts/tool-schema.js +14 -3
  85. package/dist/sdk/cli-contracts.d.ts +3 -3
  86. package/dist/sdk/cli-contracts.js +4 -4
  87. package/dist/sdk/config.d.ts +6 -1
  88. package/dist/sdk/config.js +119 -14
  89. package/dist/sdk/context-intent-contracts.js +4 -2
  90. package/dist/sdk/core-governance.d.ts +1 -1
  91. package/dist/sdk/core-governance.js +3 -3
  92. package/dist/sdk/extension/scaffold.js +11 -5
  93. package/dist/sdk/flag-invocation-contracts.js +4 -2
  94. package/dist/sdk/generated/generated-error-code-catalog-part-1.js +50 -2
  95. package/dist/sdk/generated/generated-error-code-catalog-part-2.js +87 -38
  96. package/dist/sdk/governance/assurance-action.js +30 -10
  97. package/dist/sdk/governance/validate.d.ts +2 -2
  98. package/dist/sdk/governance/validate.js +39 -14
  99. package/dist/sdk/index.d.ts +7 -2
  100. package/dist/sdk/index.js +8 -3
  101. package/dist/sdk/lifecycle/create.js +6 -3
  102. package/dist/sdk/lifecycle/update.js +5 -3
  103. package/dist/sdk/merge/three-way.js +105 -26
  104. package/dist/sdk/read-output-budget.d.ts +21 -0
  105. package/dist/sdk/read-output-budget.js +39 -2
  106. package/dist/sdk/read-output-contracts.d.ts +5 -3
  107. package/dist/sdk/read-output-contracts.js +20 -12
  108. package/dist/sdk/reproducibility/process.d.ts +19 -0
  109. package/dist/sdk/reproducibility/process.js +88 -0
  110. package/dist/sdk/runtime-primitives.d.ts +1 -1
  111. package/dist/sdk/runtime-primitives.js +3 -3
  112. package/dist/sdk/runtime.js +6 -5
  113. package/dist/sdk/test/batch.d.ts +6 -0
  114. package/dist/sdk/test/batch.js +15 -3
  115. package/dist/sdk/test/entry.d.ts +1 -1
  116. package/dist/sdk/test/entry.js +3 -2
  117. package/dist/sdk/test/execution.d.ts +28 -3
  118. package/dist/sdk/test/execution.js +193 -34
  119. package/dist/sdk/test/parsers.d.ts +6 -0
  120. package/dist/sdk/test/parsers.js +21 -2
  121. package/dist/sdk/test/trust.d.ts +33 -0
  122. package/dist/sdk/test/trust.js +207 -0
  123. package/dist/types.d.ts +23 -0
  124. package/dist/types.js +2 -2
  125. package/docs/AGENT_PROVENANCE_ADR.md +41 -5
  126. package/docs/CONFIGURATION.md +4 -0
  127. package/docs/DIAGNOSTIC_OUTPUT_CONTRACTS.md +19 -2
  128. package/docs/MERGE_SAFETY.md +15 -1
  129. package/docs/READ_OUTPUT_CONTRACTS.md +11 -1
  130. package/docs/REPRODUCIBLE_WORKSPACES.md +42 -8
  131. package/docs/SDK.md +9 -0
  132. package/docs/SDK_AGENT_SESSION_CONTEXT.md +6 -4
  133. package/docs/SDK_EVIDENCE_TRACEABILITY.md +1 -1
  134. package/docs/TESTING.md +75 -8
  135. package/docs/agent-task-token-baseline.json +2 -2
  136. package/docs/generated/FLAG_LEXICON_BUDGETS.md +2 -2
  137. package/marketplace.json +2 -2
  138. package/package.json +2 -2
  139. package/packages/pm-beads/package.json +1 -1
  140. package/packages/pm-calendar/package.json +1 -1
  141. package/packages/pm-command-kit/package.json +1 -1
  142. package/packages/pm-digital-twin/package.json +1 -1
  143. package/packages/pm-governance-audit/package.json +1 -1
  144. package/packages/pm-guide-shell/package.json +1 -1
  145. package/packages/pm-kanban/package.json +1 -1
  146. package/packages/pm-lifecycle-hooks/package.json +1 -1
  147. package/packages/pm-linked-test-adapters/package.json +1 -1
  148. package/packages/pm-search-advanced/package.json +1 -1
  149. package/packages/pm-templates/package.json +1 -1
  150. package/packages/pm-todos/package.json +1 -1
  151. package/packages/pm-vcs/package.json +1 -1
  152. package/plugins/pm-claude/.claude-plugin/plugin.json +1 -1
  153. package/plugins/pm-codex/.codex-plugin/plugin.json +1 -1
  154. package/sdk/public-surface.json +427 -17
  155. package/dist/cli-bundle/chunks/chunk-EMWDM5FI.js +0 -13
  156. package/dist/cli-bundle/chunks/chunk-HYG6LRL4.js +0 -200
  157. package/dist/cli-bundle/chunks/chunk-SMWXHMVB.js +0 -35
  158. package/dist/cli-bundle/chunks/chunk-VMMIL3SI.js +0 -2
  159. package/dist/cli-bundle/chunks/chunk-YBPJAOQQ.js +0 -3
  160. package/dist/cli-bundle/chunks/register-mutation-HTKEEGRD.js +0 -20
  161. package/dist/cli-bundle/chunks/register-operations-6EMRWJJY.js +0 -2
  162. package/dist/cli-bundle/focused-chunks/chunk-2AZT5WXZ.js +0 -2
  163. package/dist/cli-bundle/focused-chunks/chunk-5SHSBMX2.js +0 -2
  164. package/dist/cli-bundle/focused-chunks/chunk-C4S4A4JJ.js +0 -5
  165. package/dist/cli-bundle/focused-chunks/chunk-L5LDSRO2.js +0 -155
  166. package/dist/cli-bundle/focused-chunks/chunk-MB37AYN6.js +0 -26
  167. package/dist/cli-bundle/focused-chunks/chunk-MCOR37QK.js +0 -2
  168. package/dist/cli-bundle/focused-chunks/chunk-WZE4LIPW.js +0 -8
@@ -91,7 +91,7 @@ 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 contract tests bind to one version constant. 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.8.0";
94
+ export declare const PM_TOOL_PARAMETERS_SCHEMA_VERSION: "4.9.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.
@@ -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]="2818ff28-e606-5413-9cc4-81e41208ba23")}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]="b54b0565-3968-59ea-b5f9-8ae52731473a")}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";
@@ -993,6 +993,10 @@ const PM_TOOL_ACTION_SCHEMA_CONTRACTS = {
993
993
  "sharedHostSafe",
994
994
  "pmContext",
995
995
  "overrideLinkedPmContext",
996
+ "workspaceContext",
997
+ "overrideLinkedWorkspaceContext",
998
+ "allowUntrustedLinkedTests",
999
+ "acknowledgeLinkedTests",
996
1000
  "failOnContextMismatch",
997
1001
  "failOnSkipped",
998
1002
  "failOnEmptyTestRun",
@@ -1004,6 +1008,10 @@ const PM_TOOL_ACTION_SCHEMA_CONTRACTS = {
1004
1008
  "metricDiff",
1005
1009
  ...AUTHOR_MESSAGE_FORCE_PARAMETER_KEYS,
1006
1010
  ],
1011
+ mutuallyExclusive: [
1012
+ ["acknowledgeLinkedTests", "run"],
1013
+ ["acknowledgeLinkedTests", "background"],
1014
+ ],
1007
1015
  },
1008
1016
  "test-all": {
1009
1017
  optional: [
@@ -1018,6 +1026,9 @@ const PM_TOOL_ACTION_SCHEMA_CONTRACTS = {
1018
1026
  "sharedHostSafe",
1019
1027
  "pmContext",
1020
1028
  "overrideLinkedPmContext",
1029
+ "workspaceContext",
1030
+ "overrideLinkedWorkspaceContext",
1031
+ "allowUntrustedLinkedTests",
1021
1032
  "failOnContextMismatch",
1022
1033
  "failOnSkipped",
1023
1034
  "failOnEmptyTestRun",
@@ -1520,7 +1531,7 @@ function createLazyContractSchema(build) {
1520
1531
  });
1521
1532
  }
1522
1533
  /** 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 contract tests bind to one version constant. 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. */
1523
- export const PM_TOOL_PARAMETERS_SCHEMA_VERSION = "4.8.0";
1534
+ export const PM_TOOL_PARAMETERS_SCHEMA_VERSION = "4.9.0";
1524
1535
  /**
1525
1536
  * Major component of {@link PM_TOOL_PARAMETERS_SCHEMA_VERSION}, used to build the
1526
1537
  * schema `$id` slug so a breaking version bump renames the document in lockstep.
@@ -1602,4 +1613,4 @@ export const _testOnlyCliContracts = {
1602
1613
  withFlagAliasMetadata,
1603
1614
  };
1604
1615
  //# sourceMappingURL=tool-schema.js.map
1605
- //# debugId=2818ff28-e606-5413-9cc4-81e41208ba23
1616
+ //# debugId=b54b0565-3968-59ea-b5f9-8ae52731473a
@@ -14,12 +14,12 @@ export type { CommanderOptionAliasContract, CommanderOptionRegistrationContract,
14
14
  export { EXECUTABLE_COMMAND_ALIASES, PM_COMMAND_ALIAS_CONTRACTS, renderPmCommandAliasMigrationHint, resolvePmCommandAlias, type PmCommandAliasContract, type PmCommandAliasLifecycle, type PmCommandAliasRegistration, } from "./cli-contracts/command-aliases.js";
15
15
  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";
16
16
  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";
17
- 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_ITEM_ACTION_SUBCOMMANDS, PM_DEPRECATED_TOOL_ACTIONS, PM_DISCOVERABLE_TOOL_ACTIONS, PM_TOOL_ACTIONS, analyzePmToolActionParity, isPmToolAction, isPmExtensionCapabilityContract, isPmExtensionServiceNameContract, isPmExtensionPolicyModeContract, isPmExtensionPolicySurfaceContract, } from "./cli-contracts/enum-contracts.js";
18
- export type { PmExtensionCapabilityContract, PmExtensionServiceNameContract, PmExtensionPolicyModeContract, PmExtensionTrustModeContract, PmExtensionSandboxProfileContract, PmExtensionPolicySurfaceContract, PmToolAction, } from "./cli-contracts/enum-contracts.js";
17
+ export { MERGE_SUBCOMMAND_VALUES, 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_ITEM_ACTION_SUBCOMMANDS, PM_DEPRECATED_TOOL_ACTIONS, PM_DISCOVERABLE_TOOL_ACTIONS, PM_TOOL_ACTIONS, analyzePmToolActionParity, isPmToolAction, isPmExtensionCapabilityContract, isPmExtensionServiceNameContract, isPmExtensionPolicyModeContract, isPmExtensionPolicySurfaceContract, } from "./cli-contracts/enum-contracts.js";
18
+ export type { MergeSubcommand, PmExtensionCapabilityContract, PmExtensionServiceNameContract, PmExtensionPolicyModeContract, PmExtensionTrustModeContract, PmExtensionSandboxProfileContract, PmExtensionPolicySurfaceContract, PmToolAction, } from "./cli-contracts/enum-contracts.js";
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, verifyToolOptionCliParity, type ToolOptionCliParityFinding, type ToolOptionCliParityReport, } 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 { PM_POSITIONAL_ACTION_CONTRACTS, type PmPositionalActionContract, } from "./cli-contracts/grammar-contracts.js";
22
+ export { PM_COMMAND_POSITIONAL_CONTRACTS, PM_POSITIONAL_ACTION_CONTRACTS, type PmCommandPositionalContract, type PmCommandPositionalSlotContract, type PmPositionalActionContract, } from "./cli-contracts/grammar-contracts.js";
23
23
  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";
24
24
  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";
@@ -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]="8f665958-197a-5f20-8904-0a59a623f30f")}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]="c008aee5-ffe9-5da2-b1d9-6fb9fb6684c5")}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";
@@ -7,12 +7,12 @@ export { CREATE_COMMANDER_OPTION_REGISTRATION_CONTRACTS, CREATE_COMMANDER_REPEAT
7
7
  // tables live in sibling modules and are re-exported here so existing import
8
8
  // sites (sdk/index.ts, mcp/server.ts, commands/contracts.ts, completion.ts, …)
9
9
  // keep importing everything from "./cli-contracts.js" unchanged.
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_ITEM_ACTION_SUBCOMMANDS, PM_DEPRECATED_TOOL_ACTIONS, PM_DISCOVERABLE_TOOL_ACTIONS, PM_TOOL_ACTIONS, analyzePmToolActionParity, isPmToolAction, isPmExtensionCapabilityContract, isPmExtensionServiceNameContract, isPmExtensionPolicyModeContract, isPmExtensionPolicySurfaceContract, } from "./cli-contracts/enum-contracts.js";
10
+ export { MERGE_SUBCOMMAND_VALUES, 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_ITEM_ACTION_SUBCOMMANDS, PM_DEPRECATED_TOOL_ACTIONS, PM_DISCOVERABLE_TOOL_ACTIONS, 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, verifyToolOptionCliParity, } from "./cli-contracts/tool-option-contracts.js";
12
- export { PM_POSITIONAL_ACTION_CONTRACTS, } from "./cli-contracts/grammar-contracts.js";
12
+ export { PM_COMMAND_POSITIONAL_CONTRACTS, PM_POSITIONAL_ACTION_CONTRACTS, } from "./cli-contracts/grammar-contracts.js";
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
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=8f665958-197a-5f20-8904-0a59a623f30f
18
+ //# debugId=c008aee5-ffe9-5da2-b1d9-6fb9fb6684c5
@@ -6,6 +6,7 @@
6
6
  import { type ConfigKey } from "../core/config/positional-value.js";
7
7
  import { type NestedSettingDescriptor } from "../core/config/nested-settings.js";
8
8
  import type { GlobalOptions } from "../core/shared/command-types.js";
9
+ import { type AgentIdentityVocabularyMutationPreview, type AgentIdentityVocabularySummary } from "./agent/identity-config.js";
9
10
  import type { GovernanceCloseValidationDefault, GovernanceCreateModeDefault, GovernanceOwnershipEnforcement, GovernancePreset, GovernanceWorkflowEnforcement, ItemFormat, ParentReferencePolicy, SprintReleaseFormatPolicy, ValidateMetadataProfile, ValidateMetadataRequiredField } from "../types/index.js";
10
11
  declare const CONFIG_SCOPE_VALUES: readonly ["project", "global"];
11
12
  type ConfigScope = (typeof CONFIG_SCOPE_VALUES)[number];
@@ -15,7 +16,7 @@ type TestResultTrackingPolicy = "enabled" | "disabled";
15
16
  type TelemetryTrackingPolicy = "enabled" | "disabled";
16
17
  type GovernanceForceRequiredForStaleLockPolicy = "enabled" | "disabled";
17
18
  type GovernanceRequireCloseReasonPolicy = "enabled" | "disabled";
18
- type ConfigValue = string | string[] | ItemFormat | HistoryMissingStreamPolicy | SprintReleaseFormatPolicy | ParentReferencePolicy | ValidateMetadataProfile | GovernancePreset | GovernanceOwnershipEnforcement | GovernanceCreateModeDefault | GovernanceCloseValidationDefault | GovernanceRequireCloseReasonPolicy | GovernanceWorkflowEnforcement | GovernanceForceRequiredForStaleLockPolicy | TestResultTrackingPolicy | TelemetryTrackingPolicy | ContextConfigValue;
19
+ type ConfigValue = string | string[] | ItemFormat | HistoryMissingStreamPolicy | SprintReleaseFormatPolicy | ParentReferencePolicy | ValidateMetadataProfile | GovernancePreset | GovernanceOwnershipEnforcement | GovernanceCreateModeDefault | GovernanceCloseValidationDefault | GovernanceRequireCloseReasonPolicy | GovernanceWorkflowEnforcement | GovernanceForceRequiredForStaleLockPolicy | TestResultTrackingPolicy | TelemetryTrackingPolicy | AgentIdentityVocabularySummary | ContextConfigValue;
19
20
  interface ContextConfigValue {
20
21
  default_depth: string;
21
22
  activity_limit: number;
@@ -110,6 +111,10 @@ export interface ConfigResult {
110
111
  count?: number;
111
112
  /** Configuration controlling context behavior. */
112
113
  context_settings?: ContextConfigValue;
114
+ /** Privacy-safe revision/count projection for legacy author interpretation. */
115
+ identity_vocabulary?: AgentIdentityVocabularySummary;
116
+ /** Dry-run or committed vocabulary mutation receipt without alias spellings. */
117
+ vocabulary_mutation?: AgentIdentityVocabularyMutationPreview;
113
118
  /** Whether explicit item format applies to this operation. */
114
119
  has_explicit_item_format?: boolean;
115
120
  /** Value that configures or reports migration for this contract. */
@@ -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]="5918331a-46e9-5699-b85d-89f49a27d341")}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]="2f750f85-6c55-5f0f-b5c0-396764839d2a")}catch(e){}}();
8
8
  import { resolveConfigPositionalValue, } from "../core/config/positional-value.js";
9
9
  import { NESTED_SETTING_DESCRIPTORS, parseNestedSettingValue, readNestedSettingValue, resolveNestedSettingDescriptor, writeNestedSettingValue, } from "../core/config/nested-settings.js";
10
10
  import { getActiveExtensionRegistrations } from "../core/extensions/index.js";
@@ -16,6 +16,7 @@ import { resolveItemTypesFilePath } from "../core/schema/runtime-schema.js";
16
16
  import { EXIT_CODE } from "../core/shared/constants.js";
17
17
  import { PmCliError } from "../core/shared/errors.js";
18
18
  import { createUnknownSubcommandError } from "./agent/subcommand-recovery.js";
19
+ import { planAgentIdentityVocabularyMutation, summarizeAgentIdentityVocabulary, } from "./agent/identity-config.js";
19
20
  import { assertInitializedTracker } from "./environment/tracker-preflight.js";
20
21
  import { migrateItemFilesToFormat } from "../core/store/item-format-migration.js";
21
22
  import { getSettingsPath, resolveGlobalPmRoot, resolvePmRoot, } from "../core/store/paths.js";
@@ -99,7 +100,15 @@ const CONFIG_KEY_ALIASES = {
99
100
  "governance_force_required_for_stale_lock",
100
101
  ],
101
102
  test_result_tracking: ["test-result-tracking", "test_result_tracking"],
103
+ untrusted_linked_test_execution: [
104
+ "untrusted-linked-test-execution",
105
+ "untrusted_linked_test_execution",
106
+ ],
102
107
  telemetry_tracking: ["telemetry-tracking", "telemetry_tracking"],
108
+ agent_identity_vocabulary: [
109
+ "agent-identity-vocabulary",
110
+ "agent_identity_vocabulary",
111
+ ],
103
112
  context: ["context"],
104
113
  };
105
114
  // Canonical kebab-case forms (first alias entry per key). Used for the invalid-key
@@ -130,7 +139,9 @@ const CONFIG_KEY_SUMMARIES = {
130
139
  governance_metadata_validation_profile: "Governance metadata validation profile (core|strict|custom).",
131
140
  governance_force_required_for_stale_lock: "Governance stale-lock force policy (enabled|disabled).",
132
141
  test_result_tracking: "Item-level linked test result persistence policy.",
142
+ untrusted_linked_test_execution: "Permit an explicit per-run override for commands not trusted by this clone.",
133
143
  telemetry_tracking: "Telemetry usage reporting policy.",
144
+ agent_identity_vocabulary: "Versioned exact legacy-author interpretation vocabulary (summary only).",
134
145
  context: "Context command settings (depth, section toggles, limits).",
135
146
  };
136
147
  const LIFECYCLE_PATTERN_CONFIG_KEYS = [
@@ -145,6 +156,7 @@ const CRITERIA_CONFIG_KEYS = new Set([
145
156
  ]);
146
157
  const TRACKING_CONFIG_KEYS = new Set([
147
158
  "test_result_tracking",
159
+ "untrusted_linked_test_execution",
148
160
  "telemetry_tracking",
149
161
  ]);
150
162
  const GOVERNANCE_BOOLEAN_CONFIG_KEYS = new Set([
@@ -232,11 +244,14 @@ function normalizeHistoryMissingStreamPolicy(value) {
232
244
  throw new PmCliError("Config set history-missing-stream-policy requires --policy with one of: auto_create, strict_error", EXIT_CODE.USAGE);
233
245
  }
234
246
  function normalizeTestResultTrackingPolicy(value) {
247
+ return normalizeEnabledDisabledPolicy(value, "test-result-tracking");
248
+ }
249
+ function normalizeEnabledDisabledPolicy(value, key) {
235
250
  const normalized = value?.trim().toLowerCase().replaceAll("-", "_");
236
251
  if (normalized === "enabled" || normalized === "disabled") {
237
252
  return normalized;
238
253
  }
239
- throw new PmCliError("Config set test-result-tracking requires --policy with one of: enabled, disabled", EXIT_CODE.USAGE);
254
+ throw new PmCliError(`Config set ${key} requires --policy with one of: enabled, disabled`, EXIT_CODE.USAGE);
240
255
  }
241
256
  function normalizeTelemetryTrackingPolicy(value) {
242
257
  const normalized = value?.trim().toLowerCase().replaceAll("-", "_");
@@ -320,7 +335,15 @@ function normalizeGovernanceRequireCloseReasonPolicy(value) {
320
335
  }
321
336
  throw new PmCliError("Config set governance-require-close-reason requires --policy with one of: enabled, disabled", EXIT_CODE.USAGE);
322
337
  }
338
+ const ENABLED_DISABLED_CONFLICT_POLICY_KEYS = {
339
+ test_result_tracking: "test-result-tracking",
340
+ untrusted_linked_test_execution: "untrusted-linked-test-execution",
341
+ };
323
342
  function normalizePolicyForConflict(key, value) {
343
+ const enabledDisabledKey = ENABLED_DISABLED_CONFLICT_POLICY_KEYS[key];
344
+ if (enabledDisabledKey) {
345
+ return normalizeEnabledDisabledPolicy(value, enabledDisabledKey);
346
+ }
324
347
  switch (key) {
325
348
  case "history_missing_stream_policy":
326
349
  return normalizeHistoryMissingStreamPolicy(value);
@@ -346,8 +369,6 @@ function normalizePolicyForConflict(key, value) {
346
369
  return normalizeGovernanceWorkflowEnforcement(value);
347
370
  case "governance_force_required_for_stale_lock":
348
371
  return normalizeGovernanceForceRequiredForStaleLockPolicy(value);
349
- case "test_result_tracking":
350
- return normalizeTestResultTrackingPolicy(value);
351
372
  case "telemetry_tracking":
352
373
  return normalizeTelemetryTrackingPolicy(value);
353
374
  default:
@@ -477,7 +498,9 @@ const CONFIG_VALUE_READERS = {
477
498
  governance_metadata_validation_profile: (settings) => settings.governance.metadata_profile,
478
499
  governance_force_required_for_stale_lock: (settings) => settings.governance.force_required_for_stale_lock ? "enabled" : "disabled",
479
500
  test_result_tracking: (settings) => settings.testing.record_results_to_items ? "enabled" : "disabled",
501
+ untrusted_linked_test_execution: (settings) => settings.testing.allow_untrusted_linked_tests ? "enabled" : "disabled",
480
502
  telemetry_tracking: (settings) => settings.telemetry.enabled ? "enabled" : "disabled",
503
+ agent_identity_vocabulary: (settings) => summarizeAgentIdentityVocabulary(settings.agent_identity?.identity_vocabulary),
481
504
  context: (settings) => ({
482
505
  default_depth: settings.context.default_depth,
483
506
  activity_limit: settings.context.activity_limit,
@@ -642,7 +665,7 @@ function buildConfigListResult(context) {
642
665
  const keys = Object.keys(CONFIG_KEY_ALIASES).map((candidate) => ({
643
666
  key: candidate,
644
667
  aliases: CONFIG_KEY_ALIASES[candidate],
645
- value_kind: candidate === "context"
668
+ value_kind: candidate === "context" || candidate === "agent_identity_vocabulary"
646
669
  ? "object"
647
670
  : isCriteriaConfigKey(candidate)
648
671
  ? "string_array"
@@ -654,11 +677,13 @@ function buildConfigListResult(context) {
654
677
  "--stale-threshold-days",
655
678
  "--section-<name>",
656
679
  ]
657
- : isCriteriaConfigKey(candidate)
658
- ? ["--criterion", "--clear-criteria"]
659
- : candidate === "item_format"
660
- ? ["--format"]
661
- : ["--policy"],
680
+ : candidate === "agent_identity_vocabulary"
681
+ ? ["--policy", "--value", "--criterion"]
682
+ : isCriteriaConfigKey(candidate)
683
+ ? ["--criterion", "--clear-criteria"]
684
+ : candidate === "item_format"
685
+ ? ["--format"]
686
+ : ["--policy"],
662
687
  summary: CONFIG_KEY_SUMMARIES[candidate],
663
688
  value: readConfigValue(context.settings, candidate),
664
689
  }));
@@ -669,9 +694,7 @@ function buildConfigListResult(context) {
669
694
  kind: descriptor.kind,
670
695
  value: readNestedSettingValue(context.settings, descriptor),
671
696
  summary: descriptor.summary,
672
- ...(descriptor.choices
673
- ? { choices: [...descriptor.choices] }
674
- : {}),
697
+ ...(descriptor.choices ? { choices: [...descriptor.choices] } : {}),
675
698
  ...(descriptor.min === undefined ? {} : { min: descriptor.min }),
676
699
  ...(descriptor.max === undefined ? {} : { max: descriptor.max }),
677
700
  }));
@@ -714,6 +737,12 @@ function buildConfigGetResult(context, key) {
714
737
  if (key === "context") {
715
738
  return withWarnings({ ...base, context_settings: value }, context.warnings);
716
739
  }
740
+ if (key === "agent_identity_vocabulary") {
741
+ return withWarnings({
742
+ ...base,
743
+ identity_vocabulary: value,
744
+ }, context.warnings);
745
+ }
717
746
  if (Array.isArray(value)) {
718
747
  return withWarnings({ ...base, criteria: value }, context.warnings);
719
748
  }
@@ -987,6 +1016,16 @@ async function setTrackingConfig(context, key, options) {
987
1016
  await writeConfigSettingsIfChanged(context, changed, "config:set:test_result_tracking");
988
1017
  return buildPolicyResult(context, key, context.settings.testing.record_results_to_items ? "enabled" : "disabled", changed);
989
1018
  }
1019
+ if (key === "untrusted_linked_test_execution") {
1020
+ const nextPolicy = normalizeEnabledDisabledPolicy(options.policy, "untrusted-linked-test-execution");
1021
+ const nextEnabled = nextPolicy === "enabled";
1022
+ const changed = context.settings.testing.allow_untrusted_linked_tests !== nextEnabled;
1023
+ context.settings.testing.allow_untrusted_linked_tests = nextEnabled;
1024
+ await writeConfigSettingsIfChanged(context, changed, "config:set:untrusted_linked_test_execution");
1025
+ return buildPolicyResult(context, key, context.settings.testing.allow_untrusted_linked_tests
1026
+ ? "enabled"
1027
+ : "disabled", changed);
1028
+ }
990
1029
  const nextPolicy = normalizeTelemetryTrackingPolicy(options.policy);
991
1030
  const nextEnabled = nextPolicy === "enabled";
992
1031
  const changed = context.settings.telemetry.enabled !== nextEnabled ||
@@ -1005,6 +1044,69 @@ async function setDefinitionOfDoneConfig(context, key, options) {
1005
1044
  await writeConfigSettingsIfChanged(context, changed, "config:set:definition_of_done");
1006
1045
  return buildCriteriaResult(context, key, [...context.settings.workflow.definition_of_done], changed);
1007
1046
  }
1047
+ function parseAgentIdentityVocabularyOperation(raw) {
1048
+ const policy = raw?.trim().toLowerCase().replaceAll("_", "-");
1049
+ const dryRun = policy?.startsWith("preview-") === true;
1050
+ const operation = dryRun ? policy.slice("preview-".length) : policy;
1051
+ if (operation === "add" || operation === "remove" || operation === "clear") {
1052
+ return { operation, dryRun };
1053
+ }
1054
+ throw new PmCliError("Config set agent-identity-vocabulary requires --policy add|remove|clear|preview-add|preview-remove|preview-clear", EXIT_CODE.USAGE);
1055
+ }
1056
+ function parseAgentIdentityVocabularyMutationValue(operation, value) {
1057
+ if (operation === "add") {
1058
+ const separator = value?.lastIndexOf("=") ?? -1;
1059
+ if (separator <= 0 || separator === value.length - 1) {
1060
+ throw new PmCliError('Config set agent-identity-vocabulary --policy add requires --value "<legacy-author>=<canonical-harness>"', EXIT_CODE.USAGE);
1061
+ }
1062
+ return {
1063
+ legacy_author: value.slice(0, separator),
1064
+ canonical_harness: value.slice(separator + 1),
1065
+ };
1066
+ }
1067
+ if (operation === "remove") {
1068
+ if (value === undefined) {
1069
+ throw new PmCliError("Config set agent-identity-vocabulary --policy remove requires --value <legacy-author>", EXIT_CODE.USAGE);
1070
+ }
1071
+ return { legacy_author: value };
1072
+ }
1073
+ if (value !== undefined) {
1074
+ throw new PmCliError("Config set agent-identity-vocabulary --policy clear does not accept --value", EXIT_CODE.USAGE);
1075
+ }
1076
+ return {};
1077
+ }
1078
+ async function setAgentIdentityVocabularyConfig(context, options) {
1079
+ const { operation, dryRun } = parseAgentIdentityVocabularyOperation(options.policy);
1080
+ const mutationValue = parseAgentIdentityVocabularyMutationValue(operation, options.value);
1081
+ let planned;
1082
+ try {
1083
+ planned = planAgentIdentityVocabularyMutation(context.settings.agent_identity?.identity_vocabulary, {
1084
+ operation,
1085
+ ...mutationValue,
1086
+ observed_authors: options.criterion,
1087
+ });
1088
+ }
1089
+ catch (error) {
1090
+ throw new PmCliError(error.message, EXIT_CODE.USAGE);
1091
+ }
1092
+ if (planned.preview.changed && !dryRun) {
1093
+ context.settings.agent_identity = {
1094
+ ...context.settings.agent_identity,
1095
+ identity_vocabulary: planned.vocabulary,
1096
+ };
1097
+ await writeConfigSettingsIfChanged(context, true, `config:set:agent_identity.identity_vocabulary:${operation}:v${planned.preview.version_after}`);
1098
+ }
1099
+ return withWarnings({
1100
+ scope: context.scope,
1101
+ key: "agent_identity_vocabulary",
1102
+ identity_vocabulary: summarizeAgentIdentityVocabulary(dryRun
1103
+ ? context.settings.agent_identity?.identity_vocabulary
1104
+ : planned.vocabulary),
1105
+ vocabulary_mutation: planned.preview,
1106
+ settings_path: context.target.settingsPath,
1107
+ changed: planned.preview.changed && !dryRun,
1108
+ }, context.warnings);
1109
+ }
1008
1110
  async function setConfigValue(context, key, options) {
1009
1111
  if (options.clearCriteria === true && !isCriteriaConfigKey(key)) {
1010
1112
  throw new PmCliError("--clear-criteria is only supported with config set criteria-list keys", EXIT_CODE.USAGE);
@@ -1015,6 +1117,9 @@ async function setConfigValue(context, key, options) {
1015
1117
  if (key === "context") {
1016
1118
  return applyContextConfig(context.settings, options, context.target, context.scope, context.warnings);
1017
1119
  }
1120
+ if (key === "agent_identity_vocabulary") {
1121
+ return setAgentIdentityVocabularyConfig(context, options);
1122
+ }
1018
1123
  if (key === "definition_of_done") {
1019
1124
  return setDefinitionOfDoneConfig(context, key, options);
1020
1125
  }
@@ -1097,4 +1202,4 @@ export const _testOnlyConfigCommand = {
1097
1202
  normalizeWarnings,
1098
1203
  };
1099
1204
  //# sourceMappingURL=config.js.map
1100
- //# debugId=5918331a-46e9-5699-b85d-89f49a27d341
1205
+ //# debugId=2f750f85-6c55-5f0f-b5c0-396764839d2a
@@ -5,7 +5,7 @@
5
5
  * workspace configuration, and packages.
6
6
  */
7
7
 
8
- !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]="86db3dad-99b9-5c48-be52-990f110ac81f")}catch(e){}}();
8
+ !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]="da15ca02-02cc-5886-8c82-610939b8581c")}catch(e){}}();
9
9
  import { AsyncLocalStorage } from "node:async_hooks";
10
10
  import { renderPmCommand } from "./command-line.js";
11
11
  import { attachOutputOmissionReceipt } from "./output-projection.js";
@@ -202,6 +202,8 @@ export function resolveContextIntentContract(command, intent, contracts = getAct
202
202
  code: "unknown_context_intent",
203
203
  reason: "unknown_intent",
204
204
  field: "for",
205
+ flag: "--for",
206
+ value: normalizedIntent,
205
207
  required: `Use a declared ${normalizedCommand} intent.`,
206
208
  why: "Intent names are command-local contracts and cannot be inferred from output section names.",
207
209
  nextSteps: [suggestedCommand],
@@ -701,4 +703,4 @@ export function attachReadOutputContracts(command, options, result) {
701
703
  return stabilizeSuppressedRowContractReceipts(Object.fromEntries(Object.entries(projected).filter(([key]) => key !== "row_contract")), options);
702
704
  }
703
705
  //# sourceMappingURL=context-intent-contracts.js.map
704
- //# debugId=86db3dad-99b9-5c48-be52-990f110ac81f
706
+ //# debugId=da15ca02-02cc-5886-8c82-610939b8581c
@@ -4,7 +4,7 @@
4
4
  * Defines the shared agent-provenance and CLI-completeness governance surface
5
5
  * exposed by both the focused core entrypoint and the complete SDK barrel.
6
6
  */
7
- export { AGENT_PROVENANCE_DIMENSIONS, BUILTIN_HARNESS_SIGNAL_DESCRIPTORS, diagnoseAgentIdentity, detectAgentIdentity, detectHarnessIdentity, readAuthorEnvironment, registerHarnessSignalDescriptors, resolveAuthorIdentity, runWithHarnessDetectionSignals, runWithWorkspaceHarnessSignalDescriptors, writeAuthorEnvironment, type AgentClientInfo, type AgentModelSource, type AgentProvenance, type AgentProvenanceAbsenceReason, type AgentProvenanceObservation, type AgentProvenanceOutcome, type AuthorSource, type DetectedAgentIdentity, type DiagnosedAgentIdentity, type HarnessDetectionSignals, type HarnessSignalDescriptor, type ResolvedAuthorIdentity, } from "../core/shared/author.js";
7
+ export { AGENT_PROVENANCE_DIMENSIONS, BUILTIN_AGENT_PROVENANCE_ADAPTERS, BUILTIN_HARNESS_SIGNAL_DESCRIPTORS, diagnoseAgentIdentity, detectAgentIdentity, detectHarnessIdentity, listAgentProvenanceAdapters, normalizeAgentProvenanceAdapterValue, readAuthorEnvironment, registerHarnessSignalDescriptors, registerAgentProvenanceAdapters, resolveAuthorIdentity, runWithHarnessDetectionSignals, runWithWorkspaceHarnessSignalDescriptors, writeAuthorEnvironment, type AgentClientInfo, type AgentProvenanceAdapter, type AgentModelSource, type AgentProvenance, type AgentProvenanceAbsenceReason, type AgentProvenanceObservation, type AgentProvenanceOutcome, type NormalizedAgentProvenanceAdapterValue, type AuthorSource, type DetectedAgentIdentity, type DiagnosedAgentIdentity, type HarnessDetectionSignals, type HarnessSignalDescriptor, type ResolvedAuthorIdentity, } from "../core/shared/author.js";
8
8
  export { SEMANTIC_ATTRIBUTION_LIMITS, recordClaimSemanticAttribution, recordFocusSemanticAttribution, recordReleaseSemanticAttribution, resolveSemanticLineageIds, semanticAttributionAffinity, } from "./context/semantic-session-attribution.js";
9
9
  export { explainSourceTraceability, parseSourceLineRange, type SourceDecisionPath, type SourceLineRange, type SourceTraceabilityEvidence, type SourceTraceabilityExplanation, type SourceTraceabilityRationale, type SourceTraceabilityReceipt, } from "./traceability/source-traceability.js";
10
10
  export { analyzeAgentProvenanceDescriptorCoverage, evaluateSemanticAttributionCoverage, groupHistoryByEpisode, resolveHistoryEpisodeGroupIdentity, summarizeAgentProvenance, summarizeAgentModelProvenance, type AgentEpisodeGroup, type AgentModelProvenanceCoverage, type AgentProvenanceDimensionCoverage, type AgentProvenanceDescriptorCoverage, type AgentSemanticAttributionCoverage, type AgentSemanticAttributionCoverageGate, } from "./provenance.js";
@@ -5,11 +5,11 @@
5
5
  * exposed by both the focused core entrypoint and the complete SDK barrel.
6
6
  */
7
7
 
8
- !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]="d19cfa31-a02f-53a7-8685-5d169d6e051d")}catch(e){}}();
9
- export { AGENT_PROVENANCE_DIMENSIONS, BUILTIN_HARNESS_SIGNAL_DESCRIPTORS, diagnoseAgentIdentity, detectAgentIdentity, detectHarnessIdentity, readAuthorEnvironment, registerHarnessSignalDescriptors, resolveAuthorIdentity, runWithHarnessDetectionSignals, runWithWorkspaceHarnessSignalDescriptors, writeAuthorEnvironment, } from "../core/shared/author.js";
8
+ !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]="cea03617-5e90-5683-a9d1-289087ed4646")}catch(e){}}();
9
+ export { AGENT_PROVENANCE_DIMENSIONS, BUILTIN_AGENT_PROVENANCE_ADAPTERS, BUILTIN_HARNESS_SIGNAL_DESCRIPTORS, diagnoseAgentIdentity, detectAgentIdentity, detectHarnessIdentity, listAgentProvenanceAdapters, normalizeAgentProvenanceAdapterValue, readAuthorEnvironment, registerHarnessSignalDescriptors, registerAgentProvenanceAdapters, resolveAuthorIdentity, runWithHarnessDetectionSignals, runWithWorkspaceHarnessSignalDescriptors, writeAuthorEnvironment, } from "../core/shared/author.js";
10
10
  export { SEMANTIC_ATTRIBUTION_LIMITS, recordClaimSemanticAttribution, recordFocusSemanticAttribution, recordReleaseSemanticAttribution, resolveSemanticLineageIds, semanticAttributionAffinity, } from "./context/semantic-session-attribution.js";
11
11
  export { explainSourceTraceability, parseSourceLineRange, } from "./traceability/source-traceability.js";
12
12
  export { analyzeAgentProvenanceDescriptorCoverage, evaluateSemanticAttributionCoverage, groupHistoryByEpisode, resolveHistoryEpisodeGroupIdentity, summarizeAgentProvenance, summarizeAgentModelProvenance, } from "./provenance.js";
13
13
  export { analyzeSdkCliParameterCompleteness, } from "./cli-contracts.js";
14
14
  //# sourceMappingURL=core-governance.js.map
15
- //# debugId=d19cfa31-a02f-53a7-8685-5d169d6e051d
15
+ //# debugId=cea03617-5e90-5683-a9d1-289087ed4646
@@ -4,7 +4,7 @@
4
4
  * Implements extension package-management support for Scaffold.
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]="30dfc6e4-27c5-56c0-981b-94e85b780f1f")}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]="5321d574-4de4-5f94-99db-0c49639673fc")}catch(e){}}();
8
8
  import fs from "node:fs/promises";
9
9
  import path from "node:path";
10
10
  import { pathExists } from "../../core/fs/fs-utils.js";
@@ -1483,6 +1483,12 @@ function buildDeclarativeCapabilityTestBlock(extensionName, commandName, capabil
1483
1483
  "",
1484
1484
  " // The starter provider reads only document title/id, so `settings` is a minimal",
1485
1485
  " // typed stub and `documents` carry just the fields it inspects.",
1486
+ " const settings = {",
1487
+ " testing: {",
1488
+ " record_results_to_items: false,",
1489
+ " allow_untrusted_linked_tests: false,",
1490
+ " },",
1491
+ " } as PmSettings;",
1486
1492
  " const query = await ext.runSearchProvider({",
1487
1493
  ` provider: ${JSON.stringify(searchProviderName)},`,
1488
1494
  ' operation: "query",',
@@ -1491,7 +1497,7 @@ function buildDeclarativeCapabilityTestBlock(extensionName, commandName, capabil
1491
1497
  ' mode: "semantic",',
1492
1498
  ' tokens: ["sync"],',
1493
1499
  " options: {},",
1494
- " settings: {} as PmSettings,",
1500
+ " settings,",
1495
1501
  " documents: [",
1496
1502
  ' { metadata: { id: "pm-1", title: "Sync external context" }, body: "" },',
1497
1503
  ' { metadata: { id: "pm-2", title: "Unrelated task" }, body: "" },',
@@ -1503,14 +1509,14 @@ function buildDeclarativeCapabilityTestBlock(extensionName, commandName, capabil
1503
1509
  " const embedding = await ext.runSearchProvider({",
1504
1510
  ` provider: ${JSON.stringify(searchProviderName)},`,
1505
1511
  ' operation: "embed",',
1506
- ' context: { input: "abc", settings: {} as PmSettings, model: "starter-model" },',
1512
+ ' context: { input: "abc", settings, model: "starter-model" },',
1507
1513
  " });",
1508
1514
  " assert.deepEqual(embedding, [3]);",
1509
1515
  "",
1510
1516
  " const vectorHits = await ext.runVectorStoreAdapter({",
1511
1517
  ` adapter: ${JSON.stringify(vectorAdapterName)},`,
1512
1518
  ' operation: "query",',
1513
- " context: { vector: [0.1, 0.2], limit: 2, settings: {} as PmSettings },",
1519
+ " context: { vector: [0.1, 0.2], limit: 2, settings },",
1514
1520
  " });",
1515
1521
  ' assert.deepEqual(vectorHits, [{ id: "starter-vector-hit", score: 2 }]);',
1516
1522
  ]),
@@ -2300,4 +2306,4 @@ export async function scaffoldExtensionProject(target, vocabulary = "extension",
2300
2306
  };
2301
2307
  }
2302
2308
  //# sourceMappingURL=scaffold.js.map
2303
- //# debugId=30dfc6e4-27c5-56c0-981b-94e85b780f1f
2309
+ //# debugId=5321d574-4de4-5f94-99db-0c49639673fc
@@ -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]="0f857893-8441-54ad-af99-abaae9af864d")}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]="32dca84c-9a21-570c-a0e0-0f0356c84c0d")}catch(e){}}();
3
3
  const FLAG_DESCRIPTIONS = Object.freeze({
4
4
  "--body": "Set the item body.",
5
5
  "--body-file": "Read the item body from a file.",
@@ -68,6 +68,7 @@ const BOOLEAN_FLAG_NAMES = new Set([
68
68
  "--all-affected-ids",
69
69
  "--all-day",
70
70
  "--all-streams",
71
+ "--acknowledge-linked-tests",
71
72
  "--append-stable",
72
73
  "--auto-fix",
73
74
  "--auto-pm-context",
@@ -133,6 +134,7 @@ const BOOLEAN_FLAG_NAMES = new Set([
133
134
  "--only-last",
134
135
  "--output-row-contract",
135
136
  "--override-linked-pm-context",
137
+ "--override-linked-workspace-context",
136
138
  "--packages-only",
137
139
  "--past",
138
140
  "--phrase-exact",
@@ -315,4 +317,4 @@ export function verifyCliFlagInvocationParity(command, declarations, observation
315
317
  };
316
318
  }
317
319
  //# sourceMappingURL=flag-invocation-contracts.js.map
318
- //# debugId=0f857893-8441-54ad-af99-abaae9af864d
320
+ //# debugId=32dca84c-9a21-570c-a0e0-0f0356c84c0d
@@ -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]="2903ebb9-541a-5636-ae3c-e996d3f0cec4")}catch(e){}}();
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]="30cf6de5-af9b-54a1-b376-1c9e5d543ae1")}catch(e){}}();
4
4
  export const PM_ERROR_CODE_CATALOG_PART_1 = [
5
5
  {
6
6
  code: "acceptance_criteria_mutation_conflict",
@@ -1656,6 +1656,18 @@ export const PM_ERROR_CODE_CATALOG_PART_1 = [
1656
1656
  canonical_code: "invalid_read_output_session",
1657
1657
  aliases: [],
1658
1658
  },
1659
+ {
1660
+ code: "invalid_reproducible_process_environment",
1661
+ meaning: "Invalid reproducible process environment condition.",
1662
+ stability: "provisional",
1663
+ exit_code: 2,
1664
+ class: "usage",
1665
+ recovery: "Inspect the structured error guidance and retry the suggested command.",
1666
+ sources: ["sdk/reproducibility/process.ts"],
1667
+ emitting_commands: ["*"],
1668
+ canonical_code: "invalid_reproducible_process_environment",
1669
+ aliases: [],
1670
+ },
1659
1671
  {
1660
1672
  code: "invalid_workspace_snapshot_target",
1661
1673
  meaning: "Invalid workspace snapshot target condition.",
@@ -1968,6 +1980,42 @@ export const PM_ERROR_CODE_CATALOG_PART_1 = [
1968
1980
  canonical_code: "missing_budget",
1969
1981
  aliases: [],
1970
1982
  },
1983
+ {
1984
+ code: "missing_cli_flag",
1985
+ meaning: "Missing cli flag condition.",
1986
+ stability: "provisional",
1987
+ exit_code: 1,
1988
+ class: "generic_failure",
1989
+ recovery: "Inspect the structured error guidance and retry the suggested command.",
1990
+ sources: ["sdk/cli-contracts/tool-option-contracts.ts"],
1991
+ emitting_commands: ["*"],
1992
+ canonical_code: "missing_cli_flag",
1993
+ aliases: [],
1994
+ },
1995
+ {
1996
+ code: "missing_destination",
1997
+ meaning: "Missing destination condition.",
1998
+ stability: "provisional",
1999
+ exit_code: 1,
2000
+ class: "generic_failure",
2001
+ recovery: "Inspect the structured error guidance and retry the suggested command.",
2002
+ sources: ["sdk/cli-contracts/grammar-contracts.ts"],
2003
+ emitting_commands: ["*"],
2004
+ canonical_code: "missing_destination",
2005
+ aliases: [],
2006
+ },
2007
+ {
2008
+ code: "missing_directory",
2009
+ meaning: "Missing directory condition.",
2010
+ stability: "stable",
2011
+ exit_code: 1,
2012
+ class: "generic_failure",
2013
+ recovery: "Inspect the structured error guidance and retry the suggested command.",
2014
+ sources: ["core/diagnostics/remediation.ts"],
2015
+ emitting_commands: ["*"],
2016
+ canonical_code: "missing_directory",
2017
+ aliases: [],
2018
+ },
1971
2019
  ];
1972
2020
  //# sourceMappingURL=generated-error-code-catalog-part-1.js.map
1973
- //# debugId=2903ebb9-541a-5636-ae3c-e996d3f0cec4
2021
+ //# debugId=30cf6de5-af9b-54a1-b376-1c9e5d543ae1