@unbrained/pm-cli 2026.10.14 → 2026.10.17

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 (753) hide show
  1. package/.agents/skills/pm-developer/references/COMMAND_PLAYBOOK.md +1 -1
  2. package/.claude-plugin/marketplace.json +1 -1
  3. package/AGENTS.md +1 -0
  4. package/CHANGELOG.md +74 -2
  5. package/dist/cli/after-command-context-usage.d.ts +7 -7
  6. package/dist/cli/argv-utils.d.ts +4 -4
  7. package/dist/cli/bundle-integrity.d.ts +16 -16
  8. package/dist/cli/command-namespaces.d.ts +1 -1
  9. package/dist/cli/commander-usage.d.ts +34 -34
  10. package/dist/cli/commands/governance/validate.d.ts +1 -1
  11. package/dist/cli/commands/history/history-compact.d.ts +1 -1
  12. package/dist/cli/commands/history/history-redact.d.ts +1 -1
  13. package/dist/cli/commands/history/history-repair.d.ts +1 -1
  14. package/dist/cli/commands/history/restore.d.ts +1 -1
  15. package/dist/cli/commands/lifecycle/close.d.ts +1 -1
  16. package/dist/cli/commands/lifecycle/copy.d.ts +1 -1
  17. package/dist/cli/commands/lifecycle/delete.d.ts +1 -1
  18. package/dist/cli/commands/lifecycle/focus.d.ts +1 -1
  19. package/dist/cli/commands/query/get.d.ts +1 -1
  20. package/dist/cli/commands/workspace/merge.d.ts +1 -1
  21. package/dist/cli/commands/workspace/schema.d.ts +1 -1
  22. package/dist/cli/context-intent-invocation.d.ts +1 -1
  23. package/dist/cli/description-stdin.d.ts +1 -1
  24. package/dist/cli/error-guidance.d.ts +119 -119
  25. package/dist/cli/extension-command-help.d.ts +64 -64
  26. package/dist/cli/extension-command-help.js +2 -2
  27. package/dist/cli/extension-command-options.d.ts +18 -16
  28. package/dist/cli/extension-command-options.js +1 -1
  29. package/dist/cli/extension-recovery.d.ts +13 -13
  30. package/dist/cli/help-content.d.ts +22 -22
  31. package/dist/cli/help-content.js +3 -3
  32. package/dist/cli/help-json-payload.d.ts +45 -45
  33. package/dist/cli/invocation-profile.d.ts +5 -5
  34. package/dist/cli/main.d.ts +217 -217
  35. package/dist/cli/migration-gates.d.ts +24 -24
  36. package/dist/cli/option-values.d.ts +1 -1
  37. package/dist/cli/public.d.ts +1 -1
  38. package/dist/cli/register-annotations.d.ts +2 -2
  39. package/dist/cli/register-assurance.d.ts +1 -1
  40. package/dist/cli/register-files-lookup.d.ts +1 -1
  41. package/dist/cli/register-history-activity.d.ts +1 -1
  42. package/dist/cli/register-history-author.d.ts +1 -1
  43. package/dist/cli/register-history-maintenance.d.ts +1 -1
  44. package/dist/cli/register-list-query.d.ts +7 -7
  45. package/dist/cli/register-list-query.js +3 -3
  46. package/dist/cli/register-mutation-options.d.ts +1 -1
  47. package/dist/cli/register-mutation.d.ts +4 -4
  48. package/dist/cli/register-mutation.js +2 -2
  49. package/dist/cli/register-operations.d.ts +75 -75
  50. package/dist/cli/register-operations.js +1 -1
  51. package/dist/cli/register-setup.d.ts +4 -4
  52. package/dist/cli/register-structured-mutation.d.ts +8 -13
  53. package/dist/cli/register-structured-mutation.js +1 -1
  54. package/dist/cli/runtime/activation.d.ts +23 -23
  55. package/dist/cli/runtime/invocation-options.d.ts +12 -12
  56. package/dist/cli/runtime/invocation-options.js +1 -1
  57. package/dist/cli/runtime/projection-retry.d.ts +1 -1
  58. package/dist/cli/runtime/selection.d.ts +16 -16
  59. package/dist/cli/runtime/telemetry-outcome.d.ts +11 -11
  60. package/dist/cli/runtime-compatibility-boundary.d.ts +7 -7
  61. package/dist/cli/schema/registration.d.ts +1 -1
  62. package/dist/cli/schema-registration-helpers.d.ts +2 -2
  63. package/dist/cli/stats-analytics-json.d.ts +1 -1
  64. package/dist/cli-bundle/bundle-manifest.json +1 -1
  65. package/dist/cli-bundle/chunks/{chunk-LKESCZEN.js → chunk-3QKI3XNX.js} +2 -2
  66. package/dist/cli-bundle/chunks/chunk-4PNPDT2N.js +236 -0
  67. package/dist/cli-bundle/chunks/{chunk-JTF6VMXH.js → chunk-6ZDKKOKM.js} +28 -28
  68. package/dist/cli-bundle/chunks/{chunk-MAT4AP7P.js → chunk-B5QVGCZX.js} +2 -2
  69. package/dist/cli-bundle/chunks/{chunk-5LU6PWA4.js → chunk-EA2CG7UM.js} +2 -2
  70. package/dist/cli-bundle/chunks/chunk-HY7FQ7QX.js +2 -0
  71. package/dist/cli-bundle/chunks/{chunk-3S5SEMEB.js → chunk-J4LPQCET.js} +2 -2
  72. package/dist/cli-bundle/chunks/chunk-JS3B2M4D.js +6 -0
  73. package/dist/cli-bundle/chunks/chunk-O4YBC3OM.js +30 -0
  74. package/dist/cli-bundle/chunks/{chunk-LE4IEHDG.js → chunk-OZCSXX4D.js} +63 -64
  75. package/dist/cli-bundle/chunks/chunk-VMCSTFSO.js +2 -0
  76. package/dist/cli-bundle/chunks/chunk-W3KZ22DW.js +2 -0
  77. package/dist/cli-bundle/chunks/{chunk-2UKKO45F.js → chunk-X2ONXFBP.js} +2 -2
  78. package/dist/cli-bundle/chunks/chunk-X53HM753.js +20 -0
  79. package/dist/cli-bundle/chunks/{register-list-query-GBLTOQQL.js → register-list-query-RU3QZSAQ.js} +7 -7
  80. package/dist/cli-bundle/chunks/register-mutation-EQYMT32A.js +20 -0
  81. package/dist/cli-bundle/chunks/{register-operations-J3WXP3MA.js → register-operations-VXBGE4XI.js} +2 -2
  82. package/dist/cli-bundle/chunks/{register-setup-HLSKKU4V.js → register-setup-UUDEGFRO.js} +2 -2
  83. package/dist/cli-bundle/focused-chunks/{chunk-ELQNEJDA.js → chunk-2IOHHNRT.js} +2 -2
  84. package/dist/cli-bundle/focused-chunks/chunk-5JEFDEL3.js +166 -0
  85. package/dist/cli-bundle/focused-chunks/{chunk-4UA7KY4V.js → chunk-AH6NX6GM.js} +2 -2
  86. package/dist/cli-bundle/focused-chunks/{chunk-ESOW6PH4.js → chunk-E33QA7PK.js} +2 -2
  87. package/dist/cli-bundle/focused-chunks/{chunk-BUAGNTLG.js → chunk-FTUZ3JF2.js} +6 -6
  88. package/dist/cli-bundle/focused-chunks/{chunk-HNRI2KBT.js → chunk-JXR6UKFM.js} +3 -3
  89. package/dist/cli-bundle/focused-chunks/chunk-LDKX4KYJ.js +2 -0
  90. package/dist/cli-bundle/focused-chunks/{chunk-IGBSAHCA.js → chunk-MBQF6HT6.js} +2 -2
  91. package/dist/cli-bundle/focused-chunks/chunk-NZO7GOXD.js +20 -0
  92. package/dist/cli-bundle/focused-chunks/{chunk-QIU4Y3AB.js → chunk-PYC7BF6Z.js} +2 -2
  93. package/dist/cli-bundle/focused-chunks/{chunk-YJNKISEI.js → chunk-QOSVJDOO.js} +61 -62
  94. package/dist/cli-bundle/focused-chunks/{chunk-RHQCQTZA.js → chunk-RBLSY6ML.js} +2 -2
  95. package/dist/cli-bundle/focused-chunks/{chunk-KSMQEB3V.js → chunk-RHTH5ILM.js} +2 -2
  96. package/dist/cli-bundle/focused-chunks/{chunk-Y5A4XOSK.js → chunk-SIGIGZCG.js} +3 -3
  97. package/dist/cli-bundle/focused-chunks/chunk-TRFVAWF2.js +26 -0
  98. package/dist/cli-bundle/focused-chunks/{chunk-AULVKHYX.js → chunk-UNTQE37U.js} +2 -2
  99. package/dist/cli-bundle/main.js +22 -22
  100. package/dist/cli-bundle/sdk-authoring.js +1 -1
  101. package/dist/cli-bundle/sdk-contracts.js +2 -2
  102. package/dist/cli-bundle/sdk-core.js +23 -23
  103. package/dist/cli-bundle/sdk-governance.js +1 -1
  104. package/dist/cli-bundle/sdk-graph.js +1 -1
  105. package/dist/cli-bundle/sdk-merge.js +54 -54
  106. package/dist/cli-bundle/sdk-query.js +1 -1
  107. package/dist/cli-bundle/sdk-runtime.js +1 -1
  108. package/dist/cli-bundle/sdk-testing.js +1 -1
  109. package/dist/cli-bundle/sdk.js +7 -7
  110. package/dist/cli.d.ts +9 -9
  111. package/dist/core/checkpoint/checkpoint-gc.d.ts +17 -17
  112. package/dist/core/checkpoint/mutation-checkpoint.d.ts +26 -26
  113. package/dist/core/config/nested-settings.d.ts +20 -20
  114. package/dist/core/config/positional-value.d.ts +9 -9
  115. package/dist/core/diagnostics/remediation.d.ts +7 -7
  116. package/dist/core/extensions/activation-summary-markdown.d.ts +4 -4
  117. package/dist/core/extensions/activation-summary.d.ts +30 -30
  118. package/dist/core/extensions/activation-transaction.d.ts +9 -9
  119. package/dist/core/extensions/capability-usage.d.ts +25 -25
  120. package/dist/core/extensions/command-hook-context.d.ts +15 -15
  121. package/dist/core/extensions/command-metadata-contract.d.ts +1 -1
  122. package/dist/core/extensions/command-visibility-tier.d.ts +1 -1
  123. package/dist/core/extensions/contribution-inventory.d.ts +24 -24
  124. package/dist/core/extensions/exporter-output-contract.d.ts +4 -4
  125. package/dist/core/extensions/extension-candidate.d.ts +14 -14
  126. package/dist/core/extensions/extension-capability-aliases.d.ts +14 -14
  127. package/dist/core/extensions/extension-hook-runtime.d.ts +14 -14
  128. package/dist/core/extensions/extension-policy.d.ts +62 -62
  129. package/dist/core/extensions/extension-registries.d.ts +8 -8
  130. package/dist/core/extensions/extension-runtime-helpers.d.ts +5 -5
  131. package/dist/core/extensions/extension-types.d.ts +717 -702
  132. package/dist/core/extensions/extension-types.js +1 -1
  133. package/dist/core/extensions/flag-definition-validation.d.ts +11 -11
  134. package/dist/core/extensions/flag-value-types.d.ts +32 -4
  135. package/dist/core/extensions/flag-value-types.js +1 -1
  136. package/dist/core/extensions/index.d.ts +34 -34
  137. package/dist/core/extensions/item-field-types.d.ts +3 -3
  138. package/dist/core/extensions/item-fields.d.ts +6 -6
  139. package/dist/core/extensions/loader.d.ts +66 -66
  140. package/dist/core/extensions/manifest-parser.d.ts +1 -1
  141. package/dist/core/extensions/manifest-schema.d.ts +13 -13
  142. package/dist/core/extensions/module-graph-snapshot.d.ts +5 -5
  143. package/dist/core/extensions/preflight-ownership.d.ts +3 -3
  144. package/dist/core/extensions/read-output-contract.d.ts +2 -2
  145. package/dist/core/extensions/registration-contracts.d.ts +12 -12
  146. package/dist/core/extensions/registration-contracts.js +1 -1
  147. package/dist/core/extensions/registration-validation.d.ts +6 -6
  148. package/dist/core/extensions/registration-values.d.ts +19 -19
  149. package/dist/core/extensions/reserved-host-flags.d.ts +5 -5
  150. package/dist/core/extensions/runtime-registrations.d.ts +6 -6
  151. package/dist/core/extensions/service-ownership.d.ts +1 -1
  152. package/dist/core/extensions/version-compat.d.ts +9 -9
  153. package/dist/core/fs/atomic-create.d.ts +1 -1
  154. package/dist/core/fs/fs-utils.d.ts +12 -12
  155. package/dist/core/fs/host-environment-errors.d.ts +10 -10
  156. package/dist/core/fs/path-utils.d.ts +1 -1
  157. package/dist/core/governance/content-fields.d.ts +25 -25
  158. package/dist/core/governance/issue-codes.d.ts +16 -16
  159. package/dist/core/governance/metadata-coverage.d.ts +64 -64
  160. package/dist/core/history/digest.d.ts +5 -5
  161. package/dist/core/history/drift-cache.d.ts +2 -2
  162. package/dist/core/history/drift-scan.d.ts +18 -18
  163. package/dist/core/history/event-classification.d.ts +4 -4
  164. package/dist/core/history/event-index.d.ts +33 -33
  165. package/dist/core/history/history-compact-bulk.d.ts +12 -12
  166. package/dist/core/history/history-diff.d.ts +15 -15
  167. package/dist/core/history/history-rewrite.d.ts +43 -43
  168. package/dist/core/history/history-storage-stats.d.ts +20 -20
  169. package/dist/core/history/history-stream-policy.d.ts +12 -12
  170. package/dist/core/history/history.d.ts +45 -45
  171. package/dist/core/history/identity.d.ts +4 -4
  172. package/dist/core/history/operation-contract.d.ts +17 -17
  173. package/dist/core/history/projection.d.ts +16 -16
  174. package/dist/core/history/read.d.ts +4 -4
  175. package/dist/core/history/replay.d.ts +47 -47
  176. package/dist/core/history/tombstone.d.ts +1 -1
  177. package/dist/core/history/version-address.d.ts +2 -2
  178. package/dist/core/history/workspace-history.d.ts +72 -72
  179. package/dist/core/io/body-file.d.ts +2 -2
  180. package/dist/core/io/bulk-ids-input.d.ts +7 -7
  181. package/dist/core/item/actionability.d.ts +30 -30
  182. package/dist/core/item/dependency-reference.d.ts +2 -2
  183. package/dist/core/item/id.d.ts +9 -9
  184. package/dist/core/item/item-format-version.d.ts +17 -15
  185. package/dist/core/item/item-format-version.js +1 -1
  186. package/dist/core/item/item-format.d.ts +54 -54
  187. package/dist/core/item/item-format.js +3 -3
  188. package/dist/core/item/item-record.d.ts +1 -1
  189. package/dist/core/item/item-type-definition.d.ts +11 -11
  190. package/dist/core/item/parent-reference-policy.d.ts +6 -6
  191. package/dist/core/item/parse.d.ts +37 -37
  192. package/dist/core/item/plan-lifecycle.d.ts +4 -4
  193. package/dist/core/item/priority.d.ts +3 -3
  194. package/dist/core/item/sprint-release-format.d.ts +4 -4
  195. package/dist/core/item/status-filter.d.ts +5 -5
  196. package/dist/core/item/status.d.ts +3 -3
  197. package/dist/core/item/toon-decode.d.ts +10 -10
  198. package/dist/core/item/type-registry.d.ts +35 -35
  199. package/dist/core/item/type-synonyms.d.ts +2 -2
  200. package/dist/core/lock/lock-gc.d.ts +28 -28
  201. package/dist/core/lock/lock.d.ts +53 -53
  202. package/dist/core/output/mutation-projection.d.ts +4 -25
  203. package/dist/core/output/mutation-projection.js +1 -1
  204. package/dist/core/output/output-control.d.ts +4 -4
  205. package/dist/core/output/output.d.ts +30 -30
  206. package/dist/core/output/query-summary.d.ts +5 -5
  207. package/dist/core/output/tabular.d.ts +3 -3
  208. package/dist/core/packages/manifest.d.ts +30 -30
  209. package/dist/core/packages/root.d.ts +4 -4
  210. package/dist/core/policy/workflow-policy-schema.d.ts +291 -291
  211. package/dist/core/policy/workflow-policy-store.d.ts +15 -15
  212. package/dist/core/policy/workflow-policy.d.ts +56 -56
  213. package/dist/core/profile/profile-describe.d.ts +22 -22
  214. package/dist/core/profile/profile-lint.d.ts +13 -13
  215. package/dist/core/profile/profile-plan.d.ts +45 -45
  216. package/dist/core/profile/profile-presets.d.ts +36 -36
  217. package/dist/core/reproducibility/context.d.ts +9 -9
  218. package/dist/core/schema/fields-file.d.ts +35 -35
  219. package/dist/core/schema/item-types-file.d.ts +29 -29
  220. package/dist/core/schema/runtime-field-filters.d.ts +3 -3
  221. package/dist/core/schema/runtime-field-values.d.ts +7 -7
  222. package/dist/core/schema/runtime-schema.d.ts +59 -59
  223. package/dist/core/schema/status-defs-file.d.ts +29 -29
  224. package/dist/core/schema/status-token.d.ts +1 -1
  225. package/dist/core/schema/type-inference.d.ts +10 -10
  226. package/dist/core/schema/type-presets.d.ts +5 -5
  227. package/dist/core/schema/type-workflows.d.ts +15 -15
  228. package/dist/core/schema/type-workflows.js +1 -1
  229. package/dist/core/search/background-refresh.d.ts +12 -12
  230. package/dist/core/search/bm25.d.ts +16 -16
  231. package/dist/core/search/cache.d.ts +34 -34
  232. package/dist/core/search/corpus.d.ts +17 -17
  233. package/dist/core/search/embedding-batches.d.ts +25 -25
  234. package/dist/core/search/eval-thresholds.d.ts +4 -4
  235. package/dist/core/search/eval.d.ts +40 -40
  236. package/dist/core/search/http-client.d.ts +24 -24
  237. package/dist/core/search/providers.d.ts +30 -30
  238. package/dist/core/search/relevance.d.ts +17 -17
  239. package/dist/core/search/semantic-defaults.d.ts +5 -5
  240. package/dist/core/search/staleness.d.ts +3 -3
  241. package/dist/core/search/vector-stores.d.ts +51 -51
  242. package/dist/core/search/vectorization-metadata.d.ts +9 -9
  243. package/dist/core/sentry/helpers.d.ts +27 -27
  244. package/dist/core/sentry/instrument.d.ts +51 -51
  245. package/dist/core/sentry/instrument.js +1 -1
  246. package/dist/core/sentry/sensitive-assignments.d.ts +9 -0
  247. package/dist/core/sentry/sensitive-assignments.js +2 -0
  248. package/dist/core/session/session-state.d.ts +37 -37
  249. package/dist/core/shared/agent-session-context.d.ts +14 -14
  250. package/dist/core/shared/author.d.ts +89 -89
  251. package/dist/core/shared/command-line.d.ts +3 -3
  252. package/dist/core/shared/command-types.d.ts +20 -20
  253. package/dist/core/shared/conflict-markers.d.ts +5 -5
  254. package/dist/core/shared/constants.d.ts +30 -30
  255. package/dist/core/shared/errors.d.ts +100 -100
  256. package/dist/core/shared/html-entity-decode.d.ts +2 -2
  257. package/dist/core/shared/item-metadata-contract.d.ts +2 -2
  258. package/dist/core/shared/lazy-module.d.ts +1 -1
  259. package/dist/core/shared/levenshtein.d.ts +1 -1
  260. package/dist/core/shared/memo.d.ts +1 -1
  261. package/dist/core/shared/numeric-parsers.d.ts +1 -1
  262. package/dist/core/shared/option-alias-visibility.d.ts +3 -3
  263. package/dist/core/shared/primitives.d.ts +13 -13
  264. package/dist/core/shared/secret-rules.d.ts +92 -92
  265. package/dist/core/shared/serial-queue.d.ts +6 -6
  266. package/dist/core/shared/serialization.d.ts +4 -4
  267. package/dist/core/shared/split-comma-list.d.ts +4 -4
  268. package/dist/core/shared/text-normalization.d.ts +5 -3
  269. package/dist/core/shared/text-normalization.js +1 -1
  270. package/dist/core/shared/time.d.ts +27 -27
  271. package/dist/core/store/item-format-migration.d.ts +7 -7
  272. package/dist/core/store/item-metadata-cache.d.ts +30 -30
  273. package/dist/core/store/item-metadata-query-index.d.ts +66 -66
  274. package/dist/core/store/item-metadata-read-work.d.ts +6 -6
  275. package/dist/core/store/item-mutation-precondition.d.ts +11 -0
  276. package/dist/core/store/item-mutation-precondition.js +2 -0
  277. package/dist/core/store/item-store.d.ts +123 -123
  278. package/dist/core/store/item-store.js +1 -1
  279. package/dist/core/store/paths.d.ts +27 -27
  280. package/dist/core/store/settings-concurrency.d.ts +1 -1
  281. package/dist/core/store/settings-read-cache.d.ts +11 -11
  282. package/dist/core/store/settings-validator.d.ts +117 -117
  283. package/dist/core/store/settings.d.ts +84 -84
  284. package/dist/core/store/sqlite-runtime.d.ts +2 -2
  285. package/dist/core/store/tracker-preflight.d.ts +3 -3
  286. package/dist/core/telemetry/consent.d.ts +1 -1
  287. package/dist/core/telemetry/observability.d.ts +16 -16
  288. package/dist/core/telemetry/policy.d.ts +7 -7
  289. package/dist/core/telemetry/read-sampling.d.ts +1 -1
  290. package/dist/core/telemetry/runtime.d.ts +275 -275
  291. package/dist/core/test/background-runs.d.ts +123 -123
  292. package/dist/core/test/item-test-run-tracking.d.ts +10 -10
  293. package/dist/core/test/run-selectors.d.ts +12 -12
  294. package/dist/core/validate/estimate-defaults.d.ts +3 -3
  295. package/dist/core/validate/fix-planning.d.ts +36 -36
  296. package/dist/core/validate/linked-artifact-reference.d.ts +1 -1
  297. package/dist/core/validate/missing-by-type.d.ts +3 -3
  298. package/dist/core/validate/missing-link-owners.d.ts +17 -17
  299. package/dist/core/validate/stale-file-classification.d.ts +6 -6
  300. package/dist/mcp/http-server.d.ts +26 -26
  301. package/dist/mcp/legacy-adapter.d.ts +18 -18
  302. package/dist/mcp/runtime-capabilities.d.ts +18 -18
  303. package/dist/mcp/server.d.ts +73 -73
  304. package/dist/mcp/server.js +1 -1
  305. package/dist/mcp/tool-definitions.d.ts +27 -27
  306. package/dist/mcp/tool-definitions.js +1 -1
  307. package/dist/sdk/actionability.d.ts +1 -1
  308. package/dist/sdk/agent/closed-domain-contracts.d.ts +11 -11
  309. package/dist/sdk/agent/command-recovery.d.ts +5 -5
  310. package/dist/sdk/agent/command-suggestions.d.ts +4 -4
  311. package/dist/sdk/agent/create-option-policy.d.ts +2 -2
  312. package/dist/sdk/agent/identity-config.d.ts +18 -18
  313. package/dist/sdk/agent/item-addressing.d.ts +6 -6
  314. package/dist/sdk/agent/refusal-closure-census.d.ts +26 -26
  315. package/dist/sdk/agent/refusal-closure.d.ts +22 -22
  316. package/dist/sdk/agent/refusal-corpus-contracts.d.ts +26 -26
  317. package/dist/sdk/agent/refusal-reachability.d.ts +65 -65
  318. package/dist/sdk/agent/subcommand-recovery.d.ts +20 -20
  319. package/dist/sdk/agent/task-transcript-contracts.d.ts +18 -18
  320. package/dist/sdk/agent/tracker-preflight-contracts.d.ts +21 -21
  321. package/dist/sdk/agent-capability-contracts.d.ts +41 -41
  322. package/dist/sdk/agent-session-context.d.ts +1 -1
  323. package/dist/sdk/annotations.d.ts +74 -74
  324. package/dist/sdk/author-attribution.d.ts +47 -47
  325. package/dist/sdk/authoring.d.ts +9 -9
  326. package/dist/sdk/cli-bootstrap.d.ts +65 -65
  327. package/dist/sdk/cli-contracts/agent-output-contracts.d.ts +56 -56
  328. package/dist/sdk/cli-contracts/agent-output-contracts.js +1 -1
  329. package/dist/sdk/cli-contracts/bootstrap-command-scanner.d.ts +6 -6
  330. package/dist/sdk/cli-contracts/command-aliases.d.ts +19 -19
  331. package/dist/sdk/cli-contracts/command-exit-contracts.d.ts +66 -66
  332. package/dist/sdk/cli-contracts/commander-mutation-options.d.ts +7 -7
  333. package/dist/sdk/cli-contracts/commander-types.d.ts +18 -18
  334. package/dist/sdk/cli-contracts/completeness.d.ts +14 -14
  335. package/dist/sdk/cli-contracts/enum-contracts.d.ts +28 -28
  336. package/dist/sdk/cli-contracts/flag-contracts.d.ts +114 -112
  337. package/dist/sdk/cli-contracts/flag-contracts.js +1 -1
  338. package/dist/sdk/cli-contracts/flag-lexicon-contracts.d.ts +27 -27
  339. package/dist/sdk/cli-contracts/flag-lexicon-contracts.js +1 -1
  340. package/dist/sdk/cli-contracts/grammar-contracts.d.ts +61 -61
  341. package/dist/sdk/cli-contracts/registration-helpers.d.ts +57 -57
  342. package/dist/sdk/cli-contracts/registration-helpers.js +1 -1
  343. package/dist/sdk/cli-contracts/runtime-contracts.d.ts +250 -250
  344. package/dist/sdk/cli-contracts/runtime-contracts.js +1 -1
  345. package/dist/sdk/cli-contracts/schemas/assurance-definition.d.ts +678 -678
  346. package/dist/sdk/cli-contracts/string-lists.d.ts +1 -1
  347. package/dist/sdk/cli-contracts/tool-option-contracts.d.ts +564 -564
  348. package/dist/sdk/cli-contracts/tool-parameter-tables.d.ts +13 -13
  349. package/dist/sdk/cli-contracts/tool-schema.d.ts +54 -54
  350. package/dist/sdk/cli-contracts/tool-schema.js +1 -1
  351. package/dist/sdk/cli-contracts/typed-action-inputs.d.ts +20 -20
  352. package/dist/sdk/cli-contracts.d.ts +15 -15
  353. package/dist/sdk/cli-program.d.ts +1 -1
  354. package/dist/sdk/cli-program.js +1 -1
  355. package/dist/sdk/command-line.d.ts +3 -3
  356. package/dist/sdk/comments.d.ts +24 -24
  357. package/dist/sdk/compile-cache.d.ts +4 -4
  358. package/dist/sdk/completion/bash.d.ts +1 -1
  359. package/dist/sdk/completion/fish.d.ts +1 -1
  360. package/dist/sdk/completion/shared.d.ts +74 -74
  361. package/dist/sdk/completion/zsh.d.ts +1 -1
  362. package/dist/sdk/completion.d.ts +3 -3
  363. package/dist/sdk/compose.d.ts +94 -94
  364. package/dist/sdk/config.d.ts +105 -105
  365. package/dist/sdk/context/recency.d.ts +1 -1
  366. package/dist/sdk/context/semantic-session-attribution.d.ts +23 -23
  367. package/dist/sdk/context/usage-egress.d.ts +1 -1
  368. package/dist/sdk/context/usage-ledger.d.ts +18 -18
  369. package/dist/sdk/context-intent-contracts.d.ts +37 -37
  370. package/dist/sdk/context-intent-contracts.js +1 -1
  371. package/dist/sdk/context-intent-runtime.d.ts +10 -10
  372. package/dist/sdk/context-packing.d.ts +44 -44
  373. package/dist/sdk/context-relevance.d.ts +110 -110
  374. package/dist/sdk/context-signal-store.d.ts +52 -52
  375. package/dist/sdk/context-usage.d.ts +78 -78
  376. package/dist/sdk/contracts.d.ts +2 -1
  377. package/dist/sdk/contracts.js +1 -1
  378. package/dist/sdk/core-governance.d.ts +5 -5
  379. package/dist/sdk/core.d.ts +9 -8
  380. package/dist/sdk/core.js +1 -1
  381. package/dist/sdk/corpus-shape.d.ts +60 -60
  382. package/dist/sdk/define.d.ts +36 -36
  383. package/dist/sdk/dependencies.d.ts +70 -70
  384. package/dist/sdk/dependency-flag-validation.d.ts +17 -17
  385. package/dist/sdk/dependency-provenance.d.ts +22 -22
  386. package/dist/sdk/docs.d.ts +17 -17
  387. package/dist/sdk/duplicates.d.ts +14 -14
  388. package/dist/sdk/environment/agent-environment.d.ts +118 -118
  389. package/dist/sdk/environment/host-environment-errors.d.ts +1 -1
  390. package/dist/sdk/environment/project-runtime-compatibility.d.ts +42 -40
  391. package/dist/sdk/environment/project-runtime-compatibility.js +2 -2
  392. package/dist/sdk/environment/source-context.d.ts +4 -4
  393. package/dist/sdk/environment/tracker-preflight.d.ts +1 -1
  394. package/dist/sdk/error-code-catalog.d.ts +33 -33
  395. package/dist/sdk/error-runtime.d.ts +5 -5
  396. package/dist/sdk/errors.d.ts +17 -17
  397. package/dist/sdk/eval.d.ts +27 -27
  398. package/dist/sdk/extension/author-manifest.d.ts +9 -9
  399. package/dist/sdk/extension/bundled-catalog.d.ts +18 -18
  400. package/dist/sdk/extension/concurrency.d.ts +1 -1
  401. package/dist/sdk/extension/copy-scope.d.ts +1 -1
  402. package/dist/sdk/extension/custom-field-collisions.d.ts +1 -1
  403. package/dist/sdk/extension/describe.d.ts +21 -21
  404. package/dist/sdk/extension/doctor.d.ts +46 -46
  405. package/dist/sdk/extension/install-plan.d.ts +32 -32
  406. package/dist/sdk/extension/install-receipts.d.ts +4 -4
  407. package/dist/sdk/extension/install-runtime.d.ts +12 -12
  408. package/dist/sdk/extension/install-snapshot.d.ts +10 -10
  409. package/dist/sdk/extension/install-sources.d.ts +106 -106
  410. package/dist/sdk/extension/managed-state.d.ts +42 -42
  411. package/dist/sdk/extension/managed-update-status.d.ts +1 -1
  412. package/dist/sdk/extension/migrations.d.ts +48 -48
  413. package/dist/sdk/extension/output-ownership.d.ts +19 -19
  414. package/dist/sdk/extension/runtime-summary.d.ts +7 -7
  415. package/dist/sdk/extension/scaffold.d.ts +15 -15
  416. package/dist/sdk/extension/shared.d.ts +16 -16
  417. package/dist/sdk/extension/source-resolution.d.ts +16 -16
  418. package/dist/sdk/extension/static-inventory.d.ts +23 -23
  419. package/dist/sdk/extension/update-check.d.ts +9 -9
  420. package/dist/sdk/extension-command-context.d.ts +1 -1
  421. package/dist/sdk/extension-contracts.d.ts +10 -10
  422. package/dist/sdk/extension.d.ts +221 -221
  423. package/dist/sdk/files.d.ts +101 -101
  424. package/dist/sdk/flag-invocation-contracts.d.ts +25 -25
  425. package/dist/sdk/flag-invocation-contracts.js +1 -1
  426. package/dist/sdk/generated/generated-error-code-catalog-part-1.d.ts +1 -1
  427. package/dist/sdk/generated/generated-error-code-catalog-part-1.js +1 -1
  428. package/dist/sdk/generated/generated-error-code-catalog-part-2.d.ts +1 -1
  429. package/dist/sdk/generated/generated-error-code-catalog-part-2.js +1 -1
  430. package/dist/sdk/generated-error-code-catalog.d.ts +1 -1
  431. package/dist/sdk/governance/artifact-ledgers.d.ts +19 -19
  432. package/dist/sdk/governance/assurance-action-contracts.d.ts +1 -1
  433. package/dist/sdk/governance/assurance-action.d.ts +46 -46
  434. package/dist/sdk/governance/assurance-mutation-error.d.ts +20 -20
  435. package/dist/sdk/governance/assurance-presets.d.ts +25 -25
  436. package/dist/sdk/governance/assurance-runtime.d.ts +10 -10
  437. package/dist/sdk/governance/assurance.d.ts +204 -204
  438. package/dist/sdk/governance/boundary-fixtures.d.ts +32 -32
  439. package/dist/sdk/governance/closure-timestamps.d.ts +10 -10
  440. package/dist/sdk/governance/coverage-assurance.d.ts +7 -7
  441. package/dist/sdk/governance/defect-recurrence-coverage.d.ts +40 -40
  442. package/dist/sdk/governance/defect-recurrence-graph.d.ts +11 -11
  443. package/dist/sdk/governance/defect-recurrence-signals.d.ts +1 -1
  444. package/dist/sdk/governance/defect-recurrence.d.ts +97 -97
  445. package/dist/sdk/governance/extension-host-version.d.ts +9 -9
  446. package/dist/sdk/governance/gc.d.ts +26 -26
  447. package/dist/sdk/governance/health-merge-evidence.d.ts +8 -8
  448. package/dist/sdk/governance/health.d.ts +172 -172
  449. package/dist/sdk/governance/health.js +1 -1
  450. package/dist/sdk/governance/hierarchy-validation.d.ts +16 -16
  451. package/dist/sdk/governance/linked-file-report.d.ts +15 -15
  452. package/dist/sdk/governance/merge-receipt-history.d.ts +24 -24
  453. package/dist/sdk/governance/provenance-health.d.ts +35 -35
  454. package/dist/sdk/governance/reindex.d.ts +102 -102
  455. package/dist/sdk/governance/reliability.d.ts +29 -29
  456. package/dist/sdk/governance/stale-work.d.ts +13 -13
  457. package/dist/sdk/governance/status-role-diagnostics.d.ts +8 -8
  458. package/dist/sdk/governance/storage-integrity.d.ts +28 -28
  459. package/dist/sdk/governance/tracked-runtime-cache.d.ts +7 -7
  460. package/dist/sdk/governance/upgrade.d.ts +77 -77
  461. package/dist/sdk/governance/validate-history-drift.d.ts +3 -3
  462. package/dist/sdk/governance/validate-item-reader.d.ts +9 -9
  463. package/dist/sdk/governance/validate-normalization.d.ts +4 -4
  464. package/dist/sdk/governance/validate.d.ts +176 -176
  465. package/dist/sdk/governance/validate.js +1 -1
  466. package/dist/sdk/governance/workflow-completeness.d.ts +15 -15
  467. package/dist/sdk/governance/workflow-policy.d.ts +18 -18
  468. package/dist/sdk/governance/workspace-position.d.ts +40 -40
  469. package/dist/sdk/governance.d.ts +2 -2
  470. package/dist/sdk/graph/adapter.d.ts +45 -45
  471. package/dist/sdk/graph/analytics.d.ts +36 -36
  472. package/dist/sdk/graph/assembly.d.ts +51 -51
  473. package/dist/sdk/graph/cache.d.ts +19 -19
  474. package/dist/sdk/graph/cardinality-integrity.d.ts +4 -4
  475. package/dist/sdk/graph/centrality.d.ts +20 -20
  476. package/dist/sdk/graph/conformance.d.ts +21 -21
  477. package/dist/sdk/graph/deadline-scheduling.d.ts +30 -30
  478. package/dist/sdk/graph/durable-cache.d.ts +22 -22
  479. package/dist/sdk/graph/governance-contracts.d.ts +1 -1
  480. package/dist/sdk/graph/governance.d.ts +92 -92
  481. package/dist/sdk/graph/hierarchy-integrity.d.ts +32 -32
  482. package/dist/sdk/graph/index.d.ts +15 -15
  483. package/dist/sdk/graph/lifecycle-coverage.d.ts +12 -12
  484. package/dist/sdk/graph/mutation-advisory.d.ts +15 -15
  485. package/dist/sdk/graph/query-contracts.d.ts +6 -6
  486. package/dist/sdk/graph/remediation.d.ts +15 -15
  487. package/dist/sdk/graph/run.d.ts +203 -203
  488. package/dist/sdk/graph/scheduling.d.ts +21 -21
  489. package/dist/sdk/graph/traversal.d.ts +18 -18
  490. package/dist/sdk/graph/workspace-relationship-kind-registry.d.ts +1 -1
  491. package/dist/sdk/guide-topics.d.ts +19 -19
  492. package/dist/sdk/guide-topics.js +1 -1
  493. package/dist/sdk/guide.d.ts +43 -43
  494. package/dist/sdk/history/attestation-command.d.ts +8 -8
  495. package/dist/sdk/history/attestation-contract.d.ts +43 -43
  496. package/dist/sdk/history/attestation-scan.d.ts +4 -4
  497. package/dist/sdk/history/attestation.d.ts +4 -4
  498. package/dist/sdk/history/maintenance.d.ts +25 -25
  499. package/dist/sdk/history/salvage.d.ts +19 -19
  500. package/dist/sdk/history/subject.d.ts +8 -8
  501. package/dist/sdk/history-analytics.d.ts +64 -64
  502. package/dist/sdk/history-compact.d.ts +67 -67
  503. package/dist/sdk/history-mcp.d.ts +7 -7
  504. package/dist/sdk/history-provenance.d.ts +40 -40
  505. package/dist/sdk/history-read.d.ts +24 -24
  506. package/dist/sdk/history-redact.d.ts +68 -68
  507. package/dist/sdk/history-repair.d.ts +92 -92
  508. package/dist/sdk/improvement-ledger-validation.d.ts +1 -1
  509. package/dist/sdk/improvement-ledger.d.ts +62 -62
  510. package/dist/sdk/index.d.ts +70 -69
  511. package/dist/sdk/index.js +1 -1
  512. package/dist/sdk/init-agent-guidance.d.ts +68 -68
  513. package/dist/sdk/init.d.ts +117 -117
  514. package/dist/sdk/invocation-author.d.ts +1 -1
  515. package/dist/sdk/item-children.d.ts +15 -15
  516. package/dist/sdk/item-metadata-index.d.ts +2 -2
  517. package/dist/sdk/item-schedule.d.ts +9 -9
  518. package/dist/sdk/item-transaction.d.ts +139 -76
  519. package/dist/sdk/item-transaction.js +1 -1
  520. package/dist/sdk/learnings.d.ts +23 -23
  521. package/dist/sdk/lifecycle/append.d.ts +8 -8
  522. package/dist/sdk/lifecycle/claim.d.ts +53 -39
  523. package/dist/sdk/lifecycle/claim.js +1 -1
  524. package/dist/sdk/lifecycle/close-many.d.ts +71 -71
  525. package/dist/sdk/lifecycle/close.d.ts +18 -24
  526. package/dist/sdk/lifecycle/close.js +1 -1
  527. package/dist/sdk/lifecycle/copy.d.ts +10 -10
  528. package/dist/sdk/lifecycle/core-field-recovery.d.ts +1 -1
  529. package/dist/sdk/lifecycle/core-item-fields.d.ts +6 -0
  530. package/dist/sdk/lifecycle/core-item-fields.js +2 -0
  531. package/dist/sdk/lifecycle/create.d.ts +88 -88
  532. package/dist/sdk/lifecycle/delete.d.ts +15 -15
  533. package/dist/sdk/lifecycle/event-validation-messages.d.ts +1 -1
  534. package/dist/sdk/lifecycle/focus.d.ts +6 -6
  535. package/dist/sdk/lifecycle/hierarchy-mutation-lock.d.ts +6 -6
  536. package/dist/sdk/lifecycle/legacy-none-tokens.d.ts +35 -35
  537. package/dist/sdk/lifecycle/lifecycle-transitions.d.ts +3 -3
  538. package/dist/sdk/lifecycle/mcp-actions.d.ts +10 -10
  539. package/dist/sdk/lifecycle/mcp-actions.js +1 -1
  540. package/dist/sdk/lifecycle/metadata-normalizers.d.ts +4 -4
  541. package/dist/sdk/lifecycle/mutation-command-options.d.ts +58 -58
  542. package/dist/sdk/lifecycle/mutation-facet-contracts.d.ts +1 -1
  543. package/dist/sdk/lifecycle/mutation-option-validation.d.ts +2 -0
  544. package/dist/sdk/lifecycle/mutation-option-validation.js +2 -0
  545. package/dist/sdk/lifecycle/plan-mutation-receipt.d.ts +24 -24
  546. package/dist/sdk/lifecycle/plan.d.ts +127 -127
  547. package/dist/sdk/lifecycle/recurrence-parsers.d.ts +5 -5
  548. package/dist/sdk/lifecycle/release-handoff.d.ts +12 -0
  549. package/dist/sdk/lifecycle/release-handoff.js +2 -0
  550. package/dist/sdk/lifecycle/reopen.d.ts +15 -15
  551. package/dist/sdk/lifecycle/repeatable-metadata-parsers.d.ts +7 -7
  552. package/dist/sdk/lifecycle/restore.d.ts +34 -34
  553. package/dist/sdk/lifecycle/restore.js +1 -1
  554. package/dist/sdk/lifecycle/shared-unset-fields.d.ts +20 -20
  555. package/dist/sdk/lifecycle/structured-mutation-plan.d.ts +33 -0
  556. package/dist/sdk/lifecycle/structured-mutation-plan.js +2 -0
  557. package/dist/sdk/lifecycle/task-composition.d.ts +9 -9
  558. package/dist/sdk/lifecycle/task-composition.js +1 -1
  559. package/dist/sdk/lifecycle/update-many.d.ts +61 -61
  560. package/dist/sdk/lifecycle/update.d.ts +113 -121
  561. package/dist/sdk/lifecycle/update.js +1 -1
  562. package/dist/sdk/lifecycle/workflow-transition.d.ts +13 -0
  563. package/dist/sdk/lifecycle/workflow-transition.js +2 -0
  564. package/dist/sdk/lifecycle-completion.d.ts +14 -14
  565. package/dist/sdk/lifecycle-policy.d.ts +42 -32
  566. package/dist/sdk/lifecycle-policy.js +1 -1
  567. package/dist/sdk/linked-artifacts.d.ts +58 -58
  568. package/dist/sdk/mcp/apps.d.ts +28 -28
  569. package/dist/sdk/mcp/authorization.d.ts +66 -66
  570. package/dist/sdk/mcp/discovery.d.ts +67 -67
  571. package/dist/sdk/mcp/interactions.d.ts +49 -49
  572. package/dist/sdk/mcp/protocol.d.ts +63 -63
  573. package/dist/sdk/mcp/skills.d.ts +62 -62
  574. package/dist/sdk/mcp/subscriptions.d.ts +26 -26
  575. package/dist/sdk/mcp/tasks.d.ts +51 -51
  576. package/dist/sdk/mcp/transport.d.ts +17 -17
  577. package/dist/sdk/merge/abandoned-receipts.d.ts +8 -8
  578. package/dist/sdk/merge/driver.d.ts +38 -38
  579. package/dist/sdk/merge/index.d.ts +5 -5
  580. package/dist/sdk/merge/install.d.ts +48 -48
  581. package/dist/sdk/merge/receipt-file-boundary.d.ts +6 -6
  582. package/dist/sdk/merge/receipt-operation.d.ts +6 -6
  583. package/dist/sdk/merge/receipt-schema.d.ts +11 -11
  584. package/dist/sdk/merge/receipts.d.ts +111 -111
  585. package/dist/sdk/merge/reconcile.d.ts +20 -20
  586. package/dist/sdk/merge/three-way.d.ts +50 -50
  587. package/dist/sdk/merge/three-way.js +2 -2
  588. package/dist/sdk/merge/worktree-config.d.ts +3 -3
  589. package/dist/sdk/mutation-events.d.ts +62 -62
  590. package/dist/sdk/mutation-guard.d.ts +134 -134
  591. package/dist/sdk/notes.d.ts +28 -28
  592. package/dist/sdk/output/table-rows.d.ts +6 -6
  593. package/dist/sdk/output-contracts.d.ts +26 -26
  594. package/dist/sdk/output-projection.d.ts +108 -108
  595. package/dist/sdk/output-token-accounting.d.ts +18 -18
  596. package/dist/sdk/output.d.ts +18 -18
  597. package/dist/sdk/ownership-source.d.ts +1 -1
  598. package/dist/sdk/package-import-adapters.d.ts +51 -51
  599. package/dist/sdk/package-migrations.d.ts +3 -3
  600. package/dist/sdk/package-runtime-options.d.ts +3 -3
  601. package/dist/sdk/pagination.d.ts +28 -28
  602. package/dist/sdk/pagination.js +1 -1
  603. package/dist/sdk/profile.d.ts +72 -72
  604. package/dist/sdk/provenance.d.ts +37 -37
  605. package/dist/sdk/public-surface.json +1 -1
  606. package/dist/sdk/query/activity.d.ts +84 -84
  607. package/dist/sdk/query/aggregate.d.ts +109 -109
  608. package/dist/sdk/query/calendar.d.ts +95 -95
  609. package/dist/sdk/query/complete-list.d.ts +35 -35
  610. package/dist/sdk/query/context.d.ts +300 -300
  611. package/dist/sdk/query/duplicate-candidates.d.ts +3 -3
  612. package/dist/sdk/query/get.d.ts +54 -54
  613. package/dist/sdk/query/history.d.ts +38 -38
  614. package/dist/sdk/query/item-filter-options.d.ts +41 -41
  615. package/dist/sdk/query/light-metadata.d.ts +1 -1
  616. package/dist/sdk/query/list-filter-shared.d.ts +4 -4
  617. package/dist/sdk/query/list.d.ts +167 -167
  618. package/dist/sdk/query/list.js +1 -1
  619. package/dist/sdk/query/multi-value-filters.d.ts +6 -6
  620. package/dist/sdk/query/next-ready-budget.d.ts +8 -8
  621. package/dist/sdk/query/next.d.ts +94 -94
  622. package/dist/sdk/query/parsers.d.ts +3 -3
  623. package/dist/sdk/query/projection-contracts.d.ts +18 -18
  624. package/dist/sdk/query/search/corpus.d.ts +15 -15
  625. package/dist/sdk/query/search/filters.d.ts +15 -15
  626. package/dist/sdk/query/search/input.d.ts +8 -8
  627. package/dist/sdk/query/search/lexical.d.ts +10 -10
  628. package/dist/sdk/query/search/response.d.ts +22 -22
  629. package/dist/sdk/query/search/semantic.d.ts +133 -133
  630. package/dist/sdk/query/search/types.d.ts +65 -65
  631. package/dist/sdk/query/search-contracts.d.ts +53 -53
  632. package/dist/sdk/query/search-pagination.d.ts +21 -21
  633. package/dist/sdk/query/search-rendering.d.ts +30 -30
  634. package/dist/sdk/query/search.d.ts +60 -60
  635. package/dist/sdk/query/workspace-contracts.d.ts +2 -2
  636. package/dist/sdk/query.d.ts +6 -6
  637. package/dist/sdk/read-output/continuation.d.ts +11 -11
  638. package/dist/sdk/read-output/extension.d.ts +3 -3
  639. package/dist/sdk/read-output/options.d.ts +7 -7
  640. package/dist/sdk/read-output/provenance.d.ts +6 -6
  641. package/dist/sdk/read-output-budget.d.ts +11 -11
  642. package/dist/sdk/read-output-budget.js +1 -1
  643. package/dist/sdk/read-output-contracts.d.ts +112 -112
  644. package/dist/sdk/read-output-contracts.js +1 -1
  645. package/dist/sdk/read-output-rows.d.ts +15 -15
  646. package/dist/sdk/read-output-session.d.ts +29 -29
  647. package/dist/sdk/relationship-analytics.d.ts +46 -46
  648. package/dist/sdk/relationship-context.d.ts +48 -48
  649. package/dist/sdk/relationship-history.d.ts +59 -59
  650. package/dist/sdk/relationship-kinds/contract.d.ts +18 -18
  651. package/dist/sdk/relationship-migration.d.ts +14 -14
  652. package/dist/sdk/relationships.d.ts +46 -46
  653. package/dist/sdk/reproducibility/process.d.ts +9 -9
  654. package/dist/sdk/runtime/actions.d.ts +1 -1
  655. package/dist/sdk/runtime/context.d.ts +15 -15
  656. package/dist/sdk/runtime/schema-preview.d.ts +1 -1
  657. package/dist/sdk/runtime/schema.d.ts +1 -1
  658. package/dist/sdk/runtime-action-aliases.d.ts +3 -3
  659. package/dist/sdk/runtime-extended-actions.d.ts +9 -9
  660. package/dist/sdk/runtime-input.d.ts +29 -29
  661. package/dist/sdk/runtime-input.js +1 -1
  662. package/dist/sdk/runtime-primitives.d.ts +53 -53
  663. package/dist/sdk/runtime-primitives.js +1 -1
  664. package/dist/sdk/runtime-public-contracts.d.ts +46 -46
  665. package/dist/sdk/runtime-stats-options.d.ts +1 -1
  666. package/dist/sdk/runtime.d.ts +374 -374
  667. package/dist/sdk/runtime.js +1 -1
  668. package/dist/sdk/scheduling-shortcuts.d.ts +19 -19
  669. package/dist/sdk/schema-migration.d.ts +79 -79
  670. package/dist/sdk/schema.d.ts +224 -224
  671. package/dist/sdk/search-refresh-worker.d.ts +1 -1
  672. package/dist/sdk/similarity-scoring.d.ts +10 -10
  673. package/dist/sdk/similarity.d.ts +73 -73
  674. package/dist/sdk/start-task-status.d.ts +1 -1
  675. package/dist/sdk/stats.d.ts +72 -72
  676. package/dist/sdk/structured-mutations.d.ts +64 -13
  677. package/dist/sdk/structured-mutations.js +1 -1
  678. package/dist/sdk/telemetry-flush.d.ts +1 -1
  679. package/dist/sdk/telemetry.d.ts +32 -32
  680. package/dist/sdk/templates.d.ts +35 -35
  681. package/dist/sdk/test/batch.d.ts +50 -50
  682. package/dist/sdk/test/command-args.d.ts +2 -2
  683. package/dist/sdk/test/entry.d.ts +4 -4
  684. package/dist/sdk/test/execution-receipts.d.ts +5 -5
  685. package/dist/sdk/test/execution.d.ts +247 -247
  686. package/dist/sdk/test/json-path.d.ts +4 -4
  687. package/dist/sdk/test/linked-command-detection.d.ts +36 -36
  688. package/dist/sdk/test/measurements.d.ts +10 -10
  689. package/dist/sdk/test/parsers.d.ts +18 -18
  690. package/dist/sdk/test/prerequisites.d.ts +3 -3
  691. package/dist/sdk/test/runs.d.ts +43 -43
  692. package/dist/sdk/test/trust.d.ts +15 -15
  693. package/dist/sdk/test/update.d.ts +23 -23
  694. package/dist/sdk/test/workspace-snapshot.d.ts +1 -1
  695. package/dist/sdk/testing.d.ts +248 -248
  696. package/dist/sdk/traceability/runtime-files-lookup.d.ts +1 -1
  697. package/dist/sdk/traceability/source-traceability.d.ts +50 -50
  698. package/dist/sdk/workspace-contracts-cache.d.ts +2 -2
  699. package/dist/sdk/workspace-contracts.d.ts +20 -20
  700. package/dist/sdk/workspace-memory.d.ts +42 -42
  701. package/dist/sdk/workspace-recipe.d.ts +9 -9
  702. package/dist/sdk/workspace-snapshot.d.ts +60 -60
  703. package/dist/sdk/workspace-transaction-gc.d.ts +17 -17
  704. package/dist/sdk/workspace-transaction.d.ts +26 -26
  705. package/dist/sdk/workspace-transaction.js +2 -2
  706. package/dist/sdk/workspace.d.ts +9 -9
  707. package/dist/types.d.ts +540 -540
  708. package/docs/AGENT_GUIDE.md +33 -4
  709. package/docs/CLOSE_EVIDENCE_RECOVERY.md +16 -7
  710. package/docs/COMMANDS.md +96 -12
  711. package/docs/ECOSYSTEM_PLANNING_REVIEW.md +5 -1
  712. package/docs/EXTENSIONS.md +1 -1
  713. package/docs/EXTENSION_AUTHOR_CONTRACTS.md +18 -4
  714. package/docs/LINKED_TEST_EDITS.md +15 -0
  715. package/docs/RELEASING.md +2 -0
  716. package/docs/SDK.md +114 -2
  717. package/docs/TESTING.md +36 -1
  718. package/docs/generated/FLAG_LEXICON_BUDGETS.md +1 -1
  719. package/docs/generated/REFUSAL_CLOSURE_CENSUS.md +17 -3
  720. package/marketplace.json +1 -1
  721. package/package.json +4 -1
  722. package/packages/pm-beads/package.json +1 -1
  723. package/packages/pm-calendar/package.json +1 -1
  724. package/packages/pm-command-kit/package.json +1 -1
  725. package/packages/pm-digital-twin/package.json +1 -1
  726. package/packages/pm-governance-audit/package.json +1 -1
  727. package/packages/pm-guide-shell/package.json +1 -1
  728. package/packages/pm-kanban/package.json +1 -1
  729. package/packages/pm-lifecycle-hooks/package.json +1 -1
  730. package/packages/pm-linked-test-adapters/package.json +1 -1
  731. package/packages/pm-search-advanced/package.json +1 -1
  732. package/packages/pm-templates/package.json +1 -1
  733. package/packages/pm-todos/package.json +1 -1
  734. package/packages/pm-vcs/package.json +1 -1
  735. package/plugins/pm-claude/.claude-plugin/plugin.json +1 -1
  736. package/plugins/pm-claude/package.json +1 -1
  737. package/plugins/pm-codex/.codex-plugin/plugin.json +1 -1
  738. package/plugins/pm-codex/package.json +1 -1
  739. package/plugins/pm-codex/plugin.json +1 -1
  740. package/runtime-dependencies.json +1 -1
  741. package/scripts/finalize-build.mjs +9 -3
  742. package/dist/cli-bundle/chunks/chunk-66BZVFIK.js +0 -6
  743. package/dist/cli-bundle/chunks/chunk-IDEHMKYZ.js +0 -235
  744. package/dist/cli-bundle/chunks/chunk-LOSRTNNP.js +0 -2
  745. package/dist/cli-bundle/chunks/chunk-PP3BVMFL.js +0 -30
  746. package/dist/cli-bundle/chunks/chunk-UNQZGMJL.js +0 -20
  747. package/dist/cli-bundle/chunks/chunk-YXRAYL7H.js +0 -2
  748. package/dist/cli-bundle/chunks/register-mutation-TNRHNK4N.js +0 -20
  749. package/dist/cli-bundle/focused-chunks/chunk-23ACMPGB.js +0 -2
  750. package/dist/cli-bundle/focused-chunks/chunk-JDVZF75H.js +0 -165
  751. package/dist/cli-bundle/focused-chunks/chunk-LKWDWER4.js +0 -20
  752. package/dist/cli-bundle/focused-chunks/chunk-WIXZF5SS.js +0 -26
  753. package/docs/ecosystem-review-2026-09-28.json +0 -1
