@actrun_ai/tastekit-core 0.1.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 (389) hide show
  1. package/dist/compiler/compiler.d.ts +24 -0
  2. package/dist/compiler/compiler.d.ts.map +1 -0
  3. package/dist/compiler/compiler.js +153 -0
  4. package/dist/compiler/compiler.js.map +1 -0
  5. package/dist/compiler/constitution-compiler.d.ts +11 -0
  6. package/dist/compiler/constitution-compiler.d.ts.map +1 -0
  7. package/dist/compiler/constitution-compiler.js +154 -0
  8. package/dist/compiler/constitution-compiler.js.map +1 -0
  9. package/dist/compiler/derivation.d.ts +125 -0
  10. package/dist/compiler/derivation.d.ts.map +1 -0
  11. package/dist/compiler/derivation.js +109 -0
  12. package/dist/compiler/derivation.js.map +1 -0
  13. package/dist/compiler/guardrails-compiler.d.ts +11 -0
  14. package/dist/compiler/guardrails-compiler.d.ts.map +1 -0
  15. package/dist/compiler/guardrails-compiler.js +362 -0
  16. package/dist/compiler/guardrails-compiler.js.map +1 -0
  17. package/dist/compiler/index.d.ts +13 -0
  18. package/dist/compiler/index.d.ts.map +1 -0
  19. package/dist/compiler/index.js +13 -0
  20. package/dist/compiler/index.js.map +1 -0
  21. package/dist/compiler/memory-compiler.d.ts +12 -0
  22. package/dist/compiler/memory-compiler.d.ts.map +1 -0
  23. package/dist/compiler/memory-compiler.js +293 -0
  24. package/dist/compiler/memory-compiler.js.map +1 -0
  25. package/dist/compiler/playbook-compiler.d.ts +15 -0
  26. package/dist/compiler/playbook-compiler.d.ts.map +1 -0
  27. package/dist/compiler/playbook-compiler.js +1143 -0
  28. package/dist/compiler/playbook-compiler.js.map +1 -0
  29. package/dist/compiler/skills-compiler.d.ts +15 -0
  30. package/dist/compiler/skills-compiler.d.ts.map +1 -0
  31. package/dist/compiler/skills-compiler.js +203 -0
  32. package/dist/compiler/skills-compiler.js.map +1 -0
  33. package/dist/domains/development-agent/domain.d.ts +8 -0
  34. package/dist/domains/development-agent/domain.d.ts.map +1 -0
  35. package/dist/domains/development-agent/domain.js +35 -0
  36. package/dist/domains/development-agent/domain.js.map +1 -0
  37. package/dist/domains/development-agent/index.d.ts +3 -0
  38. package/dist/domains/development-agent/index.d.ts.map +1 -0
  39. package/dist/domains/development-agent/index.js +3 -0
  40. package/dist/domains/development-agent/index.js.map +1 -0
  41. package/dist/domains/development-agent/rubric.d.ts +13 -0
  42. package/dist/domains/development-agent/rubric.d.ts.map +1 -0
  43. package/dist/domains/development-agent/rubric.js +451 -0
  44. package/dist/domains/development-agent/rubric.js.map +1 -0
  45. package/dist/domains/development-agent/skills/code-review.d.ts +25 -0
  46. package/dist/domains/development-agent/skills/code-review.d.ts.map +1 -0
  47. package/dist/domains/development-agent/skills/code-review.js +146 -0
  48. package/dist/domains/development-agent/skills/code-review.js.map +1 -0
  49. package/dist/domains/development-agent/skills/debugging-issues.d.ts +25 -0
  50. package/dist/domains/development-agent/skills/debugging-issues.d.ts.map +1 -0
  51. package/dist/domains/development-agent/skills/debugging-issues.js +155 -0
  52. package/dist/domains/development-agent/skills/debugging-issues.js.map +1 -0
  53. package/dist/domains/development-agent/skills/documenting-code.d.ts +19 -0
  54. package/dist/domains/development-agent/skills/documenting-code.d.ts.map +1 -0
  55. package/dist/domains/development-agent/skills/documenting-code.js +92 -0
  56. package/dist/domains/development-agent/skills/documenting-code.js.map +1 -0
  57. package/dist/domains/development-agent/skills/index.d.ts +55 -0
  58. package/dist/domains/development-agent/skills/index.d.ts.map +1 -0
  59. package/dist/domains/development-agent/skills/index.js +19 -0
  60. package/dist/domains/development-agent/skills/index.js.map +1 -0
  61. package/dist/domains/development-agent/skills/refactor-plan.d.ts +19 -0
  62. package/dist/domains/development-agent/skills/refactor-plan.d.ts.map +1 -0
  63. package/dist/domains/development-agent/skills/refactor-plan.js +117 -0
  64. package/dist/domains/development-agent/skills/refactor-plan.js.map +1 -0
  65. package/dist/domains/development-agent/skills/writing-tests.d.ts +20 -0
  66. package/dist/domains/development-agent/skills/writing-tests.d.ts.map +1 -0
  67. package/dist/domains/development-agent/skills/writing-tests.js +93 -0
  68. package/dist/domains/development-agent/skills/writing-tests.js.map +1 -0
  69. package/dist/domains/general-agent/domain.d.ts +9 -0
  70. package/dist/domains/general-agent/domain.d.ts.map +1 -0
  71. package/dist/domains/general-agent/domain.js +36 -0
  72. package/dist/domains/general-agent/domain.js.map +1 -0
  73. package/dist/domains/general-agent/index.d.ts +4 -0
  74. package/dist/domains/general-agent/index.d.ts.map +1 -0
  75. package/dist/domains/general-agent/index.js +4 -0
  76. package/dist/domains/general-agent/index.js.map +1 -0
  77. package/dist/domains/general-agent/rubric.d.ts +8 -0
  78. package/dist/domains/general-agent/rubric.d.ts.map +1 -0
  79. package/dist/domains/general-agent/rubric.js +332 -0
  80. package/dist/domains/general-agent/rubric.js.map +1 -0
  81. package/dist/domains/general-agent/skills/context-synthesis.d.ts +19 -0
  82. package/dist/domains/general-agent/skills/context-synthesis.d.ts.map +1 -0
  83. package/dist/domains/general-agent/skills/context-synthesis.js +94 -0
  84. package/dist/domains/general-agent/skills/context-synthesis.js.map +1 -0
  85. package/dist/domains/general-agent/skills/index.d.ts +32 -0
  86. package/dist/domains/general-agent/skills/index.d.ts.map +1 -0
  87. package/dist/domains/general-agent/skills/index.js +11 -0
  88. package/dist/domains/general-agent/skills/index.js.map +1 -0
  89. package/dist/domains/general-agent/skills/task-orchestration.d.ts +19 -0
  90. package/dist/domains/general-agent/skills/task-orchestration.d.ts.map +1 -0
  91. package/dist/domains/general-agent/skills/task-orchestration.js +101 -0
  92. package/dist/domains/general-agent/skills/task-orchestration.js.map +1 -0
  93. package/dist/domains/index.d.ts +21 -0
  94. package/dist/domains/index.d.ts.map +1 -0
  95. package/dist/domains/index.js +37 -0
  96. package/dist/domains/index.js.map +1 -0
  97. package/dist/domains/types.d.ts +22 -0
  98. package/dist/domains/types.d.ts.map +1 -0
  99. package/dist/domains/types.js +2 -0
  100. package/dist/domains/types.js.map +1 -0
  101. package/dist/drift/consolidator.d.ts +47 -0
  102. package/dist/drift/consolidator.d.ts.map +1 -0
  103. package/dist/drift/consolidator.js +116 -0
  104. package/dist/drift/consolidator.js.map +1 -0
  105. package/dist/drift/detector.d.ts +79 -0
  106. package/dist/drift/detector.d.ts.map +1 -0
  107. package/dist/drift/detector.js +424 -0
  108. package/dist/drift/detector.js.map +1 -0
  109. package/dist/drift/index.d.ts +9 -0
  110. package/dist/drift/index.d.ts.map +1 -0
  111. package/dist/drift/index.js +9 -0
  112. package/dist/drift/index.js.map +1 -0
  113. package/dist/drift/proposal.d.ts +108 -0
  114. package/dist/drift/proposal.d.ts.map +1 -0
  115. package/dist/drift/proposal.js +2 -0
  116. package/dist/drift/proposal.js.map +1 -0
  117. package/dist/eval/index.d.ts +9 -0
  118. package/dist/eval/index.d.ts.map +1 -0
  119. package/dist/eval/index.js +9 -0
  120. package/dist/eval/index.js.map +1 -0
  121. package/dist/eval/judge.d.ts +33 -0
  122. package/dist/eval/judge.d.ts.map +1 -0
  123. package/dist/eval/judge.js +209 -0
  124. package/dist/eval/judge.js.map +1 -0
  125. package/dist/eval/replay.d.ts +23 -0
  126. package/dist/eval/replay.d.ts.map +1 -0
  127. package/dist/eval/replay.js +42 -0
  128. package/dist/eval/replay.js.map +1 -0
  129. package/dist/eval/runner.d.ts +35 -0
  130. package/dist/eval/runner.d.ts.map +1 -0
  131. package/dist/eval/runner.js +52 -0
  132. package/dist/eval/runner.js.map +1 -0
  133. package/dist/generators/agents-md-generator.d.ts +9 -0
  134. package/dist/generators/agents-md-generator.d.ts.map +1 -0
  135. package/dist/generators/agents-md-generator.js +71 -0
  136. package/dist/generators/agents-md-generator.js.map +1 -0
  137. package/dist/generators/blocks/domain-context.d.ts +7 -0
  138. package/dist/generators/blocks/domain-context.d.ts.map +1 -0
  139. package/dist/generators/blocks/domain-context.js +26 -0
  140. package/dist/generators/blocks/domain-context.js.map +1 -0
  141. package/dist/generators/blocks/drift-awareness.d.ts +6 -0
  142. package/dist/generators/blocks/drift-awareness.d.ts.map +1 -0
  143. package/dist/generators/blocks/drift-awareness.js +28 -0
  144. package/dist/generators/blocks/drift-awareness.js.map +1 -0
  145. package/dist/generators/blocks/evaluation-criteria.d.ts +7 -0
  146. package/dist/generators/blocks/evaluation-criteria.d.ts.map +1 -0
  147. package/dist/generators/blocks/evaluation-criteria.js +18 -0
  148. package/dist/generators/blocks/evaluation-criteria.js.map +1 -0
  149. package/dist/generators/blocks/guardrails.d.ts +6 -0
  150. package/dist/generators/blocks/guardrails.d.ts.map +1 -0
  151. package/dist/generators/blocks/guardrails.js +44 -0
  152. package/dist/generators/blocks/guardrails.js.map +1 -0
  153. package/dist/generators/blocks/identity.d.ts +6 -0
  154. package/dist/generators/blocks/identity.d.ts.map +1 -0
  155. package/dist/generators/blocks/identity.js +36 -0
  156. package/dist/generators/blocks/identity.js.map +1 -0
  157. package/dist/generators/blocks/memory-policy.d.ts +6 -0
  158. package/dist/generators/blocks/memory-policy.d.ts.map +1 -0
  159. package/dist/generators/blocks/memory-policy.js +34 -0
  160. package/dist/generators/blocks/memory-policy.js.map +1 -0
  161. package/dist/generators/blocks/playbook-index.d.ts +7 -0
  162. package/dist/generators/blocks/playbook-index.d.ts.map +1 -0
  163. package/dist/generators/blocks/playbook-index.js +14 -0
  164. package/dist/generators/blocks/playbook-index.js.map +1 -0
  165. package/dist/generators/blocks/session-rhythm.d.ts +6 -0
  166. package/dist/generators/blocks/session-rhythm.d.ts.map +1 -0
  167. package/dist/generators/blocks/session-rhythm.js +11 -0
  168. package/dist/generators/blocks/session-rhythm.js.map +1 -0
  169. package/dist/generators/blocks/skills-index.d.ts +6 -0
  170. package/dist/generators/blocks/skills-index.d.ts.map +1 -0
  171. package/dist/generators/blocks/skills-index.js +36 -0
  172. package/dist/generators/blocks/skills-index.js.map +1 -0
  173. package/dist/generators/blocks/tool-usage.d.ts +6 -0
  174. package/dist/generators/blocks/tool-usage.d.ts.map +1 -0
  175. package/dist/generators/blocks/tool-usage.js +31 -0
  176. package/dist/generators/blocks/tool-usage.js.map +1 -0
  177. package/dist/generators/blocks/vocabulary.d.ts +7 -0
  178. package/dist/generators/blocks/vocabulary.d.ts.map +1 -0
  179. package/dist/generators/blocks/vocabulary.js +27 -0
  180. package/dist/generators/blocks/vocabulary.js.map +1 -0
  181. package/dist/generators/claude-hooks-compat.d.ts +33 -0
  182. package/dist/generators/claude-hooks-compat.d.ts.map +1 -0
  183. package/dist/generators/claude-hooks-compat.js +322 -0
  184. package/dist/generators/claude-hooks-compat.js.map +1 -0
  185. package/dist/generators/claude-md-generator.d.ts +12 -0
  186. package/dist/generators/claude-md-generator.d.ts.map +1 -0
  187. package/dist/generators/claude-md-generator.js +60 -0
  188. package/dist/generators/claude-md-generator.js.map +1 -0
  189. package/dist/generators/index.d.ts +11 -0
  190. package/dist/generators/index.d.ts.map +1 -0
  191. package/dist/generators/index.js +11 -0
  192. package/dist/generators/index.js.map +1 -0
  193. package/dist/generators/soul-md-generator.d.ts +9 -0
  194. package/dist/generators/soul-md-generator.d.ts.map +1 -0
  195. package/dist/generators/soul-md-generator.js +104 -0
  196. package/dist/generators/soul-md-generator.js.map +1 -0
  197. package/dist/generators/types.d.ts +55 -0
  198. package/dist/generators/types.d.ts.map +1 -0
  199. package/dist/generators/types.js +7 -0
  200. package/dist/generators/types.js.map +1 -0
  201. package/dist/index.d.ts +19 -0
  202. package/dist/index.d.ts.map +1 -0
  203. package/dist/index.js +20 -0
  204. package/dist/index.js.map +1 -0
  205. package/dist/interview/index.d.ts +11 -0
  206. package/dist/interview/index.d.ts.map +1 -0
  207. package/dist/interview/index.js +11 -0
  208. package/dist/interview/index.js.map +1 -0
  209. package/dist/interview/interviewer.d.ts +94 -0
  210. package/dist/interview/interviewer.d.ts.map +1 -0
  211. package/dist/interview/interviewer.js +516 -0
  212. package/dist/interview/interviewer.js.map +1 -0
  213. package/dist/interview/questions.d.ts +15 -0
  214. package/dist/interview/questions.d.ts.map +1 -0
  215. package/dist/interview/questions.js +86 -0
  216. package/dist/interview/questions.js.map +1 -0
  217. package/dist/interview/rubric.d.ts +265 -0
  218. package/dist/interview/rubric.d.ts.map +1 -0
  219. package/dist/interview/rubric.js +74 -0
  220. package/dist/interview/rubric.js.map +1 -0
  221. package/dist/interview/session.d.ts +9 -0
  222. package/dist/interview/session.d.ts.map +1 -0
  223. package/dist/interview/session.js +33 -0
  224. package/dist/interview/session.js.map +1 -0
  225. package/dist/interview/universal-rubric.d.ts +11 -0
  226. package/dist/interview/universal-rubric.d.ts.map +1 -0
  227. package/dist/interview/universal-rubric.js +165 -0
  228. package/dist/interview/universal-rubric.js.map +1 -0
  229. package/dist/llm/index.d.ts +8 -0
  230. package/dist/llm/index.d.ts.map +1 -0
  231. package/dist/llm/index.js +8 -0
  232. package/dist/llm/index.js.map +1 -0
  233. package/dist/llm/provider.d.ts +62 -0
  234. package/dist/llm/provider.d.ts.map +1 -0
  235. package/dist/llm/provider.js +24 -0
  236. package/dist/llm/provider.js.map +1 -0
  237. package/dist/llm/providers/anthropic.d.ts +18 -0
  238. package/dist/llm/providers/anthropic.d.ts.map +1 -0
  239. package/dist/llm/providers/anthropic.js +56 -0
  240. package/dist/llm/providers/anthropic.js.map +1 -0
  241. package/dist/llm/providers/ollama.d.ts +17 -0
  242. package/dist/llm/providers/ollama.d.ts.map +1 -0
  243. package/dist/llm/providers/ollama.js +45 -0
  244. package/dist/llm/providers/ollama.js.map +1 -0
  245. package/dist/llm/providers/openai.d.ts +19 -0
  246. package/dist/llm/providers/openai.d.ts.map +1 -0
  247. package/dist/llm/providers/openai.js +52 -0
  248. package/dist/llm/providers/openai.js.map +1 -0
  249. package/dist/llm/resolve.d.ts +11 -0
  250. package/dist/llm/resolve.d.ts.map +1 -0
  251. package/dist/llm/resolve.js +56 -0
  252. package/dist/llm/resolve.js.map +1 -0
  253. package/dist/mcp/binder.d.ts +28 -0
  254. package/dist/mcp/binder.d.ts.map +1 -0
  255. package/dist/mcp/binder.js +87 -0
  256. package/dist/mcp/binder.js.map +1 -0
  257. package/dist/mcp/client.d.ts +99 -0
  258. package/dist/mcp/client.d.ts.map +1 -0
  259. package/dist/mcp/client.js +196 -0
  260. package/dist/mcp/client.js.map +1 -0
  261. package/dist/mcp/index.d.ts +9 -0
  262. package/dist/mcp/index.d.ts.map +1 -0
  263. package/dist/mcp/index.js +9 -0
  264. package/dist/mcp/index.js.map +1 -0
  265. package/dist/mcp/inspector.d.ts +29 -0
  266. package/dist/mcp/inspector.d.ts.map +1 -0
  267. package/dist/mcp/inspector.js +44 -0
  268. package/dist/mcp/inspector.js.map +1 -0
  269. package/dist/schemas/bindings.d.ts +248 -0
  270. package/dist/schemas/bindings.d.ts.map +1 -0
  271. package/dist/schemas/bindings.js +34 -0
  272. package/dist/schemas/bindings.js.map +1 -0
  273. package/dist/schemas/constitution.d.ts +229 -0
  274. package/dist/schemas/constitution.d.ts.map +1 -0
  275. package/dist/schemas/constitution.js +47 -0
  276. package/dist/schemas/constitution.js.map +1 -0
  277. package/dist/schemas/evalpack.d.ts +322 -0
  278. package/dist/schemas/evalpack.d.ts.map +1 -0
  279. package/dist/schemas/evalpack.js +43 -0
  280. package/dist/schemas/evalpack.js.map +1 -0
  281. package/dist/schemas/guardrails.d.ts +171 -0
  282. package/dist/schemas/guardrails.d.ts.map +1 -0
  283. package/dist/schemas/guardrails.js +35 -0
  284. package/dist/schemas/guardrails.js.map +1 -0
  285. package/dist/schemas/index.d.ts +18 -0
  286. package/dist/schemas/index.d.ts.map +1 -0
  287. package/dist/schemas/index.js +18 -0
  288. package/dist/schemas/index.js.map +1 -0
  289. package/dist/schemas/memory.d.ts +277 -0
  290. package/dist/schemas/memory.d.ts.map +1 -0
  291. package/dist/schemas/memory.js +42 -0
  292. package/dist/schemas/memory.js.map +1 -0
  293. package/dist/schemas/playbook.d.ts +270 -0
  294. package/dist/schemas/playbook.d.ts.map +1 -0
  295. package/dist/schemas/playbook.js +52 -0
  296. package/dist/schemas/playbook.js.map +1 -0
  297. package/dist/schemas/skills.d.ts +320 -0
  298. package/dist/schemas/skills.d.ts.map +1 -0
  299. package/dist/schemas/skills.js +84 -0
  300. package/dist/schemas/skills.js.map +1 -0
  301. package/dist/schemas/trace.d.ts +126 -0
  302. package/dist/schemas/trace.d.ts.map +1 -0
  303. package/dist/schemas/trace.js +70 -0
  304. package/dist/schemas/trace.js.map +1 -0
  305. package/dist/schemas/trust.d.ts +142 -0
  306. package/dist/schemas/trust.d.ts.map +1 -0
  307. package/dist/schemas/trust.js +30 -0
  308. package/dist/schemas/trust.js.map +1 -0
  309. package/dist/schemas/validators.d.ts +26 -0
  310. package/dist/schemas/validators.d.ts.map +1 -0
  311. package/dist/schemas/validators.js +79 -0
  312. package/dist/schemas/validators.js.map +1 -0
  313. package/dist/schemas/workspace.d.ts +725 -0
  314. package/dist/schemas/workspace.d.ts.map +1 -0
  315. package/dist/schemas/workspace.js +119 -0
  316. package/dist/schemas/workspace.js.map +1 -0
  317. package/dist/skills/constraints.d.ts +19 -0
  318. package/dist/skills/constraints.d.ts.map +1 -0
  319. package/dist/skills/constraints.js +91 -0
  320. package/dist/skills/constraints.js.map +1 -0
  321. package/dist/skills/generator.d.ts +13 -0
  322. package/dist/skills/generator.d.ts.map +1 -0
  323. package/dist/skills/generator.js +126 -0
  324. package/dist/skills/generator.js.map +1 -0
  325. package/dist/skills/graph.d.ts +42 -0
  326. package/dist/skills/graph.d.ts.map +1 -0
  327. package/dist/skills/graph.js +217 -0
  328. package/dist/skills/graph.js.map +1 -0
  329. package/dist/skills/index.d.ts +13 -0
  330. package/dist/skills/index.d.ts.map +1 -0
  331. package/dist/skills/index.js +13 -0
  332. package/dist/skills/index.js.map +1 -0
  333. package/dist/skills/linter.d.ts +22 -0
  334. package/dist/skills/linter.d.ts.map +1 -0
  335. package/dist/skills/linter.js +201 -0
  336. package/dist/skills/linter.js.map +1 -0
  337. package/dist/skills/packer.d.ts +27 -0
  338. package/dist/skills/packer.d.ts.map +1 -0
  339. package/dist/skills/packer.js +72 -0
  340. package/dist/skills/packer.js.map +1 -0
  341. package/dist/skills/tracker.d.ts +27 -0
  342. package/dist/skills/tracker.d.ts.map +1 -0
  343. package/dist/skills/tracker.js +131 -0
  344. package/dist/skills/tracker.js.map +1 -0
  345. package/dist/skills/versioner.d.ts +19 -0
  346. package/dist/skills/versioner.d.ts.map +1 -0
  347. package/dist/skills/versioner.js +76 -0
  348. package/dist/skills/versioner.js.map +1 -0
  349. package/dist/tracing/index.d.ts +8 -0
  350. package/dist/tracing/index.d.ts.map +1 -0
  351. package/dist/tracing/index.js +8 -0
  352. package/dist/tracing/index.js.map +1 -0
  353. package/dist/tracing/reader.d.ts +18 -0
  354. package/dist/tracing/reader.d.ts.map +1 -0
  355. package/dist/tracing/reader.js +34 -0
  356. package/dist/tracing/reader.js.map +1 -0
  357. package/dist/tracing/tracer.d.ts +22 -0
  358. package/dist/tracing/tracer.d.ts.map +1 -0
  359. package/dist/tracing/tracer.js +105 -0
  360. package/dist/tracing/tracer.js.map +1 -0
  361. package/dist/trust/auditor.d.ts +35 -0
  362. package/dist/trust/auditor.d.ts.map +1 -0
  363. package/dist/trust/auditor.js +78 -0
  364. package/dist/trust/auditor.js.map +1 -0
  365. package/dist/trust/index.d.ts +8 -0
  366. package/dist/trust/index.d.ts.map +1 -0
  367. package/dist/trust/index.js +8 -0
  368. package/dist/trust/index.js.map +1 -0
  369. package/dist/trust/manager.d.ts +18 -0
  370. package/dist/trust/manager.d.ts.map +1 -0
  371. package/dist/trust/manager.js +60 -0
  372. package/dist/trust/manager.js.map +1 -0
  373. package/dist/utils/filesystem.d.ts +15 -0
  374. package/dist/utils/filesystem.d.ts.map +1 -0
  375. package/dist/utils/filesystem.js +53 -0
  376. package/dist/utils/filesystem.js.map +1 -0
  377. package/dist/utils/hash.d.ts +7 -0
  378. package/dist/utils/hash.d.ts.map +1 -0
  379. package/dist/utils/hash.js +15 -0
  380. package/dist/utils/hash.js.map +1 -0
  381. package/dist/utils/index.d.ts +7 -0
  382. package/dist/utils/index.d.ts.map +1 -0
  383. package/dist/utils/index.js +7 -0
  384. package/dist/utils/index.js.map +1 -0
  385. package/dist/utils/yaml.d.ts +6 -0
  386. package/dist/utils/yaml.d.ts.map +1 -0
  387. package/dist/utils/yaml.js +14 -0
  388. package/dist/utils/yaml.js.map +1 -0
  389. package/package.json +58 -0
