@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,265 @@
1
+ import { z } from 'zod';
2
+ /**
3
+ * Domain Rubric Schema
4
+ *
5
+ * A rubric defines the *dimensions* the LLM should explore during an interview.
6
+ * Dimensions are NOT questions — they are topic areas with guidance for the LLM.
7
+ * The LLM decides how to explore each dimension adaptively.
8
+ */
9
+ export declare const RubricDimensionSchema: z.ZodObject<{
10
+ /** Stable identifier, e.g., "brand_voice" */
11
+ id: z.ZodString;
12
+ /** Human-readable name, e.g., "Brand Voice & Tone" */
13
+ name: z.ZodString;
14
+ /** What this dimension captures. The LLM reads this to understand what to explore. */
15
+ description: z.ZodString;
16
+ /** Which constitution section(s) this dimension maps to */
17
+ maps_to: z.ZodArray<z.ZodEnum<["principles", "tone", "tradeoffs", "evidence_policy", "taboos", "domain_specific"]>, "many">;
18
+ /** Which depth tiers include this dimension */
19
+ depth_tiers: z.ZodArray<z.ZodEnum<["quick", "guided", "operator"]>, "many">;
20
+ /** How essential direct questioning is for this dimension. */
21
+ priority: z.ZodDefault<z.ZodEnum<["critical", "important", "nice-to-have", "inferable"]>>;
22
+ /** Suggested question budget for this dimension at interview time. */
23
+ question_budget: z.ZodOptional<z.ZodObject<{
24
+ min: z.ZodDefault<z.ZodNumber>;
25
+ max: z.ZodDefault<z.ZodNumber>;
26
+ }, "strip", z.ZodTypeAny, {
27
+ min: number;
28
+ max: number;
29
+ }, {
30
+ min?: number | undefined;
31
+ max?: number | undefined;
32
+ }>>;
33
+ /**
34
+ * Hints for the LLM: what angles to explore, what to listen for.
35
+ * NOT questions to ask verbatim.
36
+ */
37
+ exploration_hints: z.ZodArray<z.ZodString, "many">;
38
+ /**
39
+ * What a good answer covers. Used by the LLM to decide if the
40
+ * dimension is adequately covered.
41
+ */
42
+ coverage_criteria: z.ZodArray<z.ZodString, "many">;
43
+ /** Optional sub-areas for deeper probing at operator depth. */
44
+ sub_areas: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
45
+ /**
46
+ * Cascade relationships: when this dimension resolves, propagate
47
+ * INFERRED signals to related dimensions.
48
+ */
49
+ cascade_to: z.ZodOptional<z.ZodArray<z.ZodObject<{
50
+ /** Target dimension ID to cascade to */
51
+ dimension_id: z.ZodString;
52
+ /** Inferred confidence weight (default 0.2) */
53
+ weight: z.ZodDefault<z.ZodNumber>;
54
+ /** Optional condition for the cascade */
55
+ condition: z.ZodOptional<z.ZodString>;
56
+ }, "strip", z.ZodTypeAny, {
57
+ weight: number;
58
+ dimension_id: string;
59
+ condition?: string | undefined;
60
+ }, {
61
+ dimension_id: string;
62
+ weight?: number | undefined;
63
+ condition?: string | undefined;
64
+ }>, "many">>;
65
+ }, "strip", z.ZodTypeAny, {
66
+ description: string;
67
+ name: string;
68
+ id: string;
69
+ priority: "critical" | "important" | "nice-to-have" | "inferable";
70
+ maps_to: ("principles" | "tone" | "tradeoffs" | "evidence_policy" | "taboos" | "domain_specific")[];
71
+ depth_tiers: ("quick" | "guided" | "operator")[];
72
+ exploration_hints: string[];
73
+ coverage_criteria: string[];
74
+ question_budget?: {
75
+ min: number;
76
+ max: number;
77
+ } | undefined;
78
+ sub_areas?: string[] | undefined;
79
+ cascade_to?: {
80
+ weight: number;
81
+ dimension_id: string;
82
+ condition?: string | undefined;
83
+ }[] | undefined;
84
+ }, {
85
+ description: string;
86
+ name: string;
87
+ id: string;
88
+ maps_to: ("principles" | "tone" | "tradeoffs" | "evidence_policy" | "taboos" | "domain_specific")[];
89
+ depth_tiers: ("quick" | "guided" | "operator")[];
90
+ exploration_hints: string[];
91
+ coverage_criteria: string[];
92
+ priority?: "critical" | "important" | "nice-to-have" | "inferable" | undefined;
93
+ question_budget?: {
94
+ min?: number | undefined;
95
+ max?: number | undefined;
96
+ } | undefined;
97
+ sub_areas?: string[] | undefined;
98
+ cascade_to?: {
99
+ dimension_id: string;
100
+ weight?: number | undefined;
101
+ condition?: string | undefined;
102
+ }[] | undefined;
103
+ }>;
104
+ export type RubricDimension = z.infer<typeof RubricDimensionSchema>;
105
+ /**
106
+ * A complete domain rubric: dimensions + metadata.
107
+ */
108
+ export declare const DomainRubricSchema: z.ZodObject<{
109
+ /** Must match the domain id from the domain registry */
110
+ domain_id: z.ZodString;
111
+ /** Version of this rubric */
112
+ version: z.ZodString;
113
+ /** Brief description of this domain's interview goals */
114
+ interview_goal: z.ZodString;
115
+ /** The full set of dimensions. Filtered by depth_tiers at runtime. */
116
+ dimensions: z.ZodArray<z.ZodObject<{
117
+ /** Stable identifier, e.g., "brand_voice" */
118
+ id: z.ZodString;
119
+ /** Human-readable name, e.g., "Brand Voice & Tone" */
120
+ name: z.ZodString;
121
+ /** What this dimension captures. The LLM reads this to understand what to explore. */
122
+ description: z.ZodString;
123
+ /** Which constitution section(s) this dimension maps to */
124
+ maps_to: z.ZodArray<z.ZodEnum<["principles", "tone", "tradeoffs", "evidence_policy", "taboos", "domain_specific"]>, "many">;
125
+ /** Which depth tiers include this dimension */
126
+ depth_tiers: z.ZodArray<z.ZodEnum<["quick", "guided", "operator"]>, "many">;
127
+ /** How essential direct questioning is for this dimension. */
128
+ priority: z.ZodDefault<z.ZodEnum<["critical", "important", "nice-to-have", "inferable"]>>;
129
+ /** Suggested question budget for this dimension at interview time. */
130
+ question_budget: z.ZodOptional<z.ZodObject<{
131
+ min: z.ZodDefault<z.ZodNumber>;
132
+ max: z.ZodDefault<z.ZodNumber>;
133
+ }, "strip", z.ZodTypeAny, {
134
+ min: number;
135
+ max: number;
136
+ }, {
137
+ min?: number | undefined;
138
+ max?: number | undefined;
139
+ }>>;
140
+ /**
141
+ * Hints for the LLM: what angles to explore, what to listen for.
142
+ * NOT questions to ask verbatim.
143
+ */
144
+ exploration_hints: z.ZodArray<z.ZodString, "many">;
145
+ /**
146
+ * What a good answer covers. Used by the LLM to decide if the
147
+ * dimension is adequately covered.
148
+ */
149
+ coverage_criteria: z.ZodArray<z.ZodString, "many">;
150
+ /** Optional sub-areas for deeper probing at operator depth. */
151
+ sub_areas: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
152
+ /**
153
+ * Cascade relationships: when this dimension resolves, propagate
154
+ * INFERRED signals to related dimensions.
155
+ */
156
+ cascade_to: z.ZodOptional<z.ZodArray<z.ZodObject<{
157
+ /** Target dimension ID to cascade to */
158
+ dimension_id: z.ZodString;
159
+ /** Inferred confidence weight (default 0.2) */
160
+ weight: z.ZodDefault<z.ZodNumber>;
161
+ /** Optional condition for the cascade */
162
+ condition: z.ZodOptional<z.ZodString>;
163
+ }, "strip", z.ZodTypeAny, {
164
+ weight: number;
165
+ dimension_id: string;
166
+ condition?: string | undefined;
167
+ }, {
168
+ dimension_id: string;
169
+ weight?: number | undefined;
170
+ condition?: string | undefined;
171
+ }>, "many">>;
172
+ }, "strip", z.ZodTypeAny, {
173
+ description: string;
174
+ name: string;
175
+ id: string;
176
+ priority: "critical" | "important" | "nice-to-have" | "inferable";
177
+ maps_to: ("principles" | "tone" | "tradeoffs" | "evidence_policy" | "taboos" | "domain_specific")[];
178
+ depth_tiers: ("quick" | "guided" | "operator")[];
179
+ exploration_hints: string[];
180
+ coverage_criteria: string[];
181
+ question_budget?: {
182
+ min: number;
183
+ max: number;
184
+ } | undefined;
185
+ sub_areas?: string[] | undefined;
186
+ cascade_to?: {
187
+ weight: number;
188
+ dimension_id: string;
189
+ condition?: string | undefined;
190
+ }[] | undefined;
191
+ }, {
192
+ description: string;
193
+ name: string;
194
+ id: string;
195
+ maps_to: ("principles" | "tone" | "tradeoffs" | "evidence_policy" | "taboos" | "domain_specific")[];
196
+ depth_tiers: ("quick" | "guided" | "operator")[];
197
+ exploration_hints: string[];
198
+ coverage_criteria: string[];
199
+ priority?: "critical" | "important" | "nice-to-have" | "inferable" | undefined;
200
+ question_budget?: {
201
+ min?: number | undefined;
202
+ max?: number | undefined;
203
+ } | undefined;
204
+ sub_areas?: string[] | undefined;
205
+ cascade_to?: {
206
+ dimension_id: string;
207
+ weight?: number | undefined;
208
+ condition?: string | undefined;
209
+ }[] | undefined;
210
+ }>, "many">;
211
+ /** Whether to include universal dimensions (core_purpose, tone, etc.) */
212
+ includes_universal: z.ZodDefault<z.ZodBoolean>;
213
+ }, "strip", z.ZodTypeAny, {
214
+ version: string;
215
+ domain_id: string;
216
+ interview_goal: string;
217
+ dimensions: {
218
+ description: string;
219
+ name: string;
220
+ id: string;
221
+ priority: "critical" | "important" | "nice-to-have" | "inferable";
222
+ maps_to: ("principles" | "tone" | "tradeoffs" | "evidence_policy" | "taboos" | "domain_specific")[];
223
+ depth_tiers: ("quick" | "guided" | "operator")[];
224
+ exploration_hints: string[];
225
+ coverage_criteria: string[];
226
+ question_budget?: {
227
+ min: number;
228
+ max: number;
229
+ } | undefined;
230
+ sub_areas?: string[] | undefined;
231
+ cascade_to?: {
232
+ weight: number;
233
+ dimension_id: string;
234
+ condition?: string | undefined;
235
+ }[] | undefined;
236
+ }[];
237
+ includes_universal: boolean;
238
+ }, {
239
+ version: string;
240
+ domain_id: string;
241
+ interview_goal: string;
242
+ dimensions: {
243
+ description: string;
244
+ name: string;
245
+ id: string;
246
+ maps_to: ("principles" | "tone" | "tradeoffs" | "evidence_policy" | "taboos" | "domain_specific")[];
247
+ depth_tiers: ("quick" | "guided" | "operator")[];
248
+ exploration_hints: string[];
249
+ coverage_criteria: string[];
250
+ priority?: "critical" | "important" | "nice-to-have" | "inferable" | undefined;
251
+ question_budget?: {
252
+ min?: number | undefined;
253
+ max?: number | undefined;
254
+ } | undefined;
255
+ sub_areas?: string[] | undefined;
256
+ cascade_to?: {
257
+ dimension_id: string;
258
+ weight?: number | undefined;
259
+ condition?: string | undefined;
260
+ }[] | undefined;
261
+ }[];
262
+ includes_universal?: boolean | undefined;
263
+ }>;
264
+ export type DomainRubric = z.infer<typeof DomainRubricSchema>;
265
+ //# sourceMappingURL=rubric.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rubric.d.ts","sourceRoot":"","sources":["../../interview/rubric.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;;;GAMG;AAEH,eAAO,MAAM,qBAAqB;IAChC,6CAA6C;;IAG7C,sDAAsD;;IAGtD,sFAAsF;;IAGtF,2DAA2D;;IAU3D,+CAA+C;;IAG/C,8DAA8D;;IAG9D,sEAAsE;;;;;;;;;;;IAMtE;;;OAGG;;IAGH;;;OAGG;;IAGH,+DAA+D;;IAG/D;;;OAGG;;QAED,wCAAwC;;QAExC,+CAA+C;;QAE/C,yCAAyC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAG3C,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE;;GAEG;AACH,eAAO,MAAM,kBAAkB;IAC7B,wDAAwD;;IAGxD,6BAA6B;;IAG7B,yDAAyD;;IAGzD,sEAAsE;;QA3EtE,6CAA6C;;QAG7C,sDAAsD;;QAGtD,sFAAsF;;QAGtF,2DAA2D;;QAU3D,+CAA+C;;QAG/C,8DAA8D;;QAG9D,sEAAsE;;;;;;;;;;;QAMtE;;;WAGG;;QAGH;;;WAGG;;QAGH,+DAA+D;;QAG/D;;;WAGG;;YAED,wCAAwC;;YAExC,+CAA+C;;YAE/C,yCAAyC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAuB3C,yEAAyE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAEzE,CAAC;AAEH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC"}
@@ -0,0 +1,74 @@
1
+ import { z } from 'zod';
2
+ /**
3
+ * Domain Rubric Schema
4
+ *
5
+ * A rubric defines the *dimensions* the LLM should explore during an interview.
6
+ * Dimensions are NOT questions — they are topic areas with guidance for the LLM.
7
+ * The LLM decides how to explore each dimension adaptively.
8
+ */
9
+ export const RubricDimensionSchema = z.object({
10
+ /** Stable identifier, e.g., "brand_voice" */
11
+ id: z.string(),
12
+ /** Human-readable name, e.g., "Brand Voice & Tone" */
13
+ name: z.string(),
14
+ /** What this dimension captures. The LLM reads this to understand what to explore. */
15
+ description: z.string(),
16
+ /** Which constitution section(s) this dimension maps to */
17
+ maps_to: z.array(z.enum([
18
+ 'principles',
19
+ 'tone',
20
+ 'tradeoffs',
21
+ 'evidence_policy',
22
+ 'taboos',
23
+ 'domain_specific',
24
+ ])),
25
+ /** Which depth tiers include this dimension */
26
+ depth_tiers: z.array(z.enum(['quick', 'guided', 'operator'])),
27
+ /** How essential direct questioning is for this dimension. */
28
+ priority: z.enum(['critical', 'important', 'nice-to-have', 'inferable']).default('important'),
29
+ /** Suggested question budget for this dimension at interview time. */
30
+ question_budget: z.object({
31
+ min: z.number().default(0),
32
+ max: z.number().default(3),
33
+ }).optional(),
34
+ /**
35
+ * Hints for the LLM: what angles to explore, what to listen for.
36
+ * NOT questions to ask verbatim.
37
+ */
38
+ exploration_hints: z.array(z.string()),
39
+ /**
40
+ * What a good answer covers. Used by the LLM to decide if the
41
+ * dimension is adequately covered.
42
+ */
43
+ coverage_criteria: z.array(z.string()),
44
+ /** Optional sub-areas for deeper probing at operator depth. */
45
+ sub_areas: z.array(z.string()).optional(),
46
+ /**
47
+ * Cascade relationships: when this dimension resolves, propagate
48
+ * INFERRED signals to related dimensions.
49
+ */
50
+ cascade_to: z.array(z.object({
51
+ /** Target dimension ID to cascade to */
52
+ dimension_id: z.string(),
53
+ /** Inferred confidence weight (default 0.2) */
54
+ weight: z.number().default(0.2),
55
+ /** Optional condition for the cascade */
56
+ condition: z.string().optional(),
57
+ })).optional(),
58
+ });
59
+ /**
60
+ * A complete domain rubric: dimensions + metadata.
61
+ */
62
+ export const DomainRubricSchema = z.object({
63
+ /** Must match the domain id from the domain registry */
64
+ domain_id: z.string(),
65
+ /** Version of this rubric */
66
+ version: z.string(),
67
+ /** Brief description of this domain's interview goals */
68
+ interview_goal: z.string(),
69
+ /** The full set of dimensions. Filtered by depth_tiers at runtime. */
70
+ dimensions: z.array(RubricDimensionSchema),
71
+ /** Whether to include universal dimensions (core_purpose, tone, etc.) */
72
+ includes_universal: z.boolean().default(true),
73
+ });
74
+ //# sourceMappingURL=rubric.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rubric.js","sourceRoot":"","sources":["../../interview/rubric.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;;;GAMG;AAEH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5C,6CAA6C;IAC7C,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;IAEd,sDAAsD;IACtD,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAEhB,sFAAsF;IACtF,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;IAEvB,2DAA2D;IAC3D,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;QACtB,YAAY;QACZ,MAAM;QACN,WAAW;QACX,iBAAiB;QACjB,QAAQ;QACR,iBAAiB;KAClB,CAAC,CAAC;IAEH,+CAA+C;IAC/C,WAAW,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC;IAE7D,8DAA8D;IAC9D,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,WAAW,EAAE,cAAc,EAAE,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC;IAE7F,sEAAsE;IACtE,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC;QACxB,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;QAC1B,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;KAC3B,CAAC,CAAC,QAAQ,EAAE;IAEb;;;OAGG;IACH,iBAAiB,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IAEtC;;;OAGG;IACH,iBAAiB,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IAEtC,+DAA+D;IAC/D,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;IAEzC;;;OAGG;IACH,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;QAC3B,wCAAwC;QACxC,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE;QACxB,+CAA+C;QAC/C,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC;QAC/B,yCAAyC;QACzC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;KACjC,CAAC,CAAC,CAAC,QAAQ,EAAE;CACf,CAAC,CAAC;AAIH;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,wDAAwD;IACxD,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IAErB,6BAA6B;IAC7B,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;IAEnB,yDAAyD;IACzD,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE;IAE1B,sEAAsE;IACtE,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,qBAAqB,CAAC;IAE1C,yEAAyE;IACzE,kBAAkB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;CAC9C,CAAC,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { SessionState } from '../schemas/workspace.js';
2
+ /**
3
+ * Session state management
4
+ */
5
+ export declare function loadSession(path: string): SessionState;
6
+ export declare function saveSession(path: string, session: SessionState): void;
7
+ export declare function createSession(depth: 'quick' | 'guided' | 'operator'): SessionState;
8
+ export declare function isSessionComplete(session: SessionState): boolean;
9
+ //# sourceMappingURL=session.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../interview/session.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAGvD;;GAEG;AAEH,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,CAGtD;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,GAAG,IAAI,CAGrE;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,QAAQ,GAAG,UAAU,GAAG,YAAY,CAUlF;AAED,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAQhE"}
@@ -0,0 +1,33 @@
1
+ import { readFileSync, writeFileSync } from 'fs';
2
+ /**
3
+ * Session state management
4
+ */
5
+ export function loadSession(path) {
6
+ const content = readFileSync(path, 'utf-8');
7
+ return JSON.parse(content);
8
+ }
9
+ export function saveSession(path, session) {
10
+ session.last_updated_at = new Date().toISOString();
11
+ writeFileSync(path, JSON.stringify(session, null, 2));
12
+ }
13
+ export function createSession(depth) {
14
+ return {
15
+ session_id: crypto.randomUUID(),
16
+ started_at: new Date().toISOString(),
17
+ last_updated_at: new Date().toISOString(),
18
+ depth,
19
+ current_step: 'welcome',
20
+ completed_steps: [],
21
+ answers: {},
22
+ };
23
+ }
24
+ export function isSessionComplete(session) {
25
+ // New LLM interview flow
26
+ if (session.interview) {
27
+ return session.interview.is_complete;
28
+ }
29
+ // Legacy hardcoded flow (backward compat)
30
+ const requiredSteps = ['welcome', 'goals', 'tone', 'tradeoffs'];
31
+ return requiredSteps.every(step => session.completed_steps.includes(step));
32
+ }
33
+ //# sourceMappingURL=session.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session.js","sourceRoot":"","sources":["../../interview/session.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,IAAI,CAAC;AAEjD;;GAEG;AAEH,MAAM,UAAU,WAAW,CAAC,IAAY;IACtC,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC5C,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;AAC7B,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,IAAY,EAAE,OAAqB;IAC7D,OAAO,CAAC,eAAe,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACnD,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;AACxD,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,KAAsC;IAClE,OAAO;QACL,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE;QAC/B,UAAU,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACpC,eAAe,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACzC,KAAK;QACL,YAAY,EAAE,SAAS;QACvB,eAAe,EAAE,EAAE;QACnB,OAAO,EAAE,EAAE;KACZ,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,OAAqB;IACrD,yBAAyB;IACzB,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;QACtB,OAAO,OAAO,CAAC,SAAS,CAAC,WAAW,CAAC;IACvC,CAAC;IACD,0CAA0C;IAC1C,MAAM,aAAa,GAAG,CAAC,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;IAChE,OAAO,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,eAAe,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;AAC7E,CAAC"}
@@ -0,0 +1,11 @@
1
+ import { RubricDimension, DomainRubric } from './rubric.js';
2
+ /**
3
+ * Universal dimensions shared across all domains.
4
+ * These cover the base constitution fields that every taste profile needs.
5
+ */
6
+ export declare const UNIVERSAL_DIMENSIONS: RubricDimension[];
7
+ /**
8
+ * Get dimensions for a specific depth level, combining universal + domain-specific.
9
+ */
10
+ export declare function getDimensionsForDepth(rubric: DomainRubric, depth: 'quick' | 'guided' | 'operator', universalDimensions?: RubricDimension[]): RubricDimension[];
11
+ //# sourceMappingURL=universal-rubric.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"universal-rubric.d.ts","sourceRoot":"","sources":["../../interview/universal-rubric.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE5D;;;GAGG;AACH,eAAO,MAAM,oBAAoB,EAAE,eAAe,EAqJjD,CAAC;AAEF;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,YAAY,EACpB,KAAK,EAAE,OAAO,GAAG,QAAQ,GAAG,UAAU,EACtC,mBAAmB,GAAE,eAAe,EAAyB,GAC5D,eAAe,EAAE,CAMnB"}
@@ -0,0 +1,165 @@
1
+ /**
2
+ * Universal dimensions shared across all domains.
3
+ * These cover the base constitution fields that every taste profile needs.
4
+ */
5
+ export const UNIVERSAL_DIMENSIONS = [
6
+ {
7
+ id: 'core_purpose',
8
+ name: 'Core Purpose & Goals',
9
+ description: 'What the user wants to achieve with their agent. Their primary mission, success criteria, and the problem they are solving.',
10
+ maps_to: ['principles'],
11
+ depth_tiers: ['quick', 'guided', 'operator'],
12
+ priority: 'critical',
13
+ question_budget: { min: 1, max: 3 },
14
+ exploration_hints: [
15
+ 'Start broad: what problem are they solving?',
16
+ 'Dig into what success looks like concretely',
17
+ 'Understand if this is personal, professional, or both',
18
+ 'Listen for implicit principles in how they describe their goals',
19
+ ],
20
+ coverage_criteria: [
21
+ 'Clear primary goal stated',
22
+ 'At least one success metric or criteria identified',
23
+ 'Context for why this matters to them',
24
+ ],
25
+ cascade_to: [
26
+ { dimension_id: 'guiding_principles', weight: 0.2 },
27
+ ],
28
+ },
29
+ {
30
+ id: 'guiding_principles',
31
+ name: 'Guiding Principles & Values',
32
+ description: 'The non-negotiable principles that should guide agent behavior. What matters most when making tradeoff decisions.',
33
+ maps_to: ['principles'],
34
+ depth_tiers: ['quick', 'guided', 'operator'],
35
+ priority: 'critical',
36
+ question_budget: { min: 1, max: 3 },
37
+ exploration_hints: [
38
+ 'Ask about past experiences where an AI did something they hated',
39
+ 'Ask about what "good" looks like vs. "great"',
40
+ 'Probe for implicit values (e.g., if they say "just get it done" that implies speed over perfection)',
41
+ 'At operator depth: ask for priority ordering between conflicting principles',
42
+ ],
43
+ coverage_criteria: [
44
+ 'At least 2-3 distinct principles identified',
45
+ 'Rationale understood for each',
46
+ 'Priority ordering established (at guided+ depth)',
47
+ ],
48
+ cascade_to: [
49
+ { dimension_id: 'communication_tone', weight: 0.15 },
50
+ ],
51
+ },
52
+ {
53
+ id: 'communication_tone',
54
+ name: 'Communication Style & Tone',
55
+ description: 'How the agent should communicate. Voice, register, vocabulary level, formatting preferences.',
56
+ maps_to: ['tone'],
57
+ depth_tiers: ['quick', 'guided', 'operator'],
58
+ priority: 'important',
59
+ question_budget: { min: 1, max: 2 },
60
+ exploration_hints: [
61
+ 'Ask them to describe the voice in 3-5 adjectives',
62
+ 'Ask for examples of communication they admire vs. what annoys them',
63
+ 'Probe formatting: do they want bullet points? Headers? Prose?',
64
+ 'At operator depth: explore context-specific tone differences',
65
+ ],
66
+ coverage_criteria: [
67
+ 'Voice descriptors captured',
68
+ 'At least one "never do" for tone',
69
+ 'Formatting preference expressed',
70
+ ],
71
+ },
72
+ {
73
+ id: 'autonomy_boundaries',
74
+ name: 'Autonomy & Decision Boundaries',
75
+ description: 'How much latitude the agent has. When to ask vs. when to act. Risk tolerance.',
76
+ maps_to: ['tradeoffs', 'taboos'],
77
+ depth_tiers: ['quick', 'guided', 'operator'],
78
+ priority: 'critical',
79
+ question_budget: { min: 1, max: 2 },
80
+ exploration_hints: [
81
+ 'Frame as a spectrum: "always ask" to "fully autonomous"',
82
+ 'Probe with concrete scenarios: "what if the agent encounters X?"',
83
+ 'Understand their risk tolerance for different action types',
84
+ 'At operator depth: explore specific escalation triggers',
85
+ ],
86
+ coverage_criteria: [
87
+ 'General autonomy level established',
88
+ 'At least one escalation scenario identified',
89
+ 'Risk tolerance direction clear',
90
+ ],
91
+ cascade_to: [
92
+ { dimension_id: 'hard_boundaries', weight: 0.3, condition: 'Strong autonomy preference implies specific boundary needs' },
93
+ ],
94
+ },
95
+ {
96
+ id: 'accuracy_evidence',
97
+ name: 'Accuracy & Evidence Standards',
98
+ description: 'How the agent should handle facts, uncertainty, citations, and claims.',
99
+ maps_to: ['evidence_policy', 'tradeoffs'],
100
+ depth_tiers: ['guided', 'operator'],
101
+ priority: 'important',
102
+ question_budget: { min: 0, max: 2 },
103
+ exploration_hints: [
104
+ 'Ask about accuracy vs. speed preference',
105
+ 'Probe when citations are needed vs. not',
106
+ 'Ask how the agent should express uncertainty',
107
+ 'At operator depth: domain-specific evidence requirements',
108
+ ],
109
+ coverage_criteria: [
110
+ 'Accuracy/speed tradeoff positioned',
111
+ 'Citation expectations set',
112
+ 'Uncertainty language preference expressed',
113
+ ],
114
+ cascade_to: [
115
+ { dimension_id: 'hard_boundaries', weight: 0.15, condition: 'Evidence standards hint at safety boundaries' },
116
+ ],
117
+ },
118
+ {
119
+ id: 'hard_boundaries',
120
+ name: 'Hard Boundaries & Taboos',
121
+ description: 'Things the agent must never do. Topics to avoid. Actions that always require human approval.',
122
+ maps_to: ['taboos'],
123
+ depth_tiers: ['guided', 'operator'],
124
+ priority: 'important',
125
+ question_budget: { min: 1, max: 2 },
126
+ exploration_hints: [
127
+ 'Ask about past negative experiences with AI agents',
128
+ 'Probe for sensitive topics in their domain',
129
+ 'Ask what would make them lose trust in the agent',
130
+ 'At operator depth: distinguish "never do" from "always escalate"',
131
+ ],
132
+ coverage_criteria: [
133
+ 'At least one "never do" rule identified',
134
+ 'At least one escalation trigger identified',
135
+ ],
136
+ },
137
+ {
138
+ id: 'cost_resource_sensitivity',
139
+ name: 'Cost & Resource Sensitivity',
140
+ description: 'How cost-sensitive they are. Token budget awareness. Preference for efficiency vs. thoroughness.',
141
+ maps_to: ['tradeoffs'],
142
+ depth_tiers: ['operator'],
143
+ priority: 'nice-to-have',
144
+ question_budget: { min: 0, max: 1 },
145
+ exploration_hints: [
146
+ 'Ask about budget constraints or token awareness',
147
+ 'Probe whether they prefer shorter responses to save cost',
148
+ 'Understand if they have rate limits or usage caps',
149
+ ],
150
+ coverage_criteria: [
151
+ 'Cost sensitivity level established',
152
+ ],
153
+ },
154
+ ];
155
+ /**
156
+ * Get dimensions for a specific depth level, combining universal + domain-specific.
157
+ */
158
+ export function getDimensionsForDepth(rubric, depth, universalDimensions = UNIVERSAL_DIMENSIONS) {
159
+ const domainDims = rubric.dimensions.filter(d => d.depth_tiers.includes(depth));
160
+ const universalDims = rubric.includes_universal
161
+ ? universalDimensions.filter(d => d.depth_tiers.includes(depth))
162
+ : [];
163
+ return [...universalDims, ...domainDims];
164
+ }
165
+ //# sourceMappingURL=universal-rubric.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"universal-rubric.js","sourceRoot":"","sources":["../../interview/universal-rubric.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * TasteKit LLM Module
3
+ *
4
+ * Minimal LLM provider abstraction. Supports Anthropic, OpenAI, and Ollama.
5
+ */
6
+ export * from './provider.js';
7
+ export * from './resolve.js';
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../llm/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * TasteKit LLM Module
3
+ *
4
+ * Minimal LLM provider abstraction. Supports Anthropic, OpenAI, and Ollama.
5
+ */
6
+ export * from './provider.js';
7
+ export * from './resolve.js';
8
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../llm/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC"}