@@ -3,25 +3,25 @@
3
3
  * Validates contributed command, flag, schema and profile definitions before registration.
4
4
  */
5
5
  import type { ProjectProfileDefinition } from "../profile/profile-presets.js";
6
- import { type ExtensionCommandArgumentDefinition, type FlagDefinition } from "./extension-types.js";
6
+ import { type ExtensionCommandArgumentDefinition,type FlagDefinition } from "./extension-types.js";
7
7
  /** Normalize registration records and expand the repeatable alias into the canonical list flag property. */
8
- declare function normalizeFlagDefinitions(name: string, value: unknown): FlagDefinition[];
8
+ declare function normalizeFlagDefinitions(name:string,value:unknown):FlagDefinition[];
9
9
  /** Derive an action from the command path or reject an invalid explicit action before registration. */
10
- declare function resolveCommandDefinitionAction(commandPath: string, action: unknown): string;
10
+ declare function resolveCommandDefinitionAction(commandPath:string,action:unknown):string;
11
11
  /** Validate positional argument records and enforce that at most one variadic argument appears last. */
12
- declare function normalizeCommandDefinitionArguments(value: unknown): ExtensionCommandArgumentDefinition[];
12
+ declare function normalizeCommandDefinitionArguments(value:unknown):ExtensionCommandArgumentDefinition[];
13
13
  /** Reject unknown flag properties, invalid tokens, inconsistent repeatability and defaults incompatible with the declared value type. */
