@planu/cli 4.14.1 → 5.1.1

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 (452) hide show
  1. package/CHANGELOG.md +82 -0
  2. package/LICENSE +55 -12
  3. package/README.md +10 -2
  4. package/dist/cli/commands/install.d.ts +1 -12
  5. package/dist/cli/commands/install.js +9 -65
  6. package/dist/cli/commands/job.js +4 -3
  7. package/dist/cli/commands/spec.js +12 -3
  8. package/dist/cli/commands/validate.js +2 -2
  9. package/dist/cli/router.js +1 -3
  10. package/dist/config/environment-schema.json +1 -3
  11. package/dist/config/official-sdd-tools.d.ts +4 -0
  12. package/dist/config/official-sdd-tools.js +35 -0
  13. package/dist/config/product-public.d.ts +139 -3
  14. package/dist/config/product-public.js +8 -1
  15. package/dist/config/product-public.json +7 -36
  16. package/dist/config/registries/hosts/codex.json +20 -363
  17. package/dist/config/release-policy.json +84 -2
  18. package/dist/config/runtime-policy.json +12 -1
  19. package/dist/config/skill-templates/planu-resume-work.md +2 -2
  20. package/dist/core/index.d.ts +1 -1
  21. package/dist/core/spec-validator.d.ts +4 -4
  22. package/dist/core/spec-validator.js +33 -19
  23. package/dist/engine/abortable-process-runner.d.ts +20 -2
  24. package/dist/engine/abortable-process-runner.js +243 -74
  25. package/dist/engine/ambiguity-scorer.js +4 -26
  26. package/dist/engine/auth/scope-mapper.js +1 -7
  27. package/dist/engine/autopilot/state-updater.js +4 -4
  28. package/dist/engine/cascade-hooks/hooks/review-enricher.hook.js +9 -6
  29. package/dist/engine/cascade-hooks/state-drift-detector.d.ts +3 -3
  30. package/dist/engine/cascade-hooks/state-drift-detector.js +1 -1
  31. package/dist/engine/ci-generator/planu-config.js +1 -7
  32. package/dist/engine/clarification-gate/gate.d.ts +3 -3
  33. package/dist/engine/code-scanner/layer-scanner.js +6 -22
  34. package/dist/engine/core-bridge.d.ts +3 -3
  35. package/dist/engine/cost-guardrails.d.ts +1 -1
  36. package/dist/engine/cost-guardrails.js +1 -1
  37. package/dist/engine/criterion-identity.d.ts +1 -0
  38. package/dist/engine/criterion-identity.js +7 -0
  39. package/dist/engine/dashboard/data-loader.js +2 -7
  40. package/dist/engine/dashboard/templates-layout.js +0 -3
  41. package/dist/engine/dashboard/templates-project.js +1 -13
  42. package/dist/engine/docs-site-generator/data-collector.d.ts +1 -1
  43. package/dist/engine/docs-site-generator/data-collector.js +7 -28
  44. package/dist/engine/docs-site-generator/tools-renderer.js +3 -10
  45. package/dist/engine/evidence-gates/artifact-reader.d.ts +12 -1
  46. package/dist/engine/evidence-gates/artifact-reader.js +174 -4
  47. package/dist/engine/evidence-gates/evidence-autofill.d.ts +10 -0
  48. package/dist/engine/evidence-gates/evidence-autofill.js +148 -0
  49. package/dist/engine/evidence-gates/evidence-skeletons.d.ts +19 -0
  50. package/dist/engine/evidence-gates/evidence-skeletons.js +69 -0
  51. package/dist/engine/evidence-gates/lifecycle-gate.js +4 -3
  52. package/dist/engine/evidence-gates/reconciliation-freshness.d.ts +11 -0
  53. package/dist/engine/evidence-gates/reconciliation-freshness.js +72 -0
  54. package/dist/engine/evidence-index/done-drift.d.ts +1 -1
  55. package/dist/engine/evidence-index/done-drift.js +40 -18
  56. package/dist/engine/execution/context.js +3 -0
  57. package/dist/engine/execution/durable-job-heartbeat-runtime.d.ts +4 -0
  58. package/dist/engine/execution/durable-job-heartbeat-runtime.js +400 -0
  59. package/dist/engine/execution/job-runtime.d.ts +30 -0
  60. package/dist/engine/execution/job-runtime.js +114 -6
  61. package/dist/engine/execution/operation-journal.js +10 -4
  62. package/dist/engine/execution/public-job-sanitizer.d.ts +4 -0
  63. package/dist/engine/execution/public-job-sanitizer.js +31 -0
  64. package/dist/engine/execution/validate-job-executor.d.ts +12 -1
  65. package/dist/engine/execution/validate-job-executor.js +549 -86
  66. package/dist/engine/execution/validate-job-payload.js +107 -50
  67. package/dist/engine/execution/validate-job-recovery.js +1 -1
  68. package/dist/engine/execution/validate-worker-runtime.d.ts +5 -0
  69. package/dist/engine/execution/validate-worker-runtime.js +90 -2
  70. package/dist/engine/execution/validate-worker-thread.js +17 -24
  71. package/dist/engine/handoff-artifacts/schemas.d.ts +2 -1
  72. package/dist/engine/handoff-artifacts/schemas.js +33 -0
  73. package/dist/engine/handoff-packager.d.ts +19 -0
  74. package/dist/engine/handoff-packager.js +415 -13
  75. package/dist/engine/hooks/effort-configurator.js +1 -1
  76. package/dist/engine/impact-detector/test-break-predictor.js +3 -3
  77. package/dist/engine/impact-detector/tool-registration.js +1 -1
  78. package/dist/engine/implementation-contract/renderer.js +23 -8
  79. package/dist/engine/lifecycle-reconciliation-io.d.ts +11 -0
  80. package/dist/engine/lifecycle-reconciliation-io.js +180 -0
  81. package/dist/engine/lifecycle-reconciliation.d.ts +16 -0
  82. package/dist/engine/lifecycle-reconciliation.js +406 -0
  83. package/dist/engine/local-first/tool-classification.js +2 -0
  84. package/dist/engine/macos-keychain-native-port.d.ts +5 -0
  85. package/dist/engine/macos-keychain-native-port.js +19 -7
  86. package/dist/engine/migrations/remove-commercial-state.d.ts +3 -0
  87. package/dist/engine/migrations/remove-commercial-state.js +343 -0
  88. package/dist/engine/minimality/policy-loader.js +247 -6
  89. package/dist/engine/network-policy.js +1 -0
  90. package/dist/engine/planu-core.darwin-arm64.node.manifest.json +7 -7
  91. package/dist/engine/planu-core.darwin-arm64.node.sbom.json +20 -20
  92. package/dist/engine/planu-core.darwin-x64.node.manifest.json +7 -7
  93. package/dist/engine/planu-core.darwin-x64.node.sbom.json +20 -20
  94. package/dist/engine/planu-core.linux-arm64-gnu.node.manifest.json +7 -7
  95. package/dist/engine/planu-core.linux-arm64-gnu.node.sbom.json +20 -20
  96. package/dist/engine/planu-core.linux-arm64-musl.node.manifest.json +7 -7
  97. package/dist/engine/planu-core.linux-arm64-musl.node.sbom.json +20 -20
  98. package/dist/engine/planu-core.linux-x64-gnu.node.manifest.json +7 -7
  99. package/dist/engine/planu-core.linux-x64-gnu.node.sbom.json +20 -20
  100. package/dist/engine/planu-core.linux-x64-musl.node.manifest.json +7 -7
  101. package/dist/engine/planu-core.linux-x64-musl.node.sbom.json +20 -20
  102. package/dist/engine/planu-core.win32-arm64-msvc.node.manifest.json +7 -7
  103. package/dist/engine/planu-core.win32-arm64-msvc.node.sbom.json +20 -20
  104. package/dist/engine/planu-core.win32-x64-msvc.node.manifest.json +7 -7
  105. package/dist/engine/planu-core.win32-x64-msvc.node.sbom.json +20 -20
  106. package/dist/engine/readiness-checker.d.ts +1 -16
  107. package/dist/engine/readiness-checker.js +27 -88
  108. package/dist/engine/reverse-engineer/api-detector.js +2 -13
  109. package/dist/engine/reverse-engineer/complexity-analyzer.js +2 -13
  110. package/dist/engine/reverse-engineer/config-analyzer.js +2 -13
  111. package/dist/engine/reverse-engineer/dependency-graph.js +2 -13
  112. package/dist/engine/reverse-engineer/test-analyzer.js +2 -13
  113. package/dist/engine/reverse-engineer/walk-ignore.d.ts +3 -0
  114. package/dist/engine/reverse-engineer/walk-ignore.js +26 -0
  115. package/dist/engine/runtime-policy.d.ts +2 -0
  116. package/dist/engine/runtime-policy.js +42 -5
  117. package/dist/engine/runtime-security/rate-limiter.js +0 -1
  118. package/dist/engine/safety/contained-project-file.d.ts +3 -0
  119. package/dist/engine/safety/contained-project-file.js +23 -0
  120. package/dist/engine/scope-boundaries/contradiction-checker.js +63 -1
  121. package/dist/engine/scope-boundaries/scope-validator.js +45 -7
  122. package/dist/engine/session/checkpoint-writer.js +0 -9
  123. package/dist/engine/spec-format/acceptance-criteria.d.ts +6 -2
  124. package/dist/engine/spec-format/acceptance-criteria.js +82 -22
  125. package/dist/engine/spec-format/markdown-sections.d.ts +14 -0
  126. package/dist/engine/spec-format/markdown-sections.js +105 -0
  127. package/dist/engine/spec-format/read-technical-section.js +33 -5
  128. package/dist/engine/spec-format/technical-md-populator.js +3 -2
  129. package/dist/engine/spec-format/text-fences.js +20 -2
  130. package/dist/engine/spec-format/unified-spec-builder.d.ts +7 -0
  131. package/dist/engine/spec-format/unified-spec-builder.js +202 -0
  132. package/dist/engine/spec-migrator/canonical-deduplicator.d.ts +18 -0
  133. package/dist/engine/spec-migrator/canonical-deduplicator.js +479 -0
  134. package/dist/engine/spec-migrator/filesystem-import.d.ts +4 -8
  135. package/dist/engine/spec-migrator/filesystem-import.js +121 -14
  136. package/dist/engine/spec-migrator/frontmatter-parser.js +32 -15
  137. package/dist/engine/spec-migrator/index.d.ts +1 -0
  138. package/dist/engine/spec-migrator/index.js +1 -0
  139. package/dist/engine/spec-state-machine/transition-spec.d.ts +6 -1
  140. package/dist/engine/spec-state-machine/transition-spec.js +10 -1
  141. package/dist/engine/spec-state-syncer.js +1 -1
  142. package/dist/engine/technical-enricher/index.js +16 -8
  143. package/dist/engine/technical-enricher/render-enriched.d.ts +1 -0
  144. package/dist/engine/technical-enricher/render-enriched.js +42 -14
  145. package/dist/engine/telemetry/health-checker.js +53 -17
  146. package/dist/engine/telemetry/telemetry-client.js +26 -8
  147. package/dist/engine/text-signal-boundaries.d.ts +2 -0
  148. package/dist/engine/text-signal-boundaries.js +25 -2
  149. package/dist/engine/time/relative-date.d.ts +3 -0
  150. package/dist/engine/time/relative-date.js +16 -0
  151. package/dist/engine/timing/budget.d.ts +11 -0
  152. package/dist/engine/timing/budget.js +31 -9
  153. package/dist/engine/token-optimizer/analytics.d.ts +1 -1
  154. package/dist/engine/token-optimizer/analytics.js +5 -6
  155. package/dist/engine/usage-tracker/core.d.ts +2 -2
  156. package/dist/engine/usage-tracker/core.js +1 -2
  157. package/dist/engine/usage-tracker/index.d.ts +0 -3
  158. package/dist/engine/usage-tracker/index.js +0 -3
  159. package/dist/engine/usage-tracker/stats.d.ts +2 -2
  160. package/dist/engine/usage-tracker/stats.js +1 -28
  161. package/dist/engine/validation/durable-validation.d.ts +1 -1
  162. package/dist/engine/validation/durable-validation.js +3 -82
  163. package/dist/engine/validation/validation-freshness.d.ts +11 -1
  164. package/dist/engine/validation/validation-freshness.js +231 -91
  165. package/dist/engine/validation/validation-receipt.d.ts +9 -6
  166. package/dist/engine/validation/validation-receipt.js +84 -24
  167. package/dist/engine/validation/validation-source-digest.d.ts +2 -0
  168. package/dist/engine/validation/validation-source-digest.js +86 -0
  169. package/dist/engine/validation/validation-submission.d.ts +5 -4
  170. package/dist/engine/validation/validation-submission.js +25 -11
  171. package/dist/engine/validation/validation-worktree.d.ts +21 -0
  172. package/dist/engine/validation/validation-worktree.js +260 -0
  173. package/dist/engine/validation-impact-planner.d.ts +14 -2
  174. package/dist/engine/validation-impact-planner.js +0 -3
  175. package/dist/engine/validator/dor-dod.d.ts +1 -0
  176. package/dist/engine/validator/dor-dod.js +5 -3
  177. package/dist/engine/validator/extractors.d.ts +1 -5
  178. package/dist/engine/validator/extractors.js +24 -69
  179. package/dist/engine/validator/spec-compliance-runner.d.ts +12 -24
  180. package/dist/engine/validator/spec-compliance-runner.js +429 -211
  181. package/dist/engine/validator.js +35 -22
  182. package/dist/index.js +4 -16
  183. package/dist/resources/usage-stats-resource.js +2 -18
  184. package/dist/security/adapters/linux-secret-service.js +7 -3
  185. package/dist/security/adapters/windows-credential-manager.js +6 -4
  186. package/dist/server/routes/specs.js +13 -1
  187. package/dist/storage/base-store.d.ts +1 -1
  188. package/dist/storage/base-store.js +1 -1
  189. package/dist/storage/feedback-remote.d.ts +2 -3
  190. package/dist/storage/feedback-remote.js +45 -31
  191. package/dist/storage/global-store.d.ts +1 -17
  192. package/dist/storage/global-store.js +1 -42
  193. package/dist/storage/index.d.ts +0 -2
  194. package/dist/storage/index.js +0 -2
  195. package/dist/storage/migrations/canonical-storage.js +124 -11
  196. package/dist/storage/runtime-db.d.ts +9 -0
  197. package/dist/storage/runtime-db.js +64 -8
  198. package/dist/storage/spec-store.d.ts +14 -2
  199. package/dist/storage/spec-store.js +104 -14
  200. package/dist/storage/status-store/atomic-status-write.d.ts +5 -0
  201. package/dist/storage/status-store/atomic-status-write.js +57 -0
  202. package/dist/storage/status-store/file-lock.js +30 -11
  203. package/dist/storage/status-store/self-healing.js +3 -3
  204. package/dist/storage/status-store/version-sync.d.ts +2 -1
  205. package/dist/storage/status-store/version-sync.js +35 -40
  206. package/dist/storage/usage-store.d.ts +1 -5
  207. package/dist/storage/usage-store.js +0 -35
  208. package/dist/tools/auto-update-handler.d.ts +3 -3
  209. package/dist/tools/auto-update-handler.js +3 -3
  210. package/dist/tools/challenge-spec/resilience-challenge-scenarios.d.ts +2 -1
  211. package/dist/tools/challenge-spec/resilience-challenge-scenarios.js +10 -7
  212. package/dist/tools/challenge-spec/scenario-collector.js +1 -1
  213. package/dist/tools/challenge-spec/scenarios-data.js +1 -1
  214. package/dist/tools/challenge-spec/scenarios-utils.d.ts +1 -1
  215. package/dist/tools/challenge-spec/scenarios-utils.js +35 -11
  216. package/dist/tools/challenge-spec-helpers.d.ts +10 -1
  217. package/dist/tools/challenge-spec-helpers.js +63 -22
  218. package/dist/tools/challenge-spec.js +23 -8
  219. package/dist/tools/check-readiness.js +38 -14
  220. package/dist/tools/configure-telemetry.js +30 -2
  221. package/dist/tools/create-spec/spec-builder.d.ts +7 -0
  222. package/dist/tools/create-spec/spec-builder.js +19 -15
  223. package/dist/tools/create-spec.d.ts +1 -0
  224. package/dist/tools/create-spec.js +584 -309
  225. package/dist/tools/git/branch-ops.d.ts +1 -1
  226. package/dist/tools/git/branch-ops.js +3 -2
  227. package/dist/tools/init-project/handler.js +10 -12
  228. package/dist/tools/init-project/host-assets-writer.js +26 -1
  229. package/dist/tools/init-project/lint-scaffolder.d.ts +3 -3
  230. package/dist/tools/init-project/migration-runner.d.ts +2 -4
  231. package/dist/tools/init-project/migration-runner.js +3 -2
  232. package/dist/tools/init-project/portable-index-reconciler.d.ts +4 -0
  233. package/dist/tools/init-project/portable-index-reconciler.js +14 -0
  234. package/dist/tools/init-project/result-builder.js +1 -3
  235. package/dist/tools/jobs/handlers.js +38 -6
  236. package/dist/tools/list-specs.js +5 -26
  237. package/dist/tools/merge-risk-handler.js +2 -2
  238. package/dist/tools/package-handoff.js +2 -0
  239. package/dist/tools/reconcile-spec.js +0 -27
  240. package/dist/tools/register-agent-squad-tools.js +2 -2
  241. package/dist/tools/register-platform-tools/design-stack-tools.js +11 -11
  242. package/dist/tools/register-platform-tools/lifecycle-infra-tools.js +7 -7
  243. package/dist/tools/register-sdd-tools.d.ts +1 -1
  244. package/dist/tools/register-sdd-tools.js +2 -29
  245. package/dist/tools/register-spec-tools/analysis-tools.js +8 -8
  246. package/dist/tools/register-spec-tools/core-spec-tools.js +29 -19
  247. package/dist/tools/safe-handler.d.ts +5 -13
  248. package/dist/tools/safe-handler.js +7 -23
  249. package/dist/tools/schemas/index.d.ts +1 -1
  250. package/dist/tools/schemas/index.js +1 -1
  251. package/dist/tools/schemas/output-schemas.d.ts +0 -23
  252. package/dist/tools/schemas/output-schemas.js +0 -28
  253. package/dist/tools/schemas/spec.d.ts +4 -0
  254. package/dist/tools/schemas/spec.js +3 -0
  255. package/dist/tools/schemas/validate-output-schema.d.ts +11 -0
  256. package/dist/tools/schemas/validate-output-schema.js +7 -0
  257. package/dist/tools/spec-prompt-handler.js +3 -3
  258. package/dist/tools/sync-spec-state-handler.d.ts +1 -1
  259. package/dist/tools/sync-spec-state-handler.js +50 -2
  260. package/dist/tools/tool-entry.d.ts +4 -4
  261. package/dist/tools/tool-entry.js +3 -3
  262. package/dist/tools/tool-registry/core-tools.js +31 -15
  263. package/dist/tools/tool-registry/group-infra.js +27 -110
  264. package/dist/tools/tool-registry/group-quality-compliance.js +26 -26
  265. package/dist/tools/tool-registry/inventory.d.ts +2 -0
  266. package/dist/tools/tool-registry/inventory.js +2 -0
  267. package/dist/tools/tool-registry-helpers.d.ts +3 -3
  268. package/dist/tools/tool-registry-helpers.js +3 -3
  269. package/dist/tools/tool-usage-report/registered-tools.d.ts +1 -1
  270. package/dist/tools/tool-usage-report/registered-tools.js +3 -15
  271. package/dist/tools/update-status/approval-gates.js +3 -0
  272. package/dist/tools/update-status/batch.d.ts +6 -2
  273. package/dist/tools/update-status/batch.js +58 -1
  274. package/dist/tools/update-status/dod-gates.d.ts +16 -1
  275. package/dist/tools/update-status/dod-gates.js +191 -1
  276. package/dist/tools/update-status/done-receipt-verifier.d.ts +8 -0
  277. package/dist/tools/update-status/done-receipt-verifier.js +75 -27
  278. package/dist/tools/update-status/evidence-gate.d.ts +4 -0
  279. package/dist/tools/update-status/evidence-gate.js +103 -3
  280. package/dist/tools/update-status/file-sync.d.ts +4 -3
  281. package/dist/tools/update-status/file-sync.js +57 -6
  282. package/dist/tools/update-status/index.d.ts +25 -1
  283. package/dist/tools/update-status/index.js +292 -78
  284. package/dist/tools/update-status/response-builder.js +3 -3
  285. package/dist/tools/update-status/side-effects.d.ts +2 -0
  286. package/dist/tools/update-status/side-effects.js +2 -2
  287. package/dist/tools/update-status/transition-guard.js +45 -16
  288. package/dist/tools/update-status-actions.d.ts +4 -2
  289. package/dist/tools/update-status-actions.js +16 -14
  290. package/dist/tools/usage-report.js +1 -16
  291. package/dist/tools/usage-stats.js +1 -18
  292. package/dist/tools/usage-tracking.d.ts +4 -0
  293. package/dist/tools/usage-tracking.js +20 -0
  294. package/dist/tools/validate-lint.d.ts +1 -0
  295. package/dist/tools/validate-lint.js +1 -1
  296. package/dist/tools/validate.d.ts +2 -1
  297. package/dist/tools/validate.js +114 -34
  298. package/dist/tools/workspace-dashboard-handler.js +38 -0
  299. package/dist/transports/http-transport.js +6 -8
  300. package/dist/transports/mcp-types.d.ts +0 -2
  301. package/dist/transports/session-context.js +1 -1
  302. package/dist/types/cascade-hooks.d.ts +1 -1
  303. package/dist/types/ci.d.ts +0 -4
  304. package/dist/types/clarification-token.d.ts +1 -1
  305. package/dist/types/claude-code-runtime.d.ts +0 -27
  306. package/dist/types/commercial-migration.d.ts +17 -0
  307. package/dist/types/commercial-migration.js +2 -0
  308. package/dist/types/common/primitives.d.ts +0 -2
  309. package/dist/types/core-bridge.d.ts +4 -10
  310. package/dist/types/dashboard.d.ts +3 -7
  311. package/dist/types/docs.d.ts +0 -1
  312. package/dist/types/durable-job.d.ts +4 -4
  313. package/dist/types/durable-validation.d.ts +100 -2
  314. package/dist/types/durable-validation.js +165 -1
  315. package/dist/types/errors/structured-error.d.ts +3 -3
  316. package/dist/types/estimation.d.ts +2 -0
  317. package/dist/types/evidence-autofill.d.ts +34 -0
  318. package/dist/types/evidence-autofill.js +2 -0
  319. package/dist/types/evidence-gates.d.ts +9 -1
  320. package/dist/types/execution.d.ts +2 -0
  321. package/dist/types/gemini-integration.d.ts +0 -11
  322. package/dist/types/handoff-artifacts.d.ts +41 -0
  323. package/dist/types/hooks-advanced.d.ts +0 -13
  324. package/dist/types/impact-detection.d.ts +2 -2
  325. package/dist/types/index.d.ts +3 -6
  326. package/dist/types/index.js +2 -5
  327. package/dist/types/kiro-integration.d.ts +0 -6
  328. package/dist/types/network-policy.d.ts +1 -1
  329. package/dist/types/project/lint-scaffolder.d.ts +1 -1
  330. package/dist/types/runtime-policy.d.ts +11 -0
  331. package/dist/types/session-safeguard.d.ts +0 -31
  332. package/dist/types/spec/canonical-repair.d.ts +81 -0
  333. package/dist/types/spec/canonical-repair.js +2 -0
  334. package/dist/types/spec/core.d.ts +20 -0
  335. package/dist/types/spec/index.d.ts +1 -0
  336. package/dist/types/spec/index.js +1 -0
  337. package/dist/types/spec/inputs.d.ts +35 -1
  338. package/dist/types/spec-format.d.ts +25 -1
  339. package/dist/types/telemetry.d.ts +4 -1
  340. package/dist/types/transition-log.d.ts +1 -1
  341. package/dist/types/transport.d.ts +0 -2
  342. package/dist/types/usage.d.ts +1 -36
  343. package/dist/types/usage.js +1 -1
  344. package/dist/types/validate-worker.d.ts +6 -0
  345. package/dist/types/validation-receipt.d.ts +1 -1
  346. package/dist/types/validation.d.ts +10 -4
  347. package/package.json +17 -12
  348. package/planu-native.json +1 -1
  349. package/planu-plugin.json +23 -40
  350. package/scripts/lib/pending-release-file.mjs +93 -0
  351. package/src/i18n/messages/en.json +0 -41
  352. package/src/i18n/messages/es.json +0 -41
  353. package/src/i18n/messages/pt.json +0 -41
  354. package/dist/cli/commands/activate.d.ts +0 -14
  355. package/dist/cli/commands/activate.js +0 -174
  356. package/dist/config/license-plans.json +0 -251
  357. package/dist/config/product-public.ts +0 -148
  358. package/dist/config/server-instructions.ts +0 -121
  359. package/dist/config/version-defaults.ts +0 -76
  360. package/dist/config/version.ts +0 -21
  361. package/dist/engine/ai-integration/gemini/settings-generator.d.ts +0 -4
  362. package/dist/engine/ai-integration/gemini/settings-generator.js +0 -195
  363. package/dist/engine/ai-integration/kiro/hooks-generator.d.ts +0 -6
  364. package/dist/engine/ai-integration/kiro/hooks-generator.js +0 -75
  365. package/dist/engine/hooks/full-spectrum-generator.d.ts +0 -32
  366. package/dist/engine/hooks/full-spectrum-generator.js +0 -117
  367. package/dist/engine/license-validator/config-loader.d.ts +0 -5
  368. package/dist/engine/license-validator/config-loader.js +0 -16
  369. package/dist/engine/license-validator/core.d.ts +0 -15
  370. package/dist/engine/license-validator/core.js +0 -151
  371. package/dist/engine/license-validator/fingerprint.d.ts +0 -3
  372. package/dist/engine/license-validator/fingerprint.js +0 -17
  373. package/dist/engine/license-validator/lemon-squeezy.d.ts +0 -5
  374. package/dist/engine/license-validator/lemon-squeezy.js +0 -55
  375. package/dist/engine/license-validator.d.ts +0 -5
  376. package/dist/engine/license-validator.js +0 -6
  377. package/dist/engine/product-intelligence/index.d.ts +0 -7
  378. package/dist/engine/product-intelligence/index.js +0 -211
  379. package/dist/engine/session/auto-save.d.ts +0 -18
  380. package/dist/engine/session/auto-save.js +0 -98
  381. package/dist/engine/session/context-snapshot.d.ts +0 -8
  382. package/dist/engine/session/context-snapshot.js +0 -49
  383. package/dist/engine/session/memory-sync.d.ts +0 -12
  384. package/dist/engine/session/memory-sync.js +0 -34
  385. package/dist/engine/session/session-diff.d.ts +0 -11
  386. package/dist/engine/session/session-diff.js +0 -42
  387. package/dist/engine/session/session-merge.d.ts +0 -12
  388. package/dist/engine/session/session-merge.js +0 -55
  389. package/dist/engine/session-safeguard/checkpoint-runner.d.ts +0 -4
  390. package/dist/engine/session-safeguard/checkpoint-runner.js +0 -70
  391. package/dist/engine/session-safeguard/learnings-buffer.d.ts +0 -15
  392. package/dist/engine/session-safeguard/learnings-buffer.js +0 -91
  393. package/dist/engine/session-safeguard/precompaction-drain.d.ts +0 -10
  394. package/dist/engine/session-safeguard/precompaction-drain.js +0 -82
  395. package/dist/engine/session-safeguard/unpushed-detector.d.ts +0 -7
  396. package/dist/engine/session-safeguard/unpushed-detector.js +0 -59
  397. package/dist/engine/spec-changelog/core.d.ts +0 -16
  398. package/dist/engine/spec-changelog/core.js +0 -176
  399. package/dist/engine/spec-changelog/diff.d.ts +0 -18
  400. package/dist/engine/spec-changelog/diff.js +0 -121
  401. package/dist/engine/spec-changelog/index.d.ts +0 -3
  402. package/dist/engine/spec-changelog/index.js +0 -4
  403. package/dist/engine/trial-engine.d.ts +0 -5
  404. package/dist/engine/trial-engine.js +0 -14
  405. package/dist/engine/usage-tracker/rate-check.d.ts +0 -7
  406. package/dist/engine/usage-tracker/rate-check.js +0 -18
  407. package/dist/engine/usage-tracker/rate-limiter.d.ts +0 -14
  408. package/dist/engine/usage-tracker/rate-limiter.js +0 -73
  409. package/dist/engine/usage-tracker/trial.d.ts +0 -27
  410. package/dist/engine/usage-tracker/trial.js +0 -49
  411. package/dist/engine/webhook/event-handlers.d.ts +0 -25
  412. package/dist/engine/webhook/event-handlers.js +0 -89
  413. package/dist/engine/webhook/index.d.ts +0 -4
  414. package/dist/engine/webhook/index.js +0 -5
  415. package/dist/engine/webhook/server.d.ts +0 -12
  416. package/dist/engine/webhook/server.js +0 -249
  417. package/dist/engine/webhook/signature.d.ts +0 -16
  418. package/dist/engine/webhook/signature.js +0 -49
  419. package/dist/storage/license-store.d.ts +0 -6
  420. package/dist/storage/license-store.js +0 -63
  421. package/dist/storage/session-store.d.ts +0 -20
  422. package/dist/storage/session-store.js +0 -136
  423. package/dist/tools/activate-license.d.ts +0 -6
  424. package/dist/tools/activate-license.js +0 -132
  425. package/dist/tools/checkpoint-handler.d.ts +0 -3
  426. package/dist/tools/checkpoint-handler.js +0 -130
  427. package/dist/tools/export-session.d.ts +0 -3
  428. package/dist/tools/export-session.js +0 -90
  429. package/dist/tools/license-gate.d.ts +0 -18
  430. package/dist/tools/license-gate.js +0 -222
  431. package/dist/tools/license-status.d.ts +0 -3
  432. package/dist/tools/license-status.js +0 -93
  433. package/dist/tools/list-sessions.d.ts +0 -3
  434. package/dist/tools/list-sessions.js +0 -46
  435. package/dist/tools/planu-session-checkpoint.d.ts +0 -6
  436. package/dist/tools/planu-session-checkpoint.js +0 -42
  437. package/dist/tools/restore-session.d.ts +0 -3
  438. package/dist/tools/restore-session.js +0 -71
  439. package/dist/tools/spec-history.d.ts +0 -3
  440. package/dist/tools/spec-history.js +0 -59
  441. package/dist/tools/webhook.d.ts +0 -6
  442. package/dist/tools/webhook.js +0 -150
  443. package/dist/types/changelog.d.ts +0 -49
  444. package/dist/types/changelog.js +0 -3
  445. package/dist/types/licensing.d.ts +0 -109
  446. package/dist/types/licensing.js +0 -4
  447. package/dist/types/product-intelligence.d.ts +0 -60
  448. package/dist/types/product-intelligence.js +0 -3
  449. package/dist/types/session.d.ts +0 -84
  450. package/dist/types/session.js +0 -3
  451. package/dist/types/webhook.d.ts +0 -62
  452. package/dist/types/webhook.js +0 -4
