opensip-cli 0.1.11 → 0.1.13

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 (195) hide show
  1. package/dist/bootstrap/artifact-seams.d.ts +7 -0
  2. package/dist/bootstrap/artifact-seams.d.ts.map +1 -0
  3. package/dist/bootstrap/artifact-seams.js +53 -0
  4. package/dist/bootstrap/artifact-seams.js.map +1 -0
  5. package/dist/bootstrap/atomic-artifact-write.d.ts +19 -0
  6. package/dist/bootstrap/atomic-artifact-write.d.ts.map +1 -0
  7. package/dist/bootstrap/atomic-artifact-write.js +68 -0
  8. package/dist/bootstrap/atomic-artifact-write.js.map +1 -0
  9. package/dist/bootstrap/baseline-seams.d.ts.map +1 -1
  10. package/dist/bootstrap/baseline-seams.js +79 -27
  11. package/dist/bootstrap/baseline-seams.js.map +1 -1
  12. package/dist/bootstrap/build-external-worker-child-env.d.ts +25 -0
  13. package/dist/bootstrap/build-external-worker-child-env.d.ts.map +1 -0
  14. package/dist/bootstrap/build-external-worker-child-env.js +71 -0
  15. package/dist/bootstrap/build-external-worker-child-env.js.map +1 -0
  16. package/dist/bootstrap/build-per-run-scope.js +1 -1
  17. package/dist/bootstrap/build-per-run-scope.js.map +1 -1
  18. package/dist/bootstrap/build-targets.d.ts.map +1 -1
  19. package/dist/bootstrap/build-targets.js +2 -7
  20. package/dist/bootstrap/build-targets.js.map +1 -1
  21. package/dist/bootstrap/config-and-capabilities.d.ts.map +1 -1
  22. package/dist/bootstrap/config-and-capabilities.js +15 -101
  23. package/dist/bootstrap/config-and-capabilities.js.map +1 -1
  24. package/dist/bootstrap/config-declarations.d.ts +23 -0
  25. package/dist/bootstrap/config-declarations.d.ts.map +1 -0
  26. package/dist/bootstrap/config-declarations.js +73 -0
  27. package/dist/bootstrap/config-declarations.js.map +1 -0
  28. package/dist/bootstrap/deliver-envelope.d.ts +4 -1
  29. package/dist/bootstrap/deliver-envelope.d.ts.map +1 -1
  30. package/dist/bootstrap/deliver-envelope.js +12 -5
  31. package/dist/bootstrap/deliver-envelope.js.map +1 -1
  32. package/dist/bootstrap/dispatch-fork-core.d.ts +1 -1
  33. package/dist/bootstrap/dispatch-fork-core.d.ts.map +1 -1
  34. package/dist/bootstrap/dispatch-fork-core.js +73 -75
  35. package/dist/bootstrap/dispatch-fork-core.js.map +1 -1
  36. package/dist/bootstrap/dispatch-host-rpc-handler.d.ts.map +1 -1
  37. package/dist/bootstrap/dispatch-host-rpc-handler.js +4 -0
  38. package/dist/bootstrap/dispatch-host-rpc-handler.js.map +1 -1
  39. package/dist/bootstrap/dispatch-replay-result.d.ts.map +1 -1
  40. package/dist/bootstrap/dispatch-replay-result.js +3 -0
  41. package/dist/bootstrap/dispatch-replay-result.js.map +1 -1
  42. package/dist/bootstrap/load-tool-capabilities.d.ts.map +1 -1
  43. package/dist/bootstrap/load-tool-capabilities.js +34 -3
  44. package/dist/bootstrap/load-tool-capabilities.js.map +1 -1
  45. package/dist/bootstrap/register-tools-discovery.d.ts.map +1 -1
  46. package/dist/bootstrap/register-tools-discovery.js +2 -0
  47. package/dist/bootstrap/register-tools-discovery.js.map +1 -1
  48. package/dist/bootstrap/report-failure.d.ts +28 -0
  49. package/dist/bootstrap/report-failure.d.ts.map +1 -0
  50. package/dist/bootstrap/report-failure.js +135 -0
  51. package/dist/bootstrap/report-failure.js.map +1 -0
  52. package/dist/bootstrap/run-plane.d.ts.map +1 -1
  53. package/dist/bootstrap/run-plane.js +1 -0
  54. package/dist/bootstrap/run-plane.js.map +1 -1
  55. package/dist/bootstrap/scope-access.d.ts +1 -1
  56. package/dist/bootstrap/scope-access.d.ts.map +1 -1
  57. package/dist/bootstrap/scope-access.js +7 -2
  58. package/dist/bootstrap/scope-access.js.map +1 -1
  59. package/dist/bootstrap/state-lock-policy.d.ts +19 -0
  60. package/dist/bootstrap/state-lock-policy.d.ts.map +1 -0
  61. package/dist/bootstrap/state-lock-policy.js +86 -0
  62. package/dist/bootstrap/state-lock-policy.js.map +1 -0
  63. package/dist/bootstrap/synthesize-external-tool.d.ts.map +1 -1
  64. package/dist/bootstrap/synthesize-external-tool.js +11 -1
  65. package/dist/bootstrap/synthesize-external-tool.js.map +1 -1
  66. package/dist/bootstrap/tool-command-dispatch-types.d.ts +23 -2
  67. package/dist/bootstrap/tool-command-dispatch-types.d.ts.map +1 -1
  68. package/dist/bootstrap/tool-command-worker-context.d.ts +4 -3
  69. package/dist/bootstrap/tool-command-worker-context.d.ts.map +1 -1
  70. package/dist/bootstrap/tool-command-worker-context.js +28 -4
  71. package/dist/bootstrap/tool-command-worker-context.js.map +1 -1
  72. package/dist/bootstrap/tool-command-worker-entry.d.ts.map +1 -1
  73. package/dist/bootstrap/tool-command-worker-entry.js +38 -31
  74. package/dist/bootstrap/tool-command-worker-entry.js.map +1 -1
  75. package/dist/bootstrap/tool-command-worker-result.d.ts +25 -0
  76. package/dist/bootstrap/tool-command-worker-result.d.ts.map +1 -0
  77. package/dist/bootstrap/tool-command-worker-result.js +60 -0
  78. package/dist/bootstrap/tool-command-worker-result.js.map +1 -0
  79. package/dist/bootstrap/tool-trust.d.ts +12 -0
  80. package/dist/bootstrap/tool-trust.d.ts.map +1 -1
  81. package/dist/bootstrap/tool-trust.js +29 -5
  82. package/dist/bootstrap/tool-trust.js.map +1 -1
  83. package/dist/cli-context.d.ts.map +1 -1
  84. package/dist/cli-context.js +22 -3
  85. package/dist/cli-context.js.map +1 -1
  86. package/dist/commands/agent-catalog.d.ts +8 -7
  87. package/dist/commands/agent-catalog.d.ts.map +1 -1
  88. package/dist/commands/agent-catalog.js +108 -60
  89. package/dist/commands/agent-catalog.js.map +1 -1
  90. package/dist/commands/completion.d.ts.map +1 -1
  91. package/dist/commands/completion.js +1 -0
  92. package/dist/commands/completion.js.map +1 -1
  93. package/dist/commands/config.d.ts +22 -0
  94. package/dist/commands/config.d.ts.map +1 -0
  95. package/dist/commands/config.js +135 -0
  96. package/dist/commands/config.js.map +1 -0
  97. package/dist/commands/host-command-specs.d.ts.map +1 -1
  98. package/dist/commands/host-command-specs.js +8 -4
  99. package/dist/commands/host-command-specs.js.map +1 -1
  100. package/dist/commands/host-subcommand-config.d.ts +7 -0
  101. package/dist/commands/host-subcommand-config.d.ts.map +1 -0
  102. package/dist/commands/host-subcommand-config.js +75 -0
  103. package/dist/commands/host-subcommand-config.js.map +1 -0
  104. package/dist/commands/host-subcommand-groups.d.ts.map +1 -1
  105. package/dist/commands/host-subcommand-groups.js +7 -1
  106. package/dist/commands/host-subcommand-groups.js.map +1 -1
  107. package/dist/commands/host-subcommand-plugins.d.ts.map +1 -1
  108. package/dist/commands/host-subcommand-plugins.js +11 -13
  109. package/dist/commands/host-subcommand-plugins.js.map +1 -1
  110. package/dist/commands/host-subcommand-sessions.d.ts.map +1 -1
  111. package/dist/commands/host-subcommand-sessions.js +3 -3
  112. package/dist/commands/host-subcommand-sessions.js.map +1 -1
  113. package/dist/commands/init/language-detection.d.ts.map +1 -1
  114. package/dist/commands/init/language-detection.js +3 -2
  115. package/dist/commands/init/language-detection.js.map +1 -1
  116. package/dist/commands/init/scaffold-writer.d.ts.map +1 -1
  117. package/dist/commands/init/scaffold-writer.js +0 -1
  118. package/dist/commands/init/scaffold-writer.js.map +1 -1
  119. package/dist/commands/init.d.ts +5 -4
  120. package/dist/commands/init.d.ts.map +1 -1
  121. package/dist/commands/init.js +5 -4
  122. package/dist/commands/init.js.map +1 -1
  123. package/dist/commands/mount-command-spec.d.ts +3 -1
  124. package/dist/commands/mount-command-spec.d.ts.map +1 -1
  125. package/dist/commands/mount-command-spec.js +27 -4
  126. package/dist/commands/mount-command-spec.js.map +1 -1
  127. package/dist/commands/plugin/config-edit.d.ts.map +1 -1
  128. package/dist/commands/plugin/config-edit.js +0 -1
  129. package/dist/commands/plugin/config-edit.js.map +1 -1
  130. package/dist/commands/plugin/host-dir.d.ts.map +1 -1
  131. package/dist/commands/plugin/host-dir.js +0 -1
  132. package/dist/commands/plugin/host-dir.js.map +1 -1
  133. package/dist/commands/shared.d.ts +5 -1
  134. package/dist/commands/shared.d.ts.map +1 -1
  135. package/dist/commands/tools/create-template-writer.d.ts +16 -0
  136. package/dist/commands/tools/create-template-writer.d.ts.map +1 -0
  137. package/dist/commands/tools/create-template-writer.js +39 -0
  138. package/dist/commands/tools/create-template-writer.js.map +1 -0
  139. package/dist/commands/tools/create-templates.d.ts +19 -0
  140. package/dist/commands/tools/create-templates.d.ts.map +1 -0
  141. package/dist/commands/tools/create-templates.js +228 -0
  142. package/dist/commands/tools/create-templates.js.map +1 -0
  143. package/dist/commands/tools/create.d.ts +4 -1
  144. package/dist/commands/tools/create.d.ts.map +1 -1
  145. package/dist/commands/tools/create.js +35 -50
  146. package/dist/commands/tools/create.js.map +1 -1
  147. package/dist/commands/tools/index.d.ts.map +1 -1
  148. package/dist/commands/tools/index.js +8 -0
  149. package/dist/commands/tools/index.js.map +1 -1
  150. package/dist/commands/tools/install.d.ts.map +1 -1
  151. package/dist/commands/tools/install.js +14 -1
  152. package/dist/commands/tools/install.js.map +1 -1
  153. package/dist/commands/tools/validate.d.ts.map +1 -1
  154. package/dist/commands/tools/validate.js +46 -5
  155. package/dist/commands/tools/validate.js.map +1 -1
  156. package/dist/commands/uninstall/targets.d.ts +1 -1
  157. package/dist/commands/uninstall/targets.d.ts.map +1 -1
  158. package/dist/commands/uninstall/targets.js +6 -14
  159. package/dist/commands/uninstall/targets.js.map +1 -1
  160. package/dist/env/host-env-specs.d.ts.map +1 -1
  161. package/dist/env/host-env-specs.js +63 -4
  162. package/dist/env/host-env-specs.js.map +1 -1
  163. package/dist/error-handler.d.ts.map +1 -1
  164. package/dist/error-handler.js +28 -6
  165. package/dist/error-handler.js.map +1 -1
  166. package/dist/format-bytes.d.ts +2 -0
  167. package/dist/format-bytes.d.ts.map +1 -0
  168. package/dist/format-bytes.js +10 -0
  169. package/dist/format-bytes.js.map +1 -0
  170. package/dist/index.js +2 -0
  171. package/dist/index.js.map +1 -1
  172. package/dist/report-compose.d.ts.map +1 -1
  173. package/dist/report-compose.js +21 -3
  174. package/dist/report-compose.js.map +1 -1
  175. package/dist/session-replay-registry.d.ts.map +1 -1
  176. package/dist/session-replay-registry.js +0 -1
  177. package/dist/session-replay-registry.js.map +1 -1
  178. package/dist/ui/result-to-view.d.ts.map +1 -1
  179. package/dist/ui/result-to-view.js +10 -1
  180. package/dist/ui/result-to-view.js.map +1 -1
  181. package/dist/ui/views/misc-views.d.ts +13 -0
  182. package/dist/ui/views/misc-views.d.ts.map +1 -1
  183. package/dist/ui/views/misc-views.js +54 -10
  184. package/dist/ui/views/misc-views.js.map +1 -1
  185. package/dist/ui/views/tools-views.d.ts.map +1 -1
  186. package/dist/ui/views/tools-views.js +8 -7
  187. package/dist/ui/views/tools-views.js.map +1 -1
  188. package/dist/update-notifier.d.ts +3 -0
  189. package/dist/update-notifier.d.ts.map +1 -1
  190. package/dist/update-notifier.js +3 -0
  191. package/dist/update-notifier.js.map +1 -1
  192. package/dist/update-state.d.ts.map +1 -1
  193. package/dist/update-state.js +0 -1
  194. package/dist/update-state.js.map +1 -1
  195. package/package.json +33 -33