14
- declare function validateFlagDefinitions(flags: unknown): void;
14
+ declare function validateFlagDefinitions(flags:unknown):void;
15
15
  /** Reject a declared `value_type`/`type` that is not a known flag value kind, and a `default` whose value(s) would not cleanly coerce under that kind — so the typed-flag contract is enforced at registration instead of silently leaving an untyped value to surface at use time. */
16
- declare function assertFlagValueTypeAndDefault(label: string, record: Record<string, unknown>): void;
16
+ declare function assertFlagValueTypeAndDefault(label:string,record:Record<string,unknown>):void;
17
17
  /** Validate custom field names and types, including typo guidance, before fields enter the runtime schema. */
18
- declare function validateItemFieldDefinitions(fields: unknown): void;
18
+ declare function validateItemFieldDefinitions(fields:unknown):void;
19
19
  /** Check custom item type metadata, creation requirements and command option policies before registration. */
20
- declare function validateItemTypeDefinitions(types: unknown): void;
20
+ declare function validateItemTypeDefinitions(types:unknown):void;
21
21
  /** Validate optional migration metadata and ensure a supplied migration runner is callable. */
22
- declare function validateMigrationDefinition(definition: unknown): void;
22
+ declare function validateMigrationDefinition(definition:unknown):void;
23
23
  /** Reject malformed profile dimensions and entries before downstream planners dereference their schema properties. */