@@ -1,150 +0,0 @@
1
- // tools/webhook.ts — Handlers for webhook management MCP tools.
2
- // start_webhook, stop_webhook, webhook_status
3
- import { startWebhookServer, stopWebhookServer, getWebhookState, setWebhookSecret, } from '../engine/webhook/index.js';
4
- // ---------------------------------------------------------------------------
5
- // Tool handlers
6
- // ---------------------------------------------------------------------------
7
- export async function handleStartWebhook(args) {
8
- const port = args.port ?? 2358;
9
- const secret = args.secret ?? '';
10
- if (port < 1 || port > 65535) {
11
- return {
12
- content: [{ type: 'text', text: 'Error: port must be between 1 and 65535.' }],
13
- isError: true,
14
- };
15
- }
16
- const current = getWebhookState();
17
- if (current.running) {
18
- return {
19
- content: [
20
- {
21
- type: 'text',
22
- text: [
23
- 'Webhook server is already running.',
24
- `Port: ${String(current.port)}`,
25
- `Started: ${current.startedAt ?? 'unknown'}`,
26
- '',
27
- 'Use stop_webhook first to restart on a different port.',
28
- ].join('\n'),
29
- },
30
- ],
31
- };
32
- }
33
- if (secret) {
34
- setWebhookSecret(secret);
35
- }
36
- try {
37
- const state = await startWebhookServer(port);
38
- const secretMsg = secret
39
- ? 'HMAC-SHA256 signature validation enabled.'
40
- : 'Warning: no webhook secret set — all requests will be accepted.';
41
- return {
42
- content: [
43
- {
44
- type: 'text',
45
- text: [
46
- 'Webhook server started.',
47
- `URL: http://localhost:${String(state.port)}/`,
48
- `Port: ${String(state.port)}`,
49
- `Started: ${state.startedAt ?? 'unknown'}`,
50
- '',
51
- secretMsg,
52
- '',
53
- 'Configure this URL in your Lemon Squeezy dashboard under:',
54
- ' Settings > Webhooks > Add webhook',
55
- '',
56
- 'Supported events:',
57
- ' • subscription_cancelled',
58
- ' • subscription_updated',
59
- ' • license_key_created',
60
- ].join('\n'),
61
- },
62
- ],
63
- };
64
- }
65
- catch (err) {
66
- const message = err instanceof Error ? err.message : String(err);
67
- return {
68
- content: [
69
- {
70
- type: 'text',
71
- text: [
72
- `Failed to start webhook server: ${message}`,
73
- '',
74
- 'Common causes:',
75
- `• Port ${String(port)} is already in use — try a different port`,
76
- '• Insufficient permissions for ports below 1024',
77
- ].join('\n'),
78
- },
79
- ],
80
- isError: true,
81
- };
82
- }
83
- }
84
- export async function handleStopWebhook(_args) {
85
- const current = getWebhookState();
86
- if (!current.running) {
87
- return {
88
- content: [{ type: 'text', text: 'Webhook server is not running.' }],
89
- };
90
- }
91
- // force flag reserved for future use (e.g., drop active connections)
92
- try {
93
- await stopWebhookServer();
94
- return {
95
- content: [
96
- {
97
- type: 'text',
98
- text: [
99
- 'Webhook server stopped.',
100
- `Events processed during session: ${String(current.eventsProcessed)}`,
101
- ].join('\n'),
102
- },
103
- ],
104
- };
105
- }
106
- catch (err) {
107
- const message = err instanceof Error ? err.message : String(err);
108
- return {
109
- content: [{ type: 'text', text: `Failed to stop webhook server: ${message}` }],
110
- isError: true,
111
- };
112
- }
113
- }
114
- export function handleWebhookStatus(args) {
115
- const state = getWebhookState();
116
- const includeEvents = args.includeEvents ?? true;
117
- const lines = [
118
- `Status: ${state.running ? 'RUNNING' : 'STOPPED'}`,
119
- `Port: ${String(state.port)}`,
120
- `Started: ${state.startedAt ?? 'N/A'}`,
121
- `Events processed: ${String(state.eventsProcessed)}`,
122
- ];
123
- if (includeEvents && state.recentEvents.length > 0) {
124
- lines.push('', 'Recent events:');
125
- for (const event of state.recentEvents) {
126
- const status = event.processed ? 'OK' : 'FAIL';
127
- lines.push(` [${status}] ${event.receivedAt} | ${event.eventType} | ${event.summary}`);
128
- }
129
- }
130
- else if (includeEvents) {
131
- lines.push('', 'No events received yet.');
132
- }
133
- if (!state.running) {
134
- lines.push('', 'Use start_webhook to begin receiving Lemon Squeezy events.');
135
- }
136
- return {
137
- content: [{ type: 'text', text: lines.join('\n') }],
138
- };
139
- }
140
- // ---------------------------------------------------------------------------
141
- // Internal helper (exported for testing)
142
- // ---------------------------------------------------------------------------
143
- export function formatStateForDisplay(state) {
144
- return [
145
- `running=${String(state.running)}`,
146
- `port=${String(state.port)}`,
147
- `eventsProcessed=${String(state.eventsProcessed)}`,
148
- ].join(', ');
149
- }
150
- //# sourceMappingURL=webhook.js.map
@@ -1,49 +0,0 @@
1
- export type ChangelogEntryType = 'criteria_added' | 'criteria_removed' | 'status_changed' | 'scope_changed' | 'progress_updated' | 'reconciled';
2
- export interface CriteriaDiff {
3
- added: string[];
4
- removed: string[];
5
- modified: {
6
- before: string;
7
- after: string;
8
- }[];
9
- }
10
- export interface SpecSnapshot {
11
- criteriaCount: number;
12
- completedCount: number;
13
- status: string;
14
- }
15
- export interface SpecChangelogEntry {
16
- timestamp: string;
17
- type: ChangelogEntryType;
18
- description: string;
19
- triggeredBy: string;
20
- before?: SpecSnapshot;
21
- after?: SpecSnapshot;
22
- diff?: CriteriaDiff;
23
- }
24
- export interface SpecChangelogData {
25
- specId: string;
26
- entries: SpecChangelogEntry[];
27
- }
28
- export interface AppendChangelogOptions {
29
- specDir: string;
30
- specId: string;
31
- entry: SpecChangelogEntry;
32
- }
33
- export interface ReadChangelogOptions {
34
- specDir: string;
35
- specId: string;
36
- }
37
- export interface SpecHistoryInput {
38
- specId: string;
39
- specDir: string;
40
- filter?: string;
41
- }
42
- export interface SpecHistoryResult {
43
- specId: string;
44
- entries: SpecChangelogEntry[];
45
- totalEntries: number;
46
- filtered: boolean;
47
- message: string;
48
- }
49
- //# sourceMappingURL=changelog.d.ts.map
@@ -1,3 +0,0 @@
1
- // types/changelog.ts — Changelog and spec diff types for SPEC-067
2
- export {};
3
- //# sourceMappingURL=changelog.js.map
@@ -1,109 +0,0 @@
1
- import type { PricingTier } from './common/primitives.js';
2
- export interface LicenseState {
3
- /** License key from Lemon Squeezy */
4
- readonly licenseKey: string;
5
- /** Unique instance identifier for this activation */
6
- readonly instanceId: string;
7
- /** Resolved tier from the license variant */
8
- readonly tier: PricingTier;
9
- /** ISO 8601 timestamp of when the license was activated locally */
10
- readonly activatedAt: string;
11
- /** ISO 8601 timestamp of the last successful remote validation */
12
- readonly lastValidatedAt: string;
13
- /** Lemon Squeezy variant name (e.g. "Planu Pro Monthly") */
14
- readonly variantName: string;
15
- /** Customer name from Lemon Squeezy */
16
- readonly customerName: string;
17
- /** Customer email from Lemon Squeezy */
18
- readonly customerEmail: string;
19
- /** SHA-256 fingerprint of the machine that activated this license */
20
- readonly machineFingerprint: string;
21
- /** Maximum number of activations allowed by Lemon Squeezy */
22
- readonly activationLimit: number;
23
- /** Current number of activations used */
24
- readonly activationUsage: number;
25
- }
26
- export interface TierLimits {
27
- readonly maxProjects: number;
28
- readonly maxActiveSpecs: number;
29
- }
30
- export interface LicensePlanConfig {
31
- readonly tiers: Record<PricingTier, TierLimits>;
32
- readonly freeTools: readonly string[];
33
- readonly proTools: readonly string[];
34
- readonly alwaysAllowed: readonly string[];
35
- readonly upgradeUrl: string;
36
- /**
37
- * ISO date string (YYYY-MM-DD). Until this date all PRO tools are accessible
38
- * to free-tier users — promotional "open access" window.
39
- */
40
- readonly freeUntil?: string;
41
- }
42
- export interface LicenseCheckResult {
43
- readonly allowed: boolean;
44
- readonly currentTier: PricingTier;
45
- readonly requiredTier: PricingTier;
46
- readonly message: string;
47
- }
48
- export interface LemonSqueezyMeta {
49
- readonly store_id: number;
50
- readonly order_id: number;
51
- readonly order_item_id: number;
52
- readonly product_id: number;
53
- readonly product_name: string;
54
- readonly variant_id: number;
55
- readonly variant_name: string;
56
- readonly customer_id: number;
57
- readonly customer_name: string;
58
- readonly customer_email: string;
59
- }
60
- export interface LemonSqueezyInstance {
61
- readonly id: string;
62
- readonly name: string;
63
- readonly created_at: string;
64
- }
65
- export interface LemonSqueezyActivateResponse {
66
- readonly activated: boolean;
67
- readonly error: string | null;
68
- readonly license_key: {
69
- readonly id: number;
70
- readonly status: string;
71
- readonly key: string;
72
- readonly activation_limit: number;
73
- readonly activation_usage: number;
74
- readonly created_at: string;
75
- readonly expires_at: string | null;
76
- };
77
- readonly instance: LemonSqueezyInstance;
78
- readonly meta: LemonSqueezyMeta;
79
- }
80
- export interface LemonSqueezyValidateResponse {
81
- readonly valid: boolean;
82
- readonly error: string | null;
83
- readonly license_key: {
84
- readonly id: number;
85
- readonly status: string;
86
- readonly key: string;
87
- readonly activation_limit: number;
88
- readonly activation_usage: number;
89
- readonly created_at: string;
90
- readonly expires_at: string | null;
91
- };
92
- readonly instance: LemonSqueezyInstance;
93
- readonly meta: LemonSqueezyMeta;
94
- }
95
- export interface LemonSqueezyDeactivateResponse {
96
- readonly deactivated: boolean;
97
- readonly error: string | null;
98
- }
99
- export interface ActivateLicenseInput {
100
- readonly licenseKey: string;
101
- readonly instanceName?: string;
102
- }
103
- export interface DeactivateLicenseInput {
104
- readonly confirm: boolean;
105
- }
106
- export interface LicenseStatusInput {
107
- readonly projectId?: string;
108
- }
109
- //# sourceMappingURL=licensing.d.ts.map
@@ -1,4 +0,0 @@
1
- // types/licensing.ts — License management types for Planu SDD MCP Server.
2
- // Supports offline-first licensing via Lemon Squeezy as Merchant of Record.
3
- export {};
4
- //# sourceMappingURL=licensing.js.map
@@ -1,60 +0,0 @@
1
- export interface ToolAdoptionRow {
2
- tool: string;
3
- totalCalls: number;
4
- uniqueInstalls: number;
5
- errorRate: number;
6
- blockedRate: number;
7
- lastSeenAt: string;
8
- trend: 'rising' | 'stable' | 'falling' | 'new' | 'dead';
9
- }
10
- export interface WorkflowCompletionRow {
11
- installationId: string;
12
- hasCreateSpec: boolean;
13
- hasValidate: boolean;
14
- hasDone: boolean;
15
- completionRate: number;
16
- }
17
- export interface FrictionPointRow {
18
- tool: string;
19
- blockedCount: number;
20
- totalCalls: number;
21
- blockedRate: number;
22
- topMessage: string | null;
23
- }
24
- export interface VersionAdoptionRow {
25
- planVersion: string;
26
- userCount: number;
27
- pct: number;
28
- isLatest: boolean;
29
- }
30
- export interface ProductInsightsReport {
31
- generatedAt: string;
32
- periodDays: number;
33
- totalEvents: number;
34
- uniqueInstalls: number;
35
- adoption: ToolAdoptionRow[];
36
- frictionPoints: FrictionPointRow[];
37
- versionAdoption: VersionAdoptionRow[];
38
- deadTools: string[];
39
- summary: string;
40
- }
41
- export type ProductInsightsReport_Report = 'adoption' | 'friction' | 'versions' | 'dead_tools' | 'full';
42
- export interface TelemetryEventRow {
43
- event_name: string;
44
- properties: Record<string, unknown>;
45
- installation_id: string;
46
- created_at: string;
47
- }
48
- export interface AdoptionStats {
49
- total: number;
50
- installs: Set<string>;
51
- errors: number;
52
- blocked: number;
53
- lastSeen: string;
54
- }
55
- export interface FrictionStats {
56
- blocked: number;
57
- total: number;
58
- messages: string[];
59
- }
60
- //# sourceMappingURL=product-intelligence.d.ts.map
@@ -1,3 +0,0 @@
1
- // types/product-intelligence.ts — SPEC-328: Product Intelligence Layer types
2
- export {};
3
- //# sourceMappingURL=product-intelligence.js.map
@@ -1,84 +0,0 @@
1
- /** A spec that was active during a session. */
2
- export interface SessionActiveSpec {
3
- specId: string;
4
- status: string;
5
- summary: string;
6
- }
7
- /** A decision made during a session. */
8
- export interface SessionDecision {
9
- timestamp: string;
10
- decision: string;
11
- rationale: string;
12
- specId?: string;
13
- }
14
- /** A file touched during a session. */
15
- export interface SessionFile {
16
- path: string;
17
- action: 'created' | 'modified' | 'deleted';
18
- }
19
- /** A persisted session snapshot. */
20
- export interface Session {
21
- id: string;
22
- projectId: string;
23
- startedAt: string;
24
- lastSavedAt: string;
25
- activeSpecs: SessionActiveSpec[];
26
- decisions: SessionDecision[];
27
- modifiedFiles: SessionFile[];
28
- contextSummary: string;
29
- toolCallCount: number;
30
- metadata: Record<string, unknown>;
31
- }
32
- /** Diff between two sessions. */
33
- export interface SessionDiff {
34
- newSpecs: SessionActiveSpec[];
35
- completedSpecs: SessionActiveSpec[];
36
- newDecisions: SessionDecision[];
37
- fileChanges: SessionFile[];
38
- }
39
- /** Cross-conversation memory of decisions. */
40
- export interface SessionMemory {
41
- projectId: string;
42
- decisions: SessionDecision[];
43
- updatedAt: string;
44
- }
45
- /** Lightweight session info for list views. */
46
- export interface SessionListItem {
47
- id: string;
48
- startedAt: string;
49
- lastSavedAt: string;
50
- contextSummary: string;
51
- toolCallCount: number;
52
- }
53
- /** Input for restore_session tool. */
54
- export interface RestoreSessionInput {
55
- projectPath: string;
56
- sessionId?: string;
57
- /** PR number to resume session from (auto-linked when PR created inside Claude Code). */
58
- fromPr?: number;
59
- }
60
- /** Input for list_sessions tool. */
61
- export interface ListSessionsInput {
62
- projectPath: string;
63
- limit?: number;
64
- }
65
- /** Input for export_session tool. */
66
- export interface ExportSessionInput {
67
- projectPath: string;
68
- sessionId?: string;
69
- format?: 'markdown' | 'json';
70
- }
71
- /** Data shape for the formatAsMarkdown function parameter. */
72
- export interface SessionExportData {
73
- id: string;
74
- projectId: string;
75
- startedAt: string;
76
- lastSavedAt: string;
77
- contextSummary: string;
78
- activeSpecs: SessionActiveSpec[];
79
- decisions: SessionDecision[];
80
- modifiedFiles: SessionFile[];
81
- toolCallCount: number;
82
- metadata: Record<string, unknown>;
83
- }
84
- //# sourceMappingURL=session.d.ts.map
@@ -1,3 +0,0 @@
1
- // session.ts — Types for session persistence (SPEC-081)
2
- export {};
3
- //# sourceMappingURL=session.js.map
@@ -1,62 +0,0 @@
1
- export type WebhookEventType = 'subscription_cancelled' | 'subscription_updated' | 'license_key_created' | 'order_created' | 'subscription_created' | 'subscription_paused' | 'subscription_unpaused' | 'subscription_expired' | 'subscription_payment_success' | 'subscription_payment_failed' | 'subscription_payment_recovered';
2
- export interface LemonSqueezyWebhookAttributes {
3
- readonly status?: string;
4
- readonly cancelled?: boolean;
5
- readonly variant_id?: number;
6
- readonly variant_name?: string;
7
- readonly product_name?: string;
8
- readonly customer_id?: number;
9
- readonly user_name?: string;
10
- readonly user_email?: string;
11
- readonly ends_at?: string | null;
12
- readonly renews_at?: string | null;
13
- readonly trial_ends_at?: string | null;
14
- readonly created_at?: string;
15
- readonly updated_at?: string;
16
- }
17
- export interface LemonSqueezyWebhookData {
18
- readonly id: string;
19
- readonly type: string;
20
- readonly attributes: LemonSqueezyWebhookAttributes;
21
- }
22
- export interface LemonSqueezyWebhookPayload {
23
- readonly meta: {
24
- readonly event_name: string;
25
- readonly custom_data?: Record<string, unknown>;
26
- readonly webhook_id?: string;
27
- };
28
- readonly data: LemonSqueezyWebhookData;
29
- }
30
- export interface WebhookEventRecord {
31
- readonly id: string;
32
- readonly eventType: WebhookEventType;
33
- readonly receivedAt: string;
34
- readonly processed: boolean;
35
- readonly error?: string;
36
- readonly summary: string;
37
- }
38
- export interface WebhookServerState {
39
- readonly running: boolean;
40
- readonly port: number;
41
- readonly startedAt: string | null;
42
- readonly eventsProcessed: number;
43
- readonly recentEvents: WebhookEventRecord[];
44
- }
45
- export interface WebhookProcessResult {
46
- readonly success: boolean;
47
- readonly eventType: string;
48
- readonly message: string;
49
- readonly statusCode: number;
50
- }
51
- export type EventHandler = (payload: LemonSqueezyWebhookPayload) => WebhookProcessResult;
52
- export interface StartWebhookInput {
53
- readonly port?: number;
54
- readonly secret?: string;
55
- }
56
- export interface StopWebhookInput {
57
- readonly force?: boolean;
58
- }
59
- export interface WebhookStatusInput {
60
- readonly includeEvents?: boolean;
61
- }
62
- //# sourceMappingURL=webhook.d.ts.map
@@ -1,4 +0,0 @@
1
- // types/webhook.ts — Webhook event types for Lemon Squeezy subscription events.
2
- // Used by the webhook engine (src/engine/webhook/) and tools (src/tools/webhook.ts).
3
- export {};
4
- //# sourceMappingURL=webhook.js.map