@@ -0,0 +1,24 @@
1
+ import { SessionState } from '../schemas/workspace.js';
2
+ /**
3
+ * Main compiler orchestrator
4
+ *
5
+ * Step-tracked with derivation state for context resilience.
6
+ * Writes derivation.v1.yaml FIRST, then compiles each artifact
7
+ * and persists progress after each step. Supports --resume.
8
+ */
9
+ export interface CompilationOptions {
10
+ workspacePath: string;
11
+ session: SessionState;
12
+ generatorVersion: string;
13
+ /** If true, resume from existing derivation state */
14
+ resume?: boolean;
15
+ }
16
+ export interface CompilationResult {
17
+ success: boolean;
18
+ artifacts: string[];
19
+ errors?: string[];
20
+ /** Whether this was a resumed compilation */
21
+ resumed?: boolean;
22
+ }
23
+ export declare function compile(options: CompilationOptions): Promise<CompilationResult>;
24
+ //# sourceMappingURL=compiler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compiler.d.ts","sourceRoot":"","sources":["../../compiler/compiler.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAgBvD;;;;;;GAMG;AAEH,MAAM,WAAW,kBAAkB;IACjC,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,YAAY,CAAC;IACtB,gBAAgB,EAAE,MAAM,CAAC;IACzB,qDAAqD;IACrD,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,6CAA6C;IAC7C,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAKD,wBAAsB,OAAO,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CA6FrF"}
@@ -0,0 +1,153 @@
1
+ import { join } from 'path';
2
+ import { atomicWrite } from '../utils/filesystem.js';
3
+ import { ensureDir, resolvePlaybooksPath, resolveSkillsPath } from '../utils/filesystem.js';
4
+ import { stringifyYAML } from '../utils/yaml.js';
5
+ import { compileConstitution } from './constitution-compiler.js';
6
+ import { compileGuardrails } from './guardrails-compiler.js';
7
+ import { compileMemoryPolicy } from './memory-compiler.js';
8
+ import { compileSkills } from './skills-compiler.js';
9
+ import { compilePlaybooks } from './playbook-compiler.js';
10
+ import { readDerivationState, writeDerivationState, buildDerivationState, } from './derivation.js';
11
+ /** All compiler step IDs in execution order */
12
+ const ALL_STEPS = ['constitution', 'guardrails', 'memory', 'skills', 'playbooks'];
13
+ export async function compile(options) {
14
+ const { workspacePath, session, generatorVersion, resume } = options;
15
+ ensureDir(workspacePath);
16
+ ensureDir(resolveSkillsPath(workspacePath));
17
+ ensureDir(resolvePlaybooksPath(workspacePath));
18
+ // Step 0: Build or read derivation state
19
+ let derivation;
20
+ let resumed = false;
21
+ if (resume) {
22
+ const existing = readDerivationState(workspacePath);
23
+ if (existing && existing.completed_steps.length > 0) {
24
+ derivation = existing;
25
+ resumed = true;
26
+ }
27
+ else {
28
+ derivation = buildDerivationState(session, generatorVersion);
29
+ writeDerivationState(workspacePath, derivation);
30
+ }
31
+ }
32
+ else {
33
+ derivation = buildDerivationState(session, generatorVersion);
34
+ writeDerivationState(workspacePath, derivation);
35
+ }
36
+ // Run each compilation step, skipping already-completed ones
37
+ for (const stepId of ALL_STEPS) {
38
+ if (derivation.completed_steps.includes(stepId))
39
+ continue;
40
+ try {
41
+ const artifacts = await runStep(stepId, workspacePath, session, generatorVersion);
42
+ derivation.completed_steps.push(stepId);
43
+ derivation.artifacts_written.push(...artifacts);
44
+ writeDerivationState(workspacePath, derivation);
45
+ }
46
+ catch (error) {
47
+ // Derivation state is already persisted — can resume from here
48
+ return {
49
+ success: false,
50
+ artifacts: derivation.artifacts_written,
51
+ errors: [error instanceof Error ? error.message : String(error)],
52
+ resumed,
53
+ };
54
+ }
55
+ }
56
+ let constitution;
57
+ // Generate SOUL.md
58
+ try {
59
+ const { generateSoulMd } = await import('../generators/soul-md-generator.js');
60
+ const constitutionPath = join(workspacePath, 'constitution.v1.json');
61
+ const { readFileSync, existsSync } = await import('fs');
62
+ if (existsSync(constitutionPath)) {
63
+ constitution = JSON.parse(readFileSync(constitutionPath, 'utf-8'));
64
+ const soulMd = generateSoulMd({
65
+ generator_version: generatorVersion,
66
+ constitution: constitution,
67
+ domain_id: session.domain_id,
68
+ });
69
+ atomicWrite(join(workspacePath, '..', 'SOUL.md'), soulMd);
70
+ if (!derivation.artifacts_written.includes('SOUL.md')) {
71
+ derivation.artifacts_written.push('SOUL.md');
72
+ }
73
+ }
74
+ }
75
+ catch {
76
+ // Non-fatal
77
+ }
78
+ // Generate AGENTS.md
79
+ try {
80
+ if (constitution) {
81
+ const { generateAgentsMd } = await import('../generators/agents-md-generator.js');
82
+ const agentsMd = generateAgentsMd({
83
+ generator_version: generatorVersion,
84
+ constitution: constitution,
85
+ domain_id: session.domain_id,
86
+ });
87
+ atomicWrite(join(workspacePath, '..', 'AGENTS.md'), agentsMd);
88
+ if (!derivation.artifacts_written.includes('AGENTS.md')) {
89
+ derivation.artifacts_written.push('AGENTS.md');
90
+ }
91
+ }
92
+ }
93
+ catch {
94
+ // Non-fatal
95
+ }
96
+ writeDerivationState(workspacePath, derivation);
97
+ return {
98
+ success: true,
99
+ artifacts: derivation.artifacts_written,
100
+ resumed,
101
+ };
102
+ }
103
+ /**
104
+ * Run a single compilation step.
105
+ * Returns the list of artifact paths written.
106
+ */
107
+ async function runStep(stepId, workspacePath, session, generatorVersion) {
108
+ switch (stepId) {
109
+ case 'constitution': {
110
+ const constitution = compileConstitution(session, generatorVersion);
111
+ const path = join(workspacePath, 'constitution.v1.json');
112
+ atomicWrite(path, JSON.stringify(constitution, null, 2));
113
+ return ['constitution.v1.json'];
114
+ }
115
+ case 'guardrails': {
116
+ const guardrails = compileGuardrails(session);
117
+ const path = join(workspacePath, 'guardrails.v1.yaml');
118
+ atomicWrite(path, stringifyYAML(guardrails));
119
+ return ['guardrails.v1.yaml'];
120
+ }
121
+ case 'memory': {
122
+ const memory = compileMemoryPolicy(session);
123
+ const path = join(workspacePath, 'memory.v1.yaml');
124
+ atomicWrite(path, stringifyYAML(memory));
125
+ return ['memory.v1.yaml'];
126
+ }
127
+ case 'skills': {
128
+ const constitutionPath = join(workspacePath, 'constitution.v1.json');
129
+ const { readFileSync } = await import('fs');
130
+ const constitution = JSON.parse(readFileSync(constitutionPath, 'utf-8'));
131
+ const skillArtifacts = await compileSkills({
132
+ workspacePath,
133
+ session,
134
+ constitution,
135
+ });
136
+ return skillArtifacts;
137
+ }
138
+ case 'playbooks': {
139
+ const constitutionPath = join(workspacePath, 'constitution.v1.json');
140
+ const { readFileSync } = await import('fs');
141
+ const constitution = JSON.parse(readFileSync(constitutionPath, 'utf-8'));
142
+ const playbookArtifacts = await compilePlaybooks({
143
+ workspacePath,
144
+ session,
145
+ constitution,
146
+ });
147
+ return playbookArtifacts;
148
+ }
149
+ default:
150
+ return [];
151
+ }
152
+ }
153
+ //# sourceMappingURL=compiler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compiler.js","sourceRoot":"","sources":["../../compiler/compiler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAE5B,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC5F,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAEL,mBAAmB,EACnB,oBAAoB,EACpB,oBAAoB,GACrB,MAAM,iBAAiB,CAAC;AA0BzB,+CAA+C;AAC/C,MAAM,SAAS,GAAG,CAAC,cAAc,EAAE,YAAY,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,CAAU,CAAC;AAE3F,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,OAA2B;IACvD,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,gBAAgB,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;IACrE,SAAS,CAAC,aAAa,CAAC,CAAC;IACzB,SAAS,CAAC,iBAAiB,CAAC,aAAa,CAAC,CAAC,CAAC;IAC5C,SAAS,CAAC,oBAAoB,CAAC,aAAa,CAAC,CAAC,CAAC;IAE/C,yCAAyC;IACzC,IAAI,UAA2B,CAAC;IAChC,IAAI,OAAO,GAAG,KAAK,CAAC;IAEpB,IAAI,MAAM,EAAE,CAAC;QACX,MAAM,QAAQ,GAAG,mBAAmB,CAAC,aAAa,CAAC,CAAC;QACpD,IAAI,QAAQ,IAAI,QAAQ,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpD,UAAU,GAAG,QAAQ,CAAC;YACtB,OAAO,GAAG,IAAI,CAAC;QACjB,CAAC;aAAM,CAAC;YACN,UAAU,GAAG,oBAAoB,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;YAC7D,oBAAoB,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;QAClD,CAAC;IACH,CAAC;SAAM,CAAC;QACN,UAAU,GAAG,oBAAoB,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;QAC7D,oBAAoB,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;IAClD,CAAC;IAED,6DAA6D;IAC7D,KAAK,MAAM,MAAM,IAAI,SAAS,EAAE,CAAC;QAC/B,IAAI,UAAU,CAAC,eAAe,CAAC,QAAQ,CAAC,MAAM,CAAC;YAAE,SAAS;QAE1D,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,gBAAgB,CAAC,CAAC;YAClF,UAAU,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACxC,UAAU,CAAC,iBAAiB,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,CAAC;YAChD,oBAAoB,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;QAClD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,+DAA+D;YAC/D,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,SAAS,EAAE,UAAU,CAAC,iBAAiB;gBACvC,MAAM,EAAE,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBAChE,OAAO;aACR,CAAC;QACJ,CAAC;IACH,CAAC;IAED,IAAI,YAAqB,CAAC;IAE1B,mBAAmB;IACnB,IAAI,CAAC;QACH,MAAM,EAAE,cAAc,EAAE,GAAG,MAAM,MAAM,CAAC,oCAAoC,CAAC,CAAC;QAC9E,MAAM,gBAAgB,GAAG,IAAI,CAAC,aAAa,EAAE,sBAAsB,CAAC,CAAC;QACrE,MAAM,EAAE,YAAY,EAAE,UAAU,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,CAAC;QAExD,IAAI,UAAU,CAAC,gBAAgB,CAAC,EAAE,CAAC;YACjC,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC,CAAC;YACnE,MAAM,MAAM,GAAG,cAAc,CAAC;gBAC5B,iBAAiB,EAAE,gBAAgB;gBACnC,YAAY,EAAE,YAAmB;gBACjC,SAAS,EAAE,OAAO,CAAC,SAAS;aAC7B,CAAC,CAAC;YACH,WAAW,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,EAAE,SAAS,CAAC,EAAE,MAAM,CAAC,CAAC;YAC1D,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;gBACtD,UAAU,CAAC,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAC/C,CAAC;QACH,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,YAAY;IACd,CAAC;IAED,qBAAqB;IACrB,IAAI,CAAC;QACH,IAAI,YAAY,EAAE,CAAC;YACjB,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CAAC,sCAAsC,CAAC,CAAC;YAClF,MAAM,QAAQ,GAAG,gBAAgB,CAAC;gBAChC,iBAAiB,EAAE,gBAAgB;gBACnC,YAAY,EAAE,YAAmB;gBACjC,SAAS,EAAE,OAAO,CAAC,SAAS;aAC7B,CAAC,CAAC;YACH,WAAW,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,EAAE,WAAW,CAAC,EAAE,QAAQ,CAAC,CAAC;YAC9D,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;gBACxD,UAAU,CAAC,iBAAiB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YACjD,CAAC;QACH,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,YAAY;IACd,CAAC;IAED,oBAAoB,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;IAEhD,OAAO;QACL,OAAO,EAAE,IAAI;QACb,SAAS,EAAE,UAAU,CAAC,iBAAiB;QACvC,OAAO;KACR,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,KAAK,UAAU,OAAO,CACpB,MAAc,EACd,aAAqB,EACrB,OAAqB,EACrB,gBAAwB;IAExB,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,cAAc,CAAC,CAAC,CAAC;YACpB,MAAM,YAAY,GAAG,mBAAmB,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;YACpE,MAAM,IAAI,GAAG,IAAI,CAAC,aAAa,EAAE,sBAAsB,CAAC,CAAC;YACzD,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YACzD,OAAO,CAAC,sBAAsB,CAAC,CAAC;QAClC,CAAC;QAED,KAAK,YAAY,CAAC,CAAC,CAAC;YAClB,MAAM,UAAU,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;YAC9C,MAAM,IAAI,GAAG,IAAI,CAAC,aAAa,EAAE,oBAAoB,CAAC,CAAC;YACvD,WAAW,CAAC,IAAI,EAAE,aAAa,CAAC,UAAU,CAAC,CAAC,CAAC;YAC7C,OAAO,CAAC,oBAAoB,CAAC,CAAC;QAChC,CAAC;QAED,KAAK,QAAQ,CAAC,CAAC,CAAC;YACd,MAAM,MAAM,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAC;YAC5C,MAAM,IAAI,GAAG,IAAI,CAAC,aAAa,EAAE,gBAAgB,CAAC,CAAC;YACnD,WAAW,CAAC,IAAI,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC;YACzC,OAAO,CAAC,gBAAgB,CAAC,CAAC;QAC5B,CAAC;QAED,KAAK,QAAQ,CAAC,CAAC,CAAC;YACd,MAAM,gBAAgB,GAAG,IAAI,CAAC,aAAa,EAAE,sBAAsB,CAAC,CAAC;YACrE,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,CAAC;YAC5C,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC,CAAC;YAEzE,MAAM,cAAc,GAAG,MAAM,aAAa,CAAC;gBACzC,aAAa;gBACb,OAAO;gBACP,YAAY;aACb,CAAC,CAAC;YACH,OAAO,cAAc,CAAC;QACxB,CAAC;QAED,KAAK,WAAW,CAAC,CAAC,CAAC;YACjB,MAAM,gBAAgB,GAAG,IAAI,CAAC,aAAa,EAAE,sBAAsB,CAAC,CAAC;YACrE,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,CAAC;YAC5C,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC,CAAC;YAEzE,MAAM,iBAAiB,GAAG,MAAM,gBAAgB,CAAC;gBAC/C,aAAa;gBACb,OAAO;gBACP,YAAY;aACb,CAAC,CAAC;YACH,OAAO,iBAAiB,CAAC;QAC3B,CAAC;QAED;YACE,OAAO,EAAE,CAAC;IACd,CAAC;AACH,CAAC"}
@@ -0,0 +1,11 @@
1
+ import { ConstitutionV1 } from '../schemas/constitution.js';
2
+ import { SessionState } from '../schemas/workspace.js';
3
+ /**
4
+ * Constitution compiler
5
+ *
6
+ * Compiles onboarding answers into a constitution.v1.json artifact.
7
+ * Dual-path: uses rich StructuredAnswers from LLM interview if available,
8
+ * otherwise falls back to legacy flat-answer compilation.
9
+ */
10
+ export declare function compileConstitution(session: SessionState, generatorVersion: string): ConstitutionV1;
11
+ //# sourceMappingURL=constitution-compiler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constitution-compiler.d.ts","sourceRoot":"","sources":["../../compiler/constitution-compiler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAGvD;;;;;;GAMG;AAEH,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,YAAY,EACrB,gBAAgB,EAAE,MAAM,GACvB,cAAc,CAYhB"}
@@ -0,0 +1,154 @@
1
+ /**
2
+ * Constitution compiler
3
+ *
4
+ * Compiles onboarding answers into a constitution.v1.json artifact.
5
+ * Dual-path: uses rich StructuredAnswers from LLM interview if available,
6
+ * otherwise falls back to legacy flat-answer compilation.
7
+ */
8
+ export function compileConstitution(session, generatorVersion) {
9
+ // If session has structured_answers from LLM interview, use the rich path
10
+ if (session.structured_answers) {
11
+ return compileFromStructuredAnswers(session.structured_answers, session, generatorVersion);
12
+ }
13
+ // Otherwise, fall back to legacy flat-answer compilation
14
+ return compileLegacy(session, generatorVersion);
15
+ }
16
+ /**
17
+ * Rich compilation from LLM interview structured answers.
18
+ * Populates fields that the legacy path leaves empty (examples, formatting_rules,
19
+ * evidence_policy, taboos, rationale).
20
+ */
21
+ function compileFromStructuredAnswers(sa, session, generatorVersion) {
22
+ const principles = sa.principles.map((p, index) => ({
23
+ id: `principle_${index}`,
24
+ priority: p.priority,
25
+ statement: p.statement,
26
+ rationale: p.rationale,
27
+ applies_to: p.applies_to,
28
+ examples_good: p.examples_good,
29
+ examples_bad: p.examples_bad,
30
+ }));
31
+ const tone = {
32
+ voice_keywords: sa.tone.voice_keywords,
33
+ forbidden_phrases: sa.tone.forbidden_phrases,
34
+ formatting_rules: sa.tone.formatting_rules,
35
+ };
36
+ const tradeoffs = {
37
+ accuracy_vs_speed: sa.tradeoffs.accuracy_vs_speed,
38
+ cost_sensitivity: sa.tradeoffs.cost_sensitivity,
39
+ autonomy_level: sa.tradeoffs.autonomy_level,
40
+ };
41
+ const evidence_policy = {
42
+ require_citations_for: sa.evidence_policy.require_citations_for,
43
+ uncertainty_language_rules: sa.evidence_policy.uncertainty_language_rules,
44
+ };
45
+ const taboos = {
46
+ never_do: sa.taboos.never_do,
47
+ must_escalate: sa.taboos.must_escalate,
48
+ };
49
+ // Build trace_map with dimension-level traceability
50
+ const trace_map = {
51
+ _session_id: session.session_id,
52
+ _llm_provider: session.llm_provider,
53
+ _domain_id: session.domain_id,
54
+ };
55
+ principles.forEach((p, i) => {
56
+ const source = sa.principles[i];
57
+ trace_map[p.id] = { source_dimension: source.source_dimension };
58
+ });
59
+ trace_map['_tone'] = { source_dimensions: sa.tone.source_dimensions };
60
+ trace_map['_tradeoffs'] = { source_dimensions: sa.tradeoffs.source_dimensions };
61
+ trace_map['_evidence_policy'] = { source_dimensions: sa.evidence_policy.source_dimensions };
62
+ trace_map['_taboos'] = { source_dimensions: sa.taboos.source_dimensions };
63
+ return {
64
+ schema_version: 'constitution.v1',
65
+ generated_at: new Date().toISOString(),
66
+ generator_version: generatorVersion,
67
+ user_scope: 'single_user',
68
+ principles,
69
+ tone,
70
+ tradeoffs,
71
+ evidence_policy,
72
+ taboos,
73
+ trace_map,
74
+ };
75
+ }
76
+ /**
77
+ * Legacy compilation from flat session.answers (backward compat).
78
+ * Original code from the hardcoded wizard flow.
79
+ */
80
+ function compileLegacy(session, generatorVersion) {
81
+ const { answers } = session;
82
+ // Parse principles from onboarding
83
+ const principleStatements = answers.goals?.key_principles
84
+ ? answers.goals.key_principles.split(',').map((p) => p.trim())
85
+ : [];
86
+ const principles = principleStatements.map((statement, index) => ({
87
+ id: `principle_${index + 1}`,
88
+ priority: index + 1,
89
+ statement,
90
+ rationale: `Derived from onboarding session ${session.session_id}`,
91
+ applies_to: ['*'],
92
+ }));
93
+ // Add primary goal as top principle
94
+ if (answers.goals?.primary_goal) {
95
+ principles.unshift({
96
+ id: 'principle_0',
97
+ priority: 1,
98
+ statement: `Primary goal: ${answers.goals.primary_goal}`,
99
+ rationale: 'User-defined primary goal',
100
+ applies_to: ['*'],
101
+ });
102
+ // Adjust priorities
103
+ principles.forEach((p, i) => {
104
+ p.priority = i + 1;
105
+ });
106
+ }
107
+ // Compile tone
108
+ const voiceKeywords = answers.tone?.voice_keywords || [];
109
+ const forbiddenPhrases = answers.tone?.forbidden_phrases
110
+ ? answers.tone.forbidden_phrases.split(',').map((p) => p.trim()).filter(Boolean)
111
+ : [];
112
+ // Compile tradeoffs
113
+ const tradeoffs = {
114
+ accuracy_vs_speed: answers.tradeoffs?.accuracy_vs_speed || 0.5,
115
+ cost_sensitivity: 0.5,
116
+ autonomy_level: answers.tradeoffs?.autonomy_level || 0.5,
117
+ };
118
+ return {
119
+ schema_version: 'constitution.v1',
120
+ generated_at: new Date().toISOString(),
121
+ generator_version: generatorVersion,
122
+ user_scope: 'single_user',
123
+ principles,
124
+ tone: {
125
+ voice_keywords: voiceKeywords,
126
+ forbidden_phrases: forbiddenPhrases,
127
+ formatting_rules: [],
128
+ },
129
+ tradeoffs,
130
+ evidence_policy: {
131
+ require_citations_for: ['facts', 'statistics', 'claims'],
132
+ uncertainty_language_rules: [
133
+ 'Use "likely" or "probably" for uncertain statements',
134
+ 'Use "I don\'t know" when information is unavailable',
135
+ ],
136
+ },
137
+ taboos: {
138
+ never_do: [
139
+ 'Share personal information without consent',
140
+ 'Make decisions with irreversible consequences without approval',
141
+ ],
142
+ must_escalate: [
143
+ 'Financial transactions',
144
+ 'Legal decisions',
145
+ 'Medical advice',
146
+ ],
147
+ },
148
+ trace_map: {
149
+ _session_id: session.session_id,
150
+ _answers: answers,
151
+ },
152
+ };
153
+ }
154
+ //# sourceMappingURL=constitution-compiler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constitution-compiler.js","sourceRoot":"","sources":["../../compiler/constitution-compiler.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,125 @@
1
+ import { z } from 'zod';
2
+ /**
3
+ * Derivation State — Context Resilience Protocol
4
+ *
5
+ * Written as the FIRST step of compilation. Contains a complete snapshot
6
+ * of resolved configuration so any subsequent step can resume statelessly.
7
+ * Inspired by arscontexta's ops/derivation.md pattern.
8
+ */
9
+ export declare const DimensionResolutionSchema: z.ZodObject<{
10
+ dimension_id: z.ZodString;
11
+ confidence: z.ZodDefault<z.ZodNumber>;
12
+ summary: z.ZodString;
13
+ extracted_facts: z.ZodArray<z.ZodString, "many">;
14
+ anti_signals: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
15
+ }, "strip", z.ZodTypeAny, {
16
+ dimension_id: string;
17
+ confidence: number;
18
+ anti_signals: string[];
19
+ summary: string;
20
+ extracted_facts: string[];
21
+ }, {
22
+ dimension_id: string;
23
+ summary: string;
24
+ extracted_facts: string[];
25
+ confidence?: number | undefined;
26
+ anti_signals?: string[] | undefined;
27
+ }>;
28
+ export declare const DerivationStateSchema: z.ZodObject<{
29
+ schema_version: z.ZodLiteral<"derivation.v1">;
30
+ created_at: z.ZodString;
31
+ session_id: z.ZodString;
32
+ domain_id: z.ZodOptional<z.ZodString>;
33
+ generator_version: z.ZodString;
34
+ /** Resolved interview signals (from interviewer) */
35
+ dimension_resolutions: z.ZodArray<z.ZodObject<{
36
+ dimension_id: z.ZodString;
37
+ confidence: z.ZodDefault<z.ZodNumber>;
38
+ summary: z.ZodString;
39
+ extracted_facts: z.ZodArray<z.ZodString, "many">;
40
+ anti_signals: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
41
+ }, "strip", z.ZodTypeAny, {
42
+ dimension_id: string;
43
+ confidence: number;
44
+ anti_signals: string[];
45
+ summary: string;
46
+ extracted_facts: string[];
47
+ }, {
48
+ dimension_id: string;
49
+ summary: string;
50
+ extracted_facts: string[];
51
+ confidence?: number | undefined;
52
+ anti_signals?: string[] | undefined;
53
+ }>, "many">;
54
+ /** The structured answers that feed the compiler */
55
+ structured_answers: z.ZodOptional<z.ZodAny>;
56
+ /** Compilation progress tracking */
57
+ completed_steps: z.ZodArray<z.ZodString, "many">;
58
+ /** Artifacts written so far */
59
+ artifacts_written: z.ZodArray<z.ZodString, "many">;
60
+ /** Vocabulary map (when domain vocabulary is active) */
61
+ vocabulary_map: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
62
+ }, "strip", z.ZodTypeAny, {
63
+ schema_version: "derivation.v1";
64
+ generator_version: string;
65
+ created_at: string;
66
+ session_id: string;
67
+ completed_steps: string[];
68
+ dimension_resolutions: {
69
+ dimension_id: string;
70
+ confidence: number;
71
+ anti_signals: string[];
72
+ summary: string;
73
+ extracted_facts: string[];
74
+ }[];
75
+ artifacts_written: string[];
76
+ domain_id?: string | undefined;
77
+ structured_answers?: any;
78
+ vocabulary_map?: Record<string, string> | undefined;
79
+ }, {
80
+ schema_version: "derivation.v1";
81
+ generator_version: string;
82
+ created_at: string;
83
+ session_id: string;
84
+ completed_steps: string[];
85
+ dimension_resolutions: {
86
+ dimension_id: string;
87
+ summary: string;
88
+ extracted_facts: string[];
89
+ confidence?: number | undefined;
90
+ anti_signals?: string[] | undefined;
91
+ }[];
92
+ artifacts_written: string[];
93
+ domain_id?: string | undefined;
94
+ structured_answers?: any;
95
+ vocabulary_map?: Record<string, string> | undefined;
96
+ }>;
97
+ export type DerivationState = z.infer<typeof DerivationStateSchema>;
98
+ export type DimensionResolution = z.infer<typeof DimensionResolutionSchema>;
99
+ /**
100
+ * Write derivation state to the ops directory.
101
+ * Uses YAML for human readability.
102
+ */
103
+ export declare function writeDerivationState(workspacePath: string, state: DerivationState): void;
104
+ /**
105
+ * Read derivation state from the ops directory.
106
+ * Returns null if no derivation state exists.
107
+ */
108
+ export declare function readDerivationState(workspacePath: string): DerivationState | null;
109
+ /**
110
+ * Check whether a derivation state exists and can be resumed.
111
+ * Returns true if there's an incomplete derivation (not all steps done).
112
+ */
113
+ export declare function canResume(workspacePath: string): boolean;
114
+ /**
115
+ * Build initial derivation state from a session.
116
+ */
117
+ export declare function buildDerivationState(session: {
118
+ session_id: string;
119
+ domain_id?: string;
120
+ interview?: {
121
+ dimension_coverage: any[];
122
+ };
123
+ structured_answers?: any;
124
+ }, generatorVersion: string): DerivationState;
125
+ //# sourceMappingURL=derivation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"derivation.d.ts","sourceRoot":"","sources":["../../compiler/derivation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB;;;;;;GAMG;AAEH,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;EAMpC,CAAC;AAEH,eAAO,MAAM,qBAAqB;;;;;;IAOhC,oDAAoD;;;;;;;;;;;;;;;;;;;;IAGpD,oDAAoD;;IAGpD,oCAAoC;;IAGpC,+BAA+B;;IAG/B,wDAAwD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAExD,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AACpE,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAE5E;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,aAAa,EAAE,MAAM,EAAE,KAAK,EAAE,eAAe,GAAG,IAAI,CAGxF;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,aAAa,EAAE,MAAM,GAAG,eAAe,GAAG,IAAI,CAWjF;AAED;;;GAGG;AACH,wBAAgB,SAAS,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAMxD;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,OAAO,EAAE;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE;QAAE,kBAAkB,EAAE,GAAG,EAAE,CAAA;KAAE,CAAC;IAAC,kBAAkB,CAAC,EAAE,GAAG,CAAA;CAAE,EACxH,gBAAgB,EAAE,MAAM,GACvB,eAAe,CA2BjB"}
@@ -0,0 +1,109 @@
1
+ import { z } from 'zod';
2
+ import { join } from 'path';
3
+ import { writeFileSafe, readFileIfExists } from '../utils/filesystem.js';
4
+ import { stringifyYAML, parseYAML } from '../utils/yaml.js';
5
+ /**
6
+ * Derivation State — Context Resilience Protocol
7
+ *
8
+ * Written as the FIRST step of compilation. Contains a complete snapshot
9
+ * of resolved configuration so any subsequent step can resume statelessly.
10
+ * Inspired by arscontexta's ops/derivation.md pattern.
11
+ */
12
+ export const DimensionResolutionSchema = z.object({
13
+ dimension_id: z.string(),
14
+ confidence: z.number().min(0).default(0),
15
+ summary: z.string(),
16
+ extracted_facts: z.array(z.string()),
17
+ anti_signals: z.array(z.string()).default([]),
18
+ });
19
+ export const DerivationStateSchema = z.object({
20
+ schema_version: z.literal('derivation.v1'),
21
+ created_at: z.string().datetime(),
22
+ session_id: z.string(),
23
+ domain_id: z.string().optional(),
24
+ generator_version: z.string(),
25
+ /** Resolved interview signals (from interviewer) */
26
+ dimension_resolutions: z.array(DimensionResolutionSchema),
27
+ /** The structured answers that feed the compiler */
28
+ structured_answers: z.any().optional(),
29
+ /** Compilation progress tracking */
30
+ completed_steps: z.array(z.string()),
31
+ /** Artifacts written so far */
32
+ artifacts_written: z.array(z.string()),
33
+ /** Vocabulary map (when domain vocabulary is active) */
34
+ vocabulary_map: z.record(z.string()).optional(),
35
+ });
36
+ /**
37
+ * Write derivation state to the ops directory.
38
+ * Uses YAML for human readability.
39
+ */
40
+ export function writeDerivationState(workspacePath, state) {
41
+ const derivationPath = getDerivationPath(workspacePath);
42
+ writeFileSafe(derivationPath, stringifyYAML(state));
43
+ }
44
+ /**
45
+ * Read derivation state from the ops directory.
46
+ * Returns null if no derivation state exists.
47
+ */
48
+ export function readDerivationState(workspacePath) {
49
+ const derivationPath = getDerivationPath(workspacePath);
50
+ const content = readFileIfExists(derivationPath);
51
+ if (!content)
52
+ return null;
53
+ try {
54
+ const parsed = parseYAML(content);
55
+ return DerivationStateSchema.parse(parsed);
56
+ }
57
+ catch {
58
+ return null;
59
+ }
60
+ }
61
+ /**
62
+ * Check whether a derivation state exists and can be resumed.
63
+ * Returns true if there's an incomplete derivation (not all steps done).
64
+ */
65
+ export function canResume(workspacePath) {
66
+ const state = readDerivationState(workspacePath);
67
+ if (!state)
68
+ return false;
69
+ const ALL_STEPS = ['constitution', 'guardrails', 'memory', 'skills', 'playbooks'];
70
+ return !ALL_STEPS.every(step => state.completed_steps.includes(step));
71
+ }
72
+ /**
73
+ * Build initial derivation state from a session.
74
+ */
75
+ export function buildDerivationState(session, generatorVersion) {
76
+ const resolutions = [];
77
+ // Extract dimension resolutions from interview coverage
78
+ if (session.interview?.dimension_coverage) {
79
+ for (const dim of session.interview.dimension_coverage) {
80
+ resolutions.push({
81
+ dimension_id: dim.dimension_id,
82
+ confidence: dim.confidence ?? (dim.status === 'covered' ? 1.5 : 0),
83
+ summary: dim.summary ?? '',
84
+ extracted_facts: dim.extracted_facts ?? [],
85
+ anti_signals: dim.anti_signals ?? [],
86
+ });
87
+ }
88
+ }
89
+ return {
90
+ schema_version: 'derivation.v1',
91
+ created_at: new Date().toISOString(),
92
+ session_id: session.session_id,
93
+ domain_id: session.domain_id,
94
+ generator_version: generatorVersion,
95
+ dimension_resolutions: resolutions,
96
+ structured_answers: session.structured_answers,
97
+ completed_steps: [],
98
+ artifacts_written: [],
99
+ };
100
+ }
101
+ /**
102
+ * Get the path for the derivation state file.
103
+ * Checks both three-space layout (ops/) and flat layout.
104
+ */
105
+ function getDerivationPath(workspacePath) {
106
+ // Three-space layout: .tastekit/ops/derivation.v1.yaml
107
+ return join(workspacePath, 'ops', 'derivation.v1.yaml');
108
+ }
109
+ //# sourceMappingURL=derivation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"derivation.js","sourceRoot":"","sources":["../../compiler/derivation.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ import { GuardrailsV1 } from '../schemas/guardrails.js';
2
+ import { SessionState } from '../schemas/workspace.js';
3
+ /**
4
+ * Guardrails compiler
5
+ *
6
+ * Compiles guardrails based on autonomy level, domain context, and safety
7
+ * preferences from the onboarding interview. Dual-path: uses rich
8
+ * StructuredAnswers if available, otherwise falls back to legacy flat answers.
9
+ */
10
+ export declare function compileGuardrails(session: SessionState): GuardrailsV1;
11
+ //# sourceMappingURL=guardrails-compiler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"guardrails-compiler.d.ts","sourceRoot":"","sources":["../../compiler/guardrails-compiler.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EAIb,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAIvD;;;;;;GAMG;AAEH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,YAAY,GAAG,YAAY,CAQrE"}