24
- declare function validateProjectProfileDefinition(profile: unknown): void;
24
+ declare function validateProjectProfileDefinition(profile:unknown):void;
25
25
  /**
26
26
  * Fills an already-validated profile snapshot's optional surfaces — an absent
27
27
  * `summary` becomes an empty string and every omitted dimension an empty array —
@@ -30,5 +30,5 @@ declare function validateProjectProfileDefinition(profile: unknown): void;
30
30
  * validation on the cloned snapshot, so it only ever supplies missing defaults
31
31
  * and never has to coerce an invalid type (those are already rejected).
32
32
  */
33
- declare function applyProjectProfileDefaults(profile: Record<string, unknown>): ProjectProfileDefinition;
34
- export { applyProjectProfileDefaults, assertFlagValueTypeAndDefault, normalizeCommandDefinitionArguments, normalizeFlagDefinitions, resolveCommandDefinitionAction, validateFlagDefinitions, validateItemFieldDefinitions, validateItemTypeDefinitions, validateMigrationDefinition, validateProjectProfileDefinition };
33
+ declare function applyProjectProfileDefaults(profile:Record<string,unknown>):ProjectProfileDefinition;
34
+ export { applyProjectProfileDefaults,assertFlagValueTypeAndDefault,normalizeCommandDefinitionArguments,normalizeFlagDefinitions,resolveCommandDefinitionAction,validateFlagDefinitions,validateItemFieldDefinitions,validateItemTypeDefinitions,validateMigrationDefinition,validateProjectProfileDefinition };
@@ -1,2 +1,2 @@
1
- (function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="bc1e888a-4274-5d8d-9077-89ca5341172c")}catch{}})();import{describeExtensionLongFlagFailure,findExtensionFlagTokenFailure}from"./flag-definition-validation.js";import{flattenFlagListValue,isFlagDefaultValueCoercible,resolveFlagValueKind}from"./flag-value-types.js";import{KNOWN_ITEM_FIELD_TYPES,normalizeItemFieldType,suggestKnownItemFieldType}from"./item-field-types.js";import{asRegistrationRecord,assertOptionalBooleanField,assertOptionalFlagDefaultField,assertOptionalStringArrayField,assertOptionalStringField}from"./registration-validation.js";import{assertNonEmptyRegistrationString,normalizeRegistrationRecordList}from"./registration-values.js";const FLAG_DEFINITION_KEYS=new Set(["default","description","enabled","list","long","repeatable","required","short","type","value_name","value_type","visible"]);function normalizeFlagDefinitions(name,value){return normalizeRegistrationRecordList(name,value).map(record=>(record.repeatable===!0&&(record.list=!0),record))}function normalizeCommandActionName(value){return value.trim().toLowerCase().replace(/[\s_]+/g,"-").replace(/[^a-z0-9-]/g,"-").replace(/-+/g,"-").replace(/^-+|-+$/g,"")}function resolveCommandDefinitionAction(commandPath,action){if(action===void 0)return commandPath.replace(/\s+/g,"-");if(typeof action!="string"||action.trim().length===0)throw new TypeError("registerCommand definition.action must be a non-empty string when provided");const normalized=normalizeCommandActionName(action);if(normalized.length===0)throw new TypeError("registerCommand definition.action must contain alphanumeric characters");return normalized}function normalizeCommandDefinitionArguments(value){if(value===void 0)return[];if(!Array.isArray(value))throw new TypeError("registerCommand definition.arguments must be an array when provided");const normalized=[];for(const[index,entry]of value.entries()){const record=asRegistrationRecord(`registerCommand definition.arguments[${index}]`,entry),name=assertNonEmptyRegistrationString(`registerCommand definition.arguments[${index}].name`,record.name);if(assertOptionalBooleanField(`registerCommand definition.arguments[${index}].required`,record.required),assertOptionalBooleanField(`registerCommand definition.arguments[${index}].variadic`,record.variadic),assertOptionalStringField(`registerCommand definition.arguments[${index}].description`,record.description),name.includes(" "))throw new TypeError(`registerCommand definition.arguments[${index}].name must not contain spaces`);const definition={name};record.required===!0&&(definition.required=!0),record.variadic===!0&&(definition.variadic=!0),typeof record.description=="string"&&(definition.description=record.description.trim()),normalized.push(definition)}const variadicIndexes=normalized.map((argument,index)=>argument.variadic?index:-1).filter(index=>index>=0);if(variadicIndexes.length>1)throw new TypeError("registerCommand definition.arguments supports at most one variadic argument");if(variadicIndexes.length===1&&variadicIndexes[0]!==normalized.length-1)throw new TypeError("registerCommand definition.arguments variadic argument must be the final argument");return normalized}function validateFlagDefinitions(flags){if(!Array.isArray(flags))throw new TypeError("registerFlags flags requires an array of object definitions");for(const[index,raw]of flags.entries()){const record=asRegistrationRecord(`registerFlags flags[${index}]`,raw),unknownKeys=Object.keys(record).filter(key=>!FLAG_DEFINITION_KEYS.has(key)).sort((left,right)=>left.localeCompare(right));if(unknownKeys.length>0)throw new TypeError(`registerFlags flags[${index}] contains unknown field(s): ${unknownKeys.join(", ")}`);const long=record.long,short=record.short;if(long===void 0&&short===void 0)throw new TypeError(`registerFlags flags[${index}] requires at least one of long or short`);assertOptionalStringField(`registerFlags flags[${index}].long`,long),assertOptionalStringField(`registerFlags flags[${index}].short`,short);const tokenFinding=findExtensionFlagTokenFailure(long,short);if(tokenFinding!==null)throw new TypeError(`registerFlags flags[${index}] ${describeExtensionLongFlagFailure(tokenFinding.token,tokenFinding.failure)}`);if(assertOptionalStringField(`registerFlags flags[${index}].value_name`,record.value_name),assertOptionalStringField(`registerFlags flags[${index}].description`,record.description),assertOptionalBooleanField(`registerFlags flags[${index}].required`,record.required),assertOptionalBooleanField(`registerFlags flags[${index}].enabled`,record.enabled),assertOptionalBooleanField(`registerFlags flags[${index}].visible`,record.visible),assertOptionalBooleanField(`registerFlags flags[${index}].list`,record.list),assertOptionalBooleanField(`registerFlags flags[${index}].repeatable`,record.repeatable),record.list!==void 0&&record.repeatable!==void 0&&record.list!==record.repeatable)throw new TypeError(`registerFlags flags[${index}].list and repeatable must match when both are provided`);if(assertOptionalFlagDefaultField(`registerFlags flags[${index}].default`,record.default),Array.isArray(record.default)&&record.list!==!0&&record.repeatable!==!0)throw new TypeError(`registerFlags flags[${index}].default cannot be an array unless list is true.`);assertFlagValueTypeAndDefault(`registerFlags flags[${index}]`,record)}}function assertFlagValueTypeAndDefault(label,record){const declaredType=(typeof record.value_type=="string"?record.value_type:void 0)??(typeof record.type=="string"?record.type:void 0);if(declaredType===void 0)return;const kind=resolveFlagValueKind(declaredType);if(kind===null)throw new TypeError(`${label} value_type "${declaredType}" is not a known flag value type (expected one of: string, number, boolean).`);if(record.default===void 0)return;const defaults=record.list===!0||record.repeatable===!0?flattenFlagListValue(record.default):[record.default];for(const[defaultIndex,defaultValue]of defaults.entries())if(!isFlagDefaultValueCoercible(defaultValue,kind)){const suffix=defaults.length>1?`default[${defaultIndex}]`:"default";throw new TypeError(`${label}.${suffix} (${JSON.stringify(defaultValue)}) is not coercible to ${kind}.`)}}function validateItemFieldDefinitions(fields){if(!Array.isArray(fields))throw new TypeError("registerItemFields fields requires an array of object definitions");for(const[index,raw]of fields.entries()){const record=asRegistrationRecord(`registerItemFields fields[${index}]`,raw);assertNonEmptyRegistrationString(`registerItemFields fields[${index}].name`,record.name);const fieldType=assertNonEmptyRegistrationString(`registerItemFields fields[${index}].type`,record.type);if(normalizeItemFieldType(fieldType)===null){const suggestion=suggestKnownItemFieldType(fieldType),hint=suggestion?` Did you mean "${suggestion}"?`:"";throw new TypeError(`registerItemFields fields[${index}].type "${fieldType}" is not a known field type (expected one of: ${KNOWN_ITEM_FIELD_TYPES.join(", ")}).${hint}`)}assertOptionalBooleanField(`registerItemFields fields[${index}].optional`,record.optional)}}function validateItemTypeCommandOptionPolicies(typeIndex,value){if(value===void 0)return;const label=`registerItemTypes types[${typeIndex}].command_option_policies`;if(!Array.isArray(value))throw new TypeError(`${label} must be an array when provided`);for(const[policyIndex,rawPolicy]of value.entries()){const at=`${label}[${policyIndex}]`,policy=asRegistrationRecord(at,rawPolicy);assertNonEmptyRegistrationString(`${at}.command`,policy.command),assertNonEmptyRegistrationString(`${at}.option`,policy.option),assertOptionalBooleanField(`${at}.enabled`,policy.enabled),assertOptionalBooleanField(`${at}.required`,policy.required),assertOptionalBooleanField(`${at}.visible`,policy.visible)}}function validateItemTypeOptions(typeIndex,value){if(value===void 0)return;const label=`registerItemTypes types[${typeIndex}].options`;if(!Array.isArray(value))throw new TypeError(`${label} must be an array when provided`);for(const[optionIndex,rawOption]of value.entries()){const at=`${label}[${optionIndex}]`,option=asRegistrationRecord(at,rawOption);assertNonEmptyRegistrationString(`${at}.key`,option.key),assertOptionalStringArrayField(`${at}.values`,option.values),assertOptionalBooleanField(`${at}.required`,option.required),assertOptionalStringArrayField(`${at}.aliases`,option.aliases)}}function validateItemTypeDefinitions(types){if(!Array.isArray(types))throw new TypeError("registerItemTypes types requires an array of object definitions");for(const[typeIndex,raw]of types.entries()){const at=`registerItemTypes types[${typeIndex}]`,record=asRegistrationRecord(at,raw);assertNonEmptyRegistrationString(`${at}.name`,record.name),assertOptionalStringField(`${at}.folder`,record.folder),assertOptionalStringArrayField(`${at}.aliases`,record.aliases),assertOptionalStringArrayField(`${at}.required_create_fields`,record.required_create_fields),assertOptionalStringArrayField(`${at}.required_create_repeatables`,record.required_create_repeatables),validateItemTypeCommandOptionPolicies(typeIndex,record.command_option_policies),validateItemTypeOptions(typeIndex,record.options)}}function validateMigrationDefinition(definition){const record=asRegistrationRecord("registerMigration definition",definition);if(record.id!==void 0&&typeof record.id!="string")throw new TypeError("registerMigration definition.id must be a string when provided");if(record.description!==void 0&&typeof record.description!="string")throw new TypeError("registerMigration definition.description must be a string when provided");if(record.status!==void 0&&typeof record.status!="string")throw new TypeError("registerMigration definition.status must be a string when provided");if(assertOptionalBooleanField("registerMigration definition.mandatory",record.mandatory),record.run!==void 0&&typeof record.run!="function")throw new TypeError("registerMigration definition.run must be a function when provided")}const PROJECT_PROFILE_DIMENSIONS=["types","statuses","fields","workflows","config","templates","packages"],PROJECT_PROFILE_ENTRY_VALIDATORS={types:(at,entry)=>{if(entry.name!==void 0&&typeof entry.name!="string")throw new TypeError(`${at}.name must be a string when provided`)},workflows:(at,entry)=>{if(typeof entry.type!="string")throw new TypeError(`${at}.type must be a string`);if(!Array.isArray(entry.allowed_transitions))throw new TypeError(`${at}.allowed_transitions must be an array`);for(const[pairIndex,pair]of entry.allowed_transitions.entries())if(!Array.isArray(pair))throw new TypeError(`${at}.allowed_transitions[${pairIndex}] must be a [from, to] array`)},templates:(at,entry)=>{if(typeof entry.name!="string")throw new TypeError(`${at}.name must be a string`);if(typeof entry.options!="object"||entry.options===null||Array.isArray(entry.options))throw new TypeError(`${at}.options must be an object`)},packages:(at,entry)=>{if(typeof entry.spec!="string")throw new TypeError(`${at}.spec must be a string`)}};function validateProjectProfileDefinition(profile){const record=asRegistrationRecord("registerProfile profile",profile);if(assertNonEmptyRegistrationString("registerProfile profile.name",record.name),assertNonEmptyRegistrationString("registerProfile profile.title",record.title),record.summary!==void 0&&typeof record.summary!="string")throw new TypeError("registerProfile profile.summary must be a string when provided");for(const dimension of PROJECT_PROFILE_DIMENSIONS){const value=record[dimension];if(value!==void 0){if(!Array.isArray(value))throw new TypeError(`registerProfile profile.${dimension} must be an array when provided`);for(const[index,entry]of value.entries()){if(typeof entry!="object"||entry===null||Array.isArray(entry))throw new TypeError(`registerProfile profile.${dimension}[${index}] must be an object`);PROJECT_PROFILE_ENTRY_VALIDATORS[dimension]?.(`registerProfile profile.${dimension}[${index}]`,entry)}}}}function applyProjectProfileDefaults(profile){profile.summary===void 0&&(profile.summary="");for(const dimension of PROJECT_PROFILE_DIMENSIONS)profile[dimension]===void 0&&(profile[dimension]=[]);return profile}export{applyProjectProfileDefaults,assertFlagValueTypeAndDefault,normalizeCommandDefinitionArguments,normalizeFlagDefinitions,resolveCommandDefinitionAction,validateFlagDefinitions,validateItemFieldDefinitions,validateItemTypeDefinitions,validateMigrationDefinition,validateProjectProfileDefinition};
1
+ (function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="4abca948-e9ba-52b5-b63c-a20fc344980a")}catch{}})();import{describeExtensionLongFlagFailure,findExtensionFlagTokenFailure}from"./flag-definition-validation.js";import{flattenFlagListValue,isFlagDefaultValueCoercible,resolveFlagValueKind}from"./flag-value-types.js";import{KNOWN_ITEM_FIELD_TYPES,normalizeItemFieldType,suggestKnownItemFieldType}from"./item-field-types.js";import{asRegistrationRecord,assertOptionalBooleanField,assertOptionalFlagDefaultField,assertOptionalStringArrayField,assertOptionalStringField}from"./registration-validation.js";import{assertNonEmptyRegistrationString,normalizeRegistrationRecordList}from"./registration-values.js";const FLAG_DEFINITION_KEYS=new Set(["default","description","enabled","list","long","repeatable","required","short","type","value_name","value_type","value_validation","visible"]);function normalizeFlagDefinitions(name,value){return normalizeRegistrationRecordList(name,value).map(record=>(record.repeatable===!0&&(record.list=!0),record))}function normalizeCommandActionName(value){return value.trim().toLowerCase().replace(/[\s_]+/g,"-").replace(/[^a-z0-9-]/g,"-").replace(/-+/g,"-").replace(/^-+|-+$/g,"")}function resolveCommandDefinitionAction(commandPath,action){if(action===void 0)return commandPath.replace(/\s+/g,"-");if(typeof action!="string"||action.trim().length===0)throw new TypeError("registerCommand definition.action must be a non-empty string when provided");const normalized=normalizeCommandActionName(action);if(normalized.length===0)throw new TypeError("registerCommand definition.action must contain alphanumeric characters");return normalized}function normalizeCommandDefinitionArguments(value){if(value===void 0)return[];if(!Array.isArray(value))throw new TypeError("registerCommand definition.arguments must be an array when provided");const normalized=[];for(const[index,entry]of value.entries()){const record=asRegistrationRecord(`registerCommand definition.arguments[${index}]`,entry),name=assertNonEmptyRegistrationString(`registerCommand definition.arguments[${index}].name`,record.name);if(assertOptionalBooleanField(`registerCommand definition.arguments[${index}].required`,record.required),assertOptionalBooleanField(`registerCommand definition.arguments[${index}].variadic`,record.variadic),assertOptionalStringField(`registerCommand definition.arguments[${index}].description`,record.description),name.includes(" "))throw new TypeError(`registerCommand definition.arguments[${index}].name must not contain spaces`);const definition={name};record.required===!0&&(definition.required=!0),record.variadic===!0&&(definition.variadic=!0),typeof record.description=="string"&&(definition.description=record.description.trim()),normalized.push(definition)}const variadicIndexes=normalized.map((argument,index)=>argument.variadic?index:-1).filter(index=>index>=0);if(variadicIndexes.length>1)throw new TypeError("registerCommand definition.arguments supports at most one variadic argument");if(variadicIndexes.length===1&&variadicIndexes[0]!==normalized.length-1)throw new TypeError("registerCommand definition.arguments variadic argument must be the final argument");return normalized}function validateFlagDefinitions(flags){if(!Array.isArray(flags))throw new TypeError("registerFlags flags requires an array of object definitions");for(const[index,raw]of flags.entries()){const record=asRegistrationRecord(`registerFlags flags[${index}]`,raw),unknownKeys=Object.keys(record).filter(key=>!FLAG_DEFINITION_KEYS.has(key)).sort((left,right)=>left.localeCompare(right));if(unknownKeys.length>0)throw new TypeError(`registerFlags flags[${index}] contains unknown field(s): ${unknownKeys.join(", ")}`);const long=record.long,short=record.short;if(long===void 0&&short===void 0)throw new TypeError(`registerFlags flags[${index}] requires at least one of long or short`);assertOptionalStringField(`registerFlags flags[${index}].long`,long),assertOptionalStringField(`registerFlags flags[${index}].short`,short);const tokenFinding=findExtensionFlagTokenFailure(long,short);if(tokenFinding!==null)throw new TypeError(`registerFlags flags[${index}] ${describeExtensionLongFlagFailure(tokenFinding.token,tokenFinding.failure)}`);if(assertOptionalStringField(`registerFlags flags[${index}].value_name`,record.value_name),assertOptionalStringField(`registerFlags flags[${index}].description`,record.description),assertOptionalBooleanField(`registerFlags flags[${index}].required`,record.required),assertOptionalBooleanField(`registerFlags flags[${index}].enabled`,record.enabled),assertOptionalBooleanField(`registerFlags flags[${index}].visible`,record.visible),assertOptionalBooleanField(`registerFlags flags[${index}].list`,record.list),assertOptionalBooleanField(`registerFlags flags[${index}].repeatable`,record.repeatable),record.list!==void 0&&record.repeatable!==void 0&&record.list!==record.repeatable)throw new TypeError(`registerFlags flags[${index}].list and repeatable must match when both are provided`);if(assertOptionalFlagDefaultField(`registerFlags flags[${index}].default`,record.default),Array.isArray(record.default)&&record.list!==!0&&record.repeatable!==!0)throw new TypeError(`registerFlags flags[${index}].default cannot be an array unless list is true.`);assertFlagValueTypeAndDefault(`registerFlags flags[${index}]`,record),assertFlagValueValidation(`registerFlags flags[${index}]`,record)}}function assertFlagValueValidation(label,record){if(record.value_validation===void 0)return;if(record.value_validation!=="coerce"&&record.value_validation!=="strict")throw new TypeError(`${label}.value_validation must be "coerce" or "strict" (received ${JSON.stringify(record.value_validation)}).`);if(record.value_validation!=="strict")return;const declaredType=(typeof record.value_type=="string"?record.value_type:void 0)??(typeof record.type=="string"?record.type:void 0),kind=declaredType===void 0?null:resolveFlagValueKind(declaredType);if(kind!=="number"&&kind!=="boolean")throw new TypeError(`${label}.value_validation "strict" requires value_type "number" or "boolean" (string values are never malformed).`)}function assertFlagValueTypeAndDefault(label,record){const declaredType=(typeof record.value_type=="string"?record.value_type:void 0)??(typeof record.type=="string"?record.type:void 0);if(declaredType===void 0)return;const kind=resolveFlagValueKind(declaredType);if(kind===null)throw new TypeError(`${label} value_type "${declaredType}" is not a known flag value type (expected one of: string, number, boolean).`);if(record.default===void 0)return;const defaults=record.list===!0||record.repeatable===!0?flattenFlagListValue(record.default):[record.default];for(const[defaultIndex,defaultValue]of defaults.entries())if(!isFlagDefaultValueCoercible(defaultValue,kind)){const suffix=defaults.length>1?`default[${defaultIndex}]`:"default";throw new TypeError(`${label}.${suffix} (${JSON.stringify(defaultValue)}) is not coercible to ${kind}.`)}}function validateItemFieldDefinitions(fields){if(!Array.isArray(fields))throw new TypeError("registerItemFields fields requires an array of object definitions");for(const[index,raw]of fields.entries()){const record=asRegistrationRecord(`registerItemFields fields[${index}]`,raw);assertNonEmptyRegistrationString(`registerItemFields fields[${index}].name`,record.name);const fieldType=assertNonEmptyRegistrationString(`registerItemFields fields[${index}].type`,record.type);if(normalizeItemFieldType(fieldType)===null){const suggestion=suggestKnownItemFieldType(fieldType),hint=suggestion?` Did you mean "${suggestion}"?`:"";throw new TypeError(`registerItemFields fields[${index}].type "${fieldType}" is not a known field type (expected one of: ${KNOWN_ITEM_FIELD_TYPES.join(", ")}).${hint}`)}assertOptionalBooleanField(`registerItemFields fields[${index}].optional`,record.optional)}}function validateItemTypeCommandOptionPolicies(typeIndex,value){if(value===void 0)return;const label=`registerItemTypes types[${typeIndex}].command_option_policies`;if(!Array.isArray(value))throw new TypeError(`${label} must be an array when provided`);for(const[policyIndex,rawPolicy]of value.entries()){const at=`${label}[${policyIndex}]`,policy=asRegistrationRecord(at,rawPolicy);assertNonEmptyRegistrationString(`${at}.command`,policy.command),assertNonEmptyRegistrationString(`${at}.option`,policy.option),assertOptionalBooleanField(`${at}.enabled`,policy.enabled),assertOptionalBooleanField(`${at}.required`,policy.required),assertOptionalBooleanField(`${at}.visible`,policy.visible)}}function validateItemTypeOptions(typeIndex,value){if(value===void 0)return;const label=`registerItemTypes types[${typeIndex}].options`;if(!Array.isArray(value))throw new TypeError(`${label} must be an array when provided`);for(const[optionIndex,rawOption]of value.entries()){const at=`${label}[${optionIndex}]`,option=asRegistrationRecord(at,rawOption);assertNonEmptyRegistrationString(`${at}.key`,option.key),assertOptionalStringArrayField(`${at}.values`,option.values),assertOptionalBooleanField(`${at}.required`,option.required),assertOptionalStringArrayField(`${at}.aliases`,option.aliases)}}function validateItemTypeDefinitions(types){if(!Array.isArray(types))throw new TypeError("registerItemTypes types requires an array of object definitions");for(const[typeIndex,raw]of types.entries()){const at=`registerItemTypes types[${typeIndex}]`,record=asRegistrationRecord(at,raw);assertNonEmptyRegistrationString(`${at}.name`,record.name),assertOptionalStringField(`${at}.folder`,record.folder),assertOptionalStringArrayField(`${at}.aliases`,record.aliases),assertOptionalStringArrayField(`${at}.required_create_fields`,record.required_create_fields),assertOptionalStringArrayField(`${at}.required_create_repeatables`,record.required_create_repeatables),validateItemTypeCommandOptionPolicies(typeIndex,record.command_option_policies),validateItemTypeOptions(typeIndex,record.options)}}function validateMigrationDefinition(definition){const record=asRegistrationRecord("registerMigration definition",definition);if(record.id!==void 0&&typeof record.id!="string")throw new TypeError("registerMigration definition.id must be a string when provided");if(record.description!==void 0&&typeof record.description!="string")throw new TypeError("registerMigration definition.description must be a string when provided");if(record.status!==void 0&&typeof record.status!="string")throw new TypeError("registerMigration definition.status must be a string when provided");if(assertOptionalBooleanField("registerMigration definition.mandatory",record.mandatory),record.run!==void 0&&typeof record.run!="function")throw new TypeError("registerMigration definition.run must be a function when provided")}const PROJECT_PROFILE_DIMENSIONS=["types","statuses","fields","workflows","config","templates","packages"],PROJECT_PROFILE_ENTRY_VALIDATORS={types:(at,entry)=>{if(entry.name!==void 0&&typeof entry.name!="string")throw new TypeError(`${at}.name must be a string when provided`)},workflows:(at,entry)=>{if(typeof entry.type!="string")throw new TypeError(`${at}.type must be a string`);if(!Array.isArray(entry.allowed_transitions))throw new TypeError(`${at}.allowed_transitions must be an array`);for(const[pairIndex,pair]of entry.allowed_transitions.entries())if(!Array.isArray(pair))throw new TypeError(`${at}.allowed_transitions[${pairIndex}] must be a [from, to] array`)},templates:(at,entry)=>{if(typeof entry.name!="string")throw new TypeError(`${at}.name must be a string`);if(typeof entry.options!="object"||entry.options===null||Array.isArray(entry.options))throw new TypeError(`${at}.options must be an object`)},packages:(at,entry)=>{if(typeof entry.spec!="string")throw new TypeError(`${at}.spec must be a string`)}};function validateProjectProfileDefinition(profile){const record=asRegistrationRecord("registerProfile profile",profile);if(assertNonEmptyRegistrationString("registerProfile profile.name",record.name),assertNonEmptyRegistrationString("registerProfile profile.title",record.title),record.summary!==void 0&&typeof record.summary!="string")throw new TypeError("registerProfile profile.summary must be a string when provided");for(const dimension of PROJECT_PROFILE_DIMENSIONS){const value=record[dimension];if(value!==void 0){if(!Array.isArray(value))throw new TypeError(`registerProfile profile.${dimension} must be an array when provided`);for(const[index,entry]of value.entries()){if(typeof entry!="object"||entry===null||Array.isArray(entry))throw new TypeError(`registerProfile profile.${dimension}[${index}] must be an object`);PROJECT_PROFILE_ENTRY_VALIDATORS[dimension]?.(`registerProfile profile.${dimension}[${index}]`,entry)}}}}function applyProjectProfileDefaults(profile){profile.summary===void 0&&(profile.summary="");for(const dimension of PROJECT_PROFILE_DIMENSIONS)profile[dimension]===void 0&&(profile[dimension]=[]);return profile}export{applyProjectProfileDefaults,assertFlagValueTypeAndDefault,normalizeCommandDefinitionArguments,normalizeFlagDefinitions,resolveCommandDefinitionAction,validateFlagDefinitions,validateItemFieldDefinitions,validateItemTypeDefinitions,validateMigrationDefinition,validateProjectProfileDefinition};
2
2
  //# sourceMappingURL=registration-contracts.js.map
