jev-recipes 0.0.4 → 0.2.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 (527) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/README.md +52 -63
  3. package/dist/catalog/groups/answers.d.ts +565 -0
  4. package/dist/catalog/groups/answers.js +82 -0
  5. package/dist/catalog/groups/conversation.d.ts +608 -0
  6. package/dist/catalog/groups/conversation.js +90 -0
  7. package/dist/catalog/groups/knowledge.d.ts +522 -0
  8. package/dist/catalog/groups/knowledge.js +82 -0
  9. package/dist/catalog/groups/retrieval.d.ts +664 -0
  10. package/dist/catalog/groups/retrieval.js +106 -0
  11. package/dist/catalog/groups/support.d.ts +522 -0
  12. package/dist/catalog/groups/support.js +82 -0
  13. package/dist/catalog/groups/workflow.d.ts +623 -0
  14. package/dist/catalog/groups/workflow.js +98 -0
  15. package/dist/catalog/index.d.ts +1564 -5
  16. package/dist/catalog/recipes.d.ts +3239 -102
  17. package/dist/catalog/recipes.js +12 -48
  18. package/dist/catalog/schema.d.ts +65 -1
  19. package/dist/cli/index.js +1 -1
  20. package/dist/cli/schema.d.ts +191 -3
  21. package/dist/examples/support/schema.d.ts +7 -7
  22. package/dist/recipes/action-scope/index.d.ts +5 -0
  23. package/dist/recipes/action-scope/index.js +15 -0
  24. package/dist/recipes/action-scope/metadata.d.ts +8 -0
  25. package/dist/recipes/action-scope/metadata.js +10 -0
  26. package/dist/recipes/action-scope/schema.d.ts +37 -0
  27. package/dist/recipes/action-scope/schema.js +15 -0
  28. package/dist/recipes/answer-consistency/index.d.ts +5 -0
  29. package/dist/recipes/answer-consistency/index.js +16 -0
  30. package/dist/recipes/answer-consistency/metadata.d.ts +8 -0
  31. package/dist/recipes/answer-consistency/metadata.js +10 -0
  32. package/dist/recipes/answer-consistency/schema.d.ts +40 -0
  33. package/dist/recipes/answer-consistency/schema.js +20 -0
  34. package/dist/recipes/answer-coverage/index.d.ts +5 -0
  35. package/dist/recipes/answer-coverage/index.js +22 -0
  36. package/dist/recipes/answer-coverage/metadata.d.ts +8 -0
  37. package/dist/recipes/answer-coverage/metadata.js +11 -0
  38. package/dist/recipes/answer-coverage/schema.d.ts +50 -0
  39. package/dist/recipes/answer-coverage/schema.js +22 -0
  40. package/dist/recipes/answer-invalidation/index.d.ts +5 -0
  41. package/dist/recipes/answer-invalidation/index.js +15 -0
  42. package/dist/recipes/answer-invalidation/metadata.d.ts +8 -0
  43. package/dist/recipes/answer-invalidation/metadata.js +10 -0
  44. package/dist/recipes/answer-invalidation/schema.d.ts +37 -0
  45. package/dist/recipes/answer-invalidation/schema.js +19 -0
  46. package/dist/recipes/answer-relevance/index.d.ts +5 -0
  47. package/dist/recipes/answer-relevance/index.js +16 -0
  48. package/dist/recipes/answer-relevance/metadata.d.ts +8 -0
  49. package/dist/recipes/answer-relevance/metadata.js +10 -0
  50. package/dist/recipes/answer-relevance/schema.d.ts +39 -0
  51. package/dist/recipes/answer-relevance/schema.js +19 -0
  52. package/dist/recipes/answerability/index.js +15 -27
  53. package/dist/recipes/argument-fit/index.d.ts +5 -0
  54. package/dist/recipes/argument-fit/index.js +15 -0
  55. package/dist/recipes/argument-fit/metadata.d.ts +8 -0
  56. package/dist/recipes/argument-fit/metadata.js +10 -0
  57. package/dist/recipes/argument-fit/schema.d.ts +38 -0
  58. package/dist/recipes/argument-fit/schema.js +16 -0
  59. package/dist/recipes/attempted-step/index.d.ts +5 -0
  60. package/dist/recipes/attempted-step/index.js +15 -0
  61. package/dist/recipes/attempted-step/metadata.d.ts +8 -0
  62. package/dist/recipes/attempted-step/metadata.js +10 -0
  63. package/dist/recipes/attempted-step/schema.d.ts +36 -0
  64. package/dist/recipes/attempted-step/schema.js +14 -0
  65. package/dist/recipes/audience-fit/index.d.ts +5 -0
  66. package/dist/recipes/audience-fit/index.js +16 -0
  67. package/dist/recipes/audience-fit/metadata.d.ts +8 -0
  68. package/dist/recipes/audience-fit/metadata.js +10 -0
  69. package/dist/recipes/audience-fit/schema.d.ts +39 -0
  70. package/dist/recipes/audience-fit/schema.js +19 -0
  71. package/dist/recipes/cache-match/index.d.ts +5 -0
  72. package/dist/recipes/cache-match/index.js +15 -0
  73. package/dist/recipes/cache-match/metadata.d.ts +8 -0
  74. package/dist/recipes/cache-match/metadata.js +10 -0
  75. package/dist/recipes/cache-match/schema.d.ts +38 -0
  76. package/dist/recipes/cache-match/schema.js +16 -0
  77. package/dist/recipes/cancellation-check/index.d.ts +5 -0
  78. package/dist/recipes/cancellation-check/index.js +16 -0
  79. package/dist/recipes/cancellation-check/metadata.d.ts +8 -0
  80. package/dist/recipes/cancellation-check/metadata.js +10 -0
  81. package/dist/recipes/cancellation-check/schema.d.ts +40 -0
  82. package/dist/recipes/cancellation-check/schema.js +15 -0
  83. package/dist/recipes/certainty-match/index.d.ts +5 -0
  84. package/dist/recipes/certainty-match/index.js +16 -0
  85. package/dist/recipes/certainty-match/metadata.d.ts +8 -0
  86. package/dist/recipes/certainty-match/metadata.js +10 -0
  87. package/dist/recipes/certainty-match/schema.d.ts +39 -0
  88. package/dist/recipes/certainty-match/schema.js +19 -0
  89. package/dist/recipes/change-meaning/index.d.ts +5 -0
  90. package/dist/recipes/change-meaning/index.js +15 -0
  91. package/dist/recipes/change-meaning/metadata.d.ts +8 -0
  92. package/dist/recipes/change-meaning/metadata.js +10 -0
  93. package/dist/recipes/change-meaning/schema.d.ts +37 -0
  94. package/dist/recipes/change-meaning/schema.js +15 -0
  95. package/dist/recipes/citation-match/index.d.ts +5 -0
  96. package/dist/recipes/citation-match/index.js +21 -0
  97. package/dist/recipes/citation-match/metadata.d.ts +9 -0
  98. package/dist/recipes/citation-match/metadata.js +12 -0
  99. package/dist/recipes/citation-match/schema.d.ts +41 -0
  100. package/dist/recipes/citation-match/schema.js +13 -0
  101. package/dist/recipes/citation-needed/index.d.ts +5 -0
  102. package/dist/recipes/citation-needed/index.js +15 -0
  103. package/dist/recipes/citation-needed/metadata.d.ts +8 -0
  104. package/dist/recipes/citation-needed/metadata.js +10 -0
  105. package/dist/recipes/citation-needed/schema.d.ts +36 -0
  106. package/dist/recipes/citation-needed/schema.js +14 -0
  107. package/dist/recipes/clarify/index.js +15 -34
  108. package/dist/recipes/clarify/schema.d.ts +3 -3
  109. package/dist/recipes/confirmation-match/index.d.ts +5 -0
  110. package/dist/recipes/confirmation-match/index.js +15 -0
  111. package/dist/recipes/confirmation-match/metadata.d.ts +8 -0
  112. package/dist/recipes/confirmation-match/metadata.js +10 -0
  113. package/dist/recipes/confirmation-match/schema.d.ts +37 -0
  114. package/dist/recipes/confirmation-match/schema.js +15 -0
  115. package/dist/recipes/context-role/index.d.ts +5 -0
  116. package/dist/recipes/context-role/index.js +16 -0
  117. package/dist/recipes/context-role/metadata.d.ts +8 -0
  118. package/dist/recipes/context-role/metadata.js +10 -0
  119. package/dist/recipes/context-role/schema.d.ts +39 -0
  120. package/dist/recipes/context-role/schema.js +19 -0
  121. package/dist/recipes/correction-target/index.d.ts +5 -0
  122. package/dist/recipes/correction-target/index.js +7 -0
  123. package/dist/recipes/correction-target/metadata.d.ts +8 -0
  124. package/dist/recipes/correction-target/metadata.js +11 -0
  125. package/dist/recipes/correction-target/schema.d.ts +36 -0
  126. package/dist/recipes/correction-target/schema.js +9 -0
  127. package/dist/recipes/document-role/index.d.ts +5 -0
  128. package/dist/recipes/document-role/index.js +19 -0
  129. package/dist/recipes/document-role/metadata.d.ts +8 -0
  130. package/dist/recipes/document-role/metadata.js +10 -0
  131. package/dist/recipes/document-role/schema.d.ts +47 -0
  132. package/dist/recipes/document-role/schema.js +21 -0
  133. package/dist/recipes/draft-compare/index.d.ts +5 -0
  134. package/dist/recipes/draft-compare/index.js +17 -0
  135. package/dist/recipes/draft-compare/metadata.d.ts +8 -0
  136. package/dist/recipes/draft-compare/metadata.js +10 -0
  137. package/dist/recipes/draft-compare/schema.d.ts +44 -0
  138. package/dist/recipes/draft-compare/schema.js +16 -0
  139. package/dist/recipes/evidence-conflict/index.d.ts +5 -0
  140. package/dist/recipes/evidence-conflict/index.js +16 -0
  141. package/dist/recipes/evidence-conflict/metadata.d.ts +8 -0
  142. package/dist/recipes/evidence-conflict/metadata.js +10 -0
  143. package/dist/recipes/evidence-conflict/schema.d.ts +40 -0
  144. package/dist/recipes/evidence-conflict/schema.js +20 -0
  145. package/dist/recipes/evidence-novelty/index.d.ts +5 -0
  146. package/dist/recipes/evidence-novelty/index.js +16 -0
  147. package/dist/recipes/evidence-novelty/metadata.d.ts +8 -0
  148. package/dist/recipes/evidence-novelty/metadata.js +11 -0
  149. package/dist/recipes/evidence-novelty/schema.d.ts +43 -0
  150. package/dist/recipes/evidence-novelty/schema.js +20 -0
  151. package/dist/recipes/fact-stability/index.d.ts +5 -0
  152. package/dist/recipes/fact-stability/index.js +15 -0
  153. package/dist/recipes/fact-stability/metadata.d.ts +8 -0
  154. package/dist/recipes/fact-stability/metadata.js +10 -0
  155. package/dist/recipes/fact-stability/schema.d.ts +36 -0
  156. package/dist/recipes/fact-stability/schema.js +14 -0
  157. package/dist/recipes/failure-kind/index.d.ts +5 -0
  158. package/dist/recipes/failure-kind/index.js +7 -0
  159. package/dist/recipes/failure-kind/metadata.d.ts +8 -0
  160. package/dist/recipes/failure-kind/metadata.js +11 -0
  161. package/dist/recipes/failure-kind/schema.d.ts +36 -0
  162. package/dist/recipes/failure-kind/schema.js +9 -0
  163. package/dist/recipes/feedback-kind/index.d.ts +5 -0
  164. package/dist/recipes/feedback-kind/index.js +19 -0
  165. package/dist/recipes/feedback-kind/metadata.d.ts +8 -0
  166. package/dist/recipes/feedback-kind/metadata.js +10 -0
  167. package/dist/recipes/feedback-kind/schema.d.ts +48 -0
  168. package/dist/recipes/feedback-kind/schema.js +22 -0
  169. package/dist/recipes/field-select/index.d.ts +5 -0
  170. package/dist/recipes/field-select/index.js +7 -0
  171. package/dist/recipes/field-select/metadata.d.ts +8 -0
  172. package/dist/recipes/field-select/metadata.js +11 -0
  173. package/dist/recipes/field-select/schema.d.ts +36 -0
  174. package/dist/recipes/field-select/schema.js +9 -0
  175. package/dist/recipes/followup-link/index.d.ts +5 -0
  176. package/dist/recipes/followup-link/index.js +7 -0
  177. package/dist/recipes/followup-link/metadata.d.ts +8 -0
  178. package/dist/recipes/followup-link/metadata.js +11 -0
  179. package/dist/recipes/followup-link/schema.d.ts +36 -0
  180. package/dist/recipes/followup-link/schema.js +9 -0
  181. package/dist/recipes/freshness-needed/index.d.ts +5 -0
  182. package/dist/recipes/freshness-needed/index.js +15 -0
  183. package/dist/recipes/freshness-needed/metadata.d.ts +8 -0
  184. package/dist/recipes/freshness-needed/metadata.js +10 -0
  185. package/dist/recipes/freshness-needed/schema.d.ts +35 -0
  186. package/dist/recipes/freshness-needed/schema.js +13 -0
  187. package/dist/recipes/frustration-signal/index.d.ts +5 -0
  188. package/dist/recipes/frustration-signal/index.js +15 -0
  189. package/dist/recipes/frustration-signal/metadata.d.ts +8 -0
  190. package/dist/recipes/frustration-signal/metadata.js +10 -0
  191. package/dist/recipes/frustration-signal/schema.d.ts +36 -0
  192. package/dist/recipes/frustration-signal/schema.js +14 -0
  193. package/dist/recipes/handoff/index.js +16 -35
  194. package/dist/recipes/incident-match/index.d.ts +5 -0
  195. package/dist/recipes/incident-match/index.js +7 -0
  196. package/dist/recipes/incident-match/metadata.d.ts +8 -0
  197. package/dist/recipes/incident-match/metadata.js +11 -0
  198. package/dist/recipes/incident-match/schema.d.ts +36 -0
  199. package/dist/recipes/incident-match/schema.js +9 -0
  200. package/dist/recipes/instruction-fit/index.d.ts +5 -0
  201. package/dist/recipes/instruction-fit/index.js +15 -0
  202. package/dist/recipes/instruction-fit/metadata.d.ts +8 -0
  203. package/dist/recipes/instruction-fit/metadata.js +10 -0
  204. package/dist/recipes/instruction-fit/schema.d.ts +37 -0
  205. package/dist/recipes/instruction-fit/schema.js +15 -0
  206. package/dist/recipes/intent-change/index.d.ts +5 -0
  207. package/dist/recipes/intent-change/index.js +16 -0
  208. package/dist/recipes/intent-change/metadata.d.ts +8 -0
  209. package/dist/recipes/intent-change/metadata.js +10 -0
  210. package/dist/recipes/intent-change/schema.d.ts +40 -0
  211. package/dist/recipes/intent-change/schema.js +15 -0
  212. package/dist/recipes/issue-impact/index.d.ts +5 -0
  213. package/dist/recipes/issue-impact/index.js +16 -0
  214. package/dist/recipes/issue-impact/metadata.d.ts +8 -0
  215. package/dist/recipes/issue-impact/metadata.js +10 -0
  216. package/dist/recipes/issue-impact/schema.d.ts +39 -0
  217. package/dist/recipes/issue-impact/schema.js +14 -0
  218. package/dist/recipes/memory-relation/index.d.ts +5 -0
  219. package/dist/recipes/memory-relation/index.js +18 -0
  220. package/dist/recipes/memory-relation/metadata.d.ts +8 -0
  221. package/dist/recipes/memory-relation/metadata.js +10 -0
  222. package/dist/recipes/memory-relation/schema.d.ts +46 -0
  223. package/dist/recipes/memory-relation/schema.js +22 -0
  224. package/dist/recipes/memory-scope/index.d.ts +5 -0
  225. package/dist/recipes/memory-scope/index.js +17 -0
  226. package/dist/recipes/memory-scope/metadata.d.ts +8 -0
  227. package/dist/recipes/memory-scope/metadata.js +10 -0
  228. package/dist/recipes/memory-scope/schema.d.ts +42 -0
  229. package/dist/recipes/memory-scope/schema.js +14 -0
  230. package/dist/recipes/memory-value/index.d.ts +5 -0
  231. package/dist/recipes/memory-value/index.js +16 -0
  232. package/dist/recipes/memory-value/metadata.d.ts +8 -0
  233. package/dist/recipes/memory-value/metadata.js +10 -0
  234. package/dist/recipes/memory-value/schema.d.ts +40 -0
  235. package/dist/recipes/memory-value/schema.js +20 -0
  236. package/dist/recipes/passage-duplicate/index.d.ts +5 -0
  237. package/dist/recipes/passage-duplicate/index.js +16 -0
  238. package/dist/recipes/passage-duplicate/metadata.d.ts +8 -0
  239. package/dist/recipes/passage-duplicate/metadata.js +10 -0
  240. package/dist/recipes/passage-duplicate/schema.d.ts +39 -0
  241. package/dist/recipes/passage-duplicate/schema.js +19 -0
  242. package/dist/recipes/preference-kind/index.d.ts +5 -0
  243. package/dist/recipes/preference-kind/index.js +16 -0
  244. package/dist/recipes/preference-kind/metadata.d.ts +8 -0
  245. package/dist/recipes/preference-kind/metadata.js +10 -0
  246. package/dist/recipes/preference-kind/schema.d.ts +39 -0
  247. package/dist/recipes/preference-kind/schema.js +19 -0
  248. package/dist/recipes/promise-check/index.d.ts +5 -0
  249. package/dist/recipes/promise-check/index.js +15 -0
  250. package/dist/recipes/promise-check/metadata.d.ts +8 -0
  251. package/dist/recipes/promise-check/metadata.js +10 -0
  252. package/dist/recipes/promise-check/schema.d.ts +36 -0
  253. package/dist/recipes/promise-check/schema.js +14 -0
  254. package/dist/recipes/query-equivalence/index.d.ts +5 -0
  255. package/dist/recipes/query-equivalence/index.js +16 -0
  256. package/dist/recipes/query-equivalence/metadata.d.ts +8 -0
  257. package/dist/recipes/query-equivalence/metadata.js +10 -0
  258. package/dist/recipes/query-equivalence/schema.d.ts +40 -0
  259. package/dist/recipes/query-equivalence/schema.js +20 -0
  260. package/dist/recipes/query-specificity/index.d.ts +5 -0
  261. package/dist/recipes/query-specificity/index.js +15 -0
  262. package/dist/recipes/query-specificity/metadata.d.ts +8 -0
  263. package/dist/recipes/query-specificity/metadata.js +10 -0
  264. package/dist/recipes/query-specificity/schema.d.ts +36 -0
  265. package/dist/recipes/query-specificity/schema.js +14 -0
  266. package/dist/recipes/reference-resolve/index.d.ts +5 -0
  267. package/dist/recipes/reference-resolve/index.js +7 -0
  268. package/dist/recipes/reference-resolve/metadata.d.ts +8 -0
  269. package/dist/recipes/reference-resolve/metadata.js +11 -0
  270. package/dist/recipes/reference-resolve/schema.d.ts +37 -0
  271. package/dist/recipes/reference-resolve/schema.js +10 -0
  272. package/dist/recipes/repeated-attempt/index.d.ts +5 -0
  273. package/dist/recipes/repeated-attempt/index.js +15 -0
  274. package/dist/recipes/repeated-attempt/metadata.d.ts +8 -0
  275. package/dist/recipes/repeated-attempt/metadata.js +10 -0
  276. package/dist/recipes/repeated-attempt/schema.d.ts +37 -0
  277. package/dist/recipes/repeated-attempt/schema.js +19 -0
  278. package/dist/recipes/reply-template-match/index.d.ts +5 -0
  279. package/dist/recipes/reply-template-match/index.js +7 -0
  280. package/dist/recipes/reply-template-match/metadata.d.ts +8 -0
  281. package/dist/recipes/reply-template-match/metadata.js +11 -0
  282. package/dist/recipes/reply-template-match/schema.d.ts +36 -0
  283. package/dist/recipes/reply-template-match/schema.js +9 -0
  284. package/dist/recipes/rerank/index.js +7 -7
  285. package/dist/recipes/resolution-check/index.d.ts +5 -0
  286. package/dist/recipes/resolution-check/index.js +15 -0
  287. package/dist/recipes/resolution-check/metadata.d.ts +8 -0
  288. package/dist/recipes/resolution-check/metadata.js +10 -0
  289. package/dist/recipes/resolution-check/schema.d.ts +37 -0
  290. package/dist/recipes/resolution-check/schema.js +15 -0
  291. package/dist/recipes/response-needed/index.d.ts +5 -0
  292. package/dist/recipes/response-needed/index.js +15 -0
  293. package/dist/recipes/response-needed/metadata.d.ts +8 -0
  294. package/dist/recipes/response-needed/metadata.js +10 -0
  295. package/dist/recipes/response-needed/schema.d.ts +36 -0
  296. package/dist/recipes/response-needed/schema.js +14 -0
  297. package/dist/recipes/result-outcome/index.d.ts +5 -0
  298. package/dist/recipes/result-outcome/index.js +16 -0
  299. package/dist/recipes/result-outcome/metadata.d.ts +8 -0
  300. package/dist/recipes/result-outcome/metadata.js +10 -0
  301. package/dist/recipes/result-outcome/schema.d.ts +39 -0
  302. package/dist/recipes/result-outcome/schema.js +19 -0
  303. package/dist/recipes/result-usefulness/index.d.ts +5 -0
  304. package/dist/recipes/result-usefulness/index.js +16 -0
  305. package/dist/recipes/result-usefulness/metadata.d.ts +8 -0
  306. package/dist/recipes/result-usefulness/metadata.js +10 -0
  307. package/dist/recipes/result-usefulness/schema.d.ts +39 -0
  308. package/dist/recipes/result-usefulness/schema.js +19 -0
  309. package/dist/recipes/retrieval-needed/index.d.ts +5 -0
  310. package/dist/recipes/retrieval-needed/index.js +15 -0
  311. package/dist/recipes/retrieval-needed/metadata.d.ts +8 -0
  312. package/dist/recipes/retrieval-needed/metadata.js +10 -0
  313. package/dist/recipes/retrieval-needed/schema.d.ts +36 -0
  314. package/dist/recipes/retrieval-needed/schema.js +14 -0
  315. package/dist/recipes/route/index.js +12 -21
  316. package/dist/recipes/source-applicability/index.d.ts +5 -0
  317. package/dist/recipes/source-applicability/index.js +15 -0
  318. package/dist/recipes/source-applicability/metadata.d.ts +8 -0
  319. package/dist/recipes/source-applicability/metadata.js +10 -0
  320. package/dist/recipes/source-applicability/schema.d.ts +36 -0
  321. package/dist/recipes/source-applicability/schema.js +14 -0
  322. package/dist/recipes/step-complete/index.d.ts +5 -0
  323. package/dist/recipes/step-complete/index.js +15 -0
  324. package/dist/recipes/step-complete/metadata.d.ts +8 -0
  325. package/dist/recipes/step-complete/metadata.js +10 -0
  326. package/dist/recipes/step-complete/schema.d.ts +36 -0
  327. package/dist/recipes/step-complete/schema.js +14 -0
  328. package/dist/recipes/step-progress/index.d.ts +5 -0
  329. package/dist/recipes/step-progress/index.js +16 -0
  330. package/dist/recipes/step-progress/metadata.d.ts +8 -0
  331. package/dist/recipes/step-progress/metadata.js +10 -0
  332. package/dist/recipes/step-progress/schema.d.ts +40 -0
  333. package/dist/recipes/step-progress/schema.js +15 -0
  334. package/dist/recipes/summary-coverage/index.d.ts +5 -0
  335. package/dist/recipes/summary-coverage/index.js +22 -0
  336. package/dist/recipes/summary-coverage/metadata.d.ts +8 -0
  337. package/dist/recipes/summary-coverage/metadata.js +11 -0
  338. package/dist/recipes/summary-coverage/schema.d.ts +50 -0
  339. package/dist/recipes/summary-coverage/schema.js +22 -0
  340. package/dist/recipes/ticket-match/index.d.ts +5 -0
  341. package/dist/recipes/ticket-match/index.js +16 -0
  342. package/dist/recipes/ticket-match/metadata.d.ts +8 -0
  343. package/dist/recipes/ticket-match/metadata.js +10 -0
  344. package/dist/recipes/ticket-match/schema.d.ts +40 -0
  345. package/dist/recipes/ticket-match/schema.js +15 -0
  346. package/dist/recipes/tone-check/index.d.ts +5 -0
  347. package/dist/recipes/tone-check/index.js +21 -0
  348. package/dist/recipes/tone-check/metadata.d.ts +8 -0
  349. package/dist/recipes/tone-check/metadata.js +11 -0
  350. package/dist/recipes/tone-check/schema.d.ts +47 -0
  351. package/dist/recipes/tone-check/schema.js +22 -0
  352. package/dist/recipes/tool-fit/index.d.ts +5 -0
  353. package/dist/recipes/tool-fit/index.js +15 -0
  354. package/dist/recipes/tool-fit/metadata.d.ts +8 -0
  355. package/dist/recipes/tool-fit/metadata.js +10 -0
  356. package/dist/recipes/tool-fit/schema.d.ts +37 -0
  357. package/dist/recipes/tool-fit/schema.js +15 -0
  358. package/dist/recipes/topic-shift/index.d.ts +5 -0
  359. package/dist/recipes/topic-shift/index.js +16 -0
  360. package/dist/recipes/topic-shift/metadata.d.ts +8 -0
  361. package/dist/recipes/topic-shift/metadata.js +10 -0
  362. package/dist/recipes/topic-shift/schema.d.ts +40 -0
  363. package/dist/recipes/topic-shift/schema.js +15 -0
  364. package/dist/recipes/troubleshooting-fit/index.d.ts +5 -0
  365. package/dist/recipes/troubleshooting-fit/index.js +15 -0
  366. package/dist/recipes/troubleshooting-fit/metadata.d.ts +8 -0
  367. package/dist/recipes/troubleshooting-fit/metadata.js +10 -0
  368. package/dist/recipes/troubleshooting-fit/schema.d.ts +37 -0
  369. package/dist/recipes/troubleshooting-fit/schema.js +15 -0
  370. package/dist/recipes/turn-intent/index.d.ts +5 -0
  371. package/dist/recipes/turn-intent/index.js +19 -0
  372. package/dist/recipes/turn-intent/metadata.d.ts +8 -0
  373. package/dist/recipes/turn-intent/metadata.js +10 -0
  374. package/dist/recipes/turn-intent/schema.d.ts +48 -0
  375. package/dist/recipes/turn-intent/schema.js +22 -0
  376. package/dist/recipes/urgency-signal/index.d.ts +5 -0
  377. package/dist/recipes/urgency-signal/index.js +15 -0
  378. package/dist/recipes/urgency-signal/metadata.d.ts +8 -0
  379. package/dist/recipes/urgency-signal/metadata.js +10 -0
  380. package/dist/recipes/urgency-signal/schema.d.ts +36 -0
  381. package/dist/recipes/urgency-signal/schema.js +14 -0
  382. package/dist/recipes/verify/index.js +11 -31
  383. package/dist/recipes/workaround-fit/index.d.ts +5 -0
  384. package/dist/recipes/workaround-fit/index.js +15 -0
  385. package/dist/recipes/workaround-fit/metadata.d.ts +8 -0
  386. package/dist/recipes/workaround-fit/metadata.js +10 -0
  387. package/dist/recipes/workaround-fit/schema.d.ts +37 -0
  388. package/dist/recipes/workaround-fit/schema.js +15 -0
  389. package/dist/src/checks.d.ts +14 -0
  390. package/dist/src/checks.js +21 -0
  391. package/dist/src/decisions.d.ts +13 -0
  392. package/dist/src/decisions.js +26 -0
  393. package/dist/src/index.d.ts +120 -0
  394. package/dist/src/index.js +60 -0
  395. package/dist/src/schema.d.ts +48 -0
  396. package/dist/src/schema.js +30 -1
  397. package/dist/src/selection.d.ts +2 -0
  398. package/dist/src/selection.js +30 -0
  399. package/examples/support/README.md +1 -1
  400. package/package.json +254 -7
  401. package/recipes/README.md +128 -0
  402. package/recipes/action-scope/README.md +49 -0
  403. package/recipes/action-scope/demo.json +25 -0
  404. package/recipes/answer-consistency/README.md +50 -0
  405. package/recipes/answer-consistency/demo.json +26 -0
  406. package/recipes/answer-coverage/README.md +60 -0
  407. package/recipes/answer-coverage/demo.json +46 -0
  408. package/recipes/answer-invalidation/README.md +50 -0
  409. package/recipes/answer-invalidation/demo.json +26 -0
  410. package/recipes/answer-relevance/README.md +49 -0
  411. package/recipes/answer-relevance/demo.json +26 -0
  412. package/recipes/answerability/README.md +39 -14
  413. package/recipes/argument-fit/README.md +51 -0
  414. package/recipes/argument-fit/demo.json +26 -0
  415. package/recipes/attempted-step/README.md +48 -0
  416. package/recipes/attempted-step/demo.json +25 -0
  417. package/recipes/audience-fit/README.md +50 -0
  418. package/recipes/audience-fit/demo.json +26 -0
  419. package/recipes/cache-match/README.md +51 -0
  420. package/recipes/cache-match/demo.json +26 -0
  421. package/recipes/cancellation-check/README.md +50 -0
  422. package/recipes/cancellation-check/demo.json +26 -0
  423. package/recipes/certainty-match/README.md +49 -0
  424. package/recipes/certainty-match/demo.json +26 -0
  425. package/recipes/change-meaning/README.md +49 -0
  426. package/recipes/change-meaning/demo.json +25 -0
  427. package/recipes/citation-match/README.md +51 -0
  428. package/recipes/citation-match/demo.json +44 -0
  429. package/recipes/citation-needed/README.md +49 -0
  430. package/recipes/citation-needed/demo.json +25 -0
  431. package/recipes/clarify/README.md +42 -13
  432. package/recipes/confirmation-match/README.md +49 -0
  433. package/recipes/confirmation-match/demo.json +25 -0
  434. package/recipes/context-role/README.md +49 -0
  435. package/recipes/context-role/demo.json +26 -0
  436. package/recipes/correction-target/README.md +52 -0
  437. package/recipes/correction-target/demo.json +35 -0
  438. package/recipes/document-role/README.md +51 -0
  439. package/recipes/document-role/demo.json +28 -0
  440. package/recipes/draft-compare/README.md +54 -0
  441. package/recipes/draft-compare/demo.json +29 -0
  442. package/recipes/evidence-conflict/README.md +51 -0
  443. package/recipes/evidence-conflict/demo.json +27 -0
  444. package/recipes/evidence-novelty/README.md +56 -0
  445. package/recipes/evidence-novelty/demo.json +32 -0
  446. package/recipes/fact-stability/README.md +47 -0
  447. package/recipes/fact-stability/demo.json +24 -0
  448. package/recipes/failure-kind/README.md +52 -0
  449. package/recipes/failure-kind/demo.json +35 -0
  450. package/recipes/feedback-kind/README.md +51 -0
  451. package/recipes/feedback-kind/demo.json +28 -0
  452. package/recipes/field-select/README.md +53 -0
  453. package/recipes/field-select/demo.json +36 -0
  454. package/recipes/followup-link/README.md +52 -0
  455. package/recipes/followup-link/demo.json +35 -0
  456. package/recipes/freshness-needed/README.md +46 -0
  457. package/recipes/freshness-needed/demo.json +24 -0
  458. package/recipes/frustration-signal/README.md +47 -0
  459. package/recipes/frustration-signal/demo.json +24 -0
  460. package/recipes/handoff/README.md +34 -13
  461. package/recipes/incident-match/README.md +52 -0
  462. package/recipes/incident-match/demo.json +35 -0
  463. package/recipes/instruction-fit/README.md +49 -0
  464. package/recipes/instruction-fit/demo.json +25 -0
  465. package/recipes/intent-change/README.md +50 -0
  466. package/recipes/intent-change/demo.json +26 -0
  467. package/recipes/issue-impact/README.md +48 -0
  468. package/recipes/issue-impact/demo.json +25 -0
  469. package/recipes/memory-relation/README.md +52 -0
  470. package/recipes/memory-relation/demo.json +28 -0
  471. package/recipes/memory-scope/README.md +50 -0
  472. package/recipes/memory-scope/demo.json +27 -0
  473. package/recipes/memory-value/README.md +50 -0
  474. package/recipes/memory-value/demo.json +26 -0
  475. package/recipes/passage-duplicate/README.md +49 -0
  476. package/recipes/passage-duplicate/demo.json +26 -0
  477. package/recipes/preference-kind/README.md +48 -0
  478. package/recipes/preference-kind/demo.json +25 -0
  479. package/recipes/promise-check/README.md +48 -0
  480. package/recipes/promise-check/demo.json +25 -0
  481. package/recipes/query-equivalence/README.md +50 -0
  482. package/recipes/query-equivalence/demo.json +26 -0
  483. package/recipes/query-specificity/README.md +47 -0
  484. package/recipes/query-specificity/demo.json +24 -0
  485. package/recipes/reference-resolve/README.md +54 -0
  486. package/recipes/reference-resolve/demo.json +36 -0
  487. package/recipes/repeated-attempt/README.md +50 -0
  488. package/recipes/repeated-attempt/demo.json +26 -0
  489. package/recipes/reply-template-match/README.md +52 -0
  490. package/recipes/reply-template-match/demo.json +35 -0
  491. package/recipes/rerank/README.md +40 -10
  492. package/recipes/resolution-check/README.md +49 -0
  493. package/recipes/resolution-check/demo.json +25 -0
  494. package/recipes/response-needed/README.md +48 -0
  495. package/recipes/response-needed/demo.json +25 -0
  496. package/recipes/result-outcome/README.md +49 -0
  497. package/recipes/result-outcome/demo.json +26 -0
  498. package/recipes/result-usefulness/README.md +49 -0
  499. package/recipes/result-usefulness/demo.json +26 -0
  500. package/recipes/retrieval-needed/README.md +48 -0
  501. package/recipes/retrieval-needed/demo.json +25 -0
  502. package/recipes/route/README.md +30 -7
  503. package/recipes/source-applicability/README.md +48 -0
  504. package/recipes/source-applicability/demo.json +25 -0
  505. package/recipes/step-complete/README.md +48 -0
  506. package/recipes/step-complete/demo.json +25 -0
  507. package/recipes/step-progress/README.md +51 -0
  508. package/recipes/step-progress/demo.json +27 -0
  509. package/recipes/summary-coverage/README.md +60 -0
  510. package/recipes/summary-coverage/demo.json +46 -0
  511. package/recipes/ticket-match/README.md +50 -0
  512. package/recipes/ticket-match/demo.json +26 -0
  513. package/recipes/tone-check/README.md +55 -0
  514. package/recipes/tone-check/demo.json +30 -0
  515. package/recipes/tool-fit/README.md +49 -0
  516. package/recipes/tool-fit/demo.json +25 -0
  517. package/recipes/topic-shift/README.md +50 -0
  518. package/recipes/topic-shift/demo.json +26 -0
  519. package/recipes/troubleshooting-fit/README.md +49 -0
  520. package/recipes/troubleshooting-fit/demo.json +25 -0
  521. package/recipes/turn-intent/README.md +52 -0
  522. package/recipes/turn-intent/demo.json +29 -0
  523. package/recipes/urgency-signal/README.md +47 -0
  524. package/recipes/urgency-signal/demo.json +24 -0
  525. package/recipes/verify/README.md +37 -13
  526. package/recipes/workaround-fit/README.md +50 -0
  527. package/recipes/workaround-fit/demo.json +26 -0
