create-principles-disciple 1.94.0 → 1.96.0

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 (530) hide show
  1. package/console/dist/server/config/WorkspaceConfigStore.js +2 -1
  2. package/console/dist/server/config/pd-config-store.d.ts +33 -0
  3. package/console/dist/server/config/pd-config-store.js +196 -0
  4. package/console/dist/server/index.js +19 -4
  5. package/console/dist/server/models/EvidenceChainConsoleModel.d.ts +0 -2
  6. package/console/dist/server/models/EvidenceChainConsoleModel.js +36 -2
  7. package/console/dist/server/models/HealthCheckModel.js +5 -3
  8. package/console/dist/server/models/IntentDecisionModel.d.ts +66 -0
  9. package/console/dist/server/models/IntentDecisionModel.js +207 -0
  10. package/console/dist/server/models/IntentPageModel.d.ts +52 -0
  11. package/console/dist/server/models/IntentPageModel.js +292 -0
  12. package/console/dist/server/models/PrinciplesConsoleModel.d.ts +2 -0
  13. package/console/dist/server/models/PrinciplesConsoleModel.js +37 -1
  14. package/console/dist/server/models/WorkspaceService.d.ts +0 -28
  15. package/console/dist/server/models/WorkspaceService.js +0 -115
  16. package/console/dist/server/routes/config.js +55 -1
  17. package/console/dist/server/routes/intent-decisions.d.ts +33 -0
  18. package/console/dist/server/routes/intent-decisions.js +499 -0
  19. package/console/dist/server/routes/intent.d.ts +7 -0
  20. package/console/dist/server/routes/intent.js +223 -0
  21. package/console/dist/server/routes/principles.js +67 -1
  22. package/console/dist/server/routes/update.d.ts +0 -1
  23. package/console/dist/server/routes/update.js +14 -11
  24. package/console/dist/types.d.ts +1 -0
  25. package/console/dist/ui/App.js +2 -60
  26. package/console/dist/ui/api.d.ts +58 -18
  27. package/console/dist/ui/api.js +78 -6
  28. package/console/dist/ui/components/layout/app-sidebar.js +13 -12
  29. package/console/dist/ui/components/ui/badge.d.ts +1 -1
  30. package/console/dist/ui/components/ui/button.d.ts +1 -1
  31. package/console/dist/ui/components/ui/shiny-text.d.ts +28 -0
  32. package/console/dist/ui/components/ui/shiny-text.js +46 -0
  33. package/console/dist/ui/i18n/en.json +306 -3
  34. package/console/dist/ui/i18n/zh-CN.json +306 -3
  35. package/console/dist/ui/pages/activation/ActivationPage.js +2 -1
  36. package/console/dist/ui/pages/control-center/AgentCard.d.ts +31 -0
  37. package/console/dist/ui/pages/control-center/AgentCard.js +156 -0
  38. package/console/dist/ui/pages/control-center/AgentGroup.d.ts +26 -0
  39. package/console/dist/ui/pages/control-center/AgentGroup.js +38 -0
  40. package/console/dist/ui/pages/control-center/ControlCenterPage.js +103 -41
  41. package/console/dist/ui/pages/control-center/EmpathyObserverCostHint.d.ts +28 -0
  42. package/console/dist/ui/pages/control-center/EmpathyObserverCostHint.js +38 -0
  43. package/console/dist/ui/pages/control-center/WorkflowDiagram.d.ts +17 -0
  44. package/console/dist/ui/pages/control-center/WorkflowDiagram.js +55 -0
  45. package/console/dist/ui/pages/debt/DebtPage.js +219 -2
  46. package/console/dist/ui/pages/focus/FocusPage.js +2 -1
  47. package/console/dist/ui/pages/intent/IntentOnboarding.d.ts +67 -0
  48. package/console/dist/ui/pages/intent/IntentOnboarding.js +289 -0
  49. package/console/dist/ui/pages/intent/IntentPage.d.ts +1 -0
  50. package/console/dist/ui/pages/intent/IntentPage.js +258 -0
  51. package/console/dist/ui/pages/pain/PainPage.js +234 -4
  52. package/console/dist/ui/pages/pain/pain-card-helpers.d.ts +75 -0
  53. package/console/dist/ui/pages/pain/pain-card-helpers.js +78 -0
  54. package/console/dist/ui/pages/principles/PrinciplesPage.js +2 -1
  55. package/console/dist/ui/utils/agent-metadata.d.ts +58 -0
  56. package/console/dist/ui/utils/agent-metadata.js +275 -0
  57. package/console/dist/ui/utils/control-center-helpers.d.ts +19 -0
  58. package/console/dist/ui/utils/control-center-helpers.js +37 -0
  59. package/console/dist/ui/utils/validators.d.ts +200 -0
  60. package/console/dist/ui/utils/validators.js +563 -0
  61. package/console/dist/web/assets/app.css +498 -3
  62. package/console/dist/web/assets/app.js +5063 -1418
  63. package/console/package.json +3 -0
  64. package/core/dist/principle-tree-ledger.d.ts +55 -4
  65. package/core/dist/principle-tree-ledger.d.ts.map +1 -1
  66. package/core/dist/principle-tree-ledger.js +472 -13
  67. package/core/dist/principle-tree-ledger.js.map +1 -1
  68. package/core/dist/prompt-builder/__tests__/prompt-builder-core.test.js +58 -0
  69. package/core/dist/prompt-builder/__tests__/prompt-builder-core.test.js.map +1 -1
  70. package/core/dist/prompt-builder/empathy-keyword-matching.d.ts.map +1 -1
  71. package/core/dist/prompt-builder/empathy-keyword-matching.js +9 -6
  72. package/core/dist/prompt-builder/empathy-keyword-matching.js.map +1 -1
  73. package/core/dist/prompt-builder/size-guard.d.ts +1 -0
  74. package/core/dist/prompt-builder/size-guard.d.ts.map +1 -1
  75. package/core/dist/prompt-builder/size-guard.js +21 -0
  76. package/core/dist/prompt-builder/size-guard.js.map +1 -1
  77. package/core/dist/prompt-builder/types.d.ts +2 -0
  78. package/core/dist/prompt-builder/types.d.ts.map +1 -1
  79. package/core/dist/runtime-v2/__tests__/architecture-regression.test.js +143 -65
  80. package/core/dist/runtime-v2/__tests__/architecture-regression.test.js.map +1 -1
  81. package/core/dist/runtime-v2/__tests__/evaluator-runner-vslice-v2.test.js +85 -7
  82. package/core/dist/runtime-v2/__tests__/evaluator-runner-vslice-v2.test.js.map +1 -1
  83. package/core/dist/runtime-v2/__tests__/evidence-chain-intent-tension.test.d.ts +2 -0
  84. package/core/dist/runtime-v2/__tests__/evidence-chain-intent-tension.test.d.ts.map +1 -0
  85. package/core/dist/runtime-v2/__tests__/evidence-chain-intent-tension.test.js +284 -0
  86. package/core/dist/runtime-v2/__tests__/evidence-chain-intent-tension.test.js.map +1 -0
  87. package/core/dist/runtime-v2/__tests__/golden-trace-replay-validator.test.js +70 -0
  88. package/core/dist/runtime-v2/__tests__/golden-trace-replay-validator.test.js.map +1 -1
  89. package/core/dist/runtime-v2/__tests__/golden-trace.test.js +136 -1
  90. package/core/dist/runtime-v2/__tests__/golden-trace.test.js.map +1 -1
  91. package/core/dist/runtime-v2/__tests__/pain-signal-bridge-result-shaping.test.js +105 -0
  92. package/core/dist/runtime-v2/__tests__/pain-signal-bridge-result-shaping.test.js.map +1 -1
  93. package/core/dist/runtime-v2/__tests__/pain-signal-observability.test.js +7 -5
  94. package/core/dist/runtime-v2/__tests__/pain-signal-observability.test.js.map +1 -1
  95. package/core/dist/runtime-v2/__tests__/pi-artifact-store.test.js +11 -0
  96. package/core/dist/runtime-v2/__tests__/pi-artifact-store.test.js.map +1 -1
  97. package/core/dist/runtime-v2/__tests__/proven-channel-baseline.test.js +15 -2
  98. package/core/dist/runtime-v2/__tests__/proven-channel-baseline.test.js.map +1 -1
  99. package/core/dist/runtime-v2/__tests__/schema-float-precision.test.d.ts +2 -0
  100. package/core/dist/runtime-v2/__tests__/schema-float-precision.test.d.ts.map +1 -0
  101. package/core/dist/runtime-v2/__tests__/schema-float-precision.test.js +290 -0
  102. package/core/dist/runtime-v2/__tests__/schema-float-precision.test.js.map +1 -0
  103. package/core/dist/runtime-v2/__tests__/schema-orphan-detection.test.d.ts +2 -0
  104. package/core/dist/runtime-v2/__tests__/schema-orphan-detection.test.d.ts.map +1 -0
  105. package/core/dist/runtime-v2/__tests__/schema-orphan-detection.test.js +158 -0
  106. package/core/dist/runtime-v2/__tests__/schema-orphan-detection.test.js.map +1 -0
  107. package/core/dist/runtime-v2/__tests__/v2-adversarial-cases.test.d.ts +2 -0
  108. package/core/dist/runtime-v2/__tests__/v2-adversarial-cases.test.d.ts.map +1 -0
  109. package/core/dist/runtime-v2/__tests__/v2-adversarial-cases.test.js +211 -0
  110. package/core/dist/runtime-v2/__tests__/v2-adversarial-cases.test.js.map +1 -0
  111. package/core/dist/runtime-v2/activation/__tests__/approval-store-extended.test.js +15 -1
  112. package/core/dist/runtime-v2/activation/__tests__/approval-store-extended.test.js.map +1 -1
  113. package/core/dist/runtime-v2/activation/__tests__/sqlite-activation-state-store-fk.test.d.ts +2 -0
  114. package/core/dist/runtime-v2/activation/__tests__/sqlite-activation-state-store-fk.test.d.ts.map +1 -0
  115. package/core/dist/runtime-v2/activation/__tests__/sqlite-activation-state-store-fk.test.js +62 -0
  116. package/core/dist/runtime-v2/activation/__tests__/sqlite-activation-state-store-fk.test.js.map +1 -0
  117. package/core/dist/runtime-v2/activation/__tests__/sqlite-activation-state-store.test.js +12 -2
  118. package/core/dist/runtime-v2/activation/__tests__/sqlite-activation-state-store.test.js.map +1 -1
  119. package/core/dist/runtime-v2/activation/__tests__/sqlite-approval-store-fk.test.d.ts +2 -0
  120. package/core/dist/runtime-v2/activation/__tests__/sqlite-approval-store-fk.test.d.ts.map +1 -0
  121. package/core/dist/runtime-v2/activation/__tests__/sqlite-approval-store-fk.test.js +56 -0
  122. package/core/dist/runtime-v2/activation/__tests__/sqlite-approval-store-fk.test.js.map +1 -0
  123. package/core/dist/runtime-v2/activation/__tests__/sqlite-approval-store.test.js +8 -0
  124. package/core/dist/runtime-v2/activation/__tests__/sqlite-approval-store.test.js.map +1 -1
  125. package/core/dist/runtime-v2/activation/__tests__/story-a-acceptance.test.js +20 -0
  126. package/core/dist/runtime-v2/activation/__tests__/story-a-acceptance.test.js.map +1 -1
  127. package/core/dist/runtime-v2/activation/sqlite-activation-state-store.d.ts.map +1 -1
  128. package/core/dist/runtime-v2/activation/sqlite-activation-state-store.js +6 -0
  129. package/core/dist/runtime-v2/activation/sqlite-activation-state-store.js.map +1 -1
  130. package/core/dist/runtime-v2/activation/sqlite-approval-store.d.ts.map +1 -1
  131. package/core/dist/runtime-v2/activation/sqlite-approval-store.js +86 -32
  132. package/core/dist/runtime-v2/activation/sqlite-approval-store.js.map +1 -1
  133. package/core/dist/runtime-v2/activation/writers/__tests__/rule-host-writer.test.js +158 -1
  134. package/core/dist/runtime-v2/activation/writers/__tests__/rule-host-writer.test.js.map +1 -1
  135. package/core/dist/runtime-v2/activation/writers/rule-host-writer.d.ts +11 -0
  136. package/core/dist/runtime-v2/activation/writers/rule-host-writer.d.ts.map +1 -1
  137. package/core/dist/runtime-v2/activation/writers/rule-host-writer.js +55 -11
  138. package/core/dist/runtime-v2/activation/writers/rule-host-writer.js.map +1 -1
  139. package/core/dist/runtime-v2/diagnostician/__tests__/diag-rootcause-output.test.js +134 -15
  140. package/core/dist/runtime-v2/diagnostician/__tests__/diag-rootcause-output.test.js.map +1 -1
  141. package/core/dist/runtime-v2/diagnostician/__tests__/intent-tension-schema.test.d.ts +18 -0
  142. package/core/dist/runtime-v2/diagnostician/__tests__/intent-tension-schema.test.d.ts.map +1 -0
  143. package/core/dist/runtime-v2/diagnostician/__tests__/intent-tension-schema.test.js +251 -0
  144. package/core/dist/runtime-v2/diagnostician/__tests__/intent-tension-schema.test.js.map +1 -0
  145. package/core/dist/runtime-v2/diagnostician/__tests__/rootcause-prompt-builder.test.js +73 -0
  146. package/core/dist/runtime-v2/diagnostician/__tests__/rootcause-prompt-builder.test.js.map +1 -1
  147. package/core/dist/runtime-v2/diagnostician/diag-rootcause-output.d.ts +98 -0
  148. package/core/dist/runtime-v2/diagnostician/diag-rootcause-output.d.ts.map +1 -1
  149. package/core/dist/runtime-v2/diagnostician/diag-rootcause-output.js +131 -0
  150. package/core/dist/runtime-v2/diagnostician/diag-rootcause-output.js.map +1 -1
  151. package/core/dist/runtime-v2/diagnostician/rootcause-prompt-builder.d.ts +8 -0
  152. package/core/dist/runtime-v2/diagnostician/rootcause-prompt-builder.d.ts.map +1 -1
  153. package/core/dist/runtime-v2/diagnostician/rootcause-prompt-builder.js +66 -3
  154. package/core/dist/runtime-v2/diagnostician/rootcause-prompt-builder.js.map +1 -1
  155. package/core/dist/runtime-v2/diagnostician-output.d.ts +23 -0
  156. package/core/dist/runtime-v2/diagnostician-output.d.ts.map +1 -1
  157. package/core/dist/runtime-v2/diagnostician-output.js +16 -0
  158. package/core/dist/runtime-v2/diagnostician-output.js.map +1 -1
  159. package/core/dist/runtime-v2/diagnostician-prompt-builder.d.ts +32 -0
  160. package/core/dist/runtime-v2/diagnostician-prompt-builder.d.ts.map +1 -1
  161. package/core/dist/runtime-v2/diagnostician-prompt-builder.js.map +1 -1
  162. package/core/dist/runtime-v2/evidence-triage/source-descriptors.d.ts +1 -1
  163. package/core/dist/runtime-v2/evidence-triage/source-descriptors.js +1 -1
  164. package/core/dist/runtime-v2/feature-flags/__tests__/feature-flag-contract.test.js +23 -0
  165. package/core/dist/runtime-v2/feature-flags/__tests__/feature-flag-contract.test.js.map +1 -1
  166. package/core/dist/runtime-v2/feature-flags/__tests__/intent-engineering-flag.test.d.ts +2 -0
  167. package/core/dist/runtime-v2/feature-flags/__tests__/intent-engineering-flag.test.d.ts.map +1 -0
  168. package/core/dist/runtime-v2/feature-flags/__tests__/intent-engineering-flag.test.js +30 -0
  169. package/core/dist/runtime-v2/feature-flags/__tests__/intent-engineering-flag.test.js.map +1 -0
  170. package/core/dist/runtime-v2/feature-flags/__tests__/rulecode-context-v2-flag.test.d.ts +2 -0
  171. package/core/dist/runtime-v2/feature-flags/__tests__/rulecode-context-v2-flag.test.d.ts.map +1 -0
  172. package/core/dist/runtime-v2/feature-flags/__tests__/rulecode-context-v2-flag.test.js +74 -0
  173. package/core/dist/runtime-v2/feature-flags/__tests__/rulecode-context-v2-flag.test.js.map +1 -0
  174. package/core/dist/runtime-v2/feature-flags/__tests__/surface-guard-policy.test.d.ts +2 -0
  175. package/core/dist/runtime-v2/feature-flags/__tests__/surface-guard-policy.test.d.ts.map +1 -0
  176. package/core/dist/runtime-v2/feature-flags/__tests__/surface-guard-policy.test.js +246 -0
  177. package/core/dist/runtime-v2/feature-flags/__tests__/surface-guard-policy.test.js.map +1 -0
  178. package/core/dist/runtime-v2/feature-flags/feature-flag-contract.d.ts.map +1 -1
  179. package/core/dist/runtime-v2/feature-flags/feature-flag-contract.js +9 -0
  180. package/core/dist/runtime-v2/feature-flags/feature-flag-contract.js.map +1 -1
  181. package/core/dist/runtime-v2/feature-flags/index.d.ts +2 -0
  182. package/core/dist/runtime-v2/feature-flags/index.d.ts.map +1 -1
  183. package/core/dist/runtime-v2/feature-flags/index.js +2 -0
  184. package/core/dist/runtime-v2/feature-flags/index.js.map +1 -1
  185. package/core/dist/runtime-v2/feature-flags/plugin-surface-registry.d.ts.map +1 -1
  186. package/core/dist/runtime-v2/feature-flags/plugin-surface-registry.js +0 -9
  187. package/core/dist/runtime-v2/feature-flags/plugin-surface-registry.js.map +1 -1
  188. package/{plugin/dist/core/surface-guard.d.ts → core/dist/runtime-v2/feature-flags/surface-guard-policy.d.ts} +15 -5
  189. package/core/dist/runtime-v2/feature-flags/surface-guard-policy.d.ts.map +1 -0
  190. package/{plugin/dist/core/surface-guard.js → core/dist/runtime-v2/feature-flags/surface-guard-policy.js} +14 -2
  191. package/core/dist/runtime-v2/feature-flags/surface-guard-policy.js.map +1 -0
  192. package/core/dist/runtime-v2/golden-trace-replay-validator.js +1 -1
  193. package/core/dist/runtime-v2/golden-trace-replay-validator.js.map +1 -1
  194. package/core/dist/runtime-v2/golden-trace.d.ts +19 -3
  195. package/core/dist/runtime-v2/golden-trace.d.ts.map +1 -1
  196. package/core/dist/runtime-v2/golden-trace.js +2 -0
  197. package/core/dist/runtime-v2/golden-trace.js.map +1 -1
  198. package/core/dist/runtime-v2/index.d.ts +21 -4
  199. package/core/dist/runtime-v2/index.d.ts.map +1 -1
  200. package/core/dist/runtime-v2/index.js +21 -3
  201. package/core/dist/runtime-v2/index.js.map +1 -1
  202. package/core/dist/runtime-v2/intent/__tests__/intent-decision-record.test.d.ts +2 -0
  203. package/core/dist/runtime-v2/intent/__tests__/intent-decision-record.test.d.ts.map +1 -0
  204. package/core/dist/runtime-v2/intent/__tests__/intent-decision-record.test.js +185 -0
  205. package/core/dist/runtime-v2/intent/__tests__/intent-decision-record.test.js.map +1 -0
  206. package/core/dist/runtime-v2/intent/__tests__/intent-doc-version.test.d.ts +2 -0
  207. package/core/dist/runtime-v2/intent/__tests__/intent-doc-version.test.d.ts.map +1 -0
  208. package/core/dist/runtime-v2/intent/__tests__/intent-doc-version.test.js +88 -0
  209. package/core/dist/runtime-v2/intent/__tests__/intent-doc-version.test.js.map +1 -0
  210. package/core/dist/runtime-v2/intent/__tests__/intent-doc.test.d.ts +2 -0
  211. package/core/dist/runtime-v2/intent/__tests__/intent-doc.test.d.ts.map +1 -0
  212. package/core/dist/runtime-v2/intent/__tests__/intent-doc.test.js +181 -0
  213. package/core/dist/runtime-v2/intent/__tests__/intent-doc.test.js.map +1 -0
  214. package/core/dist/runtime-v2/intent/__tests__/intent-friction-block.test.d.ts +2 -0
  215. package/core/dist/runtime-v2/intent/__tests__/intent-friction-block.test.d.ts.map +1 -0
  216. package/core/dist/runtime-v2/intent/__tests__/intent-friction-block.test.js +168 -0
  217. package/core/dist/runtime-v2/intent/__tests__/intent-friction-block.test.js.map +1 -0
  218. package/core/dist/runtime-v2/intent/__tests__/intent-patch-proposal.test.d.ts +2 -0
  219. package/core/dist/runtime-v2/intent/__tests__/intent-patch-proposal.test.d.ts.map +1 -0
  220. package/core/dist/runtime-v2/intent/__tests__/intent-patch-proposal.test.js +121 -0
  221. package/core/dist/runtime-v2/intent/__tests__/intent-patch-proposal.test.js.map +1 -0
  222. package/core/dist/runtime-v2/intent/index.d.ts +8 -0
  223. package/core/dist/runtime-v2/intent/index.d.ts.map +1 -0
  224. package/core/dist/runtime-v2/intent/index.js +8 -0
  225. package/core/dist/runtime-v2/intent/index.js.map +1 -0
  226. package/core/dist/runtime-v2/intent/intent-browser.d.ts +23 -0
  227. package/core/dist/runtime-v2/intent/intent-browser.d.ts.map +1 -0
  228. package/core/dist/runtime-v2/intent/intent-browser.js +21 -0
  229. package/core/dist/runtime-v2/intent/intent-browser.js.map +1 -0
  230. package/core/dist/runtime-v2/intent/intent-decision-record.d.ts +125 -0
  231. package/core/dist/runtime-v2/intent/intent-decision-record.d.ts.map +1 -0
  232. package/core/dist/runtime-v2/intent/intent-decision-record.js +21 -0
  233. package/core/dist/runtime-v2/intent/intent-decision-record.js.map +1 -0
  234. package/core/dist/runtime-v2/intent/intent-doc-reader-port.d.ts +95 -0
  235. package/core/dist/runtime-v2/intent/intent-doc-reader-port.d.ts.map +1 -0
  236. package/core/dist/runtime-v2/intent/intent-doc-reader-port.js +43 -0
  237. package/core/dist/runtime-v2/intent/intent-doc-reader-port.js.map +1 -0
  238. package/core/dist/runtime-v2/intent/intent-doc-version.d.ts +28 -0
  239. package/core/dist/runtime-v2/intent/intent-doc-version.d.ts.map +1 -0
  240. package/core/dist/runtime-v2/intent/intent-doc-version.js +21 -0
  241. package/core/dist/runtime-v2/intent/intent-doc-version.js.map +1 -0
  242. package/core/dist/runtime-v2/intent/intent-doc.d.ts +35 -0
  243. package/core/dist/runtime-v2/intent/intent-doc.d.ts.map +1 -0
  244. package/core/dist/runtime-v2/intent/intent-doc.js +158 -0
  245. package/core/dist/runtime-v2/intent/intent-doc.js.map +1 -0
  246. package/core/dist/runtime-v2/intent/intent-friction-block.d.ts +63 -0
  247. package/core/dist/runtime-v2/intent/intent-friction-block.d.ts.map +1 -0
  248. package/core/dist/runtime-v2/intent/intent-friction-block.js +129 -0
  249. package/core/dist/runtime-v2/intent/intent-friction-block.js.map +1 -0
  250. package/core/dist/runtime-v2/intent/intent-hash.d.ts +2 -0
  251. package/core/dist/runtime-v2/intent/intent-hash.d.ts.map +1 -0
  252. package/core/dist/runtime-v2/intent/intent-hash.js +10 -0
  253. package/core/dist/runtime-v2/intent/intent-hash.js.map +1 -0
  254. package/core/dist/runtime-v2/intent/intent-patch-proposal.d.ts +42 -0
  255. package/core/dist/runtime-v2/intent/intent-patch-proposal.d.ts.map +1 -0
  256. package/core/dist/runtime-v2/intent/intent-patch-proposal.js +81 -0
  257. package/core/dist/runtime-v2/intent/intent-patch-proposal.js.map +1 -0
  258. package/core/dist/runtime-v2/internalization/__tests__/__fixtures__/intent-tension-cases.d.ts +54 -0
  259. package/core/dist/runtime-v2/internalization/__tests__/__fixtures__/intent-tension-cases.d.ts.map +1 -0
  260. package/core/dist/runtime-v2/internalization/__tests__/__fixtures__/intent-tension-cases.js +219 -0
  261. package/core/dist/runtime-v2/internalization/__tests__/__fixtures__/intent-tension-cases.js.map +1 -0
  262. package/core/dist/runtime-v2/internalization/__tests__/artificer-prompt-builder.test.js +41 -1
  263. package/core/dist/runtime-v2/internalization/__tests__/artificer-prompt-builder.test.js.map +1 -1
  264. package/core/dist/runtime-v2/internalization/__tests__/artificer-rule-output.test.js +130 -2
  265. package/core/dist/runtime-v2/internalization/__tests__/artificer-rule-output.test.js.map +1 -1
  266. package/core/dist/runtime-v2/internalization/__tests__/behavior-example-pack.test.d.ts +2 -0
  267. package/core/dist/runtime-v2/internalization/__tests__/behavior-example-pack.test.d.ts.map +1 -0
  268. package/core/dist/runtime-v2/internalization/__tests__/behavior-example-pack.test.js +228 -0
  269. package/core/dist/runtime-v2/internalization/__tests__/behavior-example-pack.test.js.map +1 -0
  270. package/core/dist/runtime-v2/internalization/__tests__/diag-chain-e2e.test.js +41 -11
  271. package/core/dist/runtime-v2/internalization/__tests__/diag-chain-e2e.test.js.map +1 -1
  272. package/core/dist/runtime-v2/internalization/__tests__/diag-rootcause-intent-tension.test.d.ts +2 -0
  273. package/core/dist/runtime-v2/internalization/__tests__/diag-rootcause-intent-tension.test.d.ts.map +1 -0
  274. package/core/dist/runtime-v2/internalization/__tests__/diag-rootcause-intent-tension.test.js +360 -0
  275. package/core/dist/runtime-v2/internalization/__tests__/diag-rootcause-intent-tension.test.js.map +1 -0
  276. package/core/dist/runtime-v2/internalization/__tests__/diag-router-intent-tension.test.d.ts +2 -0
  277. package/core/dist/runtime-v2/internalization/__tests__/diag-router-intent-tension.test.d.ts.map +1 -0
  278. package/core/dist/runtime-v2/internalization/__tests__/diag-router-intent-tension.test.js +333 -0
  279. package/core/dist/runtime-v2/internalization/__tests__/diag-router-intent-tension.test.js.map +1 -0
  280. package/core/dist/runtime-v2/internalization/__tests__/intent-tension-cases.test.d.ts +2 -0
  281. package/core/dist/runtime-v2/internalization/__tests__/intent-tension-cases.test.d.ts.map +1 -0
  282. package/core/dist/runtime-v2/internalization/__tests__/intent-tension-cases.test.js +113 -0
  283. package/core/dist/runtime-v2/internalization/__tests__/intent-tension-cases.test.js.map +1 -0
  284. package/core/dist/runtime-v2/internalization/__tests__/refiner-sandbox-wrapper.test.js +135 -0
  285. package/core/dist/runtime-v2/internalization/__tests__/refiner-sandbox-wrapper.test.js.map +1 -1
  286. package/core/dist/runtime-v2/internalization/__tests__/rule-context-v2.test.d.ts +2 -0
  287. package/core/dist/runtime-v2/internalization/__tests__/rule-context-v2.test.d.ts.map +1 -0
  288. package/core/dist/runtime-v2/internalization/__tests__/rule-context-v2.test.js +449 -0
  289. package/core/dist/runtime-v2/internalization/__tests__/rule-context-v2.test.js.map +1 -0
  290. package/core/dist/runtime-v2/internalization/adversarial-case.d.ts.map +1 -1
  291. package/core/dist/runtime-v2/internalization/adversarial-case.js +24 -0
  292. package/core/dist/runtime-v2/internalization/adversarial-case.js.map +1 -1
  293. package/core/dist/runtime-v2/internalization/artificer-output.d.ts +10 -0
  294. package/core/dist/runtime-v2/internalization/artificer-output.d.ts.map +1 -1
  295. package/core/dist/runtime-v2/internalization/artificer-output.js +45 -0
  296. package/core/dist/runtime-v2/internalization/artificer-output.js.map +1 -1
  297. package/core/dist/runtime-v2/internalization/artificer-prompt-builder.d.ts +2 -2
  298. package/core/dist/runtime-v2/internalization/artificer-prompt-builder.d.ts.map +1 -1
  299. package/core/dist/runtime-v2/internalization/artificer-prompt-builder.js +7 -2
  300. package/core/dist/runtime-v2/internalization/artificer-prompt-builder.js.map +1 -1
  301. package/core/dist/runtime-v2/internalization/behavior-example-pack.d.ts +66 -0
  302. package/core/dist/runtime-v2/internalization/behavior-example-pack.d.ts.map +1 -0
  303. package/core/dist/runtime-v2/internalization/behavior-example-pack.js +183 -0
  304. package/core/dist/runtime-v2/internalization/behavior-example-pack.js.map +1 -0
  305. package/core/dist/runtime-v2/internalization/diag-rootcause-runner.d.ts +13 -0
  306. package/core/dist/runtime-v2/internalization/diag-rootcause-runner.d.ts.map +1 -1
  307. package/core/dist/runtime-v2/internalization/diag-rootcause-runner.js +42 -0
  308. package/core/dist/runtime-v2/internalization/diag-rootcause-runner.js.map +1 -1
  309. package/core/dist/runtime-v2/internalization/diag-router-runner.d.ts.map +1 -1
  310. package/core/dist/runtime-v2/internalization/diag-router-runner.js +27 -0
  311. package/core/dist/runtime-v2/internalization/diag-router-runner.js.map +1 -1
  312. package/core/dist/runtime-v2/internalization/evaluator-output.d.ts +8 -0
  313. package/core/dist/runtime-v2/internalization/evaluator-output.d.ts.map +1 -1
  314. package/core/dist/runtime-v2/internalization/evaluator-output.js +10 -0
  315. package/core/dist/runtime-v2/internalization/evaluator-output.js.map +1 -1
  316. package/core/dist/runtime-v2/internalization/evaluator-runner.d.ts +17 -0
  317. package/core/dist/runtime-v2/internalization/evaluator-runner.d.ts.map +1 -1
  318. package/core/dist/runtime-v2/internalization/evaluator-runner.js +118 -24
  319. package/core/dist/runtime-v2/internalization/evaluator-runner.js.map +1 -1
  320. package/core/dist/runtime-v2/internalization/refiner-sandbox-wrapper.d.ts.map +1 -1
  321. package/core/dist/runtime-v2/internalization/refiner-sandbox-wrapper.js +1 -1
  322. package/core/dist/runtime-v2/internalization/refiner-sandbox-wrapper.js.map +1 -1
  323. package/core/dist/runtime-v2/internalization/rule-context-v2.d.ts +61 -0
  324. package/core/dist/runtime-v2/internalization/rule-context-v2.d.ts.map +1 -0
  325. package/core/dist/runtime-v2/internalization/rule-context-v2.js +301 -0
  326. package/core/dist/runtime-v2/internalization/rule-context-v2.js.map +1 -0
  327. package/core/dist/runtime-v2/internalization/rule-host-contracts.d.ts +9 -0
  328. package/core/dist/runtime-v2/internalization/rule-host-contracts.d.ts.map +1 -1
  329. package/core/dist/runtime-v2/internalization/v2-adversarial-cases.d.ts +55 -0
  330. package/core/dist/runtime-v2/internalization/v2-adversarial-cases.d.ts.map +1 -0
  331. package/core/dist/runtime-v2/internalization/v2-adversarial-cases.js +131 -0
  332. package/core/dist/runtime-v2/internalization/v2-adversarial-cases.js.map +1 -0
  333. package/core/dist/runtime-v2/pain-signal-observability.d.ts.map +1 -1
  334. package/core/dist/runtime-v2/pain-signal-observability.js +280 -56
  335. package/core/dist/runtime-v2/pain-signal-observability.js.map +1 -1
  336. package/core/dist/runtime-v2/pain-signal-runtime-factory.d.ts +12 -0
  337. package/core/dist/runtime-v2/pain-signal-runtime-factory.d.ts.map +1 -1
  338. package/core/dist/runtime-v2/pain-signal-runtime-factory.js +1 -1
  339. package/core/dist/runtime-v2/pain-signal-runtime-factory.js.map +1 -1
  340. package/core/dist/runtime-v2/pain-to-principle-service.d.ts +6 -0
  341. package/core/dist/runtime-v2/pain-to-principle-service.d.ts.map +1 -1
  342. package/core/dist/runtime-v2/pain-to-principle-service.js +2 -0
  343. package/core/dist/runtime-v2/pain-to-principle-service.js.map +1 -1
  344. package/core/dist/runtime-v2/principle-tree/ledger-codec.js.map +1 -1
  345. package/core/dist/runtime-v2/proven-channel-baseline.js +1 -1
  346. package/core/dist/runtime-v2/proven-channel-baseline.js.map +1 -1
  347. package/core/dist/runtime-v2/risk/__tests__/risk-calculator-policy.test.d.ts +2 -0
  348. package/core/dist/runtime-v2/risk/__tests__/risk-calculator-policy.test.d.ts.map +1 -0
  349. package/core/dist/runtime-v2/risk/__tests__/risk-calculator-policy.test.js +95 -0
  350. package/core/dist/runtime-v2/risk/__tests__/risk-calculator-policy.test.js.map +1 -0
  351. package/core/dist/runtime-v2/risk/index.d.ts +7 -0
  352. package/core/dist/runtime-v2/risk/index.d.ts.map +1 -0
  353. package/core/dist/runtime-v2/risk/index.js +6 -0
  354. package/core/dist/runtime-v2/risk/index.js.map +1 -0
  355. package/core/dist/runtime-v2/risk/risk-calculator-policy.d.ts +18 -0
  356. package/core/dist/runtime-v2/risk/risk-calculator-policy.d.ts.map +1 -0
  357. package/core/dist/runtime-v2/risk/risk-calculator-policy.js +47 -0
  358. package/core/dist/runtime-v2/risk/risk-calculator-policy.js.map +1 -0
  359. package/core/dist/runtime-v2/store/artifact/__tests__/sqlite-pi-artifact-store-fk.test.d.ts +2 -0
  360. package/core/dist/runtime-v2/store/artifact/__tests__/sqlite-pi-artifact-store-fk.test.d.ts.map +1 -0
  361. package/core/dist/runtime-v2/store/artifact/__tests__/sqlite-pi-artifact-store-fk.test.js +55 -0
  362. package/core/dist/runtime-v2/store/artifact/__tests__/sqlite-pi-artifact-store-fk.test.js.map +1 -0
  363. package/core/dist/runtime-v2/store/artifact/sqlite-pi-artifact-store.d.ts.map +1 -1
  364. package/core/dist/runtime-v2/store/artifact/sqlite-pi-artifact-store.js +6 -0
  365. package/core/dist/runtime-v2/store/artifact/sqlite-pi-artifact-store.js.map +1 -1
  366. package/core/dist/runtime-v2/store/intent/__tests__/sqlite-intent-decision-store.test.d.ts +2 -0
  367. package/core/dist/runtime-v2/store/intent/__tests__/sqlite-intent-decision-store.test.d.ts.map +1 -0
  368. package/core/dist/runtime-v2/store/intent/__tests__/sqlite-intent-decision-store.test.js +272 -0
  369. package/core/dist/runtime-v2/store/intent/__tests__/sqlite-intent-decision-store.test.js.map +1 -0
  370. package/core/dist/runtime-v2/store/intent/__tests__/sqlite-intent-doc-version-store.test.d.ts +2 -0
  371. package/core/dist/runtime-v2/store/intent/__tests__/sqlite-intent-doc-version-store.test.d.ts.map +1 -0
  372. package/core/dist/runtime-v2/store/intent/__tests__/sqlite-intent-doc-version-store.test.js +83 -0
  373. package/core/dist/runtime-v2/store/intent/__tests__/sqlite-intent-doc-version-store.test.js.map +1 -0
  374. package/core/dist/runtime-v2/store/intent/index.d.ts +7 -0
  375. package/core/dist/runtime-v2/store/intent/index.d.ts.map +1 -0
  376. package/core/dist/runtime-v2/store/intent/index.js +6 -0
  377. package/core/dist/runtime-v2/store/intent/index.js.map +1 -0
  378. package/core/dist/runtime-v2/store/intent/sqlite-intent-decision-store.d.ts +51 -0
  379. package/core/dist/runtime-v2/store/intent/sqlite-intent-decision-store.d.ts.map +1 -0
  380. package/core/dist/runtime-v2/store/intent/sqlite-intent-decision-store.js +306 -0
  381. package/core/dist/runtime-v2/store/intent/sqlite-intent-decision-store.js.map +1 -0
  382. package/core/dist/runtime-v2/store/intent/sqlite-intent-doc-version-store.d.ts +28 -0
  383. package/core/dist/runtime-v2/store/intent/sqlite-intent-doc-version-store.d.ts.map +1 -0
  384. package/core/dist/runtime-v2/store/intent/sqlite-intent-doc-version-store.js +88 -0
  385. package/core/dist/runtime-v2/store/intent/sqlite-intent-doc-version-store.js.map +1 -0
  386. package/core/dist/runtime-v2/store/sqlite-connection-pragma.test.js +14 -3
  387. package/core/dist/runtime-v2/store/sqlite-connection-pragma.test.js.map +1 -1
  388. package/core/dist/runtime-v2/store/sqlite-connection-schema-version.test.d.ts +2 -0
  389. package/core/dist/runtime-v2/store/sqlite-connection-schema-version.test.d.ts.map +1 -0
  390. package/core/dist/runtime-v2/store/sqlite-connection-schema-version.test.js +72 -0
  391. package/core/dist/runtime-v2/store/sqlite-connection-schema-version.test.js.map +1 -0
  392. package/core/dist/runtime-v2/store/sqlite-connection.d.ts +27 -0
  393. package/core/dist/runtime-v2/store/sqlite-connection.d.ts.map +1 -1
  394. package/core/dist/runtime-v2/store/sqlite-connection.js +138 -12
  395. package/core/dist/runtime-v2/store/sqlite-connection.js.map +1 -1
  396. package/core/dist/runtime-v2/thinking-models/__tests__/thinking-models-policy.test.d.ts +2 -0
  397. package/core/dist/runtime-v2/thinking-models/__tests__/thinking-models-policy.test.d.ts.map +1 -0
  398. package/core/dist/runtime-v2/thinking-models/__tests__/thinking-models-policy.test.js +149 -0
  399. package/core/dist/runtime-v2/thinking-models/__tests__/thinking-models-policy.test.js.map +1 -0
  400. package/core/dist/runtime-v2/thinking-models/index.d.ts +3 -0
  401. package/core/dist/runtime-v2/thinking-models/index.d.ts.map +1 -0
  402. package/core/dist/runtime-v2/thinking-models/index.js +3 -0
  403. package/core/dist/runtime-v2/thinking-models/index.js.map +1 -0
  404. package/core/dist/runtime-v2/thinking-models/thinking-models-policy.d.ts +73 -0
  405. package/core/dist/runtime-v2/thinking-models/thinking-models-policy.d.ts.map +1 -0
  406. package/core/dist/runtime-v2/thinking-models/thinking-models-policy.js +227 -0
  407. package/core/dist/runtime-v2/thinking-models/thinking-models-policy.js.map +1 -0
  408. package/core/dist/runtime-v2/tools/__tests__/artificer-l2-tool-contract.test.js +40 -1
  409. package/core/dist/runtime-v2/tools/__tests__/artificer-l2-tool-contract.test.js.map +1 -1
  410. package/core/dist/runtime-v2/tools/artificer-l2-tool-contract.d.ts.map +1 -1
  411. package/core/dist/runtime-v2/tools/artificer-l2-tool-contract.js +28 -1
  412. package/core/dist/runtime-v2/tools/artificer-l2-tool-contract.js.map +1 -1
  413. package/core/dist/runtime-v2/tools/artificer-output-typebox.d.ts +3 -0
  414. package/core/dist/runtime-v2/tools/artificer-output-typebox.d.ts.map +1 -1
  415. package/core/dist/runtime-v2/tools/artificer-output-typebox.js +3 -0
  416. package/core/dist/runtime-v2/tools/artificer-output-typebox.js.map +1 -1
  417. package/core/dist/runtime-v2/types/event-payload.d.ts +1 -20
  418. package/core/dist/runtime-v2/types/event-payload.d.ts.map +1 -1
  419. package/core/dist/runtime-v2/types/event-payload.js +0 -12
  420. package/core/dist/runtime-v2/types/event-payload.js.map +1 -1
  421. package/core/dist/runtime-v2/types/event-types.d.ts +5 -34
  422. package/core/dist/runtime-v2/types/event-types.d.ts.map +1 -1
  423. package/core/dist/runtime-v2/types/event-types.js +0 -19
  424. package/core/dist/runtime-v2/types/event-types.js.map +1 -1
  425. package/core/dist/runtime-v2/types/evidence-chain-contract.d.ts +63 -0
  426. package/core/dist/runtime-v2/types/evidence-chain-contract.d.ts.map +1 -1
  427. package/core/dist/runtime-v2/types/evidence-chain-contract.js +234 -9
  428. package/core/dist/runtime-v2/types/evidence-chain-contract.js.map +1 -1
  429. package/core/dist/runtime-v2/types/index.d.ts +5 -5
  430. package/core/dist/runtime-v2/types/index.d.ts.map +1 -1
  431. package/core/dist/runtime-v2/types/index.js +5 -3
  432. package/core/dist/runtime-v2/types/index.js.map +1 -1
  433. package/core/dist/runtime-v2/types/ledger-store.d.ts +30 -30
  434. package/core/dist/runtime-v2/types/ledger-store.d.ts.map +1 -1
  435. package/core/dist/runtime-v2/types/ledger-store.js +10 -5
  436. package/core/dist/runtime-v2/types/ledger-store.js.map +1 -1
  437. package/core/dist/workflow-funnel-loader.d.ts +2 -2
  438. package/core/dist/workflow-funnel-loader.d.ts.map +1 -1
  439. package/core/package.json +4 -0
  440. package/dist/installer.d.ts.map +1 -1
  441. package/dist/installer.js +16 -0
  442. package/dist/installer.js.map +1 -1
  443. package/package.json +1 -1
  444. package/pd-cli/dist/commands/__tests__/intent-flag-wiring.test.d.ts +9 -0
  445. package/pd-cli/dist/commands/__tests__/intent-flag-wiring.test.d.ts.map +1 -0
  446. package/pd-cli/dist/commands/__tests__/intent-flag-wiring.test.js +237 -0
  447. package/pd-cli/dist/commands/__tests__/intent-flag-wiring.test.js.map +1 -0
  448. package/pd-cli/dist/commands/intent.d.ts +76 -0
  449. package/pd-cli/dist/commands/intent.d.ts.map +1 -0
  450. package/pd-cli/dist/commands/intent.js +411 -0
  451. package/pd-cli/dist/commands/intent.js.map +1 -0
  452. package/pd-cli/dist/commands/runtime-init.d.ts +43 -0
  453. package/pd-cli/dist/commands/runtime-init.d.ts.map +1 -0
  454. package/pd-cli/dist/commands/runtime-init.js +264 -0
  455. package/pd-cli/dist/commands/runtime-init.js.map +1 -0
  456. package/pd-cli/dist/index.js +25 -0
  457. package/pd-cli/dist/index.js.map +1 -1
  458. package/pd-cli/dist/services/demo-story-a-runner.d.ts.map +1 -1
  459. package/pd-cli/dist/services/demo-story-a-runner.js +6 -0
  460. package/pd-cli/dist/services/demo-story-a-runner.js.map +1 -1
  461. package/pd-cli/package.json +1 -0
  462. package/plugin/dist/commands/pain.js +2 -0
  463. package/plugin/dist/core/behavior-example-pack-assembler.d.ts +43 -0
  464. package/plugin/dist/core/behavior-example-pack-assembler.js +247 -0
  465. package/plugin/dist/core/control-ui-db.d.ts +11 -0
  466. package/plugin/dist/core/control-ui-db.js +40 -16
  467. package/plugin/dist/core/event-log.js +0 -5
  468. package/plugin/dist/core/intent-doc-reader-adapter.d.ts +36 -0
  469. package/plugin/dist/core/intent-doc-reader-adapter.js +76 -0
  470. package/plugin/dist/core/intent-doc-reader.d.ts +89 -0
  471. package/plugin/dist/core/intent-doc-reader.js +210 -0
  472. package/plugin/dist/core/principle-tree-ledger.d.ts +27 -79
  473. package/plugin/dist/core/principle-tree-ledger.js +39 -524
  474. package/plugin/dist/core/reflection/reflection-context.d.ts +2 -2
  475. package/plugin/dist/core/rule-context-assembler.d.ts +45 -0
  476. package/plugin/dist/core/rule-context-assembler.js +148 -0
  477. package/plugin/dist/core/thinking-models.d.ts +12 -57
  478. package/plugin/dist/core/thinking-models.js +18 -224
  479. package/plugin/dist/core/trajectory-types.d.ts +18 -0
  480. package/plugin/dist/core/trajectory.d.ts +50 -2
  481. package/plugin/dist/core/trajectory.js +435 -254
  482. package/plugin/dist/core/workspace-context.d.ts +2 -3
  483. package/plugin/dist/hooks/gate.js +59 -2
  484. package/plugin/dist/hooks/pain.js +5 -0
  485. package/plugin/dist/hooks/prompt-helpers.d.ts +19 -1
  486. package/plugin/dist/hooks/prompt-helpers.js +39 -2
  487. package/plugin/dist/hooks/prompt-types.d.ts +8 -0
  488. package/plugin/dist/hooks/prompt.js +81 -21
  489. package/plugin/dist/index.d.ts +3 -1
  490. package/plugin/dist/index.js +10 -6
  491. package/plugin/dist/service/runtime-summary-service.js +1 -1
  492. package/plugin/dist/service/subagent-workflow/workflow-store.d.ts +14 -0
  493. package/plugin/dist/service/subagent-workflow/workflow-store.js +91 -2
  494. package/plugin/dist/types/event-types.d.ts +1 -1
  495. package/plugin/package.json +6 -3
  496. package/plugin/scripts/acceptance-test.mjs +3 -3
  497. package/plugin/dist/core/evolution-migration.d.ts +0 -5
  498. package/plugin/dist/core/evolution-migration.js +0 -65
  499. package/plugin/dist/core/principle-tree-ledger-adapter.d.ts +0 -32
  500. package/plugin/dist/core/principle-tree-ledger-adapter.js +0 -125
  501. package/plugin/dist/core/risk-calculator.d.ts +0 -22
  502. package/plugin/dist/core/risk-calculator.js +0 -88
  503. package/plugin/dist/core/rule-host-helpers.d.ts +0 -8
  504. package/plugin/dist/core/rule-host-helpers.js +0 -7
  505. package/plugin/dist/core/rule-host-types.d.ts +0 -7
  506. package/plugin/dist/core/rule-host-types.js +0 -7
  507. package/plugin/dist/core/schema/db-types.d.ts +0 -11
  508. package/plugin/dist/core/schema/db-types.js +0 -5
  509. package/plugin/dist/core/schema/index.d.ts +0 -17
  510. package/plugin/dist/core/schema/index.js +0 -15
  511. package/plugin/dist/core/schema/migration-runner.d.ts +0 -53
  512. package/plugin/dist/core/schema/migration-runner.js +0 -170
  513. package/plugin/dist/core/schema/migrations/001-init-trajectory.d.ts +0 -6
  514. package/plugin/dist/core/schema/migrations/001-init-trajectory.js +0 -190
  515. package/plugin/dist/core/schema/migrations/002-init-central.d.ts +0 -5
  516. package/plugin/dist/core/schema/migrations/002-init-central.js +0 -108
  517. package/plugin/dist/core/schema/migrations/003-init-workflow.d.ts +0 -5
  518. package/plugin/dist/core/schema/migrations/003-init-workflow.js +0 -50
  519. package/plugin/dist/core/schema/migrations/004-add-thinking-and-gfi.d.ts +0 -8
  520. package/plugin/dist/core/schema/migrations/004-add-thinking-and-gfi.js +0 -66
  521. package/plugin/dist/core/schema/migrations/index.d.ts +0 -16
  522. package/plugin/dist/core/schema/migrations/index.js +0 -27
  523. package/plugin/dist/core/schema/schema-definitions.d.ts +0 -46
  524. package/plugin/dist/core/schema/schema-definitions.js +0 -599
  525. package/plugin/dist/service/central-database.d.ts +0 -138
  526. package/plugin/dist/service/central-database.js +0 -731
  527. package/plugin/dist/service/central-sync-service.d.ts +0 -8
  528. package/plugin/dist/service/central-sync-service.js +0 -71
  529. package/plugin/scripts/db-migrate.mjs +0 -170
  530. package/plugin/scripts/validate-live-path.ts +0 -462