@@ -4,14 +4,14 @@
4
4
  * Provides shared validation helpers for extension registration records.
5
5
  */
6
6
  /** Require an extension registration value to be a plain object record. */
7
- export declare function asRegistrationRecord(name: string, value: unknown): Record<string, unknown>;
7
+ export declare function asRegistrationRecord(name:string,value:unknown):Record<string,unknown>;
8
8
  /** Validate an optional boolean registration field. */
9
- export declare function assertOptionalBooleanField(name: string, value: unknown): void;
9
+ export declare function assertOptionalBooleanField(name:string,value:unknown):void;
10
10
  /** Validate an optional non-empty string registration field. */
11
- export declare function assertOptionalStringField(name: string, value: unknown): void;
11
+ export declare function assertOptionalStringField(name:string,value:unknown):void;
12
12
  /** Validate a scalar or scalar-array default accepted by extension flags. */
13
- export declare function assertOptionalFlagDefaultField(name: string, value: unknown): void;
13
+ export declare function assertOptionalFlagDefaultField(name:string,value:unknown):void;
14
14
  /** Validate an optional array containing only non-empty strings. */
15
- export declare function assertOptionalStringArrayField(name: string, value: unknown): void;
15
+ export declare function assertOptionalStringArrayField(name:string,value:unknown):void;
16
16
  /** Normalize an optional string array by trimming and preserving first occurrence order. */