@@ -0,0 +1,49 @@
1
+ # Check certainty wording
2
+
3
+ Does the certainty expressed in draft match assessment? Treat assessment as the supplied evidence assessment and do not independently re-evaluate its truth.
4
+
5
+ ```ts
6
+ import { certaintyMatch } from 'jev-recipes/certainty-match';
7
+
8
+ const result = await certaintyMatch({
9
+ draft: 'The outage was definitely caused by the deploy.',
10
+ assessment: 'The deploy is one possible cause; the cause has not been established.',
11
+ });
12
+
13
+ console.log(result.status, result.verdict);
14
+ ```
15
+
16
+ ## Input
17
+
18
+ | Field | Accepts |
19
+ | --------------- | -------------------------------------------- |
20
+ | `draft` | Non-empty text |
21
+ | `assessment` | Non-empty text |
22
+ | `minConfidence` | Optional number from 0 to 1; defaults to 0.8 |
23
+
24
+ See [shared options and behavior](../README.md#shared-options-and-behavior) for client configuration, validation, and errors.
25
+
26
+ ## Result
27
+
28
+ | Verdict | Meaning |
29
+ | ------------- | ----------------------------------------------------------------------------- |
30
+ | `overstated` | The draft expresses stronger certainty than the assessment supports. |
31
+ | `appropriate` | The draft expresses a degree of certainty consistent with the assessment. |
32
+ | `understated` | The draft expresses materially weaker certainty than the assessment supports. |
33
+ | `unclear` | The certainty levels cannot be compared from the supplied wording. |
34
+
35
+ The result includes `verdict`, `confidence`, and all choice `probabilities`. `unclear` always requires review, even at high confidence. Other verdicts can be ready, including negative assessments.
36
+
37
+ Results include model and token usage. Decisions below `minConfidence` require review. Inspect the outcome as well as the status.
38
+
39
+ ## Reuse and calls
40
+
41
+ Uses the shared choice helper for the Jev call and response parsing. This folder owns its question, verdict criteria, and review policy. A live invocation makes one logical Jev request; SDK retries can add transport attempts.
42
+
43
+ ## Limits
44
+
45
+ Compares wording with a supplied assessment. It does not calibrate probabilities or establish the assessment itself.
46
+
47
+ ## Example input
48
+
49
+ [demo.json](demo.json) contains editable input and a hand-authored response. After installing `jev-recipes`, `npx jev-recipes demo certainty-match` shows the result offline. The fixture is an illustration, not an accuracy measurement. `npx jev-recipes describe certainty-match` shows the input and result schemas.
@@ -0,0 +1,26 @@
1
+ {
2
+ "input": {
3
+ "draft": "The outage was definitely caused by the deploy.",
4
+ "assessment": "The deploy is one possible cause; the cause has not been established."
5
+ },
6
+ "response": {
7
+ "model": "demo-fixture",
8
+ "usage": {
9
+ "input_tokens": 0,
10
+ "output_tokens": 0
11
+ },
12
+ "answers": {
13
+ "decision": {
14
+ "type": "choice",
15
+ "choice": "overstated",
16
+ "confidence": 0.96,
17
+ "probabilities": {
18
+ "overstated": 1,
19
+ "appropriate": 0,
20
+ "understated": 0,
21
+ "unclear": 0
22
+ }
23
+ }
24
+ }
25
+ }
26
+ }
@@ -0,0 +1,49 @@
1
+ # Assess a text revision
2
+
3
+ Does the revision from before to after change material meaning, conditions, or obligations? Rephrasing that preserves the same meaning is editorial only.
4
+
5
+ ```ts
6
+ import { changeMeaning } from 'jev-recipes/change-meaning';
7
+
8
+ const result = await changeMeaning({
9
+ before: 'Guests may export reports.',
10
+ after: 'Only workspace owners may export reports.',
11
+ });
12
+
13
+ console.log(result.status, result.verdict);
14
+ ```
15
+
16
+ ## Input
17
+
18
+ | Field | Accepts |
19
+ | --------------- | -------------------------------------------- |
20
+ | `before` | Non-empty text |
21
+ | `after` | Non-empty text |
22
+ | `context` | Optional non-empty text |
23
+ | `minConfidence` | Optional number from 0 to 1; defaults to 0.8 |
24
+
25
+ See [shared options and behavior](../README.md#shared-options-and-behavior) for client configuration, validation, and errors.
26
+
27
+ ## Result
28
+
29
+ | Verdict | Meaning |
30
+ | ----------------- | ----------------------------------------------------------------------------------------------------- |
31
+ | `meaning_changed` | The revision changes a material fact, condition, instruction, or implication. |
32
+ | `editorial_only` | The revision preserves material meaning and changes only wording or presentation, or makes no change. |
33
+ | `unclear` | The material effect cannot be determined from the supplied text. |
34
+
35
+ The result includes `verdict`, `confidence`, and all choice `probabilities`. `unclear` always requires review, even at high confidence. Other verdicts can be ready, including negative assessments.
36
+
37
+ Results include model and token usage. Decisions below `minConfidence` require review. Inspect the outcome as well as the status.
38
+
39
+ ## Reuse and calls
40
+
41
+ Uses the shared choice helper for the Jev call and response parsing. This folder owns its question, verdict criteria, and review policy. A live invocation makes one logical Jev request; SDK retries can add transport attempts.
42
+
43
+ ## Limits
44
+
45
+ Compares supplied passages. It does not parse a repository diff or perform exact numeric and date comparisons.
46
+
47
+ ## Example input
48
+
49
+ [demo.json](demo.json) contains editable input and a hand-authored response. After installing `jev-recipes`, `npx jev-recipes demo change-meaning` shows the result offline. The fixture is an illustration, not an accuracy measurement. `npx jev-recipes describe change-meaning` shows the input and result schemas.
@@ -0,0 +1,25 @@
1
+ {
2
+ "input": {
3
+ "before": "Guests may export reports.",
4
+ "after": "Only workspace owners may export reports."
5
+ },
6
+ "response": {
7
+ "model": "demo-fixture",
8
+ "usage": {
9
+ "input_tokens": 0,
10
+ "output_tokens": 0
11
+ },
12
+ "answers": {
13
+ "decision": {
14
+ "type": "choice",
15
+ "choice": "meaning_changed",
16
+ "confidence": 0.96,
17
+ "probabilities": {
18
+ "meaning_changed": 1,
19
+ "editorial_only": 0,
20
+ "unclear": 0
21
+ }
22
+ }
23
+ }
24
+ }
25
+ }
@@ -0,0 +1,51 @@
1
+ # Match claims to citations
2
+
3
+ Find passages that support a supplied claim. Each passage is checked independently against the entire claim.
4
+
5
+ ```ts
6
+ import { citationMatch } from 'jev-recipes/citation-match';
7
+
8
+ const result = await citationMatch({
9
+ claim: 'Reset links expire after 30 minutes.',
10
+ passages: [
11
+ {
12
+ id: 'reset',
13
+ text: 'Password reset links expire after 30 minutes.',
14
+ },
15
+ {
16
+ id: 'billing',
17
+ text: 'Invoices are available on the Billing page.',
18
+ },
19
+ ],
20
+ });
21
+
22
+ console.log(result.status, result.passageIds);
23
+ ```
24
+
25
+ ## Input
26
+
27
+ | Field | Accepts |
28
+ | --------------- | -------------------------------------------- |
29
+ | `claim` | Non-empty text |
30
+ | `passages` | 1 to 50 `{ id, text }` items with unique IDs |
31
+ | `minConfidence` | Optional number from 0 to 1; defaults to 0.8 |
32
+
33
+ See [shared options and behavior](../README.md#shared-options-and-behavior) for client configuration, validation, and errors.
34
+
35
+ ## Result
36
+
37
+ `passageIds` contains every passage that independently supports the entire claim at or above the confidence threshold. `checks` preserves the verification result for each passage. If any passage qualifies, overall status is `ready`, even if other checks need review. With no qualifying passage, uncertainty produces `review`; otherwise a confident no-match returns `ready` with an empty list.
38
+
39
+ Results include model and token usage. Decisions below `minConfidence` require review. Inspect the outcome as well as the status.
40
+
41
+ ## Reuse and calls
42
+
43
+ Uses the public [`verify`](../verify/README.md) recipe once, with one claim/evidence pair per passage. It adds selection of confidently supported passage IDs. A live invocation makes one logical Jev request; SDK retries can add transport attempts. All item questions are sent in that request.
44
+
45
+ ## Limits
46
+
47
+ Returns passages that independently support the entire claim. Joint support across several individually incomplete passages is not assessed.
48
+
49
+ ## Example input
50
+
51
+ [demo.json](demo.json) contains editable input and a hand-authored response. After installing `jev-recipes`, `npx jev-recipes demo citation-match` shows the result offline. The fixture is an illustration, not an accuracy measurement. `npx jev-recipes describe citation-match` shows the input and result schemas.
@@ -0,0 +1,44 @@
1
+ {
2
+ "input": {
3
+ "claim": "Reset links expire after 30 minutes.",
4
+ "passages": [
5
+ {
6
+ "id": "reset",
7
+ "text": "Password reset links expire after 30 minutes."
8
+ },
9
+ {
10
+ "id": "billing",
11
+ "text": "Invoices are available on the Billing page."
12
+ }
13
+ ]
14
+ },
15
+ "response": {
16
+ "model": "demo-fixture",
17
+ "usage": {
18
+ "input_tokens": 0,
19
+ "output_tokens": 0
20
+ },
21
+ "answers": {
22
+ "claim_0": {
23
+ "type": "choice",
24
+ "choice": "supported",
25
+ "confidence": 0.96,
26
+ "probabilities": {
27
+ "supported": 1,
28
+ "contradicted": 0,
29
+ "unsupported": 0
30
+ }
31
+ },
32
+ "claim_1": {
33
+ "type": "choice",
34
+ "choice": "unsupported",
35
+ "confidence": 0.96,
36
+ "probabilities": {
37
+ "supported": 0,
38
+ "contradicted": 0,
39
+ "unsupported": 1
40
+ }
41
+ }
42
+ }
43
+ }
44
+ }
@@ -0,0 +1,49 @@
1
+ # Check citation requirements
2
+
3
+ Do citationRules require evidence for statement? Apply the supplied rules rather than an unstated citation policy.
4
+
5
+ ```ts
6
+ import { citationNeeded } from 'jev-recipes/citation-needed';
7
+
8
+ const result = await citationNeeded({
9
+ statement: 'Reset links expire after 30 minutes.',
10
+ citationRules:
11
+ 'Cite documentation for claims about product behavior. Greetings need no citations.',
12
+ });
13
+
14
+ console.log(result.status, result.verdict);
15
+ ```
16
+
17
+ ## Input
18
+
19
+ | Field | Accepts |
20
+ | --------------- | -------------------------------------------- |
21
+ | `statement` | Non-empty text |
22
+ | `citationRules` | Non-empty text |
23
+ | `minConfidence` | Optional number from 0 to 1; defaults to 0.8 |
24
+
25
+ See [shared options and behavior](../README.md#shared-options-and-behavior) for client configuration, validation, and errors.
26
+
27
+ ## Result
28
+
29
+ | Verdict | Meaning |
30
+ | ------------- | ------------------------------------------------------------------------------------------------ |
31
+ | `needed` | The statement falls within a category requiring citation under the supplied rules. |
32
+ | `unnecessary` | The supplied rules explicitly exempt this statement or clearly do not require a citation for it. |
33
+ | `unclear` | The rules or statement do not establish whether a citation is required. |
34
+
35
+ The result includes `verdict`, `confidence`, and all choice `probabilities`. `unclear` always requires review, even at high confidence. Other verdicts can be ready, including negative assessments.
36
+
37
+ Results include model and token usage. Decisions below `minConfidence` require review. Inspect the outcome as well as the status.
38
+
39
+ ## Reuse and calls
40
+
41
+ Uses the shared choice helper for the Jev call and response parsing. This folder owns its question, verdict criteria, and review policy. A live invocation makes one logical Jev request; SDK retries can add transport attempts.
42
+
43
+ ## Limits
44
+
45
+ Assesses a supplied citation policy; does not find sources or determine whether a statement is true.
46
+
47
+ ## Example input
48
+
49
+ [demo.json](demo.json) contains editable input and a hand-authored response. After installing `jev-recipes`, `npx jev-recipes demo citation-needed` shows the result offline. The fixture is an illustration, not an accuracy measurement. `npx jev-recipes describe citation-needed` shows the input and result schemas.
@@ -0,0 +1,25 @@
1
+ {
2
+ "input": {
3
+ "statement": "Reset links expire after 30 minutes.",
4
+ "citationRules": "Cite documentation for claims about product behavior. Greetings need no citations."
5
+ },
6
+ "response": {
7
+ "model": "demo-fixture",
8
+ "usage": {
9
+ "input_tokens": 0,
10
+ "output_tokens": 0
11
+ },
12
+ "answers": {
13
+ "decision": {
14
+ "type": "choice",
15
+ "choice": "needed",
16
+ "confidence": 0.96,
17
+ "probabilities": {
18
+ "needed": 1,
19
+ "unnecessary": 0,
20
+ "unclear": 0
21
+ }
22
+ }
23
+ }
24
+ }
25
+ }
@@ -1,6 +1,6 @@
1
- # Clarify
1
+ # Check required information
2
2
 
3
- Check whether a request supplies the information your application needs. You define the requirements; the recipe identifies which ones are present, missing, or ambiguous.
3
+ Identify which supplied requirements are present, missing, or ambiguous in a request and its context.
4
4
 
5
5
  ```ts
6
6
  import { clarify } from 'jev-recipes/clarify';
@@ -9,24 +9,53 @@ const result = await clarify({
9
9
  request: 'Please cancel it.',
10
10
  context: 'The customer has a storage subscription and a pending hardware order.',
11
11
  requirements: [
12
- { id: 'target', description: 'Which product or order should be changed' },
13
- { id: 'action', description: 'What change the customer wants' },
12
+ {
13
+ id: 'target',
14
+ description: 'Which product or order should be changed',
15
+ },
16
+ {
17
+ id: 'action',
18
+ description: 'What change the customer wants',
19
+ },
14
20
  ],
15
21
  });
16
22
 
17
- console.log(result.canProceed, result.missing, result.ambiguous);
23
+ console.log(result.canProceed);
18
24
  ```
19
25
 
20
- Provide 1 to 50 requirements with unique, non-empty IDs. Optional `context` supplies conversation history or application facts. `minConfidence` defaults to `0.8` and applies independently to each check.
26
+ ## Input
21
27
 
22
- - `present`: the required information is explicit or unambiguously implied.
23
- - `missing`: the required information is absent.
24
- - `ambiguous`: relevant information has multiple plausible meanings or conflicting values.
28
+ | Field | Accepts |
29
+ | --------------- | ---------------------------------------------------------------------------------------- |
30
+ | `request` | Non-empty text containing the request |
31
+ | `context` | Optional non-empty conversation context or application facts |
32
+ | `requirements` | 1 to 50 `{ id, description }` items with unique non-empty IDs and non-empty descriptions |
33
+ | `minConfidence` | Optional number from 0 to 1; defaults to 0.8 |
25
34
 
26
- `canProceed` is true only when every requirement is confidently present. `missing` and `ambiguous` contain confidently classified requirement IDs. Low-confidence checks remain in `checks` with `status: "review"`; they block proceeding even if both arrays are empty. Overall `status` is `review` when any check falls below the threshold.
35
+ See [shared options and behavior](../README.md#shared-options-and-behavior) for client configuration, validation, and errors. Types are inferred from this folder's Zod 4 schemas.
27
36
 
28
- A `ready` result can still require clarification. Each check includes its verdict, confidence, and probabilities; the result also includes model and token usage.
37
+ ## Result
29
38
 
30
- Your application maps requirement IDs to follow-up questions or asks its generative model to phrase them. This recipe neither discovers requirements nor generates questions. It does not validate identity, permissions, or exact field formats.
39
+ | Verdict | Meaning |
40
+ | ----------- | --------------------------------------------------------------------------- |
41
+ | `present` | The required information is explicit or unambiguously implied. |
42
+ | `missing` | The required information is absent. |
43
+ | `ambiguous` | Relevant information has multiple plausible meanings or conflicting values. |
31
44
 
32
- Run `npm run jev -- demo clarify` for the hand-authored offline [fixture](demo.json). Evaluate your own requirements and thresholds on labeled examples before relying on them.
45
+ `checks` preserves each requirement ID with its verdict, status, confidence, and probabilities. A check is ready when its confidence reaches `minConfidence`. Overall `status` is `review` if any check falls below the threshold.
46
+
47
+ `canProceed` is true only when every check is ready and present. `missing` and `ambiguous` contain confidently classified requirement IDs. A confident ambiguity assessment can be ready while `canProceed` remains false. Low-confidence checks also block proceeding, even if both ID lists are empty.
48
+
49
+ The result includes model and token usage. Inspect the outcome as well as its review status.
50
+
51
+ ## Reuse and calls
52
+
53
+ Uses the shared item-check helper. This folder owns the requirement criteria, follow-up ID lists, and can-proceed decision. All requirement questions are sent in one request. A live invocation makes one logical Jev request; SDK retries can add transport attempts.
54
+
55
+ ## Limits
56
+
57
+ Your application supplies the requirements and maps their IDs to follow-up questions. The recipe does not discover requirements, generate questions, validate identity, or enforce exact field formats.
58
+
59
+ ## Example input
60
+
61
+ [demo.json](demo.json) contains editable input and a hand-authored response. After installing `jev-recipes`, `npx jev-recipes demo clarify` shows an offline illustration, not an accuracy measurement. Use `npx jev-recipes describe clarify` to inspect the input and result schemas.
@@ -0,0 +1,49 @@
1
+ # Interpret a confirmation
2
+
3
+ Does response clearly agree to or reject this exact proposal? Do not treat politeness, acknowledgment, a question, or agreement to only part of the proposal as full agreement.
4
+
5
+ ```ts
6
+ import { confirmationMatch } from 'jev-recipes/confirmation-match';
7
+
8
+ const result = await confirmationMatch({
9
+ proposal: 'Cancel the storage subscription now.',
10
+ response: 'How much would I save?',
11
+ });
12
+
13
+ console.log(result.status, result.verdict);
14
+ ```
15
+
16
+ ## Input
17
+
18
+ | Field | Accepts |
19
+ | --------------- | -------------------------------------------- |
20
+ | `proposal` | Non-empty text |
21
+ | `response` | Non-empty text |
22
+ | `context` | Optional non-empty text |
23
+ | `minConfidence` | Optional number from 0 to 1; defaults to 0.8 |
24
+
25
+ See [shared options and behavior](../README.md#shared-options-and-behavior) for client configuration, validation, and errors.
26
+
27
+ ## Result
28
+
29
+ | Verdict | Meaning |
30
+ | --------- | -------------------------------------------------------------------------------------- |
31
+ | `agrees` | The response clearly agrees to this complete proposal. |
32
+ | `rejects` | The response clearly rejects this proposal. |
33
+ | `unclear` | The response is conditional, partial, ambiguous, unrelated, or only an acknowledgment. |
34
+
35
+ The result includes `verdict`, `confidence`, and all choice `probabilities`. `unclear` always requires review, even at high confidence. Other verdicts can be ready, including negative assessments.
36
+
37
+ Results include model and token usage. Decisions below `minConfidence` require review. Inspect the outcome as well as the status.
38
+
39
+ ## Reuse and calls
40
+
41
+ Uses the shared choice helper for the Jev call and response parsing. This folder owns its question, verdict criteria, and review policy. A live invocation makes one logical Jev request; SDK retries can add transport attempts.
42
+
43
+ ## Limits
44
+
45
+ Interprets language only. Approval identity, authority, scope, expiration, and action permissions remain application checks.
46
+
47
+ ## Example input
48
+
49
+ [demo.json](demo.json) contains editable input and a hand-authored response. After installing `jev-recipes`, `npx jev-recipes demo confirmation-match` shows the result offline. The fixture is an illustration, not an accuracy measurement. `npx jev-recipes describe confirmation-match` shows the input and result schemas.
@@ -0,0 +1,25 @@
1
+ {
2
+ "input": {
3
+ "proposal": "Cancel the storage subscription now.",
4
+ "response": "How much would I save?"
5
+ },
6
+ "response": {
7
+ "model": "demo-fixture",
8
+ "usage": {
9
+ "input_tokens": 0,
10
+ "output_tokens": 0
11
+ },
12
+ "answers": {
13
+ "decision": {
14
+ "type": "choice",
15
+ "choice": "unclear",
16
+ "confidence": 0.96,
17
+ "probabilities": {
18
+ "agrees": 0,
19
+ "rejects": 0,
20
+ "unclear": 1
21
+ }
22
+ }
23
+ }
24
+ }
25
+ }
@@ -0,0 +1,49 @@
1
+ # Identify a passage role
2
+
3
+ What role does passage play in answering question? Classify its contribution without establishing whether its claims are true.
4
+
5
+ ```ts
6
+ import { contextRole } from 'jev-recipes/context-role';
7
+
8
+ const result = await contextRole({
9
+ question: 'How do I reset my password?',
10
+ passage: 'Passwords help protect access to accounts.',
11
+ });
12
+
13
+ console.log(result.status, result.verdict);
14
+ ```
15
+
16
+ ## Input
17
+
18
+ | Field | Accepts |
19
+ | --------------- | -------------------------------------------- |
20
+ | `question` | Non-empty text |
21
+ | `passage` | Non-empty text |
22
+ | `minConfidence` | Optional number from 0 to 1; defaults to 0.8 |
23
+
24
+ See [shared options and behavior](../README.md#shared-options-and-behavior) for client configuration, validation, and errors.
25
+
26
+ ## Result
27
+
28
+ | Verdict | Meaning |
29
+ | ----------------- | -------------------------------------------------------------------------------- |
30
+ | `direct_evidence` | The passage directly supplies information needed to answer the question. |
31
+ | `background` | The passage helps interpret the topic but does not directly answer the question. |
32
+ | `unrelated` | The passage contributes neither an answer nor useful background. |
33
+ | `unclear` | Its relationship to the question cannot be established. |
34
+
35
+ The result includes `verdict`, `confidence`, and all choice `probabilities`. `unclear` always requires review, even at high confidence. Other verdicts can be ready, including negative assessments.
36
+
37
+ Results include model and token usage. Decisions below `minConfidence` require review. Inspect the outcome as well as the status.
38
+
39
+ ## Reuse and calls
40
+
41
+ Uses the shared choice helper for the Jev call and response parsing. This folder owns its question, verdict criteria, and review policy. A live invocation makes one logical Jev request; SDK retries can add transport attempts.
42
+
43
+ ## Limits
44
+
45
+ Classifies a passage contribution. It does not rank sources or prove the answer is supported.
46
+
47
+ ## Example input
48
+
49
+ [demo.json](demo.json) contains editable input and a hand-authored response. After installing `jev-recipes`, `npx jev-recipes demo context-role` shows the result offline. The fixture is an illustration, not an accuracy measurement. `npx jev-recipes describe context-role` shows the input and result schemas.
@@ -0,0 +1,26 @@
1
+ {
2
+ "input": {
3
+ "question": "How do I reset my password?",
4
+ "passage": "Passwords help protect access to accounts."
5
+ },
6
+ "response": {
7
+ "model": "demo-fixture",
8
+ "usage": {
9
+ "input_tokens": 0,
10
+ "output_tokens": 0
11
+ },
12
+ "answers": {
13
+ "decision": {
14
+ "type": "choice",
15
+ "choice": "background",
16
+ "confidence": 0.96,
17
+ "probabilities": {
18
+ "direct_evidence": 0,
19
+ "background": 1,
20
+ "unrelated": 0,
21
+ "unclear": 0
22
+ }
23
+ }
24
+ }
25
+ }
26
+ }
@@ -0,0 +1,52 @@
1
+ # Locate a correction target
2
+
3
+ Which supplied field or statement is message correcting? Identify the target, not the replacement value. Use ambiguous when the message corrects multiple targets without a single primary target.
4
+
5
+ ```ts
6
+ import { correctionTarget } from 'jev-recipes/correction-target';
7
+
8
+ const result = await correctionTarget({
9
+ message: 'The billing email is finance@example.com, not support@example.com.',
10
+ targets: [
11
+ {
12
+ id: 'billing-email',
13
+ text: 'Billing email: support@example.com',
14
+ },
15
+ {
16
+ id: 'shipping-city',
17
+ text: 'Shipping city: Portland',
18
+ },
19
+ ],
20
+ });
21
+
22
+ console.log(result.status, result.selection);
23
+ ```
24
+
25
+ ## Input
26
+
27
+ | Field | Accepts |
28
+ | --------------- | -------------------------------------------- |
29
+ | `message` | Non-empty text |
30
+ | `targets` | 1 to 50 `{ id, text }` items with unique IDs |
31
+ | `context` | Optional non-empty text |
32
+ | `minConfidence` | Optional number from 0 to 1; defaults to 0.8 |
33
+
34
+ See [shared options and behavior](../README.md#shared-options-and-behavior) for client configuration, validation, and errors.
35
+
36
+ ## Result
37
+
38
+ `verdict` is `matched`, `none`, or `ambiguous`. A confident match returns the original item ID in `selection`. A low-confidence match keeps that ID only in `suggestedSelection`. `none` returns a null selection and can be `ready`; `ambiguous` always requires review. Probabilities are grouped under `candidates` by your original IDs, plus `none` and `ambiguous`.
39
+
40
+ Results include model and token usage. Decisions below `minConfidence` require review. Inspect the outcome as well as the status.
41
+
42
+ ## Reuse and calls
43
+
44
+ Uses the shared candidate-selection helper. This folder owns its selection question and input schema. A live invocation makes one logical Jev request; SDK retries can add transport attempts.
45
+
46
+ ## Limits
47
+
48
+ Selects one correction target. It does not extract a replacement value or update a record.
49
+
50
+ ## Example input
51
+
52
+ [demo.json](demo.json) contains editable input and a hand-authored response. After installing `jev-recipes`, `npx jev-recipes demo correction-target` shows the result offline. The fixture is an illustration, not an accuracy measurement. `npx jev-recipes describe correction-target` shows the input and result schemas.
@@ -0,0 +1,35 @@
1
+ {
2
+ "input": {
3
+ "message": "The billing email is finance@example.com, not support@example.com.",
4
+ "targets": [
5
+ {
6
+ "id": "billing-email",
7
+ "text": "Billing email: support@example.com"
8
+ },
9
+ {
10
+ "id": "shipping-city",
11
+ "text": "Shipping city: Portland"
12
+ }
13
+ ]
14
+ },
15
+ "response": {
16
+ "model": "demo-fixture",
17
+ "usage": {
18
+ "input_tokens": 0,
19
+ "output_tokens": 0
20
+ },
21
+ "answers": {
22
+ "decision": {
23
+ "type": "choice",
24
+ "choice": "candidate_0",
25
+ "confidence": 0.96,
26
+ "probabilities": {
27
+ "candidate_0": 1,
28
+ "candidate_1": 0,
29
+ "none": 0,
30
+ "ambiguous": 0
31
+ }
32
+ }
33
+ }
34
+ }
35
+ }