@@ -78,8 +78,12 @@ export class WorkflowStore {
78
78
  this.db.exec('ALTER TABLE subagent_workflows ADD COLUMN duration_ms INTEGER');
79
79
  console.info(`[PD:WorkflowStore] Schema migration v${fromVersion} → v${toVersion}: added duration_ms column`);
80
80
  }
81
- catch {
82
- void 0;
81
+ catch (err) {
82
+ // rc-9: surface failure reason instead of silent void 0
83
+ const message = err instanceof Error ? err.message : String(err);
84
+ if (!message.includes('duplicate column name')) {
85
+ console.info(`[PD:WorkflowStore] Schema migration v${fromVersion} → v${toVersion} failed: ${message}`);
86
+ }
83
87
  }
84
88
  }
85
89
  }
@@ -207,3 +211,88 @@ export class WorkflowStore {
207
211
  return rows.map(r => r.duration_ms);
208
212
  }
209
213
  }
214
+ /**
215
+ * Initialize subagent_workflows.db schema at the given workspace directory.
216
+ *
217
+ * Opens the DB in write mode, applies the full schema (tables + indexes + migrations),
218
+ * then closes the DB. Used by `pd runtime init` for unified DB initialization.
219
+ *
220
+ * Idempotent: safe to call on an existing DB; all CREATE statements use IF NOT EXISTS.
221
+ *
222
+ * @returns list of created/verified table names and any warnings
223
+ */
224
+ export function initWorkflowSchema(workspaceDir) {
225
+ const resolvedDir = path.resolve(workspaceDir);
226
+ const stateDir = path.join(resolvedDir, '.state');
227
+ const dbPath = path.join(stateDir, 'subagent_workflows.db');
228
+ const warnings = [];
229
+ const tables = ['schema_version', 'subagent_workflows', 'subagent_workflow_events'];
230
+ fs.mkdirSync(stateDir, { recursive: true });
231
+ const db = new Database(dbPath);
232
+ try {
233
+ db.pragma('journal_mode = WAL');
234
+ db.pragma('foreign_keys = ON');
235
+ db.pragma('synchronous = NORMAL');
236
+ db.pragma(`busy_timeout = ${DEFAULT_BUSY_TIMEOUT_MS}`);
237
+ db.exec(`
238
+ CREATE TABLE IF NOT EXISTS schema_version (
239
+ version INTEGER NOT NULL
240
+ );
241
+ CREATE TABLE IF NOT EXISTS subagent_workflows (
242
+ workflow_id TEXT PRIMARY KEY,
243
+ workflow_type TEXT NOT NULL,
244
+ transport TEXT NOT NULL,
245
+ parent_session_id TEXT NOT NULL,
246
+ child_session_key TEXT NOT NULL,
247
+ run_id TEXT,
248
+ state TEXT NOT NULL DEFAULT 'pending',
249
+ cleanup_state TEXT NOT NULL DEFAULT 'none',
250
+ created_at INTEGER NOT NULL,
251
+ updated_at INTEGER NOT NULL,
252
+ last_observed_at INTEGER,
253
+ duration_ms INTEGER,
254
+ metadata_json TEXT NOT NULL DEFAULT '{}'
255
+ );
256
+ CREATE TABLE IF NOT EXISTS subagent_workflow_events (
257
+ workflow_id TEXT NOT NULL,
258
+ event_type TEXT NOT NULL,
259
+ from_state TEXT,
260
+ to_state TEXT NOT NULL,
261
+ reason TEXT NOT NULL,
262
+ payload_json TEXT NOT NULL DEFAULT '{}',
263
+ created_at INTEGER NOT NULL,
264
+ FOREIGN KEY (workflow_id) REFERENCES subagent_workflows(workflow_id) ON DELETE CASCADE
265
+ );
266
+ CREATE INDEX IF NOT EXISTS idx_workflows_parent_session ON subagent_workflows(parent_session_id);
267
+ CREATE INDEX IF NOT EXISTS idx_workflows_child_session ON subagent_workflows(child_session_key);
268
+ CREATE INDEX IF NOT EXISTS idx_workflows_state ON subagent_workflows(state);
269
+ CREATE INDEX IF NOT EXISTS idx_workflows_type ON subagent_workflows(workflow_type);
270
+ CREATE INDEX IF NOT EXISTS idx_events_workflow ON subagent_workflow_events(workflow_id);
271
+ `);
272
+ // Run migrations to bring schema up to SCHEMA_VERSION
273
+ const row = db.prepare('SELECT version FROM schema_version LIMIT 1').get();
274
+ const currentVersion = row?.version ?? 0;
275
+ if (currentVersion === 0) {
276
+ db.prepare('INSERT INTO schema_version (version) VALUES (?)').run(SCHEMA_VERSION);
277
+ }
278
+ else if (currentVersion < SCHEMA_VERSION) {
279
+ // Inline migration logic (mirrors WorkflowStore.runMigrations)
280
+ if (currentVersion < 2 && SCHEMA_VERSION >= 2) {
281
+ try {
282
+ db.exec('ALTER TABLE subagent_workflows ADD COLUMN duration_ms INTEGER');
283
+ }
284
+ catch (err) {
285
+ const message = err instanceof Error ? err.message : String(err);
286
+ if (!message.includes('duplicate column name')) {
287
+ warnings.push(`migration v${currentVersion}→v${SCHEMA_VERSION} duration_ms failed: ${message}`);
288
+ }
289
+ }
290
+ }
291
+ db.prepare('UPDATE schema_version SET version = ?').run(SCHEMA_VERSION);
292
+ }
293
+ return { tables, warnings };
294
+ }
295
+ finally {
296
+ db.close();
297
+ }
298
+ }
@@ -1,2 +1,2 @@
1
- export type { EventType, EventCategory, EventLogEntry, ToolCallEventData, PainSignalEventData, RuleMatchEventData, RulePromotionEventData, HookExecutionEventData, GateBlockEventData, GateBypassEventData, PlanApprovalEventData, EvolutionTaskEventData, EmpathyRollbackEventData, HeartbeatDiagnosisEventData, DiagnosisTaskEventData, DiagnosticianReportEventData, PrincipleCandidateEventData, RuleEnforcedEventData, RuleHostEvaluatedEventData, RuleHostBlockedEventData, RuleHostRequireApprovalEventData, RuleHostAutoCorrectProposedEventData, RuleHostAutoCorrectAppliedEventData, RuntimeV2PromptActivationsInjectedEventData, RuleHostUnhealthyEventData, ToolCallStats, ErrorStats, EmpathyEventStats, GfiStats, EvolutionStats as EventEvolutionStats, HookStats, DailyStats, } from '@principles/core/runtime-v2';
1
+ export type { EventType, EventCategory, EventLogEntry, ToolCallEventData, PainSignalEventData, RulePromotionEventData, HookExecutionEventData, GateBlockEventData, GateBypassEventData, PlanApprovalEventData, EvolutionTaskEventData, EmpathyRollbackEventData, HeartbeatDiagnosisEventData, DiagnosisTaskEventData, DiagnosticianReportEventData, PrincipleCandidateEventData, RuleEnforcedEventData, RuleHostEvaluatedEventData, RuleHostBlockedEventData, RuleHostRequireApprovalEventData, RuleHostAutoCorrectProposedEventData, RuleHostAutoCorrectAppliedEventData, RuntimeV2PromptActivationsInjectedEventData, RuleHostUnhealthyEventData, ToolCallStats, ErrorStats, EmpathyEventStats, GfiStats, EvolutionStats as EventEvolutionStats, HookStats, DailyStats, } from '@principles/core/runtime-v2';
2
2
  export { createEmptyDailyStats, } from '@principles/core/runtime-v2';