@@ -29,10 +29,11 @@
29
29
  * Promotion path: when a customer's pack outgrows a handful of .mjs
30
30
  * files (shared helpers, tests, more than a dozen checks/scenarios),
31
31
  * `opensip-cli/<domain>/` can graduate to a real workspace npm
32
- * package — `package.json` with `opensipTools.kind: "fit-pack"` or
33
- * `"sim-pack"`, `tsconfig.json`, `index.ts` re-exporting checks/recipes.
34
- * Marker-based discovery picks up the workspace package automatically
35
- * regardless of npm scope. The init scaffold stays loose-`.mjs` to
32
+ * package — fit packs declare the `fit-pack` marker plus target-domain epoch;
33
+ * sim packs use the `scenarios-*` package-name pattern. Add `tsconfig.json` and
34
+ * an `index.ts` re-exporting checks/recipes or scenarios/recipes. Marker-based
35
+ * discovery picks up a fit workspace package automatically regardless of npm
36
+ * scope. The init scaffold stays loose-`.mjs` to
36
37
  * preserve the fast first-touch experience; graduation is a manual
37
38
  * step the customer takes when their coverage becomes substantial.
38
39
  * See docs/public/50-extend/01-plugin-authoring.md.
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
@@ -14,7 +14,7 @@
14
14
  * `ctx.emitEnvelope`), so the handler contract stayed byte-identical (§5.5).
15
15
  */
16
16
  import { type CliProgram, type CommandResult } from '@opensip-cli/contracts';
17
- import { type LiveViewContext, type ToolRunCompletion, type CommandSpec, type ToolCliContext } from '@opensip-cli/core';
17
+ import { type LiveViewContext, type ReportFailureDetail, type ToolRunCompletion, type CommandSpec, type ToolCliContext } from '@opensip-cli/core';
18
18
  import { type RunActionHooks } from '../bootstrap/run-plane.js';
19
19
  /**
20
20
  * A {@link CommandSpec} whose handler receives the concrete host
@@ -47,6 +47,8 @@ export type HostCommandSpec<TOpts = Record<string, unknown>> = CommandSpec<TOpts
47
47
  export interface CommandMountContext extends RunActionHooks {
48
48
  readonly render: (result: CommandResult) => Promise<void>;
49
49
  readonly setExitCode: (code: number) => void;
50
+ /** Host-owned command-failure fan-out (Plan 06). Optional on lean host contexts. */
51
+ readonly reportFailure?: (detail: ReportFailureDetail) => Promise<void>;
50
52
  readonly emitEnvelope?: (envelope: unknown) => void;
