@unbrained/pm-cli 2026.5.14 → 2026.5.18

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 (361) hide show
  1. package/.claude-plugin/marketplace.json +4 -4
  2. package/AGENTS.md +78 -457
  3. package/CHANGELOG.md +11 -0
  4. package/CONTRIBUTING.md +1 -0
  5. package/README.md +6 -5
  6. package/dist/cli/argv-utils.js +4 -1
  7. package/dist/cli/argv-utils.js.map +1 -1
  8. package/dist/cli/bootstrap-args.js +4 -1
  9. package/dist/cli/bootstrap-args.js.map +1 -1
  10. package/dist/cli/commander-usage.js +5 -1
  11. package/dist/cli/commander-usage.js.map +1 -1
  12. package/dist/cli/commands/activity.js +4 -1
  13. package/dist/cli/commands/activity.js.map +1 -1
  14. package/dist/cli/commands/aggregate.js +5 -2
  15. package/dist/cli/commands/aggregate.js.map +1 -1
  16. package/dist/cli/commands/append.js +4 -1
  17. package/dist/cli/commands/append.js.map +1 -1
  18. package/dist/cli/commands/calendar.js +4 -1
  19. package/dist/cli/commands/calendar.js.map +1 -1
  20. package/dist/cli/commands/claim.d.ts +3 -0
  21. package/dist/cli/commands/claim.js +19 -3
  22. package/dist/cli/commands/claim.js.map +1 -1
  23. package/dist/cli/commands/close.js +4 -1
  24. package/dist/cli/commands/close.js.map +1 -1
  25. package/dist/cli/commands/comments-audit.js +4 -1
  26. package/dist/cli/commands/comments-audit.js.map +1 -1
  27. package/dist/cli/commands/comments.js +4 -1
  28. package/dist/cli/commands/comments.js.map +1 -1
  29. package/dist/cli/commands/completion.js +98 -2
  30. package/dist/cli/commands/completion.js.map +1 -1
  31. package/dist/cli/commands/config.js +4 -1
  32. package/dist/cli/commands/config.js.map +1 -1
  33. package/dist/cli/commands/context.js +19 -5
  34. package/dist/cli/commands/context.js.map +1 -1
  35. package/dist/cli/commands/contracts.d.ts +9 -0
  36. package/dist/cli/commands/contracts.js +152 -34
  37. package/dist/cli/commands/contracts.js.map +1 -1
  38. package/dist/cli/commands/create.js +30 -6
  39. package/dist/cli/commands/create.js.map +1 -1
  40. package/dist/cli/commands/dedupe-audit.js +4 -1
  41. package/dist/cli/commands/dedupe-audit.js.map +1 -1
  42. package/dist/cli/commands/delete.js +4 -1
  43. package/dist/cli/commands/delete.js.map +1 -1
  44. package/dist/cli/commands/deps.js +4 -1
  45. package/dist/cli/commands/deps.js.map +1 -1
  46. package/dist/cli/commands/docs.js +4 -1
  47. package/dist/cli/commands/docs.js.map +1 -1
  48. package/dist/cli/commands/extension.d.ts +2 -1
  49. package/dist/cli/commands/extension.js +123 -33
  50. package/dist/cli/commands/extension.js.map +1 -1
  51. package/dist/cli/commands/files.js +4 -1
  52. package/dist/cli/commands/files.js.map +1 -1
  53. package/dist/cli/commands/gc.js +4 -1
  54. package/dist/cli/commands/gc.js.map +1 -1
  55. package/dist/cli/commands/get.d.ts +7 -3
  56. package/dist/cli/commands/get.js +91 -18
  57. package/dist/cli/commands/get.js.map +1 -1
  58. package/dist/cli/commands/guide.js +6 -8
  59. package/dist/cli/commands/guide.js.map +1 -1
  60. package/dist/cli/commands/health.d.ts +4 -0
  61. package/dist/cli/commands/health.js +31 -8
  62. package/dist/cli/commands/health.js.map +1 -1
  63. package/dist/cli/commands/history-redact.d.ts +42 -0
  64. package/dist/cli/commands/history-redact.js +559 -0
  65. package/dist/cli/commands/history-redact.js.map +1 -0
  66. package/dist/cli/commands/history.d.ts +4 -0
  67. package/dist/cli/commands/history.js +14 -3
  68. package/dist/cli/commands/history.js.map +1 -1
  69. package/dist/cli/commands/index.d.ts +2 -0
  70. package/dist/cli/commands/index.js +6 -1
  71. package/dist/cli/commands/index.js.map +1 -1
  72. package/dist/cli/commands/init-agent-guidance.d.ts +31 -0
  73. package/dist/cli/commands/init-agent-guidance.js +336 -0
  74. package/dist/cli/commands/init-agent-guidance.js.map +1 -0
  75. package/dist/cli/commands/init.d.ts +14 -0
  76. package/dist/cli/commands/init.js +75 -1
  77. package/dist/cli/commands/init.js.map +1 -1
  78. package/dist/cli/commands/learnings.js +4 -1
  79. package/dist/cli/commands/learnings.js.map +1 -1
  80. package/dist/cli/commands/list.d.ts +1 -0
  81. package/dist/cli/commands/list.js +42 -18
  82. package/dist/cli/commands/list.js.map +1 -1
  83. package/dist/cli/commands/metadata-normalizers.js +4 -1
  84. package/dist/cli/commands/metadata-normalizers.js.map +1 -1
  85. package/dist/cli/commands/normalize.js +4 -1
  86. package/dist/cli/commands/normalize.js.map +1 -1
  87. package/dist/cli/commands/notes.js +4 -1
  88. package/dist/cli/commands/notes.js.map +1 -1
  89. package/dist/cli/commands/plan.d.ts +118 -0
  90. package/dist/cli/commands/plan.js +975 -0
  91. package/dist/cli/commands/plan.js.map +1 -0
  92. package/dist/cli/commands/reindex.js +4 -1
  93. package/dist/cli/commands/reindex.js.map +1 -1
  94. package/dist/cli/commands/restore.js +4 -1
  95. package/dist/cli/commands/restore.js.map +1 -1
  96. package/dist/cli/commands/search.js +7 -2
  97. package/dist/cli/commands/search.js.map +1 -1
  98. package/dist/cli/commands/stats.js +4 -1
  99. package/dist/cli/commands/stats.js.map +1 -1
  100. package/dist/cli/commands/templates.js +4 -1
  101. package/dist/cli/commands/templates.js.map +1 -1
  102. package/dist/cli/commands/test-all.js +4 -1
  103. package/dist/cli/commands/test-all.js.map +1 -1
  104. package/dist/cli/commands/test-runs.js +4 -1
  105. package/dist/cli/commands/test-runs.js.map +1 -1
  106. package/dist/cli/commands/test.js +4 -1
  107. package/dist/cli/commands/test.js.map +1 -1
  108. package/dist/cli/commands/update-many.js +4 -1
  109. package/dist/cli/commands/update-many.js.map +1 -1
  110. package/dist/cli/commands/update.js +114 -71
  111. package/dist/cli/commands/update.js.map +1 -1
  112. package/dist/cli/commands/upgrade.js +6 -3
  113. package/dist/cli/commands/upgrade.js.map +1 -1
  114. package/dist/cli/commands/validate.js +32 -4
  115. package/dist/cli/commands/validate.js.map +1 -1
  116. package/dist/cli/error-guidance.js +5 -2
  117. package/dist/cli/error-guidance.js.map +1 -1
  118. package/dist/cli/extension-command-help.js +4 -1
  119. package/dist/cli/extension-command-help.js.map +1 -1
  120. package/dist/cli/extension-command-options.js +4 -1
  121. package/dist/cli/extension-command-options.js.map +1 -1
  122. package/dist/cli/guide-topics.js +4 -1
  123. package/dist/cli/guide-topics.js.map +1 -1
  124. package/dist/cli/help-content.js +35 -15
  125. package/dist/cli/help-content.js.map +1 -1
  126. package/dist/cli/help-json-payload.js +4 -1
  127. package/dist/cli/help-json-payload.js.map +1 -1
  128. package/dist/cli/main.js +203 -25
  129. package/dist/cli/main.js.map +1 -1
  130. package/dist/cli/migration-gates.js +4 -1
  131. package/dist/cli/migration-gates.js.map +1 -1
  132. package/dist/cli/register-list-query.js +37 -14
  133. package/dist/cli/register-list-query.js.map +1 -1
  134. package/dist/cli/register-mutation.js +228 -4
  135. package/dist/cli/register-mutation.js.map +1 -1
  136. package/dist/cli/register-operations.js +33 -1
  137. package/dist/cli/register-operations.js.map +1 -1
  138. package/dist/cli/register-setup.js +23 -13
  139. package/dist/cli/register-setup.js.map +1 -1
  140. package/dist/cli/registration-helpers.js +10 -2
  141. package/dist/cli/registration-helpers.js.map +1 -1
  142. package/dist/cli/shared-parsers.js +4 -1
  143. package/dist/cli/shared-parsers.js.map +1 -1
  144. package/dist/cli/telemetry-flush.js +4 -1
  145. package/dist/cli/telemetry-flush.js.map +1 -1
  146. package/dist/cli.js +45 -3
  147. package/dist/cli.js.map +1 -1
  148. package/dist/core/extensions/extension-types.js +4 -1
  149. package/dist/core/extensions/extension-types.js.map +1 -1
  150. package/dist/core/extensions/index.js +4 -1
  151. package/dist/core/extensions/index.js.map +1 -1
  152. package/dist/core/extensions/item-fields.js +4 -1
  153. package/dist/core/extensions/item-fields.js.map +1 -1
  154. package/dist/core/extensions/loader.js +77 -53
  155. package/dist/core/extensions/loader.js.map +1 -1
  156. package/dist/core/extensions/runtime-registrations.js +4 -1
  157. package/dist/core/extensions/runtime-registrations.js.map +1 -1
  158. package/dist/core/fs/fs-utils.js +4 -1
  159. package/dist/core/fs/fs-utils.js.map +1 -1
  160. package/dist/core/fs/index.js +4 -1
  161. package/dist/core/fs/index.js.map +1 -1
  162. package/dist/core/history/history-stream-policy.js +4 -1
  163. package/dist/core/history/history-stream-policy.js.map +1 -1
  164. package/dist/core/history/history.js +4 -1
  165. package/dist/core/history/history.js.map +1 -1
  166. package/dist/core/history/index.js +4 -1
  167. package/dist/core/history/index.js.map +1 -1
  168. package/dist/core/item/id.js +4 -1
  169. package/dist/core/item/id.js.map +1 -1
  170. package/dist/core/item/index.js +4 -1
  171. package/dist/core/item/index.js.map +1 -1
  172. package/dist/core/item/item-format.js +241 -2
  173. package/dist/core/item/item-format.js.map +1 -1
  174. package/dist/core/item/parent-reference-policy.js +4 -1
  175. package/dist/core/item/parent-reference-policy.js.map +1 -1
  176. package/dist/core/item/parse.js +33 -3
  177. package/dist/core/item/parse.js.map +1 -1
  178. package/dist/core/item/sprint-release-format.js +4 -1
  179. package/dist/core/item/sprint-release-format.js.map +1 -1
  180. package/dist/core/item/status.js +4 -1
  181. package/dist/core/item/status.js.map +1 -1
  182. package/dist/core/item/type-registry.js +4 -1
  183. package/dist/core/item/type-registry.js.map +1 -1
  184. package/dist/core/lock/index.js +4 -1
  185. package/dist/core/lock/index.js.map +1 -1
  186. package/dist/core/lock/lock.js +4 -1
  187. package/dist/core/lock/lock.js.map +1 -1
  188. package/dist/core/output/command-aware.js +4 -1
  189. package/dist/core/output/command-aware.js.map +1 -1
  190. package/dist/core/output/output.d.ts +4 -0
  191. package/dist/core/output/output.js +47 -6
  192. package/dist/core/output/output.js.map +1 -1
  193. package/dist/core/packages/manifest.d.ts +1 -0
  194. package/dist/core/packages/manifest.js +5 -1
  195. package/dist/core/packages/manifest.js.map +1 -1
  196. package/dist/core/packages/root.d.ts +3 -0
  197. package/dist/core/packages/root.js +51 -0
  198. package/dist/core/packages/root.js.map +1 -0
  199. package/dist/core/schema/runtime-field-filters.js +4 -1
  200. package/dist/core/schema/runtime-field-filters.js.map +1 -1
  201. package/dist/core/schema/runtime-field-values.js +4 -1
  202. package/dist/core/schema/runtime-field-values.js.map +1 -1
  203. package/dist/core/schema/runtime-schema.js +4 -1
  204. package/dist/core/schema/runtime-schema.js.map +1 -1
  205. package/dist/core/search/cache.js +7 -2
  206. package/dist/core/search/cache.js.map +1 -1
  207. package/dist/core/search/corpus.d.ts +2 -0
  208. package/dist/core/search/corpus.js +77 -2
  209. package/dist/core/search/corpus.js.map +1 -1
  210. package/dist/core/search/embedding-batches.js +21 -7
  211. package/dist/core/search/embedding-batches.js.map +1 -1
  212. package/dist/core/search/http-client.js +4 -1
  213. package/dist/core/search/http-client.js.map +1 -1
  214. package/dist/core/search/providers.js +4 -1
  215. package/dist/core/search/providers.js.map +1 -1
  216. package/dist/core/search/semantic-defaults.js +11 -2
  217. package/dist/core/search/semantic-defaults.js.map +1 -1
  218. package/dist/core/search/vector-stores.js +4 -1
  219. package/dist/core/search/vector-stores.js.map +1 -1
  220. package/dist/core/sentry/helpers.js +4 -1
  221. package/dist/core/sentry/helpers.js.map +1 -1
  222. package/dist/core/sentry/instrument.js +10 -13
  223. package/dist/core/sentry/instrument.js.map +1 -1
  224. package/dist/core/shared/command-types.js +4 -1
  225. package/dist/core/shared/command-types.js.map +1 -1
  226. package/dist/core/shared/conflict-markers.js +4 -1
  227. package/dist/core/shared/conflict-markers.js.map +1 -1
  228. package/dist/core/shared/constants.d.ts +2 -2
  229. package/dist/core/shared/constants.js +24 -1
  230. package/dist/core/shared/constants.js.map +1 -1
  231. package/dist/core/shared/errors.js +4 -1
  232. package/dist/core/shared/errors.js.map +1 -1
  233. package/dist/core/shared/index.js +4 -1
  234. package/dist/core/shared/index.js.map +1 -1
  235. package/dist/core/shared/levenshtein.js +4 -1
  236. package/dist/core/shared/levenshtein.js.map +1 -1
  237. package/dist/core/shared/primitives.js +4 -1
  238. package/dist/core/shared/primitives.js.map +1 -1
  239. package/dist/core/shared/serialization.js +4 -1
  240. package/dist/core/shared/serialization.js.map +1 -1
  241. package/dist/core/shared/text-normalization.js +4 -1
  242. package/dist/core/shared/text-normalization.js.map +1 -1
  243. package/dist/core/shared/time.js +4 -1
  244. package/dist/core/shared/time.js.map +1 -1
  245. package/dist/core/store/front-matter-cache.js +8 -3
  246. package/dist/core/store/front-matter-cache.js.map +1 -1
  247. package/dist/core/store/index.js +4 -1
  248. package/dist/core/store/index.js.map +1 -1
  249. package/dist/core/store/item-format-migration.js +4 -1
  250. package/dist/core/store/item-format-migration.js.map +1 -1
  251. package/dist/core/store/item-store.d.ts +2 -0
  252. package/dist/core/store/item-store.js +66 -3
  253. package/dist/core/store/item-store.js.map +1 -1
  254. package/dist/core/store/paths.js +4 -1
  255. package/dist/core/store/paths.js.map +1 -1
  256. package/dist/core/store/settings.js +39 -1
  257. package/dist/core/store/settings.js.map +1 -1
  258. package/dist/core/telemetry/consent.js +4 -1
  259. package/dist/core/telemetry/consent.js.map +1 -1
  260. package/dist/core/telemetry/observability.d.ts +1 -1
  261. package/dist/core/telemetry/observability.js +11 -2
  262. package/dist/core/telemetry/observability.js.map +1 -1
  263. package/dist/core/telemetry/runtime.js +31 -5
  264. package/dist/core/telemetry/runtime.js.map +1 -1
  265. package/dist/core/test/background-runs.js +4 -1
  266. package/dist/core/test/background-runs.js.map +1 -1
  267. package/dist/core/test/item-test-run-tracking.js +4 -1
  268. package/dist/core/test/item-test-run-tracking.js.map +1 -1
  269. package/dist/mcp/server.js +123 -14
  270. package/dist/mcp/server.js.map +1 -1
  271. package/dist/sdk/cli-contracts/commander-mutation-options.js +10 -3
  272. package/dist/sdk/cli-contracts/commander-mutation-options.js.map +1 -1
  273. package/dist/sdk/cli-contracts/commander-types.js +4 -1
  274. package/dist/sdk/cli-contracts/commander-types.js.map +1 -1
  275. package/dist/sdk/cli-contracts.d.ts +6 -2
  276. package/dist/sdk/cli-contracts.js +213 -20
  277. package/dist/sdk/cli-contracts.js.map +1 -1
  278. package/dist/sdk/index.js +4 -1
  279. package/dist/sdk/index.js.map +1 -1
  280. package/dist/sdk/runtime.js +4 -1
  281. package/dist/sdk/runtime.js.map +1 -1
  282. package/dist/types/index.js +4 -1
  283. package/dist/types/index.js.map +1 -1
  284. package/dist/types.d.ts +86 -2
  285. package/dist/types.js +34 -1
  286. package/dist/types.js.map +1 -1
  287. package/docs/AGENT_GUIDE.md +16 -6
  288. package/docs/CLAUDE_CODE_PLUGIN.md +10 -10
  289. package/docs/CODEX_PLUGIN.md +2 -2
  290. package/docs/COMMANDS.md +80 -8
  291. package/docs/CONFIGURATION.md +4 -1
  292. package/docs/EXTENSIONS.md +158 -814
  293. package/docs/QUICKSTART.md +11 -5
  294. package/docs/README.md +7 -6
  295. package/docs/RELEASING.md +2 -2
  296. package/docs/TESTING.md +2 -2
  297. package/marketplace.json +3 -3
  298. package/package.json +4 -2
  299. package/packages/pm-beads/package.json +1 -1
  300. package/packages/pm-calendar/README.md +1 -1
  301. package/packages/pm-calendar/extensions/calendar/index.js +1 -1
  302. package/packages/pm-calendar/extensions/calendar/index.ts +1 -1
  303. package/packages/pm-calendar/extensions/calendar/runtime.js +26 -7
  304. package/packages/pm-calendar/extensions/calendar/runtime.ts +26 -7
  305. package/packages/pm-calendar/package.json +1 -1
  306. package/packages/pm-governance-audit/package.json +1 -1
  307. package/packages/pm-guide-shell/extensions/guide-shell/index.js +1 -1
  308. package/packages/pm-guide-shell/extensions/guide-shell/index.ts +1 -1
  309. package/packages/pm-guide-shell/package.json +1 -1
  310. package/packages/pm-linked-test-adapters/package.json +1 -1
  311. package/packages/pm-search-advanced/extensions/search-advanced/index.ts +1 -1
  312. package/packages/pm-search-advanced/package.json +1 -1
  313. package/packages/pm-templates/README.md +1 -1
  314. package/packages/pm-templates/package.json +1 -1
  315. package/packages/pm-todos/package.json +1 -1
  316. package/plugins/{pm-cli-claude → pm-claude}/.claude-plugin/plugin.json +2 -2
  317. package/plugins/{pm-cli-claude → pm-claude}/.mcp.json +1 -1
  318. package/plugins/{pm-cli-claude → pm-claude}/README.md +4 -4
  319. package/plugins/{pm-cli-claude → pm-claude}/agents/pm-coordinator.md +1 -1
  320. package/plugins/{pm-cli-claude → pm-claude}/commands/pm-init.md +10 -1
  321. package/plugins/{pm-cli-claude → pm-claude}/commands/pm-planner.md +18 -0
  322. package/plugins/{pm-cli-claude → pm-claude}/skills/pm-planner/SKILL.md +46 -1
  323. package/plugins/{pm-cli-codex → pm-codex}/.codex-plugin/plugin.json +3 -3
  324. package/plugins/{pm-cli-codex → pm-codex}/.mcp.json +1 -1
  325. package/plugins/{pm-cli-codex → pm-codex}/README.md +7 -4
  326. package/plugins/pm-codex/skills/pm-native/SKILL.md +81 -0
  327. package/scripts/finalize-build.mjs +28 -0
  328. package/scripts/prepare-build-cache.mjs +37 -0
  329. package/plugins/pm-cli-codex/skills/pm-native/SKILL.md +0 -57
  330. /package/plugins/{pm-cli-claude → pm-claude}/agents/pm-delivery-chain.md +0 -0
  331. /package/plugins/{pm-cli-claude → pm-claude}/agents/pm-triage-agent.md +0 -0
  332. /package/plugins/{pm-cli-claude → pm-claude}/agents/pm-verification-agent.md +0 -0
  333. /package/plugins/{pm-cli-claude → pm-claude}/commands/pm-audit.md +0 -0
  334. /package/plugins/{pm-cli-claude → pm-claude}/commands/pm-calendar.md +0 -0
  335. /package/plugins/{pm-cli-claude → pm-claude}/commands/pm-close-task.md +0 -0
  336. /package/plugins/{pm-cli-claude → pm-claude}/commands/pm-developer.md +0 -0
  337. /package/plugins/{pm-cli-claude → pm-claude}/commands/pm-list.md +0 -0
  338. /package/plugins/{pm-cli-claude → pm-claude}/commands/pm-new.md +0 -0
  339. /package/plugins/{pm-cli-claude → pm-claude}/commands/pm-release.md +0 -0
  340. /package/plugins/{pm-cli-claude → pm-claude}/commands/pm-search.md +0 -0
  341. /package/plugins/{pm-cli-claude → pm-claude}/commands/pm-start-task.md +0 -0
  342. /package/plugins/{pm-cli-claude → pm-claude}/commands/pm-status.md +0 -0
  343. /package/plugins/{pm-cli-claude → pm-claude}/commands/pm-triage.md +0 -0
  344. /package/plugins/{pm-cli-claude → pm-claude}/commands/pm-workflow.md +0 -0
  345. /package/plugins/{pm-cli-claude → pm-claude}/hooks/hooks.json +0 -0
  346. /package/plugins/{pm-cli-claude → pm-claude}/hooks/session-start.mjs +0 -0
  347. /package/plugins/{pm-cli-claude → pm-claude}/scripts/pm-mcp-server.mjs +0 -0
  348. /package/plugins/{pm-cli-claude → pm-claude}/skills/pm-audit/SKILL.md +0 -0
  349. /package/plugins/{pm-cli-claude → pm-claude}/skills/pm-developer/SKILL.md +0 -0
  350. /package/plugins/{pm-cli-claude → pm-claude}/skills/pm-release/SKILL.md +0 -0
  351. /package/plugins/{pm-cli-claude → pm-claude}/skills/pm-workflow/SKILL.md +0 -0
  352. /package/plugins/{pm-cli-codex → pm-codex}/assets/pm-cli-small.svg +0 -0
  353. /package/plugins/{pm-cli-codex → pm-codex}/commands/pm-audit.md +0 -0
  354. /package/plugins/{pm-cli-codex → pm-codex}/commands/pm-close-task.md +0 -0
  355. /package/plugins/{pm-cli-codex → pm-codex}/commands/pm-start-task.md +0 -0
  356. /package/plugins/{pm-cli-codex → pm-codex}/scripts/pm-mcp-server.mjs +0 -0
  357. /package/plugins/{pm-cli-codex → pm-codex}/skills/pm-auditor/SKILL.md +0 -0
  358. /package/plugins/{pm-cli-codex → pm-codex}/skills/pm-auditor/agents/openai.yaml +0 -0
  359. /package/plugins/{pm-cli-codex → pm-codex}/skills/pm-native/agents/openai.yaml +0 -0
  360. /package/plugins/{pm-cli-codex → pm-codex}/skills/pm-release/SKILL.md +0 -0
  361. /package/plugins/{pm-cli-codex → pm-codex}/skills/pm-release/agents/openai.yaml +0 -0