17
- export declare function normalizeOptionalStringArrayField(name: string, value: unknown): string[];
17
+ export declare function normalizeOptionalStringArrayField(name:string,value:unknown):string[];
@@ -4,40 +4,40 @@
4
4
  * Preserves executable extension registrations while producing deterministic,
5
5
  * serializable public inventory snapshots and validates assurance providers.
6
6
  */
7
- import { type AssuranceMeasurementProviderDefinition, type ExtensionActivationFailureTrace, type ExtensionServiceName, type OutputRendererFormat } from "./extension-types.js";
7
+ import { type AssuranceMeasurementProviderDefinition,type ExtensionActivationFailureTrace,type ExtensionServiceName,type OutputRendererFormat } from "./extension-types.js";
8
8
  /** Narrow a string to a renderer format accepted by the extension host. */
9
- export declare function isOutputRendererFormat(value: string): value is OutputRendererFormat;
9
+ export declare function isOutputRendererFormat(value:string):value is OutputRendererFormat;
10
10
  /** Narrow a string to a service name accepted by the extension host. */
11
- export declare function isExtensionServiceName(value: string): value is ExtensionServiceName;
11
+ export declare function isExtensionServiceName(value:string):value is ExtensionServiceName;
12
12
  /** Require a callable lifecycle hook before registry mutation. */