51
53
  /**
52
54
  * Optional live view dispatch. When the command declares output:'live-view',
@@ -1 +1 @@
1
- {"version":3,"file":"mount-command-spec.d.ts","sourceRoot":"","sources":["../../src/commands/mount-command-spec.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAGL,KAAK,UAAU,EACf,KAAK,aAAa,EACnB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAGL,KAAK,eAAe,EACpB,KAAK,iBAAiB,EAEtB,KAAK,WAAW,EAChB,KAAK,cAAc,EACpB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAOhE;;;;;;GAMG;AACH,MAAM,MAAM,eAAe,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,WAAW,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC;AAElG;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,WAAW,mBAAoB,SAAQ,cAAc;IACzD,QAAQ,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1D,QAAQ,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7C,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC,QAAQ,EAAE,OAAO,KAAK,IAAI,CAAC;IACpD;;;;;OAKG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,CACpB,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,OAAO,EACb,WAAW,CAAC,EAAE,eAAe,KAC1B,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC,CAAC;CACxC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,SAAS,mBAAmB,EAC/D,OAAO,EAAE,UAAU,EACnB,IAAI,EAAE,WAAW,CAAC,OAAO,EAAE,IAAI,CAAC,EAChC,GAAG,EAAE,IAAI,GACR,UAAU,CA4FZ;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,wBAAsB,cAAc,CAAC,IAAI,SAAS,mBAAmB,EACnE,MAAM,EAAE,OAAO,EACf,IAAI,EAAE,WAAW,CAAC,OAAO,EAAE,IAAI,CAAC,EAChC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,WAAW,EAAE,SAAS,OAAO,EAAE,EAC/B,GAAG,EAAE,IAAI,GACR,OAAO,CAAC,IAAI,CAAC,CAyDf"}
1
+ {"version":3,"file":"mount-command-spec.d.ts","sourceRoot":"","sources":["../../src/commands/mount-command-spec.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAGL,KAAK,UAAU,EACf,KAAK,aAAa,EACnB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAIL,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,iBAAiB,EAEtB,KAAK,WAAW,EAChB,KAAK,cAAc,EACpB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAOhE;;;;;;GAMG;AACH,MAAM,MAAM,eAAe,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,WAAW,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC;AAElG;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,WAAW,mBAAoB,SAAQ,cAAc;IACzD,QAAQ,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1D,QAAQ,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7C,oFAAoF;IACpF,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE,mBAAmB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACxE,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC,QAAQ,EAAE,OAAO,KAAK,IAAI,CAAC;IACpD;;;;;OAKG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,CACpB,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,OAAO,EACb,WAAW,CAAC,EAAE,eAAe,KAC1B,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC,CAAC;CACxC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,SAAS,mBAAmB,EAC/D,OAAO,EAAE,UAAU,EACnB,IAAI,EAAE,WAAW,CAAC,OAAO,EAAE,IAAI,CAAC,EAChC,GAAG,EAAE,IAAI,GACR,UAAU,CA+GZ;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,wBAAsB,cAAc,CAAC,IAAI,SAAS,mBAAmB,EACnE,MAAM,EAAE,OAAO,EACf,IAAI,EAAE,WAAW,CAAC,OAAO,EAAE,IAAI,CAAC,EAChC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,WAAW,EAAE,SAAS,OAAO,EAAE,EAC/B,GAAG,EAAE,IAAI,GACR,OAAO,CAAC,IAAI,CAAC,CAiEf"}
@@ -14,7 +14,7 @@
14
14
  * `ctx.emitEnvelope`), so the handler contract stayed byte-identical (§5.5).
15
15
  */
16
16
  import { applyCommonFlags, mapToolErrorToExitCode, } from '@opensip-cli/contracts';
17
- import { ToolError, currentScope, } from '@opensip-cli/core';
17
+ import { SystemError, ToolError, currentScope, } from '@opensip-cli/core';
18
18
  import { showInternalCommands } from './internal-command-visibility.js';
19
19
  import { splitActionArgs } from './mount-command-action.js';
20
20
  import { buildOption, formatArgUsage } from './mount-command-spec-wiring.js';