@@ -1,12 +1,14 @@
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]="dc0f1970-8a30-56c5-827f-573784a38d54")}catch(e){}}();
1
3
  import { EXIT_CODE, SETTINGS_DEFAULTS } from "../../core/shared/constants.js";
2
4
  import { PmCliError } from "../../core/shared/errors.js";
3
- import { activateExtensions, getActiveExtensionRegistrations, loadExtensions } from "../../core/extensions/index.js";
5
+ import { activateExtensions, getActiveExtensionRegistrations, loadExtensions, } from "../../core/extensions/index.js";
4
6
  import { pathExists } from "../../core/fs/fs-utils.js";
5
- import { commandOptionFlagLabel, resolveCommandOptionPolicyState, resolveItemTypeRegistry } from "../../core/item/type-registry.js";
7
+ import { commandOptionFlagLabel, resolveCommandOptionPolicyState, resolveItemTypeRegistry, } from "../../core/item/type-registry.js";
6
8
  import { resolveRuntimeFieldRegistry, resolveRuntimeStatusRegistry, } from "../../core/schema/runtime-schema.js";
7
9
  import { getSettingsPath, resolvePmRoot } from "../../core/store/paths.js";
8
10
  import { readSettings } from "../../core/store/settings.js";
9
- import { ACTIVITY_COMMANDER_STRING_OPTION_CONTRACTS, ACTIVITY_FLAG_CONTRACTS, AGGREGATE_FLAG_CONTRACTS, APPEND_FLAG_CONTRACTS, CALENDAR_COMMANDER_STRING_OPTION_CONTRACTS, CALENDAR_FLAG_CONTRACTS, CLAIM_FLAG_CONTRACTS, CLOSE_TASK_FLAG_CONTRACTS, COMMENTS_FLAG_CONTRACTS, COMMENTS_AUDIT_FLAG_CONTRACTS, CLOSE_FLAG_CONTRACTS, COMPLETION_FLAG_CONTRACTS, CONFIG_FLAG_CONTRACTS, CONTRACTS_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, DEDUPE_AUDIT_FLAG_CONTRACTS, DOCS_FLAG_CONTRACTS, EXTENSION_FLAG_CONTRACTS, FILES_FLAG_CONTRACTS, GC_FLAG_CONTRACTS, GUIDE_FLAG_CONTRACTS, GLOBAL_FLAG_CONTRACTS, HEALTH_FLAG_CONTRACTS, HISTORY_FLAG_CONTRACTS, LEARNINGS_FLAG_CONTRACTS, LIST_COMMANDER_STRING_OPTION_CONTRACTS, LIST_FILTER_FLAG_CONTRACTS, NORMALIZE_FLAG_CONTRACTS, NOTES_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_CORE_COMMAND_NAMES, PM_TOOL_ACTIONS, PM_TOOL_PARAMETERS_SCHEMA, REINDEX_FLAG_CONTRACTS, RELEASE_FLAG_CONTRACTS, RESTORE_FLAG_CONTRACTS, SEARCH_COMMANDER_STRING_OPTION_CONTRACTS, SEARCH_FLAG_CONTRACTS, START_TASK_FLAG_CONTRACTS, PAUSE_TASK_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, } from "../../sdk/cli-contracts.js";
11
+ import { ACTIVITY_COMMANDER_STRING_OPTION_CONTRACTS, ACTIVITY_FLAG_CONTRACTS, AGGREGATE_FLAG_CONTRACTS, APPEND_FLAG_CONTRACTS, CALENDAR_COMMANDER_STRING_OPTION_CONTRACTS, CALENDAR_FLAG_CONTRACTS, CLAIM_FLAG_CONTRACTS, CLOSE_TASK_FLAG_CONTRACTS, COMMENTS_FLAG_CONTRACTS, COMMENTS_AUDIT_FLAG_CONTRACTS, CLOSE_FLAG_CONTRACTS, COMPLETION_FLAG_CONTRACTS, CONFIG_FLAG_CONTRACTS, CONTRACTS_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, DEDUPE_AUDIT_FLAG_CONTRACTS, DOCS_FLAG_CONTRACTS, EXTENSION_FLAG_CONTRACTS, FILES_FLAG_CONTRACTS, GC_FLAG_CONTRACTS, GET_FLAG_CONTRACTS, GUIDE_FLAG_CONTRACTS, GLOBAL_FLAG_CONTRACTS, HEALTH_FLAG_CONTRACTS, HISTORY_FLAG_CONTRACTS, HISTORY_REDACT_FLAG_CONTRACTS, INSTALL_FLAG_CONTRACTS, INIT_FLAG_CONTRACTS, LEARNINGS_FLAG_CONTRACTS, LIST_COMMANDER_STRING_OPTION_CONTRACTS, LIST_FILTER_FLAG_CONTRACTS, NORMALIZE_FLAG_CONTRACTS, NOTES_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, PLAN_FLAG_CONTRACTS, PM_CORE_COMMAND_NAMES, PM_TOOL_ACTIONS, PM_TOOL_PARAMETERS_SCHEMA, REINDEX_FLAG_CONTRACTS, RELEASE_FLAG_CONTRACTS, RESTORE_FLAG_CONTRACTS, SEARCH_COMMANDER_STRING_OPTION_CONTRACTS, SEARCH_FLAG_CONTRACTS, START_TASK_FLAG_CONTRACTS, PAUSE_TASK_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, } from "../../sdk/cli-contracts.js";
10
12
  const LIST_COMMAND_NAMES = new Set([
11
13
  "list",
12
14
  "list-all",
@@ -55,6 +57,17 @@ const PACKAGE_OWNED_COMMANDS = new Set([
55
57
  "test-runs stop",
56
58
  "test-runs resume",
57
59
  ]);
60
+ const CANONICAL_COMMAND_ALIASES = [
61
+ {
62
+ canonical: "context",
63
+ aliases: ["ctx"],
64
+ },
65
+ {
66
+ canonical: "package",
67
+ aliases: ["extension", "packages", "install"],
68
+ },
69
+ ];
70
+ const COMMAND_ALIAS_TO_CANONICAL = new Map(CANONICAL_COMMAND_ALIASES.flatMap((entry) => entry.aliases.map((alias) => [alias, entry.canonical])));
58
71
  function resolveActionCommandPath(action) {
59
72
  if (PM_CORE_COMMAND_NAMES.includes(action)) {
60
73
  return normalizeCommandPath(action);
@@ -197,8 +210,12 @@ function normalizeStringList(values) {
197
210
  function toExtensionFlagContract(definition) {
198
211
  const longName = toOptionalTrimmedString(definition.long);
199
212
  const shortName = toOptionalTrimmedString(definition.short);
200
- const normalizedLong = longName && longName.startsWith("--") && longName.length > 2 ? longName : null;
201
- const normalizedShort = shortName && shortName.startsWith("-") && !shortName.startsWith("--") ? shortName : null;
213
+ const normalizedLong = longName && longName.startsWith("--") && longName.length > 2
214
+ ? longName
215
+ : null;
216
+ const normalizedShort = shortName && shortName.startsWith("-") && !shortName.startsWith("--")
217
+ ? shortName
218
+ : null;
202
219
  const flag = normalizedLong ?? normalizedShort;
203
220
  if (!flag) {
204
221
  return null;
@@ -253,7 +270,7 @@ function collectExtensionFlagContractsByCommand(registrations) {
253
270
  if (layerOrder !== 0) {
254
271
  return layerOrder;
255
272
  }
256
- return left.name.localeCompare(right.name);
273
+ return (left.name ?? "").localeCompare(right.name ?? "");
257
274
  }),
258
275
  });
259
276
  }
@@ -267,7 +284,8 @@ function collectExtensionCommandContracts(runtimeProbe) {
267
284
  if (command.length === 0) {
268
285
  continue;
269
286
  }
270
- const action = toOptionalTrimmedString(definition.action) ?? normalizeActionNameFromCommand(command);
287
+ const action = toOptionalTrimmedString(definition.action) ??
288
+ normalizeActionNameFromCommand(command);
271
289
  const args = Array.isArray(definition.arguments)
272
290
  ? definition.arguments
273
291
  .map((argument) => {
@@ -315,7 +333,9 @@ function collectExtensionCommandContracts(runtimeProbe) {
315
333
  if (definition) {
316
334
  contracts.push({
317
335
  ...definition,
318
- flags: definition.flags.length > 0 ? definition.flags : flagsByCommand.get(command)?.flags ?? [],
336
+ flags: definition.flags.length > 0
337
+ ? definition.flags
338
+ : (flagsByCommand.get(command)?.flags ?? []),
319
339
  });
320
340
  continue;
321
341
  }
@@ -347,7 +367,9 @@ function buildExtensionActionSchemaBranch(contract) {
347
367
  action: {
348
368
  type: "string",
349
369
  const: contract.action,
350
- description: contract.intent ?? contract.description ?? `Invoke extension command '${contract.command}'.`,
370
+ description: contract.intent ??
371
+ contract.description ??
372
+ `Invoke extension command '${contract.command}'.`,
351
373
  },
352
374
  };
353
375
  const required = ["action"];
@@ -356,13 +378,15 @@ function buildExtensionActionSchemaBranch(contract) {
356
378
  properties[argument.name] = {
357
379
  type: "array",
358
380
  items: { type: "string" },
359
- description: argument.description ?? `Variadic argument '${argument.name}' for extension action '${contract.action}'.`,
381
+ description: argument.description ??
382
+ `Variadic argument '${argument.name}' for extension action '${contract.action}'.`,
360
383
  };
361
384
  }
362
385
  else {
363
386
  properties[argument.name] = {
364
387
  type: "string",
365
- description: argument.description ?? `Argument '${argument.name}' for extension action '${contract.action}'.`,
388
+ description: argument.description ??
389
+ `Argument '${argument.name}' for extension action '${contract.action}'.`,
366
390
  };
367
391
  }
368
392
  if (argument.required) {
@@ -474,7 +498,7 @@ function collectActionContractDescriptors(extensionContracts) {
474
498
  command_path: normalizeCommandPath(contract.command),
475
499
  });
476
500
  }
477
- return [...descriptors.values()].sort((left, right) => left.action.localeCompare(right.action));
501
+ return [...descriptors.values()].sort((left, right) => (left.action ?? "").localeCompare(right.action ?? ""));
478
502
  }
479
503
  function resolveActionAvailability(descriptor, runtimeProbe) {
480
504
  if (descriptor.provider === "core" && !descriptor.requires_extension) {
@@ -489,7 +513,9 @@ function resolveActionAvailability(descriptor, runtimeProbe) {
489
513
  cli_exposed: descriptor.command_path !== null,
490
514
  };
491
515
  }
492
- const commandPath = descriptor.command_path ? normalizeCommandPath(descriptor.command_path) : "";
516
+ const commandPath = descriptor.command_path
517
+ ? normalizeCommandPath(descriptor.command_path)
518
+ : "";
493
519
  const extensionCommandAvailable = commandPath.length > 0 && runtimeProbe.handlers.has(commandPath);
494
520
  const invocable = runtimeProbe.disabledReason === null && extensionCommandAvailable;
495
521
  return {
@@ -498,7 +524,9 @@ function resolveActionAvailability(descriptor, runtimeProbe) {
498
524
  available: invocable,
499
525
  requires_extension: true,
500
526
  provider: "extension",
501
- disabled_reason: invocable ? null : runtimeProbe.disabledReason ?? "extension_command_not_registered",
527
+ disabled_reason: invocable
528
+ ? null
529
+ : (runtimeProbe.disabledReason ?? "extension_command_not_registered"),
502
530
  command_path: descriptor.command_path,
503
531
  cli_exposed: extensionCommandAvailable,
504
532
  policy_state: {
@@ -509,12 +537,20 @@ function resolveActionAvailability(descriptor, runtimeProbe) {
509
537
  };
510
538
  }
511
539
  function resolveCoreCommandFlags(command) {
540
+ if (command === "init") {
541
+ return INIT_FLAG_CONTRACTS;
542
+ }
512
543
  if (command === "config") {
513
544
  return CONFIG_FLAG_CONTRACTS;
514
545
  }
515
- if (command === "extension" || command === "package" || command === "packages" || command === "install") {
546
+ if (command === "extension" ||
547
+ command === "package" ||
548
+ command === "packages") {
516
549
  return EXTENSION_FLAG_CONTRACTS;
517
550
  }
551
+ if (command === "install") {
552
+ return INSTALL_FLAG_CONTRACTS;
553
+ }
518
554
  if (command === "create") {
519
555
  return CREATE_FLAG_CONTRACTS;
520
556
  }
@@ -536,6 +572,9 @@ function resolveCoreCommandFlags(command) {
536
572
  if (command === "context" || command === "ctx") {
537
573
  return CONTEXT_FLAG_CONTRACTS;
538
574
  }
575
+ if (command === "get") {
576
+ return GET_FLAG_CONTRACTS;
577
+ }
539
578
  if (command === "search") {
540
579
  return SEARCH_FLAG_CONTRACTS;
541
580
  }
@@ -557,6 +596,12 @@ function resolveCoreCommandFlags(command) {
557
596
  if (command === "history") {
558
597
  return HISTORY_FLAG_CONTRACTS;
559
598
  }
599
+ if (command === "history-redact") {
600
+ return HISTORY_REDACT_FLAG_CONTRACTS;
601
+ }
602
+ if (command === "plan") {
603
+ return PLAN_FLAG_CONTRACTS;
604
+ }
560
605
  if (command === "restore") {
561
606
  return RESTORE_FLAG_CONTRACTS;
562
607
  }
@@ -682,13 +727,20 @@ function buildRuntimeFieldFlagContracts(fieldRegistry) {
682
727
  if (!primaryFlag) {
683
728
  continue;
684
729
  }
685
- const shortAlias = definition.cli_aliases.map((alias) => toRuntimeShortFlagToken(alias)).find((alias) => alias !== null);
730
+ const shortAlias = definition.cli_aliases
731
+ .map((alias) => toRuntimeShortFlagToken(alias))
732
+ .find((alias) => alias !== null);
686
733
  const longAliases = definition.cli_aliases
687
734
  .map((alias) => toRuntimeLongFlagToken(alias))
688
735
  .filter((alias) => alias !== null && alias !== primaryFlag);
689
736
  for (const command of definition.commands) {
690
- const bucket = buckets.get(command) ?? { flags: [], seen: new Set() };
691
- const primaryContract = shortAlias ? { flag: primaryFlag, short: shortAlias } : { flag: primaryFlag };
737
+ const bucket = buckets.get(command) ?? {
738
+ flags: [],
739
+ seen: new Set(),
740
+ };
741
+ const primaryContract = shortAlias
742
+ ? { flag: primaryFlag, short: shortAlias }
743
+ : { flag: primaryFlag };
692
744
  const primaryKey = `${primaryContract.flag}|${primaryContract.short ?? ""}`;
693
745
  if (!bucket.seen.has(primaryKey)) {
694
746
  bucket.seen.add(primaryKey);
@@ -727,8 +779,7 @@ function mergeFlagContracts(primary, secondary) {
727
779
  function buildCommandFlagSurface(commands, extensionFlagMap, runtimeFieldFlagMap) {
728
780
  return commands
729
781
  .map((command) => {
730
- const isCoreCommand = PM_CORE_COMMAND_NAMES.includes(command) &&
731
- !PACKAGE_OWNED_COMMANDS.has(command);
782
+ const isCoreCommand = PM_CORE_COMMAND_NAMES.includes(command) && !PACKAGE_OWNED_COMMANDS.has(command);
732
783
  const coreFlags = isCoreCommand ? resolveCoreCommandFlags(command) : [];
733
784
  const runtimeFlags = runtimeFieldFlagMap.get(normalizeCommandForRuntimeFieldFlags(command)) ?? [];
734
785
  const extensionFlags = extensionFlagMap.get(command);
@@ -748,6 +799,25 @@ function buildCommandFlagSurface(commands, extensionFlagMap, runtimeFieldFlagMap
748
799
  })
749
800
  .sort((left, right) => left.command.localeCompare(right.command));
750
801
  }
802
+ function compactCommandAliasSurface(commands) {
803
+ const commandSet = new Set(commands);
804
+ const result = [];
805
+ for (const command of commands) {
806
+ const canonical = COMMAND_ALIAS_TO_CANONICAL.get(command);
807
+ if (canonical && commandSet.has(canonical)) {
808
+ continue;
809
+ }
810
+ result.push(command);
811
+ }
812
+ return result;
813
+ }
814
+ function buildCommandAliasSurface(commands) {
815
+ const commandSet = new Set(commands);
816
+ return CANONICAL_COMMAND_ALIASES.map((entry) => ({
817
+ canonical: entry.canonical,
818
+ aliases: entry.aliases.filter((alias) => commandSet.has(alias)),
819
+ })).filter((entry) => commandSet.has(entry.canonical) && entry.aliases.length > 0);
820
+ }
751
821
  function buildCommanderAliasSurface() {
752
822
  return {
753
823
  create_string_options: CREATE_COMMANDER_STRING_OPTION_CONTRACTS,
@@ -762,7 +832,7 @@ function buildCommanderAliasSurface() {
762
832
  };
763
833
  }
764
834
  function resolveCreateRequiredOptionContract(typeDefinition, createMode) {
765
- const baseRequiredOptions = new Set(["title", "description", "type"]);
835
+ const baseRequiredOptions = new Set(["title", "type"]);
766
836
  if (createMode === "strict") {
767
837
  for (const field of typeDefinition.required_create_fields) {
768
838
  baseRequiredOptions.add(field);
@@ -773,8 +843,14 @@ function resolveCreateRequiredOptionContract(typeDefinition, createMode) {
773
843
  }
774
844
  const policyState = resolveCommandOptionPolicyState(typeDefinition, "create", baseRequiredOptions);
775
845
  const requiredOptionKeys = [...new Set(policyState.required)].sort((left, right) => left.localeCompare(right));
776
- const requiredFlags = [...new Set(requiredOptionKeys.map((option) => commandOptionFlagLabel("create", option)))].sort((left, right) => left.localeCompare(right));
777
- const requiredTypeOptions = [...new Set(typeDefinition.options.filter((option) => option.required === true).map((option) => option.key))].sort((left, right) => left.localeCompare(right));
846
+ const requiredFlags = [
847
+ ...new Set(requiredOptionKeys.map((option) => commandOptionFlagLabel("create", option))),
848
+ ].sort((left, right) => left.localeCompare(right));
849
+ const requiredTypeOptions = [
850
+ ...new Set(typeDefinition.options
851
+ .filter((option) => option.required === true)
852
+ .map((option) => option.key)),
853
+ ].sort((left, right) => left.localeCompare(right));
778
854
  return {
779
855
  required_option_keys: requiredOptionKeys,
780
856
  required_flags: requiredFlags,
@@ -841,7 +917,19 @@ export async function runContracts(options, global) {
841
917
  const flagsOnly = options.flagsOnly === true;
842
918
  const availabilityOnly = options.availabilityOnly === true;
843
919
  const runtimeOnly = options.runtimeOnly === true;
844
- const projectionFlagsEnabled = [schemaOnly, flagsOnly, availabilityOnly].filter((value) => value).length;
920
+ const fullOutput = options.full === true;
921
+ const unfilteredDefaultBriefMode = !fullOutput && !schemaOnly && !flagsOnly && !availabilityOnly && !selectedAction && !selectedCommand;
922
+ // Agent token-cost guard: when no filter and no projection flag and not --full,
923
+ // skip the giant schema oneOf union (the 200KB+ chunk). Restore via --full
924
+ // or by scoping to a specific --command/--action.
925
+ const omitUnfilteredSchema = unfilteredDefaultBriefMode;
926
+ const omitUnfilteredCommandFlags = unfilteredDefaultBriefMode;
927
+ const omitUnfilteredCommanderAliases = unfilteredDefaultBriefMode;
928
+ const projectionFlagsEnabled = [
929
+ schemaOnly,
930
+ flagsOnly,
931
+ availabilityOnly,
932
+ ].filter((value) => value).length;
845
933
  if (projectionFlagsEnabled > 1) {
846
934
  throw new PmCliError("Choose only one projection flag: --schema-only, --flags-only, or --availability-only.", EXIT_CODE.USAGE);
847
935
  }
@@ -916,7 +1004,9 @@ export async function runContracts(options, global) {
916
1004
  ? commandScopedDescriptors.filter((descriptor) => descriptor.action === selectedAction)
917
1005
  : commandScopedDescriptors;
918
1006
  const allActionAvailability = scopedActionDescriptors.map((descriptor) => resolveActionAvailability(descriptor, runtimeProbe));
919
- const actionAvailability = runtimeOnly && !selectedAction ? allActionAvailability.filter((entry) => entry.invocable) : allActionAvailability;
1007
+ const actionAvailability = runtimeOnly && !selectedAction
1008
+ ? allActionAvailability.filter((entry) => entry.invocable)
1009
+ : allActionAvailability;
920
1010
  const actions = actionAvailability.map((entry) => entry.action);
921
1011
  const descriptorActionSet = new Set(actionDescriptors.map((descriptor) => descriptor.action));
922
1012
  let filteredSchema = selectedAction
@@ -936,14 +1026,22 @@ export async function runContracts(options, global) {
936
1026
  : selectedAction
937
1027
  ? resolveScopedCommandsFromActionDescriptors(scopedActionDescriptors, commandCatalog)
938
1028
  : commandCatalog;
1029
+ const outputCommands = flagsOnly && selectedCommand === undefined && selectedAction === undefined
1030
+ ? compactCommandAliasSurface(commands)
1031
+ : commands;
1032
+ const commandAliases = buildCommandAliasSurface(commands);
939
1033
  const extensionCommandContracts = selectedCommand
940
1034
  ? extensionContracts.filter((entry) => entry.command === selectedCommand)
941
1035
  : selectedAction
942
- ? extensionContracts.filter((entry) => commands.includes(normalizeCommandPath(entry.command)))
1036
+ ? extensionContracts.filter((entry) => outputCommands.includes(normalizeCommandPath(entry.command)))
943
1037
  : extensionContracts;
944
1038
  const result = {
945
- schema_version: typeof mergedSchema["x-schema-version"] === "string" ? mergedSchema["x-schema-version"] : null,
946
- schema_id: typeof mergedSchema.$id === "string" ? mergedSchema.$id : null,
1039
+ schema_version: typeof mergedSchema["x-schema-version"] === "string"
1040
+ ? mergedSchema["x-schema-version"]
1041
+ : null,
1042
+ schema_id: typeof mergedSchema.$id === "string"
1043
+ ? mergedSchema.$id
1044
+ : null,
947
1045
  selected: {
948
1046
  action: selectedAction ?? null,
949
1047
  command: selectedCommand ?? null,
@@ -953,7 +1051,7 @@ export async function runContracts(options, global) {
953
1051
  runtime_only: runtimeOnly,
954
1052
  command_scoped: selectedCommand !== undefined,
955
1053
  },
956
- commands,
1054
+ commands: outputCommands,
957
1055
  runtime_schema: {
958
1056
  statuses: statusRegistry.definitions.map((definition) => definition.id),
959
1057
  open_status: statusRegistry.open_status,
@@ -962,7 +1060,9 @@ export async function runContracts(options, global) {
962
1060
  types: [...typeRegistry.types],
963
1061
  fields_by_command: Object.fromEntries([...runtimeFieldRegistry.command_to_fields.entries()].map(([command, definitions]) => [
964
1062
  command,
965
- [...new Set(definitions.map((definition) => `--${definition.cli_flag}`))].sort((left, right) => left.localeCompare(right)),
1063
+ [
1064
+ ...new Set(definitions.map((definition) => `--${definition.cli_flag}`)),
1065
+ ].sort((left, right) => left.localeCompare(right)),
966
1066
  ])),
967
1067
  },
968
1068
  extension_contracts: {
@@ -984,16 +1084,34 @@ export async function runContracts(options, global) {
984
1084
  result.actions = actions;
985
1085
  result.action_availability = actionAvailability;
986
1086
  }
987
- if (includeSchemaSurface) {
1087
+ if (includeSchemaSurface && !omitUnfilteredSchema) {
988
1088
  result.schema = filteredSchema;
989
1089
  result.extension_commands = extensionCommandContracts;
990
1090
  }
1091
+ else if (includeSchemaSurface && omitUnfilteredSchema) {
1092
+ result.schema_omitted_reason = "unfiltered_default_brief";
1093
+ result.extension_commands = extensionCommandContracts;
1094
+ }
991
1095
  if (!schemaOnly && !availabilityOnly) {
992
- result.command_flags = buildCommandFlagSurface(commands, extensionFlagMap, runtimeFieldFlagMap);
1096
+ if (!omitUnfilteredCommandFlags) {
1097
+ result.command_flags = buildCommandFlagSurface(outputCommands, extensionFlagMap, runtimeFieldFlagMap);
1098
+ }
1099
+ else {
1100
+ result.command_flags_omitted_reason = "unfiltered_default_brief";
1101
+ }
1102
+ if (commandAliases.length > 0) {
1103
+ result.command_aliases = commandAliases;
1104
+ }
993
1105
  }
994
1106
  if (!schemaOnly && !flagsOnly && !availabilityOnly) {
995
- result.commander_aliases = buildCommanderAliasSurface();
1107
+ if (!omitUnfilteredCommanderAliases) {
1108
+ result.commander_aliases = buildCommanderAliasSurface();
1109
+ }
1110
+ else {
1111
+ result.commander_aliases_omitted_reason = "unfiltered_default_brief";
1112
+ }
996
1113
  }
997
1114
  return result;
998
1115
  }
999
- //# sourceMappingURL=contracts.js.map
1116
+ //# sourceMappingURL=contracts.js.map
1117
+ //# debugId=dc0f1970-8a30-56c5-827f-573784a38d54