13
- export declare function assertHookHandler(hookName: string, hook: unknown): void;
13
+ export declare function assertHookHandler(hookName:string,hook:unknown):void;
14
14
  /** Create a validation error carrying a hidden structured activation trace. */
15
- export declare function createRegistrationValidationError(message: string, trace: ExtensionActivationFailureTrace): TypeError;
15
+ export declare function createRegistrationValidationError(message:string,trace:ExtensionActivationFailureTrace):TypeError;
16
16
  /** Recover a hidden structured activation trace from a validation error. */
17
- export declare function extractRegistrationValidationTrace(error: unknown): ExtensionActivationFailureTrace | undefined;
17
+ export declare function extractRegistrationValidationTrace(error:unknown):ExtensionActivationFailureTrace | undefined;
18
18
  /** Recursively project an arbitrary registration value into serializable data. */
19
- export declare function sanitizeRegistrationValue(value: unknown): unknown;
19
+ export declare function sanitizeRegistrationValue(value:unknown):unknown;
20
20
  /** Recursively clone registration containers while preserving function identities. */
21
- export declare function cloneRuntimeRegistrationValue(value: unknown): unknown;
21
+ export declare function cloneRuntimeRegistrationValue(value:unknown):unknown;
22
22
  /** Create a deterministic serializable registration snapshot with functions redacted. */
23
- export declare function normalizeRegistrationRecord(name: string, value: unknown): Record<string, unknown>;
23
+ export declare function normalizeRegistrationRecord(name:string,value:unknown):Record<string,unknown>;
24
24
  /** Clone a registration record without stripping executable function values. */
25
- export declare function normalizeRuntimeRegistrationRecord(name: string, value: unknown): Record<string, unknown>;
25
+ export declare function normalizeRuntimeRegistrationRecord(name:string,value:unknown):Record<string,unknown>;
26
26
  /** Normalize every object in an array into deterministic serializable snapshots. */
27
- export declare function normalizeRegistrationRecordList<T extends object>(name: string, value: readonly T[]): T[];
27
+ export declare function normalizeRegistrationRecordList<T extends object>(name:string,value:readonly T[]):T[];
28
28
  /** Normalize an untyped array crossing a JavaScript or JSON boundary. */
29
- export declare function normalizeRegistrationRecordList(name: string, value: unknown): Array<Record<string, unknown>>;
29
+ export declare function normalizeRegistrationRecordList(name:string,value:unknown):Array<Record<string,unknown>>;
30
30
  /** Require a trimmed non-empty string at an extension authoring boundary. */
31
- export declare function assertNonEmptyRegistrationString(name: string, value: unknown): string;
31
+ export declare function assertNonEmptyRegistrationString(name:string,value:unknown):string;
32
32
  /** Require an executable handler at an extension authoring boundary. */
33
- export declare function assertRegistrationFunction(name: string, value: unknown): void;
33
+ export declare function assertRegistrationFunction(name:string,value:unknown):void;
34
34
  /** Canonicalize a user-facing registration name for stable routing. */
35
- export declare function normalizeRegistrationName(name: string): string;
35
+ export declare function normalizeRegistrationName(name:string):string;
36
36
  /** Build the canonical command path synthesized for an importer or exporter. */
37
- export declare function toRegistrationCommandPath(name: string, action: "import" | "export"): string;
37
+ export declare function toRegistrationCommandPath(name:string,action:"import" | "export"):string;
38
38
  /** Attach an executable definition as hidden immutable runtime-only state. */
39
39
  export declare function attachRuntimeDefinition<TEntry extends {
40
- definition: Record<string, unknown>;
41
- }>(entry: TEntry, runtimeDefinition: Record<string, unknown>): TEntry;
40
+ definition:Record<string,unknown>;
41
+ }>(entry:TEntry,runtimeDefinition:Record<string,unknown>):TEntry;
42
42
  /** Validate the closed provider schema before any activation registry mutation. */
43
- export declare function validateAssuranceMeasurementProviderDefinition(provider: unknown): asserts provider is AssuranceMeasurementProviderDefinition;
43
+ export declare function validateAssuranceMeasurementProviderDefinition(provider:unknown):asserts provider is AssuranceMeasurementProviderDefinition;
@@ -6,13 +6,13 @@
6
6
  /** Describes one host-owned flag spelling reserved from extension registration. */
7
7
  export interface ReservedExtensionHostFlag {
8
8
  /** Canonical long flag owned by the pm host. */
9
- flag: string;
9
+ flag:string;
10
10
  /** Compatibility aliases that are equally host-owned. */
11
- aliases?: readonly string[];
11
+ aliases?:readonly string[];
12
12
  /** Optional value label retained by the public CLI contract projection. */
13
- value_name?: string;
13
+ value_name?:string;
14
14
  }
15
15
  /** Host-owned flags inherited by every subcommand, including extension commands. */
16
- export declare const RESERVED_EXTENSION_HOST_FLAGS: readonly ReservedExtensionHostFlag[];
16
+ export declare const RESERVED_EXTENSION_HOST_FLAGS:readonly ReservedExtensionHostFlag[];
17
17
  /** Every canonical and aliased host flag spelling reserved from extensions. */
18
- export declare const RESERVED_EXTENSION_HOST_FLAG_NAMES: ReadonlySet<string>;
18
+ export declare const RESERVED_EXTENSION_HOST_FLAG_NAMES:ReadonlySet<string>;
@@ -3,14 +3,14 @@
3
3
  *
4
4
  * Implements extension runtime contracts and governance for Runtime Registrations.
5
5
  */
6
- import type { ExtensionRegistrationRegistry, RegisteredExtensionSchemaMigrationDefinition, RegisteredExtensionSearchProvider, RegisteredExtensionVectorStoreAdapter, RegisteredExtensionAssuranceMeasurementProvider, SchemaFieldDefinition } from "./loader.js";
6
+ import type { ExtensionRegistrationRegistry,RegisteredExtensionSchemaMigrationDefinition,RegisteredExtensionSearchProvider,RegisteredExtensionVectorStoreAdapter,RegisteredExtensionAssuranceMeasurementProvider,SchemaFieldDefinition } from "./loader.js";
7
7
  /** Resolve the last-activated assurance provider with the requested stable id. */
8
- export declare function resolveRegisteredAssuranceMeasurementProvider(registrations: ExtensionRegistrationRegistry | null, providerId: string | undefined): RegisteredExtensionAssuranceMeasurementProvider | null;
8
+ export declare function resolveRegisteredAssuranceMeasurementProvider(registrations:ExtensionRegistrationRegistry | null,providerId:string | undefined):RegisteredExtensionAssuranceMeasurementProvider | null;
9
9
  /** Implements collect registered item fields for the public runtime surface of this module. */
10
- export declare function collectRegisteredItemFields(registrations: ExtensionRegistrationRegistry | null): SchemaFieldDefinition[];
10
+ export declare function collectRegisteredItemFields(registrations:ExtensionRegistrationRegistry | null):SchemaFieldDefinition[];
11
11
  /** Implements resolve registered search provider for the public runtime surface of this module. */
12
- export declare function resolveRegisteredSearchProvider(registrations: ExtensionRegistrationRegistry | null, configuredProvider: string | undefined): RegisteredExtensionSearchProvider | null;
12
+ export declare function resolveRegisteredSearchProvider(registrations:ExtensionRegistrationRegistry | null,configuredProvider:string | undefined):RegisteredExtensionSearchProvider | null;
13
13
  /** Implements resolve registered vector store adapter for the public runtime surface of this module. */
14
- export declare function resolveRegisteredVectorStoreAdapter(registrations: ExtensionRegistrationRegistry | null, configuredAdapter: string | undefined): RegisteredExtensionVectorStoreAdapter | null;
14
+ export declare function resolveRegisteredVectorStoreAdapter(registrations:ExtensionRegistrationRegistry | null,configuredAdapter:string | undefined):RegisteredExtensionVectorStoreAdapter | null;
15
15
  /** Implements get migration runtime definition for the public runtime surface of this module. */
16
- export declare function getMigrationRuntimeDefinition(migration: RegisteredExtensionSchemaMigrationDefinition): Record<string, unknown>;
16
+ export declare function getMigrationRuntimeDefinition(migration:RegisteredExtensionSchemaMigrationDefinition):Record<string,unknown>;
@@ -5,4 +5,4 @@
5
5
  */
6
6
  import type { ServiceOverrideOwnership } from "./extension-types.js";
7
7
  /** Validate one service ownership declaration and return its normalized pass-through flag. */
8
- export declare function normalizeServiceOverrideOwnership(ownership: ServiceOverrideOwnership): boolean;
8
+ export declare function normalizeServiceOverrideOwnership(ownership:ServiceOverrideOwnership):boolean;
@@ -46,15 +46,15 @@ export type PmVersionBoundStatus = "absent" | "ok" | "invalid" | "unchecked" | "
46
46
  /** The structured result of evaluating one manifest version bound, consumed by the loader (to format its `extension_pm_*_version_*` warning strings) and the SDK (to build author-time compatibility findings). */
47
47
  export interface PmVersionBoundEvaluation {
48
48
  /** Which bound this evaluation describes. */
49
- kind: PmVersionBoundKind;
49
+ kind:PmVersionBoundKind;
50
50
  /** The classified outcome of comparing the bound against the current version. */
51
- status: PmVersionBoundStatus;
51
+ status:PmVersionBoundStatus;
52
52
  /** Whether the bound permits the extension to load (`false` only for `invalid`/`unmet`/`exceeded`). */
53
- allowed: boolean;
53
+ allowed:boolean;
54
54
  /** The declared bound value, verbatim; the empty string when the bound is absent. */
55
- required: string;
55
+ required:string;
56
56
  /** The current version compared against, or `null` when it could not be resolved. */
57
- current: string | null;
57
+ current:string | null;
58
58
  }
59
59
  /**
60
60
  * Parse a comparable release string into numeric segments, or `null` when it is
@@ -64,7 +64,7 @@ current: string | null;
64
64
  * (so `engines.pm`-style `">=2026.5.31"` and `"v1.2.3"` both parse), then drops
65
65
  * any build/pre-release suffix and keeps the leading dotted-numeric release.
66
66
  */
67
- export declare function parseComparableVersion(value: string): number[] | null;
67
+ export declare function parseComparableVersion(value:string):number[] | null;
68
68
  /**
69
69
  * Compare two comparable version strings segment by segment.
70
70
  *
@@ -73,7 +73,7 @@ export declare function parseComparableVersion(value: string): number[] | null;
73
73
  * can classify the comparison as `unchecked`). Missing trailing segments are
74
74
  * treated as `0`, so `1.2` and `1.2.0` compare equal.
75
75
  */
76
- export declare function compareComparableVersions(currentVersion: string, otherVersion: string): number | null;
76
+ export declare function compareComparableVersions(currentVersion:string,otherVersion:string):number | null;
77
77
  /**
78
78
  * Evaluate a manifest `pm_min_version` inclusive lower bound against the current
79
79
  * pm version.
@@ -84,7 +84,7 @@ export declare function compareComparableVersions(currentVersion: string, otherV
84
84
  * `currentVersion` is `null` when the loader could not resolve the running CLI
85
85
  * version.
86
86
  */
87
- export declare function evaluatePmMinVersionBound(required: unknown, currentVersion: string | null): PmVersionBoundEvaluation;
87
+ export declare function evaluatePmMinVersionBound(required:unknown,currentVersion:string | null):PmVersionBoundEvaluation;
88
88
  /**
89
89
  * Evaluate a manifest `pm_max_version` inclusive upper bound against the current
90
90
  * pm version.
@@ -100,4 +100,4 @@ export declare function evaluatePmMinVersionBound(required: unknown, currentVers
100
100
  * `exceeded_warn` when `exceededMode` is `warn`, so the extension still loads
101
101
  * during a controlled upgrade window); otherwise the bound is satisfied (`ok`).
102
102
  */
103
- export declare function evaluatePmMaxVersionBound(required: unknown, currentVersion: string | null, exceededMode: PmMaxVersionExceededMode): PmVersionBoundEvaluation;
103
+ export declare function evaluatePmMaxVersionBound(required:unknown,currentVersion:string | null,exceededMode:PmMaxVersionExceededMode):PmVersionBoundEvaluation;
@@ -4,4 +4,4 @@
4
4
  * failures other than EEXIST propagate; no unsafe overwrite fallback is used.
5
5
  * Publication provides atomic visibility, not fsync-backed power-loss durability.
6
6
  */
7
- export declare function createFileAtomic(targetPath: string, contents: string): Promise<boolean>;
7
+ export declare function createFileAtomic(targetPath:string,contents:string):Promise<boolean>;
@@ -1,8 +1,8 @@
1
1
  import { PmCliError } from "../shared/errors.js";
2
2
  /** Implements ensure dir for the public runtime surface of this module. */
3
- export declare function ensureDir(dirPath: string): Promise<void>;
3
+ export declare function ensureDir(dirPath:string):Promise<void>;
4
4
  /** Implements path exists for the public runtime surface of this module. */
5
- export declare function pathExists(targetPath: string): Promise<boolean>;
5
+ export declare function pathExists(targetPath:string):Promise<boolean>;
6
6
  /**
7
7
  * Report whether an error means "this file is not there".
8
8
  *
@@ -12,11 +12,11 @@ export declare function pathExists(targetPath: string): Promise<boolean>;
12
12
  * otherwise a misdirected root turns a graceful default into an unclassified
13
13
  * runtime fault instead of reaching the caller's own root validation.
14
14
  */
15
- export declare function isFileAbsentError(error: unknown): boolean;
15
+ export declare function isFileAbsentError(error:unknown):boolean;
16
16
  /** Report an exact missing-entry race while preserving ENOTDIR as structural corruption. */
17
- export declare function isFileMissingError(error: unknown): boolean;
17
+ export declare function isFileMissingError(error:unknown):boolean;
18
18
  /** Implements read file if exists for the public runtime surface of this module. */
19
- export declare function readFileIfExists(targetPath: string): Promise<string | null>;
19
+ export declare function readFileIfExists(targetPath:string):Promise<string | null>;
20
20
  /**
21
21
  * Read UTF-8 bytes after checking that the opened descriptor is a regular file.
22
22
  * Callers validate entries, ancestors and optional-file absence before opening.
@@ -27,23 +27,23 @@ export declare function readFileIfExists(targetPath: string): Promise<string | n
27
27
  * @param targetPath Contained file whose ancestors the caller already validated.
28
28
  * @param rejectionError Declared refusal when the opened entry is not a regular file.
29
29
  */