@@ -93,6 +93,15 @@ export function mountCommandSpec(program, spec, ctx) {
93
93
  cmd.action(async (...actionArgs) => {
94
94
  const { opts, positionals } = splitActionArgs(actionArgs);
95
95
  const optsWithArgs = { ...opts, _args: positionals };
96
+ let failureReported = false;
97
+ const actionCtx = ctx.reportFailure === undefined
98
+ ? ctx
99
+ : Object.assign(Object.create(ctx), {
100
+ reportFailure: async (detail) => {
101
+ failureReported = true;
102
+ await ctx.reportFailure?.(detail);
103
+ },
104
+ });
96
105
  // Lifecycle diagnostics (§5.10): bracket the handler with `execute` events so
97
106
  // every CommandOutcome carries a record that this command ran. Scope-bound via
98
107
  // the pre-action hook's enterScope; a no-op when no scope is present (tests).
@@ -116,18 +125,27 @@ export function mountCommandSpec(program, spec, ctx) {
116
125
  diagnostics?.event('execute', 'debug', `command '${spec.name}' dispatched out-of-process`);
117
126
  return;
118
127
  }
119
- const result = await spec.handler(optsWithArgs, ctx);
128
+ const result = await spec.handler(optsWithArgs, actionCtx);
120
129
  diagnostics?.event('execute', 'debug', `command '${spec.name}' completed`);
121
130
  // Static-path completion: if the handler returned a ToolRunCompletion with
122
131
  // a session contribution, the host freezes the lifecycle and persists it.
123
132
  // A plain CommandResult (no session) is a no-op — there is no tool-side
124
133
  // generic-session writer. The live-view path persists after renderLive.
125
134
  ctx.completeRun?.(result);
135
+ if (failureReported && result === undefined) {
136
+ return;
137
+ }
126
138
  await dispatchOutput(result, spec, optsWithArgs, positionals, ctx);
127
139
  }
128
140
  catch (error) {
129
141
  if (error instanceof ToolError) {
130
- diagnostics?.event('execute', 'error', `command '${spec.name}' failed: ${error.message}`);
142
+ if (ctx.reportFailure !== undefined) {
143
+ await ctx.reportFailure({
144
+ error,
145
+ jsonRequested: optsWithArgs.json === true,
146
+ });
147
+ return;
148
+ }
131
149
  ctx.setExitCode(mapToolErrorToExitCode(error));
132
150
  return;
133
151
  }
@@ -165,6 +183,9 @@ export async function dispatchOutput(result, spec, opts, positionals, ctx) {
165
183
  const jsonRequested = opts.json === true;
166
184
  switch (spec.output) {
167
185
  case 'command-result': {
186
+ if (result === undefined) {
187
+ throw new SystemError(`mountCommandSpec: command '${spec.name}' declares output 'command-result' but its handler returned undefined. Return a CommandResult, throw a ToolError, or call reportFailure and return.`, { code: 'SYSTEM.COMMAND_RESULT.UNDEFINED' });
188
+ }
168
189
  await emitCommandResult(result, {
169
190
  render: (r) => ctx.render(r),
170
191
  jsonRequested,
@@ -207,7 +228,9 @@ export async function dispatchOutput(result, spec, opts, positionals, ctx) {
207
228
  // ToolCliContext (tool live-view commands) will have runSession; lean
208
229
  // host contexts won't reach here.
209
230
  const liveContext = ctx.runSession
210
- ? { runSession: ctx.runSession }
231
+ ? {
232
+ runSession: ctx.runSession,
233
+ }
211
234
  : undefined;
212
235
  await ctx.renderLive(spec.name, { ...opts, _args: positionals }, liveContext);
213
236
  return;
@@ -1 +1 @@
1
- {"version":3,"file":"mount-command-spec.js","sourceRoot":"","sources":["../../src/commands/mount-command-spec.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EACL,gBAAgB,EAChB,sBAAsB,GAGvB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,SAAS,EACT,YAAY,GAMb,MAAM,mBAAmB,CAAC;AAI3B,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AACxE,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAC7E,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAgD9D;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,MAAM,UAAU,gBAAgB,CAC9B,OAAmB,EACnB,IAAgC,EAChC,GAAS;IAET,MAAM,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACrE,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1D,GAAG,CAAC,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IACjC,CAAC;IAED,6EAA6E;IAC7E,8EAA8E;IAC9E,4EAA4E;IAC5E,8EAA8E;IAC9E,0EAA0E;IAC1E,yEAAyE;IACzE,oEAAoE;IACpE,gFAAgF;IAChF,+EAA+E;IAC/E,wFAAwF;IACxF,8EAA8E;IAC9E,oEAAoE;IACpE,IAAI,IAAI,CAAC,UAAU,KAAK,UAAU,IAAI,CAAC,oBAAoB,EAAE,EAAE,CAAC;QAC9D,0EAA0E;QAC1E,4EAA4E;QAC3E,GAAuC,CAAC,OAAO,GAAG,IAAI,CAAC;IAC1D,CAAC;IAED,sEAAsE;IACtE,8EAA8E;IAC9E,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAClD,gBAAgB,CAAC,GAAG,EAAE,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IAEvF,KAAK,MAAM,UAAU,IAAI,IAAI,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC;QAC5C,GAAG,CAAC,SAAS,CAAC,WAAW,CAAC,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IACpD,CAAC;IAED,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,IAAI,IAAI,EAAE,EAAE,CAAC;QACtC,GAAG,CAAC,QAAQ,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;IAC7D,CAAC;IAED,wEAAwE;IACxE,sEAAsE;IACtE,6EAA6E;IAC7E,yEAAyE;IACzE,EAAE;IACF,uEAAuE;IACvE,+EAA+E;IAC/E,2EAA2E;IAC3E,yEAAyE;IACzE,2EAA2E;IAC3E,0EAA0E;IAC1E,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,GAAG,UAAqB,EAAE,EAAE;QAC5C,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,eAAe,CAAC,UAAU,CAAC,CAAC;QAC1D,MAAM,YAAY,GAAG,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC;QACrD,8EAA8E;QAC9E,+EAA+E;QAC/E,8EAA8E;QAC9E,MAAM,WAAW,GAAG,YAAY,EAAE,EAAE,WAAW,CAAC;QAChD,WAAW,EAAE,KAAK,CAAC,SAAS,EAAE,OAAO,EAAE,YAAY,IAAI,CAAC,IAAI,WAAW,CAAC,CAAC;QACzE,6EAA6E;QAC7E,4EAA4E;QAC5E,2EAA2E;QAC3E,GAAG,CAAC,QAAQ,EAAE,EAAE,CAAC;QACjB,IAAI,CAAC;YACH,wEAAwE;YACxE,sEAAsE;YACtE,0EAA0E;YAC1E,sEAAsE;YACtE,2EAA2E;YAC3E,qEAAqE;YACrE,qEAAqE;YACrE,mDAAmD;YACnD,MAAM,UAAU,GAAG,MAAM,GAAG,CAAC,qBAAqB,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,YAAY,EAAE,WAAW,CAAC,CAAC;YAC3F,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;gBACxB,WAAW,EAAE,KAAK,CAAC,SAAS,EAAE,OAAO,EAAE,YAAY,IAAI,CAAC,IAAI,6BAA6B,CAAC,CAAC;gBAC3F,OAAO;YACT,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC;YACrD,WAAW,EAAE,KAAK,CAAC,SAAS,EAAE,OAAO,EAAE,YAAY,IAAI,CAAC,IAAI,aAAa,CAAC,CAAC;YAC3E,2EAA2E;YAC3E,0EAA0E;YAC1E,wEAAwE;YACxE,wEAAwE;YACxE,GAAG,CAAC,WAAW,EAAE,CAAC,MAAM,CAAC,CAAC;YAC1B,MAAM,cAAc,CAAC,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,WAAW,EAAE,GAAG,CAAC,CAAC;QACrE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,SAAS,EAAE,CAAC;gBAC/B,WAAW,EAAE,KAAK,CAAC,SAAS,EAAE,OAAO,EAAE,YAAY,IAAI,CAAC,IAAI,aAAa,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;gBAC1F,GAAG,CAAC,WAAW,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC,CAAC;gBAC/C,OAAO;YACT,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC,CAAC,CAAC;IACH,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,MAAe,EACf,IAAgC,EAChC,IAA6B,EAC7B,WAA+B,EAC/B,GAAS;IAET,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC;IACzC,QAAQ,IAAI,CAAC,MAAM,EAAE,CAAC;QACpB,KAAK,gBAAgB,CAAC,CAAC,CAAC;YACtB,MAAM,iBAAiB,CAAC,MAAuB,EAAE;gBAC/C,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;gBAC5B,aAAa;aACd,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QACD,KAAK,iBAAiB,CAAC,CAAC,CAAC;YACvB,IAAI,aAAa,EAAE,CAAC;gBAClB,IAAI,GAAG,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;oBACnC,MAAM,IAAI,KAAK,CACb,8BAA8B,IAAI,CAAC,IAAI,sCAAsC;wBAC3E,oEAAoE;wBACpE,wCAAwC,CAC3C,CAAC;gBACJ,CAAC;gBACD,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;YAC3B,CAAC;iBAAM,CAAC;gBACN,MAAM,GAAG,CAAC,MAAM,CAAC,MAAuB,CAAC,CAAC;YAC5C,CAAC;YACD,OAAO;QACT,CAAC;QACD,KAAK,YAAY,CAAC,CAAC,CAAC;YAClB,wEAAwE;YACxE,qEAAqE;YACrE,+CAA+C;YAC/C,OAAO;QACT,CAAC;QACD,KAAK,WAAW,CAAC,CAAC,CAAC;YACjB,uEAAuE;YACvE,oEAAoE;YACpE,sEAAsE;YACtE,wEAAwE;YACxE,qEAAqE;YACrE,IAAI,GAAG,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;gBACjC,MAAM,IAAI,KAAK,CACb,8BAA8B,IAAI,CAAC,IAAI,gCAAgC;oBACrE,kEAAkE;oBAClE,wCAAwC,CAC3C,CAAC;YACJ,CAAC;YACD,qEAAqE;YACrE,qEAAqE;YACrE,sEAAsE;YACtE,kCAAkC;YAClC,MAAM,WAAW,GACf,GACD,CAAC,UAAU;gBACV,CAAC,CAAC,EAAE,UAAU,EAAG,GAAkD,CAAC,UAAU,EAAE;gBAChF,CAAC,CAAC,SAAS,CAAC;YACd,MAAM,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE,WAAW,CAAC,CAAC;YAC9E,OAAO;QACT,CAAC;IACH,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"mount-command-spec.js","sourceRoot":"","sources":["../../src/commands/mount-command-spec.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"config-edit.d.ts","sourceRoot":"","sources":["../../../src/commands/plugin/config-edit.ts"],"names":[],"mappings":"AAEA;;;;;;;;GAQG;AAcH;;;;;;GAMG;AACH,wBAAgB,cAAc,CAC5B,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,EAAE,EAAE,KAAK,GAAG,QAAQ,GACnB,OAAO,CAwCT;AAuDD,wBAAgB,qBAAqB,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAE/F;AAED,wBAAgB,0BAA0B,CACxC,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,GACX,OAAO,CAET"}
1
+ {"version":3,"file":"config-edit.d.ts","sourceRoot":"","sources":["../../../src/commands/plugin/config-edit.ts"],"names":[],"mappings":"AACA;;;;;;;;GAQG;AAcH;;;;;;GAMG;AACH,wBAAgB,cAAc,CAC5B,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,EAAE,EAAE,KAAK,GAAG,QAAQ,GACnB,OAAO,CAwCT;AAuDD,wBAAgB,qBAAqB,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAE/F;AAED,wBAAgB,0BAA0B,CACxC,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,GACX,OAAO,CAET"}
@@ -1,5 +1,4 @@
1
1
  // @fitness-ignore-file silent-early-returns -- config-edit helpers (editPluginList/appendToPluginList/removeFromPluginList) return boolean as their documented "did I modify?" contract: false means "no-op / idempotent (already present, already absent, nothing to remove)"; explicit idempotency signals, not silent failures.
2
- // @fitness-ignore-file unbounded-memory -- reads opensip-cli.config.yml; bounded by configuration shape.
3
2
  /**
4
3
  * @fileoverview YAML-driven edits to `plugins.<domain>` in
5
4
  * `opensip-cli.config.yml`.
@@ -1 +1 @@
1
- {"version":3,"file":"config-edit.js","sourceRoot":"","sources":["../../../src/commands/plugin/config-edit.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config-edit.js","sourceRoot":"","sources":["../../../src/commands/plugin/config-edit.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"host-dir.d.ts","sourceRoot":"","sources":["../../../src/commands/plugin/host-dir.ts"],"names":[],"mappings":"AACA;;;;;;;;;;;GAWG;AAQH,mEAAmE;AACnE,eAAO,MAAM,iBAAiB,iBAAiB,CAAC;AAEhD;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAInD;AAED,uFAAuF;AACvF,mFAAmF;AACnF,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAoBjE;AAED,wFAAwF;AACxF,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAEvE;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAE9D;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CACjC,GAAG,EAAE,MAAM,EACX,aAAa,EAAE,MAAM,EACrB,UAAU,EAAE,GAAG,CAAC,MAAM,CAAC,GACtB,IAAI,CAsBN;AAED,wBAAgB,iBAAiB,CAC/B,GAAG,EAAE,MAAM,EACX,aAAa,EAAE,MAAM,EACrB,UAAU,EAAE,GAAG,CAAC,MAAM,CAAC,GACtB,MAAM,GAAG,SAAS,CAEpB;AA2BD,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,CAG7D"}
1
+ {"version":3,"file":"host-dir.d.ts","sourceRoot":"","sources":["../../../src/commands/plugin/host-dir.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAQH,mEAAmE;AACnE,eAAO,MAAM,iBAAiB,iBAAiB,CAAC;AAEhD;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAInD;AAED,uFAAuF;AACvF,mFAAmF;AACnF,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAoBjE;AAED,wFAAwF;AACxF,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAEvE;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAE9D;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CACjC,GAAG,EAAE,MAAM,EACX,aAAa,EAAE,MAAM,EACrB,UAAU,EAAE,GAAG,CAAC,MAAM,CAAC,GACtB,IAAI,CAsBN;AAED,wBAAgB,iBAAiB,CAC/B,GAAG,EAAE,MAAM,EACX,aAAa,EAAE,MAAM,EACrB,UAAU,EAAE,GAAG,CAAC,MAAM,CAAC,GACtB,MAAM,GAAG,SAAS,CAEpB;AA2BD,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,CAG7D"}
@@ -1,4 +1,3 @@
1
- // @fitness-ignore-file unbounded-memory -- reads package.json files; bounded by standard npm package metadata shape.
2
1
  /**
3
2
  * @fileoverview Plugin host directory + installed-package introspection.
4
3
  *
@@ -1 +1 @@
1
- {"version":3,"file":"host-dir.js","sourceRoot":"","sources":["../../../src/commands/plugin/host-dir.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"host-dir.js","sourceRoot":"","sources":["../../../src/commands/plugin/host-dir.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC1F,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,OAAO,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAE1E,mEAAmE;AACnE,MAAM,CAAC,MAAM,iBAAiB,GAAG,cAAc,CAAC;AAEhD;;;;GAIG;AACH,MAAM,UAAU,aAAa,CAAC,IAAY;IACxC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IACpC,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;QAAE,OAAO,KAAK,CAAC;IACvC,OAAO,IAAI,CAAC;AACd,CAAC;AAED,uFAAuF;AACvF,mFAAmF;AACnF,MAAM,UAAU,aAAa,CAAC,GAAW,EAAE,MAAc;IACvD,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACpC,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,iBAAiB,CAAC,CAAC;IACjD,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;QAC7B,aAAa,CACX,WAAW,EACX,IAAI,CAAC,SAAS,CACZ;YACE,IAAI,EAAE,eAAe,MAAM,UAAU;YACrC,OAAO,EAAE,OAAO;YAChB,OAAO,EAAE,IAAI;YACb,IAAI,EAAE,QAAQ;YACd,YAAY,EAAE,EAAE;SACjB,EACD,IAAI,EACJ,CAAC,CACF,CACF,CAAC;IACJ,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,wFAAwF;AACxF,MAAM,UAAU,mBAAmB,CAAC,MAAc,EAAE,GAAW;IAC7D,OAAO,aAAa,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;AAC5E,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,uBAAuB,CAAC,MAAc;IACpD,OAAO,aAAa,CAAC,gBAAgB,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;AACtE,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,mBAAmB,CACjC,GAAW,EACX,aAAqB,EACrB,UAAuB;IAEvB,MAAM,SAAS,GAAG,oBAAoB,CAAC,GAAG,EAAE,aAAa,EAAE,UAAU,CAAC,CAAC;IACvE,IAAI,CAAC,SAAS;QAAE,OAAO;IAEvB,MAAM,QAAQ,GAAG,SAAS,CAAC,gBAAgB,IAAI,EAAE,CAAC;IAClD,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC,wBAAwB,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC;IAErF,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;IACxF,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO;IAEjC,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,OAAO,EAAE,CAAC;QACpC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC;YAAE,SAAS;QACnC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC;YAAE,SAAS;QACjE,IAAI,CAAC;YACH,YAAY,CAAC,KAAK,EAAE,CAAC,SAAS,EAAE,kBAAkB,EAAE,WAAW,EAAE,GAAG,IAAI,IAAI,KAAK,EAAE,CAAC,EAAE;gBACpF,GAAG,EAAE,GAAG;gBACR,KAAK,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC;aAClD,CAAC,CAAC;QACL,CAAC;QAAC,MAAM,CAAC;YACP,wDAAwD;QAC1D,CAAC;IACH,CAAC;AACH,CAAC;AAED,MAAM,UAAU,iBAAiB,CAC/B,GAAW,EACX,aAAqB,EACrB,UAAuB;IAEvB,OAAO,oBAAoB,CAAC,GAAG,EAAE,aAAa,EAAE,UAAU,CAAC,EAAE,IAAI,CAAC;AACpE,CAAC;AAED,SAAS,oBAAoB,CAC3B,GAAW,EACX,aAAqB,EACrB,UAAuB;IAEvB,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;IACjD,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC;QAAE,OAAO,SAAS,CAAC;IAElD,MAAM,SAAS,GAAG,mBAAmB,CAAC,aAAa,CAAC,CAAC;IACrD,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,GAAG,GAAG,eAAe,CAAC,IAAI,CAAC,cAAc,EAAE,SAAS,EAAE,iBAAiB,CAAC,CAAC,CAAC;QAChF,IAAI,GAAG;YAAE,OAAO,GAAG,CAAC;IACtB,CAAC;IAED,oEAAoE;IACpE,kDAAkD;IAClD,MAAM,SAAS,GAAG,oBAAoB,CAAC,GAAG,CAAC,CAAC;IAC5C,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE,CAAC;QAC7B,IAAI,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,SAAS;QACnC,MAAM,GAAG,GAAG,eAAe,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,EAAE,iBAAiB,CAAC,CAAC,CAAC;QAC3E,IAAI,GAAG,EAAE,IAAI,KAAK,IAAI;YAAE,OAAO,GAAG,CAAC;IACrC,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,GAAW;IAC9C,MAAM,OAAO,GAAG,eAAe,CAAC,IAAI,CAAC,GAAG,EAAE,iBAAiB,CAAC,CAAC,CAAC;IAC9D,OAAO,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,YAAY,IAAI,EAAE,CAAC,CAAC,CAAC;AAC3D,CAAC;AAED,SAAS,mBAAmB,CAAC,IAAY;IACvC,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;QAAE,OAAO,SAAS,CAAC;IAC/F,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACzB,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACnC,MAAM,QAAQ,GAAG,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAC3C,IAAI,QAAQ,KAAK,CAAC,CAAC;YAAE,OAAO,SAAS,CAAC;QACtC,MAAM,IAAI,GAAG,YAAY,CAAC,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;QAC9C,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAChC,MAAM,IAAI,GAAG,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;QACxD,OAAO,IAAI,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,IAAI,IAAI,EAAE,CAAC;IACvD,CAAC;IACD,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAChC,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;AACpD,CAAC;AAED,SAAS,eAAe,CAAC,IAAY;IAOnC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;QAAE,OAAO,SAAS,CAAC;IACxC,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAI3C,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAED,SAAS,wBAAwB,CAAC,cAAsB;IACtD,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC;QAAE,OAAO,EAAE,CAAC;IAC3C,MAAM,GAAG,GAAa,EAAE,CAAC;IACzB,KAAK,MAAM,KAAK,IAAI,WAAW,CAAC,cAAc,CAAC,EAAE,CAAC;QAChD,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YAC1B,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;YAC7C,IAAI,CAAC;gBACH,KAAK,MAAM,MAAM,IAAI,WAAW,CAAC,QAAQ,CAAC;oBAAE,GAAG,CAAC,IAAI,CAAC,GAAG,KAAK,IAAI,MAAM,EAAE,CAAC,CAAC;YAC7E,CAAC;YAAC,MAAM,CAAC;gBACP,sBAAsB;YACxB,CAAC;QACH,CAAC;aAAM,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YAClC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC"}
@@ -12,7 +12,7 @@
12
12
  import type { SpecLike } from './completion.js';
13
13
  import type { SessionReplayRegistry } from '../session-replay-registry.js';
14
14
  import type { CommandResult } from '@opensip-cli/contracts';
15
- import type { PluginLayout, ScaffoldContext, ScaffoldFile, ToolRegistry } from '@opensip-cli/core';
15
+ import type { PluginLayout, ScaffoldContext, ScaffoldFile, ToolPluginManifest, ToolProvenance, ToolRegistry } from '@opensip-cli/core';
16
16
  /**
17
17
  * One registered tool's `init`-scaffold contribution (ADR-0038): its structural
18
18
  * `pluginLayout` (domain + userSubdirs the host `mkdir`s) plus the optional
@@ -101,6 +101,10 @@ export interface CliCommandsContext {
101
101
  readonly toolInternalCommands?: ReadonlySet<string>;
102
102
  /** Live tool registry for identity-aware host commands (optional in tests). */
103
103
  readonly tools?: ToolRegistry;
104
+ /** Admitted tool manifests for config declaration composition (optional in tests). */
105
+ readonly manifests?: readonly ToolPluginManifest[];
106
+ /** Per-run tool provenance for config declaration composition (optional in tests). */
107
+ readonly provenance?: readonly ToolProvenance[];
104
108
  /**
105
109
  * Persistence accessor (thunk). Calling this returns the project-local
106
110
  * DataStore, opening it lazily on first access. Commands that don't read
@@ -1 +1 @@
1
- {"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../src/commands/shared.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AAC3E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,KAAK,EAAE,YAAY,EAAE,eAAe,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEnG;;;;;GAKG;AACH,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC;IAC9B,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC,GAAG,EAAE,eAAe,KAAK,SAAS,YAAY,EAAE,CAAC;IAC9E,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,SAAS,MAAM,EAAE,CAAC;IACpD,QAAQ,CAAC,mBAAmB,CAAC,EAAE,MAAM,MAAM,CAAC;CAC7C;AAED;;;;;GAKG;AACH,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7C,QAAQ,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1D;;;;;OAKG;IACH,QAAQ,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IAC5C;;;;;;OAMG;IACH,QAAQ,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IAC3C;;;;;;;OAOG;IACH,QAAQ,CAAC,SAAS,EAAE,CAAC,MAAM,EAAE;QAC3B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;QACzB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;QAC1B,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;QAC7B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;KACxB,KAAK,IAAI,CAAC;IACX;;;;;;OAMG;IACH,QAAQ,CAAC,aAAa,EAAE,SAAS,YAAY,EAAE,CAAC;IAChD;;;;;OAKG;IACH,QAAQ,CAAC,aAAa,EAAE,SAAS,YAAY,EAAE,CAAC;IAChD,QAAQ,CAAC,qBAAqB,CAAC,EAAE,qBAAqB,CAAC;IACvD;;;;;;;;;OASG;IACH,QAAQ,CAAC,gBAAgB,CAAC,EAAE,SAAS,QAAQ,EAAE,CAAC;IAChD;;;;;;;OAOG;IACH,QAAQ,CAAC,oBAAoB,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACpD,+EAA+E;IAC/E,QAAQ,CAAC,KAAK,CAAC,EAAE,YAAY,CAAC;IAC9B;;;;;;;;;;;OAWG;IACH,QAAQ,CAAC,SAAS,EAAE,MAAM,OAAO,CAAC;CACnC"}
1
+ {"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../src/commands/shared.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AAC3E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,KAAK,EACV,YAAY,EACZ,eAAe,EACf,YAAY,EACZ,kBAAkB,EAClB,cAAc,EACd,YAAY,EACb,MAAM,mBAAmB,CAAC;AAE3B;;;;;GAKG;AACH,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC;IAC9B,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC,GAAG,EAAE,eAAe,KAAK,SAAS,YAAY,EAAE,CAAC;IAC9E,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,SAAS,MAAM,EAAE,CAAC;IACpD,QAAQ,CAAC,mBAAmB,CAAC,EAAE,MAAM,MAAM,CAAC;CAC7C;AAED;;;;;GAKG;AACH,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7C,QAAQ,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1D;;;;;OAKG;IACH,QAAQ,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IAC5C;;;;;;OAMG;IACH,QAAQ,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IAC3C;;;;;;;OAOG;IACH,QAAQ,CAAC,SAAS,EAAE,CAAC,MAAM,EAAE;QAC3B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;QACzB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;QAC1B,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;QAC7B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;KACxB,KAAK,IAAI,CAAC;IACX;;;;;;OAMG;IACH,QAAQ,CAAC,aAAa,EAAE,SAAS,YAAY,EAAE,CAAC;IAChD;;;;;OAKG;IACH,QAAQ,CAAC,aAAa,EAAE,SAAS,YAAY,EAAE,CAAC;IAChD,QAAQ,CAAC,qBAAqB,CAAC,EAAE,qBAAqB,CAAC;IACvD;;;;;;;;;OASG;IACH,QAAQ,CAAC,gBAAgB,CAAC,EAAE,SAAS,QAAQ,EAAE,CAAC;IAChD;;;;;;;OAOG;IACH,QAAQ,CAAC,oBAAoB,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACpD,+EAA+E;IAC/E,QAAQ,CAAC,KAAK,CAAC,EAAE,YAAY,CAAC;IAC9B,sFAAsF;IACtF,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,kBAAkB,EAAE,CAAC;IACnD,sFAAsF;IACtF,QAAQ,CAAC,UAAU,CAAC,EAAE,SAAS,cAAc,EAAE,CAAC;IAChD;;;;;;;;;;;OAWG;IACH,QAAQ,CAAC,SAAS,EAAE,MAAM,OAAO,CAAC;CACnC"}
@@ -0,0 +1,16 @@
1
+ import type { TemplateRenderedFile } from './create-templates.js';
2
+ export interface WriteTemplateFilesInput {
3
+ readonly toolDir: string;
4
+ readonly files: readonly TemplateRenderedFile[];
5
+ readonly force?: boolean;
6
+ }
7
+ export interface WriteTemplateFilesResult {
8
+ readonly success: boolean;
9
+ readonly files: readonly string[];
10
+ readonly error?: string;
11
+ }
12
+ /**
13
+ * Write rendered template files under `toolDir`, rejecting unsafe relative paths.
14
+ */
15
+ export declare function writeTemplateFiles(input: WriteTemplateFilesInput): WriteTemplateFilesResult;
16
+ //# sourceMappingURL=create-template-writer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-template-writer.d.ts","sourceRoot":"","sources":["../../../src/commands/tools/create-template-writer.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AASlE,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,EAAE,SAAS,oBAAoB,EAAE,CAAC;IAChD,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,uBAAuB,GAAG,wBAAwB,CA6B3F"}
@@ -0,0 +1,39 @@
1
+ import { existsSync, mkdirSync, writeFileSync } from 'node:fs';
2
+ import { join, resolve, sep } from 'node:path';
3
+ function isSafeRelativePath(toolDir, relativePath) {
4
+ if (relativePath.length === 0)
5
+ return false;
6
+ const resolved = resolve(toolDir, relativePath);
7
+ const root = resolve(toolDir);
8
+ return resolved === root || resolved.startsWith(`${root}${sep}`);
9
+ }
10
+ /**
11
+ * Write rendered template files under `toolDir`, rejecting unsafe relative paths.
12
+ */
13
+ export function writeTemplateFiles(input) {
14
+ if (existsSync(input.toolDir) && !input.force) {
15
+ return {
16
+ success: false,
17
+ files: [],
18
+ error: `directory already exists: ${input.toolDir} (pass --force to overwrite scaffold files)`,
19
+ };
20
+ }
21
+ for (const file of input.files) {
22
+ if (!isSafeRelativePath(input.toolDir, file.relativePath)) {
23
+ return {
24
+ success: false,
25
+ files: [],
26
+ error: `unsafe template path rejected: ${file.relativePath}`,
27
+ };
28
+ }
29
+ }
30
+ const written = [];
31
+ for (const file of input.files) {
32
+ const absolutePath = join(input.toolDir, file.relativePath);
33
+ mkdirSync(join(absolutePath, '..'), { recursive: true });
34
+ writeFileSync(absolutePath, file.content, 'utf8');
35
+ written.push(absolutePath);
36
+ }
37
+ return { success: true, files: written };
38
+ }
39
+ //# sourceMappingURL=create-template-writer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-template-writer.js","sourceRoot":"","sources":["../../../src/commands/tools/create-template-writer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC/D,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAI/C,SAAS,kBAAkB,CAAC,OAAe,EAAE,YAAoB;IAC/D,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAC5C,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IAChD,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC9B,OAAO,QAAQ,KAAK,IAAI,IAAI,QAAQ,CAAC,UAAU,CAAC,GAAG,IAAI,GAAG,GAAG,EAAE,CAAC,CAAC;AACnE,CAAC;AAcD;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAAC,KAA8B;IAC/D,IAAI,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QAC9C,OAAO;YACL,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,EAAE;YACT,KAAK,EAAE,6BAA6B,KAAK,CAAC,OAAO,6CAA6C;SAC/F,CAAC;IACJ,CAAC;IAED,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;QAC/B,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC;YAC1D,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,EAAE;gBACT,KAAK,EAAE,kCAAkC,IAAI,CAAC,YAAY,EAAE;aAC7D,CAAC;QACJ,CAAC;IACH,CAAC;IAED,MAAM,OAAO,GAAa,EAAE,CAAC;IAE7B,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;QAC/B,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QAC5D,SAAS,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACzD,aAAa,CAAC,YAAY,EAAE,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAClD,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAC7B,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;AAC3C,CAAC"}
@@ -0,0 +1,19 @@
1
+ export type ToolsCreateTemplate = 'minimal-js' | 'ts-local';
2
+ export interface TemplateRenderedFile {
3
+ readonly relativePath: string;
4
+ readonly content: string;
5
+ }
6
+ export interface TemplateRenderContext {
7
+ readonly toolId: string;
8
+ readonly stableId: string;
9
+ readonly commandName: string;
10
+ }
11
+ export interface TemplateRenderResult {
12
+ readonly files: readonly TemplateRenderedFile[];
13
+ readonly nextSteps: readonly string[];
14
+ }
15
+ export type TemplateRenderer = (ctx: TemplateRenderContext) => TemplateRenderResult;
16
+ export declare const TOOLS_CREATE_TEMPLATES: readonly ToolsCreateTemplate[];
17
+ export declare function isToolsCreateTemplate(value: string): value is ToolsCreateTemplate;
18
+ export declare const TOOLS_CREATE_TEMPLATE_RENDERERS: Record<ToolsCreateTemplate, TemplateRenderer>;
19
+ //# sourceMappingURL=create-templates.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-templates.d.ts","sourceRoot":"","sources":["../../../src/commands/tools/create-templates.ts"],"names":[],"mappings":"AAMA,MAAM,MAAM,mBAAmB,GAAG,YAAY,GAAG,UAAU,CAAC;AAE5D,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;CAC9B;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,KAAK,EAAE,SAAS,oBAAoB,EAAE,CAAC;IAChD,QAAQ,CAAC,SAAS,EAAE,SAAS,MAAM,EAAE,CAAC;CACvC;AAED,MAAM,MAAM,gBAAgB,GAAG,CAAC,GAAG,EAAE,qBAAqB,KAAK,oBAAoB,CAAC;AA2NpF,eAAO,MAAM,sBAAsB,EAAE,SAAS,mBAAmB,EAA+B,CAAC;AAEjG,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,IAAI,mBAAmB,CAEjF;AAED,eAAO,MAAM,+BAA+B,EAAE,MAAM,CAAC,mBAAmB,EAAE,gBAAgB,CAyBzF,CAAC"}
@@ -0,0 +1,228 @@
1
+ import { PLUGIN_API_VERSION, PROJECT_LOCAL_MANIFEST_FILE, readPackageVersion, } from '@opensip-cli/core';
2
+ const CORE_PACKAGE_VERSION = readPackageVersion(new URL('../../../../core/package.json', import.meta.url).href);
3
+ function manifestBlock(ctx, main) {
4
+ return {
5
+ kind: 'tool',
6
+ id: ctx.toolId,
7
+ identity: { name: ctx.toolId },
8
+ stableId: ctx.stableId,
9
+ name: ctx.toolId,
10
+ version: '0.1.0',
11
+ apiVersion: PLUGIN_API_VERSION,
12
+ main,
13
+ commands: [{ name: ctx.commandName, description: `Run ${ctx.toolId}` }],
14
+ };
15
+ }
16
+ function manifestJson(ctx, main) {
17
+ return `${JSON.stringify(manifestBlock(ctx, main), null, 2)}\n`;
18
+ }
19
+ function minimalJsRuntime(ctx) {
20
+ return `export const tool = {
21
+ identity: { name: '${ctx.toolId}' },
22
+ metadata: {
23
+ id: '${ctx.stableId}',
24
+ name: '${ctx.toolId}',
25
+ version: '0.1.0',
26
+ description: 'Project-local tool scaffolded by opensip tools create',
27
+ },
28
+ commandSpecs: [
29
+ {
30
+ name: '${ctx.commandName}',
31
+ description: 'Run ${ctx.toolId}',
32
+ commonFlags: ['json'],
33
+ scope: 'none',
34
+ output: 'command-result',
35
+ handler: async (opts, cli) => {
36
+ cli.logger.info({ evt: '${ctx.toolId}.run.start', module: '${ctx.toolId}:cli' });
37
+ try {
38
+ return {
39
+ type: 'text-lines',
40
+ title: '${ctx.toolId}',
41
+ lines: ['Your project-local tool is ready — allowlist it, then run opensip ${ctx.commandName}.'],
42
+ };
43
+ } catch (error) {
44
+ // The host normalizes any caught value; return after reporting so this
45
+ // command-result handler does not fall through to an undefined result.
46
+ await cli.reportFailure({ error, jsonRequested: opts.json === true });
47
+ return;
48
+ }
49
+ },
50
+ },
51
+ ],
52
+ };
53
+ `;
54
+ }
55
+ function minimalJsNextSteps(ctx) {
56
+ const toolDir = `opensip-cli/tools/${ctx.toolId}`;
57
+ return [
58
+ `export OPENSIP_CLI_ALLOW_PROJECT_TOOLS='${ctx.toolId}'`,
59
+ `opensip tools validate ${toolDir}`,
60
+ `opensip ${ctx.commandName}`,
61
+ 'Run logs land under opensip-cli/.runtime/logs/ when the host configures logging.',
62
+ 'Validation executes candidate code in a child process; it is not a security sandbox.',
63
+ ];
64
+ }
65
+ function tsLocalIndexTs(ctx) {
66
+ return `import { createTool, createToolLogger } from '@opensip-cli/core';
67
+
68
+ const log = createToolLogger('${ctx.toolId}:cli');
69
+
70
+ function isJsonRequested(opts: unknown): boolean {
71
+ return typeof opts === 'object' && opts !== null && 'json' in opts && opts.json === true;
72
+ }
73
+
74
+ export const tool = createTool({
75
+ identity: { name: '${ctx.toolId}' },
76
+ metadata: {
77
+ id: '${ctx.stableId}',
78
+ version: '0.1.0',
79
+ description: 'Project-local typed tool scaffolded by opensip tools create',
80
+ },
81
+ primaryCommand: {
82
+ description: 'Run ${ctx.toolId}',
83
+ commonFlags: ['json'],
84
+ scope: 'none',
85
+ output: 'command-result',
86
+ handler: async (opts, cli) => {
87
+ log.info({ evt: '${ctx.toolId}.run.start' });
88
+ try {
89
+ return {
90
+ type: 'text-lines',
91
+ title: '${ctx.toolId}',
92
+ lines: ['Your typed project-local tool is ready — build, validate, allowlist, then run.'],
93
+ };
94
+ } catch (error) {
95
+ // The host normalizes any caught value; return after reporting so this
96
+ // command-result handler does not fall through to an undefined result.
97
+ await cli.reportFailure({ error, jsonRequested: isJsonRequested(opts) });
98
+ return;
99
+ }
100
+ },
101
+ },
102
+ });
103
+ `;
104
+ }
105
+ function tsLocalIndexTest(ctx) {
106
+ return `import { describe, expect, it } from 'vitest';
107
+
108
+ import { tool } from './index.js';
109
+
110
+ describe('${ctx.toolId} tool', () => {
111
+ it('exports identity-derived metadata and commands without extension hooks', () => {
112
+ expect(tool.metadata.name).toBe('${ctx.toolId}');
113
+ expect(tool.metadata.id).toBe('${ctx.stableId}');
114
+ expect(tool.commandSpecs?.map((spec) => spec.name)).toEqual(['${ctx.commandName}']);
115
+ expect(tool.extensionPoints).toBeUndefined();
116
+ });
117
+ });
118
+ `;
119
+ }
120
+ function tsLocalPackageJson(ctx) {
121
+ return `${JSON.stringify({
122
+ name: `@opensip-cli/tool-${ctx.toolId}`,
123
+ private: true,
124
+ version: '0.1.0',
125
+ type: 'module',
126
+ scripts: {
127
+ build: 'tsc',
128
+ test: 'vitest run',
129
+ validate: 'opensip tools validate . --install-deps',
130
+ },
131
+ dependencies: {
132
+ '@opensip-cli/core': `^${CORE_PACKAGE_VERSION}`,
133
+ },
134
+ devDependencies: {
135
+ '@types/node': '^24.13.2',
136
+ typescript: '~6.0.3',
137
+ vitest: '^4.1.8',
138
+ },
139
+ }, null, 2)}\n`;
140
+ }
141
+ function tsLocalTsconfig() {
142
+ return `${JSON.stringify({
143
+ compilerOptions: {
144
+ target: 'ES2022',
145
+ module: 'NodeNext',
146
+ moduleResolution: 'NodeNext',
147
+ outDir: 'dist',
148
+ rootDir: 'src',
149
+ strict: true,
150
+ declaration: true,
151
+ skipLibCheck: true,
152
+ },
153
+ include: ['src/**/*.ts'],
154
+ }, null, 2)}\n`;
155
+ }
156
+ function tsLocalReadme(ctx) {
157
+ const toolDir = `opensip-cli/tools/${ctx.toolId}`;
158
+ return `# ${ctx.toolId}
159
+
160
+ Typed project-local Tool scaffolded by \`opensip tools create --template ts-local\`.
161
+
162
+ ## Build and validate
163
+
164
+ \`\`\`bash
165
+ cd ${toolDir}
166
+ pnpm install # or npm install
167
+ pnpm run build
168
+ pnpm test
169
+ opensip tools validate ${toolDir} --install-deps
170
+ \`\`\`
171
+
172
+ ## Allowlist and run
173
+
174
+ Project-local tools are executable code and deny-by-default until allowlisted:
175
+
176
+ \`\`\`bash
177
+ export OPENSIP_CLI_ALLOW_PROJECT_TOOLS='${ctx.toolId}'
178
+ opensip ${ctx.commandName}
179
+ \`\`\`
180
+
181
+ Do not use wildcard allowlists unless you trust every project-local tool in the repo.
182
+ Run logs land under \`opensip-cli/.runtime/logs/\` when the host configures logging.
183
+ Validation executes candidate code in a child process; it is not a security sandbox.
184
+ `;
185
+ }
186
+ function tsLocalNextSteps(ctx) {
187
+ const toolDir = `opensip-cli/tools/${ctx.toolId}`;
188
+ return [
189
+ `cd ${toolDir} && pnpm install`,
190
+ 'pnpm run build',
191
+ 'pnpm test',
192
+ `opensip tools validate ${toolDir} --install-deps`,
193
+ `export OPENSIP_CLI_ALLOW_PROJECT_TOOLS='${ctx.toolId}'`,
194
+ `opensip ${ctx.commandName}`,
195
+ 'Validation executes candidate code in a child process; it is not a security sandbox.',
196
+ ];
197
+ }
198
+ export const TOOLS_CREATE_TEMPLATES = ['minimal-js', 'ts-local'];
199
+ export function isToolsCreateTemplate(value) {
200
+ return TOOLS_CREATE_TEMPLATES.includes(value);
201
+ }
202
+ export const TOOLS_CREATE_TEMPLATE_RENDERERS = {
203
+ 'minimal-js': (ctx) => ({
204
+ files: [
205
+ {
206
+ relativePath: PROJECT_LOCAL_MANIFEST_FILE,
207
+ content: manifestJson(ctx, './index.mjs'),
208
+ },
209
+ { relativePath: 'index.mjs', content: minimalJsRuntime(ctx) },
210
+ ],
211
+ nextSteps: minimalJsNextSteps(ctx),
212
+ }),
213
+ 'ts-local': (ctx) => ({
214
+ files: [
215
+ {
216
+ relativePath: PROJECT_LOCAL_MANIFEST_FILE,
217
+ content: manifestJson(ctx, './dist/index.js'),
218
+ },
219
+ { relativePath: 'package.json', content: tsLocalPackageJson(ctx) },
220
+ { relativePath: 'tsconfig.json', content: tsLocalTsconfig() },
221
+ { relativePath: 'src/index.ts', content: tsLocalIndexTs(ctx) },
222
+ { relativePath: 'src/index.test.ts', content: tsLocalIndexTest(ctx) },
223
+ { relativePath: 'README.md', content: tsLocalReadme(ctx) },
224
+ ],
225
+ nextSteps: tsLocalNextSteps(ctx),
226
+ }),
227
+ };
228
+ //# sourceMappingURL=create-templates.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-templates.js","sourceRoot":"","sources":["../../../src/commands/tools/create-templates.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,14 @@
1
+ import { type ToolsCreateTemplate } from './create-templates.js';
1
2
  import type { ToolsCreateResult } from '@opensip-cli/contracts';
3
+ export declare const TOOL_ID_PATTERN: RegExp;
2
4
  export interface ToolsCreateInput {
3
5
  readonly toolId: string;
4
6
  readonly projectRoot: string;
5
7
  readonly force?: boolean;
8
+ readonly template?: ToolsCreateTemplate;
6
9
  }
7
10
  /**
8
- * Scaffold a minimal project-local Tool under `<project>/opensip-cli/tools/<id>/`.
11
+ * Scaffold a project-local Tool under `<project>/opensip-cli/tools/<id>/`.
9
12
  */
10
13
  export declare function toolsCreate(input: ToolsCreateInput): ToolsCreateResult;
11
14
  //# sourceMappingURL=create.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../../src/commands/tools/create.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAIhE,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;CAC1B;AA8CD;;GAEG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,gBAAgB,GAAG,iBAAiB,CAyCtE"}
1
+ {"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../../src/commands/tools/create.ts"],"names":[],"mappings":"AAMA,OAAO,EAGL,KAAK,mBAAmB,EACzB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAEhE,eAAO,MAAM,eAAe,QAAsB,CAAC;AAEnD,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,QAAQ,CAAC,EAAE,mBAAmB,CAAC;CACzC;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,gBAAgB,GAAG,iBAAiB,CAgEtE"}