@@ -3,9 +3,13 @@
3
3
  "version": "1.74.1",
4
4
  "description": "Native OpenClaw plugin for Principles Disciple",
5
5
  "type": "module",
6
- "main": "./dist/bundle.js",
6
+ "main": "./dist/index.js",
7
+ "types": "./dist/index.d.ts",
7
8
  "exports": {
8
- ".": "./dist/bundle.js"
9
+ ".": {
10
+ "types": "./dist/index.d.ts",
11
+ "default": "./dist/index.js"
12
+ }
9
13
  },
10
14
  "repository": {
11
15
  "type": "git",
@@ -47,7 +51,6 @@
47
51
  "lint": "eslint \"src/**/*.ts\"",
48
52
  "bootstrap-rules": "node scripts/bootstrap-rules.mjs",
49
53
  "compile-principles": "node scripts/compile-principles.mjs",
50
- "validate-live-path": "tsx scripts/validate-live-path.ts",
51
54
  "sync-plugin": "node scripts/sync-plugin.mjs"
52
55
  },
53
56
  "devDependencies": {
@@ -1,9 +1,9 @@
1
1
  #!/usr/bin/env node
2
2
 
3
3
  /**
4
- * Nocturnal Pipeline — End-to-End Acceptance Test
4
+ * PD Pipeline — End-to-End Acceptance Test
5
5
  *
6
- * Verifies that all components of the Nocturnal reflection pipeline
6
+ * Verifies that all components of the PD reflection pipeline
7
7
  * work correctly in a real environment (not unit tests).
8
8
  *
9
9
  * Usage:
@@ -71,7 +71,7 @@ function main() {
71
71
  process.exit(1);
72
72
  }
73
73
 
74
- console.log('\n🧪 Nocturnal Pipeline Acceptance Test');
74
+ console.log('\n🧪 PD Pipeline Acceptance Test');
75
75
  console.log('═'.repeat(55));
76
76
  console.log(`Workspace: ${workspaceDir}`);
77
77
  console.log(`Database: ${dbPath}\n`);
@@ -1,5 +0,0 @@
1
- export interface MigrationResult {
2
- importedEvents: number;
3
- streamPath: string;
4
- }
5
- export declare function migrateLegacyEvolutionData(workspaceDir: string): MigrationResult;
@@ -1,65 +0,0 @@
1
- import * as fs from 'fs';
2
- import * as path from 'path';
3
- import { stableContentHash } from './evolution-reducer.js';
4
- import { SystemLogger } from './system-logger.js';
5
- function appendEvent(streamPath, event) {
6
- fs.appendFileSync(streamPath, `${JSON.stringify(event)}\n`, 'utf8');
7
- }
8
- function loadImportedHashes(streamPath, workspaceDir) {
9
- if (!fs.existsSync(streamPath))
10
- return new Set();
11
- const raw = fs.readFileSync(streamPath, 'utf8').trim();
12
- if (!raw)
13
- return new Set();
14
- const hashes = new Set();
15
- for (const line of raw.split('\n')) {
16
- try {
17
- const event = JSON.parse(line);
18
- if (event.type !== 'legacy_import')
19
- continue;
20
- const hash = event.data.contentHash;
21
- if (typeof hash === 'string')
22
- hashes.add(hash);
23
- }
24
- catch (e) {
25
- SystemLogger.log(workspaceDir, 'MIGRATION_WARN', `skip malformed line: ${String(e)}`);
26
- }
27
- }
28
- return hashes;
29
- }
30
- export function migrateLegacyEvolutionData(workspaceDir) {
31
- const streamPath = path.join(workspaceDir, 'memory', 'evolution.jsonl');
32
- fs.mkdirSync(path.dirname(streamPath), { recursive: true });
33
- const candidates = [
34
- path.join(workspaceDir, 'memory', 'ISSUE_LOG.md'),
35
- path.join(workspaceDir, 'memory', 'DECISIONS.md'),
36
- path.join(workspaceDir, '.principles', 'PRINCIPLES.md'),
37
- ];
38
- const existingHashes = loadImportedHashes(streamPath, workspaceDir);
39
- let importedEvents = 0;
40
- for (const sourceFile of candidates) {
41
- if (!fs.existsSync(sourceFile)) {
42
- continue;
43
- }
44
- const content = fs.readFileSync(sourceFile, 'utf8').trim();
45
- if (!content) {
46
- continue;
47
- }
48
- const contentHash = stableContentHash(`${sourceFile}:${content}`);
49
- if (existingHashes.has(contentHash)) {
50
- continue;
51
- }
52
- appendEvent(streamPath, {
53
- ts: new Date().toISOString(),
54
- type: 'legacy_import',
55
- data: {
56
- sourceFile: path.relative(workspaceDir, sourceFile),
57
- content,
58
- contentHash,
59
- },
60
- });
61
- importedEvents += 1;
62
- existingHashes.add(contentHash);
63
- }
64
- return { importedEvents, streamPath };
65
- }
@@ -1,32 +0,0 @@
1
- import type { LedgerAdapter, LedgerPrincipleEntry } from '@principles/core/runtime-v2';
2
- /**
3
- * PrincipleTreeLedgerAdapter — bridges 11-field LedgerPrincipleEntry to 18+ field LedgerPrinciple.
4
- *
5
- * This adapter maintains an in-memory idempotency map. Create once and reuse
6
- * across calls within the same process lifetime. Do not create a new instance
7
- * per intake call.
8
- */
9
- export declare class PrincipleTreeLedgerAdapter implements LedgerAdapter {
10
- #private;
11
- constructor(opts: {
12
- stateDir: string;
13
- });
14
- /**
15
- * Write a probation entry to the ledger.
16
- *
17
- * Idempotency: if the same candidateId was already written, returns the
18
- * existing entry without writing again.
19
- *
20
- * @throws CandidateIntakeError with code LEDGER_WRITE_FAILED on write failure.
21
- */
22
- writeProbationEntry(entry: LedgerPrincipleEntry): LedgerPrincipleEntry;
23
- /**
24
- * Check if a ledger entry already exists for a given candidate.
25
- *
26
- * Queries both the in-memory Map (fast path for same-process repeat calls)
27
- * and the ledger file (for cross-process idempotency across CLI invocations).
28
- *
29
- * @returns The existing LedgerPrincipleEntry if found, null otherwise.
30
- */
31
- existsForCandidate(candidateId: string): LedgerPrincipleEntry | null;
32
- }
@@ -1,125 +0,0 @@
1
- import { CandidateIntakeError, INTAKE_ERROR_CODES } from '@principles/core/runtime-v2';
2
- import { addPrincipleToLedger, loadLedger } from './principle-tree-ledger.js';
3
- const VALID_EVALUABILITIES = ['deterministic', 'weak_heuristic', 'manual_only'];
4
- /**
5
- * PrincipleTreeLedgerAdapter — bridges 11-field LedgerPrincipleEntry to 18+ field LedgerPrinciple.
6
- *
7
- * This adapter maintains an in-memory idempotency map. Create once and reuse
8
- * across calls within the same process lifetime. Do not create a new instance
9
- * per intake call.
10
- */
11
- export class PrincipleTreeLedgerAdapter {
12
- #stateDir;
13
- #entryMap = new Map();
14
- constructor(opts) {
15
- this.#stateDir = opts.stateDir;
16
- }
17
- /**
18
- * Write a probation entry to the ledger.
19
- *
20
- * Idempotency: if the same candidateId was already written, returns the
21
- * existing entry without writing again.
22
- *
23
- * @throws CandidateIntakeError with code LEDGER_WRITE_FAILED on write failure.
24
- */
25
- writeProbationEntry(entry) {
26
- const candidateId = this.#extractCandidateId(entry.sourceRef);
27
- const existing = this.#entryMap.get(candidateId);
28
- if (existing)
29
- return existing;
30
- const ledgerPrinciple = this.#expandToLedgerPrinciple(entry, candidateId);
31
- try {
32
- addPrincipleToLedger(this.#stateDir, ledgerPrinciple);
33
- }
34
- catch (err) {
35
- throw new CandidateIntakeError(INTAKE_ERROR_CODES.LEDGER_WRITE_FAILED, `Failed to write principle ${entry.id} to ledger: ${String(err)}`, { cause: err });
36
- }
37
- this.#entryMap.set(candidateId, entry);
38
- return entry;
39
- }
40
- /**
41
- * Check if a ledger entry already exists for a given candidate.
42
- *
43
- * Queries both the in-memory Map (fast path for same-process repeat calls)
44
- * and the ledger file (for cross-process idempotency across CLI invocations).
45
- *
46
- * @returns The existing LedgerPrincipleEntry if found, null otherwise.
47
- */
48
- existsForCandidate(candidateId) {
49
- // Fast path: check in-memory Map (covers same-process repeat calls)
50
- const cached = this.#entryMap.get(candidateId);
51
- if (cached)
52
- return cached;
53
- // Cross-process path: check ledger file by derivedFromPainIds
54
- const ledger = loadLedger(this.#stateDir);
55
- const found = Object.values(ledger.tree.principles).find((p) => p.derivedFromPainIds.includes(candidateId));
56
- if (!found)
57
- return null;
58
- // Reconstruct LedgerPrincipleEntry from LedgerPrinciple fields
59
- // Note: sourceRef, artifactRef, taskRef are not stored in LedgerPrinciple,
60
- // so we cannot fully reconstruct the original LedgerPrincipleEntry.
61
- // Return minimal entry sufficient for idempotency signaling.
62
- return {
63
- id: found.id,
64
- title: '',
65
- status: 'probation',
66
- sourceRef: `candidate://${candidateId}`,
67
- artifactRef: '',
68
- taskRef: '',
69
- text: found.text,
70
- triggerPattern: found.triggerPattern,
71
- action: found.action,
72
- evaluability: 'weak_heuristic',
73
- createdAt: found.createdAt,
74
- };
75
- }
76
- /**
77
- * Extract candidateId from sourceRef by stripping the 'candidate://' prefix.
78
- *
79
- * @internal
80
- */
81
- #extractCandidateId(sourceRef) {
82
- if (sourceRef.startsWith('candidate://')) {
83
- return sourceRef.slice('candidate://'.length);
84
- }
85
- return sourceRef;
86
- }
87
- /**
88
- * Expand an 11-field LedgerPrincipleEntry to an 18+ field LedgerPrinciple.
89
- *
90
- * Applies the field expansion table from CONTEXT.md:
91
- * - status: 'probation' → 'candidate'
92
- * - triggerPattern/action: pass through (empty string if absent)
93
- * - All defaults applied per CONTEXT.md expansion table
94
- * - sourceRef/artifactRef/taskRef are NOT written to LedgerPrinciple (not stored)
95
- * - title is NOT written to LedgerPrinciple — intentionally excluded; title
96
- * is available in LedgerPrincipleEntry but LedgerPrinciple has no title field
97
- *
98
- * @internal
99
- */
100
- #expandToLedgerPrinciple(entry, candidateId) {
101
- if (!VALID_EVALUABILITIES.includes(entry.evaluability)) {
102
- throw new CandidateIntakeError(INTAKE_ERROR_CODES.INPUT_INVALID, `Invalid evaluability value: ${entry.evaluability}. Must be one of: ${VALID_EVALUABILITIES.join(', ')}`);
103
- }
104
- const result = {
105
- id: entry.id,
106
- version: 1,
107
- text: entry.text,
108
- triggerPattern: entry.triggerPattern ?? '',
109
- action: entry.action ?? '',
110
- status: 'candidate',
111
- evaluability: entry.evaluability,
112
- priority: 'P1',
113
- scope: 'general',
114
- valueScore: 0,
115
- adherenceRate: 0,
116
- painPreventedCount: 0,
117
- derivedFromPainIds: [candidateId],
118
- ruleIds: [],
119
- conflictsWithPrincipleIds: [],
120
- createdAt: entry.createdAt,
121
- updatedAt: entry.createdAt,
122
- };
123
- return result;
124
- }
125
- }
@@ -1,22 +0,0 @@
1
- export type RiskLevel = 'LOW' | 'MEDIUM' | 'HIGH' | 'CRITICAL';
2
- export interface FileModification {
3
- toolName: string;
4
- params: Record<string, unknown>;
5
- }
6
- export declare function estimateLineChanges(modification: FileModification): number;
7
- export declare function assessRiskLevel(filePath: string, modification: FileModification, riskPaths: string[]): RiskLevel;
8
- /**
9
- * Get the total line count of a target file.
10
- * @param absoluteFilePath - Absolute path to the file
11
- * @returns File line count, or null if file doesn't exist or can't be read
12
- */
13
- export declare function getTargetFileLineCount(absoluteFilePath: string): number | null;
14
- /**
15
- * Calculate the effective line limit based on percentage of target file.
16
- * @param targetLineCount - Total lines in target file
17
- * @param percentage - Allowed percentage (0-100)
18
- * @param minLines - Absolute minimum threshold
19
- * @param maxLines - Optional upper bound to prevent misconfiguration
20
- * @returns Maximum allowed lines (at least minLines, at most maxLines if provided)
21
- */
22
- export declare function calculatePercentageThreshold(targetLineCount: number, percentage: number, minLines: number, maxLines?: number): number;
@@ -1,88 +0,0 @@
1
- /* global NodeJS */
2
- import * as fs from 'fs';
3
- import { isRisky } from '../utils/io.js';
4
- export function estimateLineChanges(modification) {
5
- const { toolName, params } = modification;
6
- if (toolName === 'write_file' || toolName === 'write') {
7
- const content = params.content || '';
8
- return content.split('\n').length;
9
- }
10
- if (toolName === 'replace' || toolName === 'edit') {
11
- const newContent = params.new_string || params.newText || '';
12
- return newContent.split('\n').length;
13
- }
14
- if (toolName === 'apply_patch' || toolName === 'patch') {
15
- const patch = params.patch || '';
16
- // Rough estimate for patch files
17
- return patch.split('\n').filter((l) => l.startsWith('+') || l.startsWith('-')).length;
18
- }
19
- if (toolName === 'delete_file') {
20
- // Deleting a file is considered a significant change, but we don't know the size.
21
- // We'll treat it as a medium-to-large size change.
22
- return 50;
23
- }
24
- return 0;
25
- }
26
- export function assessRiskLevel(filePath, modification, riskPaths) {
27
- const isRiskPath = isRisky(filePath, riskPaths);
28
- const estimatedLines = estimateLineChanges(modification);
29
- if (isRiskPath) {
30
- if (estimatedLines > 100)
31
- return 'CRITICAL';
32
- return 'HIGH';
33
- }
34
- else {
35
- if (estimatedLines > 100)
36
- return 'HIGH';
37
- if (estimatedLines > 10)
38
- return 'MEDIUM';
39
- return 'LOW';
40
- }
41
- }
42
- /**
43
- * Get the total line count of a target file.
44
- * @param absoluteFilePath - Absolute path to the file
45
- * @returns File line count, or null if file doesn't exist or can't be read
46
- */
47
- export function getTargetFileLineCount(absoluteFilePath) {
48
- try {
49
- if (!fs.existsSync(absoluteFilePath)) {
50
- return null; // File genuinely doesn't exist
51
- }
52
- const stats = fs.statSync(absoluteFilePath);
53
- if (!stats.isFile()) {
54
- return null; // Not a regular file (directory, device, etc.)
55
- }
56
- const content = fs.readFileSync(absoluteFilePath, 'utf-8');
57
- return content.split('\n').length;
58
- }
59
- catch (e) {
60
- // Log error before falling back to null - this is intentional for security gates
61
- const error = e instanceof Error ? e : new Error(String(e));
62
- const errorCode = e.code;
63
- console.error(`[PD:RISK_CALC] Failed to read file for line count: ${absoluteFilePath}`, {
64
- code: errorCode,
65
- message: error.message,
66
- });
67
- return null;
68
- }
69
- }
70
- /**
71
- * Calculate the effective line limit based on percentage of target file.
72
- * @param targetLineCount - Total lines in target file
73
- * @param percentage - Allowed percentage (0-100)
74
- * @param minLines - Absolute minimum threshold
75
- * @param maxLines - Optional upper bound to prevent misconfiguration
76
- * @returns Maximum allowed lines (at least minLines, at most maxLines if provided)
77
- */
78
- export function calculatePercentageThreshold(targetLineCount, percentage, minLines, maxLines) {
79
- // Clamp percentage to valid range [0, 100]
80
- const clampedPercentage = Math.max(0, Math.min(100, percentage));
81
- const calculated = Math.round(targetLineCount * (clampedPercentage / 100));
82
- let effectiveLimit = Math.max(calculated, minLines);
83
- // Apply optional upper bound
84
- if (maxLines !== undefined && maxLines > 0) {
85
- effectiveLimit = Math.min(effectiveLimit, maxLines);
86
- }
87
- return effectiveLimit;
88
- }
@@ -1,8 +0,0 @@
1
- /**
2
- * Rule Host Helpers — Re-exported from @principles/core (PRI-42)
3
- *
4
- * Canonical definitions moved to:
5
- * packages/principles-core/src/runtime-v2/internalization/rule-host-helpers.ts
6
- */
7
- export type { RuleHostHelpers } from '@principles/core/runtime-v2';
8
- export { createRuleHostHelpers } from '@principles/core/runtime-v2';
@@ -1,7 +0,0 @@
1
- /**
2
- * Rule Host Helpers — Re-exported from @principles/core (PRI-42)
3
- *
4
- * Canonical definitions moved to:
5
- * packages/principles-core/src/runtime-v2/internalization/rule-host-helpers.ts
6
- */
7
- export { createRuleHostHelpers } from '@principles/core/runtime-v2';
@@ -1,7 +0,0 @@
1
- /**
2
- * Rule Host Types — Re-exported from @principles/core (PRI-42)
3
- *
4
- * Canonical definitions moved to:
5
- * packages/principles-core/src/runtime-v2/internalization/rule-host-contracts.ts
6
- */
7
- export type { RuleHostInput, RuleHostDecision, RuleHostMeta, RuleHostResult, LoadedImplementation, } from '@principles/core/runtime-v2';
@@ -1,7 +0,0 @@
1
- /**
2
- * Rule Host Types — Re-exported from @principles/core (PRI-42)
3
- *
4
- * Canonical definitions moved to:
5
- * packages/principles-core/src/runtime-v2/internalization/rule-host-contracts.ts
6
- */
7
- export {};
@@ -1,11 +0,0 @@
1
- /**
2
- * Shared type definitions for database operations.
3
- * Kept separate to avoid circular dependencies between schema-definitions and migration-runner.
4
- */
5
- /** Minimal interface for better-sqlite3 Database instances. */
6
- export interface Db {
7
- exec(_sql: string): unknown;
8
- get<T = unknown>(_sql: string, ..._params: unknown[]): T | undefined;
9
- run(_sql: string, ..._params: unknown[]): unknown;
10
- close(): void;
11
- }
@@ -1,5 +0,0 @@
1
- /**
2
- * Shared type definitions for database operations.
3
- * Kept separate to avoid circular dependencies between schema-definitions and migration-runner.
4
- */
5
- export {};
@@ -1,17 +0,0 @@
1
- /**
2
- * Schema Management — Unified database schema definitions and migrations.
3
- *
4
- * Usage:
5
- * // In a database class constructor:
6
- * import { ensureDatabaseSchema } from './schema';
7
- * ensureDatabaseSchema(db, 'trajectory.db');
8
- *
9
- * CLI:
10
- * node scripts/db-migrate.mjs status
11
- * node scripts/db-migrate.mjs run
12
- */
13
- export { MigrationRunner, ensureDatabaseSchema } from './migration-runner.js';
14
- export { SCHEMAS, getCatalog, DB_TYPES } from './schema-definitions.js';
15
- export { ALL_MIGRATIONS } from './migrations/index.js';
16
- export type { Db } from './db-types.js';
17
- export type { Migration, DbType, TableDefinition, ViewDefinition, FtsDefinition, SchemaCatalog, } from './migration-runner.js';
@@ -1,15 +0,0 @@
1
- /**
2
- * Schema Management — Unified database schema definitions and migrations.
3
- *
4
- * Usage:
5
- * // In a database class constructor:
6
- * import { ensureDatabaseSchema } from './schema';
7
- * ensureDatabaseSchema(db, 'trajectory.db');
8
- *
9
- * CLI:
10
- * node scripts/db-migrate.mjs status
11
- * node scripts/db-migrate.mjs run
12
- */
13
- export { MigrationRunner, ensureDatabaseSchema } from './migration-runner.js';
14
- export { SCHEMAS, getCatalog, DB_TYPES } from './schema-definitions.js';
15
- export { ALL_MIGRATIONS } from './migrations/index.js';
@@ -1,53 +0,0 @@
1
- /**
2
- * Migration Runner — Executes and tracks schema migrations.
3
- *
4
- * Each migration is versioned. The runner reads the current version from
5
- * the `schema_version` table and only executes migrations with higher IDs.
6
- *
7
- * Usage:
8
- * const runner = new MigrationRunner(db);
9
- * runner.run(allMigrations.filter(m => m.db === 'trajectory.db'));
10
- */
11
- import type { Migration } from './schema-definitions.js';
12
- import { type DbType } from './schema-definitions.js';
13
- import type { Db } from './db-types.js';
14
- export declare class MigrationRunner {
15
- private readonly db;
16
- constructor(db: Db);
17
- /**
18
- * Run all pending migrations for a given database type.
19
- * @returns Array of migration names that were applied
20
- */
21
- runMigrations(migrations: Migration[], _dbType: DbType): string[];
22
- /**
23
- * Apply all schema definitions (tables, indexes, views, FTS) for a database.
24
- * This is a convenience method that creates everything from the schema catalog.
25
- * Used for initial setup when no migrations exist yet.
26
- */
27
- applySchemaCatalog(dbType: DbType): void;
28
- /**
29
- * Get the current migration version.
30
- * Returns '000' if no version is set (fresh database).
31
- */
32
- getCurrentVersion(): string;
33
- /**
34
- * Get all available migration info for a database type.
35
- */
36
- getMigrationInfo(migrations: Migration[], dbType: DbType): {
37
- id: string;
38
- name: string;
39
- applied: boolean;
40
- }[];
41
- /**
42
- * Rollback the latest migration (if down migration is defined).
43
- */
44
- rollback(migrations: Migration[], dbType: DbType): string | null;
45
- private ensureVersionTable;
46
- private setVersion;
47
- }
48
- /**
49
- * Factory: create a MigrationRunner and apply schema catalog for a given database.
50
- * This is the main entry point for database classes.
51
- */
52
- export declare function ensureDatabaseSchema(db: Db, dbType: DbType): void;
53
- export type { Migration, DbType, TableDefinition, ViewDefinition, FtsDefinition, SchemaCatalog } from './schema-definitions.js';