30
- export declare function readRegularFile(targetPath: string, rejectionError: Error): Promise<string>;
30
+ export declare function readRegularFile(targetPath:string,rejectionError:Error):Promise<string>;
31
31
  /**
32
32
  * Refuse unsafe preview storage without exposing filesystem paths. Entry and
33
33
  * opened-descriptor checks share this usage error so SDK callers can repair
34
34
  * tracker configuration rather than treating a preserved safety boundary as
35
35
  * an unexpected runtime fault. Native filesystem failures retain their codes.
36
36
  */
37
- export declare function transactionPreviewNonRegularFileError(): PmCliError;
37
+ export declare function transactionPreviewNonRegularFileError():PmCliError;
38
38
  /**
39
39
  * Replace a UTF-8 file through a sibling temporary file and atomic rename.
40
40
  * Parent directories are created by default. Background consumers can disable
41
41
  * that behavior to respect removal of their storage while work is in flight;
42
42
  * missing parents then produce the native filesystem error without recreation.
43
43
  */
44
- export declare function writeFileAtomic(targetPath: string, contents: string, options?: {
45
- createParentDirectories?: boolean;
46
- }): Promise<void>;
44
+ export declare function writeFileAtomic(targetPath:string,contents:string,options?:{
45
+ createParentDirectories?:boolean;
46
+ }):Promise<void>;
47
47
  /**
48
48
  * Append a single newline-terminated line to a file, opened with `O_APPEND`.
49
49
  *
@@ -63,6 +63,6 @@ createParentDirectories?: boolean;
63
63
  * serialized regardless. Callers writing large records concurrently from
64
64
  * multiple processes must hold an equivalent lock.
65
65
  */
66
- export declare function appendLineAtomic(targetPath: string, line: string): Promise<void>;
66
+ export declare function appendLineAtomic(targetPath:string,line:string):Promise<void>;
67
67
  /** Implements remove file if exists for the public runtime surface of this module. */
68
- export declare function removeFileIfExists(targetPath: string): Promise<void>;
68
+ export declare function removeFileIfExists(targetPath:string):Promise<void>;
@@ -2,26 +2,26 @@ import { PmCliError } from "../shared/errors.js";
2
2
  /** Optional stable codes used by an existing SDK surface for each fault class. */
3
3
  export interface HostEnvironmentFaultCodeOverrides {
4
4
  /** Code used for quota and storage exhaustion. */
5
- capacity?: string;
5
+ capacity?:string;
6
6
  /** Code used for access policy and read-only filesystems. */
7
- permission?: string;
7
+ permission?:string;
8
8
  /** Code used for file-descriptor and memory exhaustion. */
9
- resource?: string;
9
+ resource?:string;
10
10
  }
11
11
  /** Context and compatibility controls for a host-environment boundary. */
12
12
  export interface HostEnvironmentBoundaryOptions {
13
13
  /** Existing surface-specific codes that must remain compatible. */
14
- codes?: HostEnvironmentFaultCodeOverrides;
14
+ codes?:HostEnvironmentFaultCodeOverrides;
15
15
  /** Human explanation of why the operation needs host resources. */
16
- why?: string;
16
+ why?:string;
17
17
  /** Additional ordered recovery guidance. */
18
- nextSteps?: readonly string[];
18
+ nextSteps?:readonly string[];
19
19
  /** Copyable retry command when one is safe. */
20
- suggestedRetry?: string;
20
+ suggestedRetry?:string;
21
21
  }
22
22
  /** Return a declared host errno only when it represents recoverable environment state. */
23
- export declare function classifyHostEnvironmentFault(error: unknown): string | null;
23
+ export declare function classifyHostEnvironmentFault(error:unknown):string | null;
24
24
  /** Translate one known host fault into a stable path-redacted SDK refusal. */
25
- export declare function translateHostEnvironmentFault(error: unknown, operation: string, options?: HostEnvironmentBoundaryOptions): PmCliError | null;
25
+ export declare function translateHostEnvironmentFault(error:unknown,operation:string,options?:HostEnvironmentBoundaryOptions):PmCliError | null;
26
26
  /** Run one SDK filesystem stage and translate only declared host faults. */
27
- export declare function withHostEnvironmentBoundary<T>(operation: string, run: () => Promise<T>, options?: HostEnvironmentBoundaryOptions): Promise<T>;
27
+ export declare function withHostEnvironmentBoundary<T>(operation:string,run:() => Promise<T>,options?:HostEnvironmentBoundaryOptions):Promise<T>;
@@ -1,2 +1,2 @@
1
1
  /** Implements check whether path within directory for the public runtime surface of this module. */
2
- export declare function isPathWithinDirectory(directory: string, targetPath: string): boolean;
2
+ export declare function isPathWithinDirectory(directory:string,targetPath:string):boolean;
@@ -14,67 +14,67 @@
14
14
  /** The content fields an item can carry context in. */
15
15
  export type ContentField = "notes" | "learnings" | "files" | "docs" | "tests" | "comments" | "deps" | "body" | "linked_command";
16
16
  /** Stable rendering / iteration order for content fields. */
17
- export declare const CONTENT_FIELD_ORDER: readonly ContentField[];
17
+ export declare const CONTENT_FIELD_ORDER:readonly ContentField[];
18
18
  /** Minimal structural shape needed: the collection arrays + optional body. */
19
19
  export interface ContentFieldItem {
20
20
  /** Value that configures or reports notes for this contract. */
21
- notes?: unknown[];
21
+ notes?:unknown[];
22
22
  /** Value that configures or reports learnings for this contract. */
23
- learnings?: unknown[];
23
+ learnings?:unknown[];
24
24
  /** Value that configures or reports files for this contract. */
25
- files?: unknown[];
25
+ files?:unknown[];
26
26
  /** Value that configures or reports docs for this contract. */
27
- docs?: unknown[];
27
+ docs?:unknown[];
28
28
  /** Value that configures or reports tests for this contract. */
29
- tests?: unknown[];
29
+ tests?:unknown[];
30
30
  /** Value that configures or reports comments for this contract. */
31
- comments?: unknown[];
31
+ comments?:unknown[];
32
32
  /** Value that configures or reports dependencies for this contract. */
33
- dependencies?: unknown[];
33
+ dependencies?:unknown[];
34
34
  /** Value that configures or reports body for this contract. */
35
- body?: string;
36
- [key: string]: unknown;
35
+ body?:string;
36
+ [key:string]:unknown;
37
37
  }
38
38
  /** True when the given content field carries context on this item. - collection fields: `Array.isArray && length > 0` - "deps": maps to the `dependencies` array - "body": `typeof body === "string" && body.trim().length > 0` - "linked_command": `tests` array has at least one entry with a non-empty string `command` */
39
- export declare function isContentFieldPresent(item: ContentFieldItem, field: ContentField): boolean;
39
+ export declare function isContentFieldPresent(item:ContentFieldItem,field:ContentField):boolean;
40
40
  /** Per-field selection: 'present' requires the field populated, 'absent' requires it empty. */
41
41
  export type ContentFieldSelection = "present" | "absent";
42
42
  /** Map of content fields to a present/absent requirement. */
43
- export type ContentFieldFilters = Partial<Record<ContentField, ContentFieldSelection>>;
43
+ export type ContentFieldFilters = Partial<Record<ContentField,ContentFieldSelection>>;
44
44
  /** True when at least one content-field selection is requested. */
45
- export declare function hasContentFieldFilter(filters: ContentFieldFilters): boolean;
45
+ export declare function hasContentFieldFilter(filters:ContentFieldFilters):boolean;
46
46
  /**
47
47
  * Does a single item satisfy the requested content-field filters?
48
48
  *
49
49
  * AND semantics across all requested fields: each requested field must match
50
50
  * its present/absent requirement. When no filter is requested the item passes.
51
51
  */
52
- export declare function itemMatchesContentFilters(item: ContentFieldItem, filters: ContentFieldFilters): boolean;
52
+ export declare function itemMatchesContentFilters(item:ContentFieldItem,filters:ContentFieldFilters):boolean;
53
53
  /** Filter a list of items by the requested content-field selections. */
54
- export declare function filterByContentFields<T extends ContentFieldItem>(items: readonly T[], filters: ContentFieldFilters): T[];
54
+ export declare function filterByContentFields<T extends ContentFieldItem>(items:readonly T[],filters:ContentFieldFilters):T[];
55
55
  /** Whether a content-field filter set requires the heavy collections to be loaded. True when any non-body field is requested (collections + tests' linked command all live in the heavy item-metadata arrays). */
56
- export declare function contentFiltersNeedCollections(filters: ContentFieldFilters): boolean;
56
+ export declare function contentFiltersNeedCollections(filters:ContentFieldFilters):boolean;
57
57
  /** Whether a content-field filter set requires the item body to be loaded. */
58
- export declare function contentFiltersNeedBody(filters: ContentFieldFilters): boolean;
58
+ export declare function contentFiltersNeedBody(filters:ContentFieldFilters):boolean;
59
59
  /** Utilization of a single content field: present vs total, with a rounded percent. */
60
60
  export interface ContentFieldUtilization {
61
61
  /** Value that configures or reports present for this contract. */
62
- present: number;
62
+ present:number;
63
63
  /** Value that configures or reports total for this contract. */
64
- total: number;
64
+ total:number;
65
65
  /** present/total * 100, rounded to one decimal; 100 when total is 0. */
66
- percent: number;
66
+ percent:number;
67
67
  }
68
68
  /** Per-field utilization report for pm stats --field-utilization. */
69
69
  export interface ContentFieldUtilizationReport {
70
70
  /** Value that configures or reports total items for this contract. */
71
- total_items: number;
71
+ total_items:number;
72
72
  /** Utilization keyed by content field (includes body and linked_command). */
73
- fields: Record<ContentField, ContentFieldUtilization>;
73
+ fields:Record<ContentField,ContentFieldUtilization>;
74
74
  /** Convenience alias mirroring GH-241: identical to `fields.body`. */
75
- body_populated: ContentFieldUtilization;
75
+ body_populated:ContentFieldUtilization;
76
76
  /** Items with an empty body; `present` counts the empty-bodied items. */
77
- empty_body: ContentFieldUtilization;
77
+ empty_body:ContentFieldUtilization;
78
78
  }
79
79
  /** Compute content-field utilization across a list of items. For each field we report how many items populate it out of the total, plus a rounded percentage. Convenience `body_populated`/`empty_body` aliases mirror GH-241. */
80
- export declare function computeContentFieldUtilization(items: readonly ContentFieldItem[]): ContentFieldUtilizationReport;
80
+ export declare function computeContentFieldUtilization(items:readonly ContentFieldItem[]):ContentFieldUtilizationReport;
@@ -14,38 +14,38 @@
14
14
  /** Minimal structural shape needed to detect duplicate issue codes. */
15
15
  export interface IssueCodeItem {
16
16
  /** Stable identifier used to reference this record across commands and storage. */
17
- id: string;
17
+ id:string;
18
18
  /** Value that configures or reports title for this contract. */
19
- title?: string | null;
19
+ title?:string | null;
20
20
  /** The id of this item's parent, when it is a child in a hierarchy. Used to suppress false positives where a child intentionally reuses its parent's code prefix (the `PARENT` + `PARENT-T0n` task-breakdown convention, GH-275): when an item's parent is another item in the same code group, the shared code is by design and the child does not constitute a collision. */
21
- parent?: string | null;
21
+ parent?:string | null;
22
22
  /** The id of the canonical item this one was closed as a duplicate of, when set. A closed-as-duplicate item has already been adjudicated, so it is excluded from collision detection entirely (GH-278) — re-flagging a resolved duplicate is permanent noise that erodes trust in `validate`. */
23
- duplicate_of?: string | null;
23
+ duplicate_of?:string | null;
24
24
  /** Optional body evidence used to disambiguate mixed-case prose compounds. */
25
- body?: string | null;
25
+ body?:string | null;
26
26
  /** Typed provenance links; only derivations targeting this same code group exempt a follow-up. */
27
- dependencies?: readonly {
28
- id: string;
29
- kind: string;
27
+ dependencies?:readonly {
28
+ id:string;
29
+ kind:string;
30
30
  }[] | null;
31
31
  }
32
32
  /** Explicit classifier inputs for repository-specific issue-code formats. */
33
33
  export interface IssueCodeDetectionOptions {
34
34
  /** Prefixes configured by the repository, compared case-insensitively. */
35
- configuredPrefixes?: readonly string[];
35
+ configuredPrefixes?:readonly string[];
36
36
  /** Item body used only for explicit code markers or backtick references. */
37
- evidenceText?: string | null;
37
+ evidenceText?:string | null;
38
38
  }
39
39
  /** A logical issue code shared by two or more items. */
40
40
  export interface DuplicateIssueCode {
41
41
  /** The canonical (normalized, upper-case) issue code, e.g. `ISSUE-004`. */
42
- code: string;
42
+ code:string;
43
43
  /** How many items carry this code. */
44
- count: number;
44
+ count:number;
45
45
  /** The ids of the items carrying this code, sorted ascending. */
46
- ids: string[];
46
+ ids:string[];
47
47
  /** The titles of the items carrying this code, in the same order as `ids`. */
48
- titles: string[];
48
+ titles:string[];
49
49
  }
50
50
  /**
51
51
  * Extract the leading logical issue code from a title, or `null` when the title
@@ -56,7 +56,7 @@ titles: string[];
56
56
  * Accepts unknown-ish input defensively (exported helper SDK consumers may call
57
57
  * from untyped JS): a non-string or empty title resolves to `null`.
58
58
  */
59
- export declare function extractIssueCode(title: string | null | undefined, options?: IssueCodeDetectionOptions): string | null;
59
+ export declare function extractIssueCode(title:string | null | undefined,options?:IssueCodeDetectionOptions):string | null;
60
60
  /**
61
61
  * Find logical issue codes used by 2+ items. Any item whose title begins with a
62
62
  * conventional issue code contributes; codes used by a single item are not
@@ -85,4 +85,4 @@ export declare function extractIssueCode(title: string | null | undefined, optio
85
85
  * given (id) is used; duplicate ids (should not occur for a valid corpus) are
86
86
  * de-duplicated so an item never inflates its own code's count.
87
87
  */
88
- export declare function findDuplicateIssueCodes(items: readonly IssueCodeItem[], options?: Omit<IssueCodeDetectionOptions, "evidenceText">): DuplicateIssueCode[];
88
+ export declare function findDuplicateIssueCodes(items:readonly IssueCodeItem[],options?:Omit<IssueCodeDetectionOptions,"evidenceText">):DuplicateIssueCode[];