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,51 @@
1
+ # Identify document purpose
2
+
3
+ What is the primary purpose of document? Judge the actual content rather than a title alone. Choose unclear if several purposes are equally central.
4
+
5
+ ```ts
6
+ import { documentRole } from 'jev-recipes/document-role';
7
+
8
+ const result = await documentRole({
9
+ document:
10
+ 'New in this release: workspace exports now include archived reports. Fixed an invoice download error.',
11
+ });
12
+
13
+ console.log(result.status, result.verdict);
14
+ ```
15
+
16
+ ## Input
17
+
18
+ | Field | Accepts |
19
+ | --------------- | -------------------------------------------- |
20
+ | `document` | Non-empty text |
21
+ | `minConfidence` | Optional number from 0 to 1; defaults to 0.8 |
22
+
23
+ See [shared options and behavior](../README.md#shared-options-and-behavior) for client configuration, validation, and errors.
24
+
25
+ ## Result
26
+
27
+ | Verdict | Meaning |
28
+ | ----------------- | -------------------------------------------------------------- |
29
+ | `policy` | Defines rules, permissions, requirements, or allowed behavior. |
30
+ | `tutorial` | Teaches a task through a guided sequence. |
31
+ | `reference` | Describes interfaces, features, or facts for lookup. |
32
+ | `troubleshooting` | Helps diagnose or resolve a described problem. |
33
+ | `release_note` | Describes changes in a release or update. |
34
+ | `other` | Has a clear purpose outside the listed roles. |
35
+ | `unclear` | The primary role cannot be established. |
36
+
37
+ 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.
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 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.
44
+
45
+ ## Limits
46
+
47
+ Returns one primary role from the supplied text. It does not read files, split mixed documents, or create an index.
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 document-role` shows the result offline. The fixture is an illustration, not an accuracy measurement. `npx jev-recipes describe document-role` shows the input and result schemas.
@@ -0,0 +1,28 @@
1
+ {
2
+ "input": {
3
+ "document": "New in this release: workspace exports now include archived reports. Fixed an invoice download error."
4
+ },
5
+ "response": {
6
+ "model": "demo-fixture",
7
+ "usage": {
8
+ "input_tokens": 0,
9
+ "output_tokens": 0
10
+ },
11
+ "answers": {
12
+ "decision": {
13
+ "type": "choice",
14
+ "choice": "release_note",
15
+ "confidence": 0.96,
16
+ "probabilities": {
17
+ "policy": 0,
18
+ "tutorial": 0,
19
+ "reference": 0,
20
+ "troubleshooting": 0,
21
+ "release_note": 1,
22
+ "other": 0,
23
+ "unclear": 0
24
+ }
25
+ }
26
+ }
27
+ }
28
+ }
@@ -0,0 +1,54 @@
1
+ # Compare two drafts
2
+
3
+ Which draft better satisfies request under rubric? Evaluate only the supplied criteria. Treat presentation order as irrelevant and allow a tie or neither.
4
+
5
+ ```ts
6
+ import { draftCompare } from 'jev-recipes/draft-compare';
7
+
8
+ const result = await draftCompare({
9
+ request: 'Explain how to reset a password.',
10
+ firstDraft: 'Select Forgot password on the sign-in page.',
11
+ secondDraft: 'Contact billing to download an invoice.',
12
+ rubric: 'Prefer a direct answer to the requested task.',
13
+ });
14
+
15
+ console.log(result.status, result.verdict);
16
+ ```
17
+
18
+ ## Input
19
+
20
+ | Field | Accepts |
21
+ | --------------- | -------------------------------------------- |
22
+ | `request` | Non-empty text |
23
+ | `firstDraft` | Non-empty text |
24
+ | `secondDraft` | Non-empty text |
25
+ | `rubric` | Non-empty text |
26
+ | `minConfidence` | Optional number from 0 to 1; defaults to 0.8 |
27
+
28
+ See [shared options and behavior](../README.md#shared-options-and-behavior) for client configuration, validation, and errors.
29
+
30
+ ## Result
31
+
32
+ | Verdict | Meaning |
33
+ | --------- | ----------------------------------------------------------------------------- |
34
+ | `first` | Only the first draft is suitable, or it clearly better satisfies the rubric. |
35
+ | `second` | Only the second draft is suitable, or it clearly better satisfies the rubric. |
36
+ | `tie` | Both drafts are suitable and neither is meaningfully better under the rubric. |
37
+ | `neither` | Neither draft satisfies the request and rubric. |
38
+ | `unclear` | There is insufficient information to make the comparison. |
39
+
40
+ 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.
41
+
42
+ Results include model and token usage. Decisions below `minConfidence` require review. Inspect the outcome as well as the status.
43
+
44
+ ## Reuse and calls
45
+
46
+ 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.
47
+
48
+ ## Limits
49
+
50
+ Makes a relative judgment against your rubric. A preferred draft can still contain unsupported facts.
51
+
52
+ ## Example input
53
+
54
+ [demo.json](demo.json) contains editable input and a hand-authored response. After installing `jev-recipes`, `npx jev-recipes demo draft-compare` shows the result offline. The fixture is an illustration, not an accuracy measurement. `npx jev-recipes describe draft-compare` shows the input and result schemas.
@@ -0,0 +1,29 @@
1
+ {
2
+ "input": {
3
+ "request": "Explain how to reset a password.",
4
+ "firstDraft": "Select Forgot password on the sign-in page.",
5
+ "secondDraft": "Contact billing to download an invoice.",
6
+ "rubric": "Prefer a direct answer to the requested task."
7
+ },
8
+ "response": {
9
+ "model": "demo-fixture",
10
+ "usage": {
11
+ "input_tokens": 0,
12
+ "output_tokens": 0
13
+ },
14
+ "answers": {
15
+ "decision": {
16
+ "type": "choice",
17
+ "choice": "first",
18
+ "confidence": 0.96,
19
+ "probabilities": {
20
+ "first": 1,
21
+ "second": 0,
22
+ "tie": 0,
23
+ "neither": 0,
24
+ "unclear": 0
25
+ }
26
+ }
27
+ }
28
+ }
29
+ }
@@ -0,0 +1,51 @@
1
+ # Compare evidence for conflicts
2
+
3
+ Do firstPassage and secondPassage give incompatible evidence relevant to question under the same conditions? Different scopes are not automatically contradictions.
4
+
5
+ ```ts
6
+ import { evidenceConflict } from 'jev-recipes/evidence-conflict';
7
+
8
+ const result = await evidenceConflict({
9
+ question: 'Can guests export reports?',
10
+ firstPassage: 'Guests can export reports.',
11
+ secondPassage: 'Guests cannot export reports.',
12
+ });
13
+
14
+ console.log(result.status, result.verdict);
15
+ ```
16
+
17
+ ## Input
18
+
19
+ | Field | Accepts |
20
+ | --------------- | -------------------------------------------- |
21
+ | `firstPassage` | Non-empty text |
22
+ | `secondPassage` | Non-empty text |
23
+ | `question` | Non-empty text |
24
+ | `minConfidence` | Optional number from 0 to 1; defaults to 0.8 |
25
+
26
+ See [shared options and behavior](../README.md#shared-options-and-behavior) for client configuration, validation, and errors.
27
+
28
+ ## Result
29
+
30
+ | Verdict | Meaning |
31
+ | ----------------- | ---------------------------------------------------------------------------------- |
32
+ | `compatible` | The passages address the same scope and can both be true. |
33
+ | `conflicting` | The passages address the same scope and make incompatible claims. |
34
+ | `different_scope` | The apparent comparison concerns different subjects, circumstances, or conditions. |
35
+ | `unclear` | The scope or meaning cannot be resolved from the supplied evidence. |
36
+
37
+ 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.
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 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.
44
+
45
+ ## Limits
46
+
47
+ Does not decide which source is authoritative. Exact numbers, timestamps, and version ordering should be compared in code.
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 evidence-conflict` shows the result offline. The fixture is an illustration, not an accuracy measurement. `npx jev-recipes describe evidence-conflict` shows the input and result schemas.
@@ -0,0 +1,27 @@
1
+ {
2
+ "input": {
3
+ "question": "Can guests export reports?",
4
+ "firstPassage": "Guests can export reports.",
5
+ "secondPassage": "Guests cannot export reports."
6
+ },
7
+ "response": {
8
+ "model": "demo-fixture",
9
+ "usage": {
10
+ "input_tokens": 0,
11
+ "output_tokens": 0
12
+ },
13
+ "answers": {
14
+ "decision": {
15
+ "type": "choice",
16
+ "choice": "conflicting",
17
+ "confidence": 0.96,
18
+ "probabilities": {
19
+ "compatible": 0,
20
+ "conflicting": 1,
21
+ "different_scope": 0,
22
+ "unclear": 0
23
+ }
24
+ }
25
+ }
26
+ }
27
+ }
@@ -0,0 +1,56 @@
1
+ # Check new evidence
2
+
3
+ Does passage add material information relevant to question beyond existingEvidence? New information may conflict with existing evidence; novelty alone is not correctness.
4
+
5
+ ```ts
6
+ import { evidenceNovelty } from 'jev-recipes/evidence-novelty';
7
+
8
+ const result = await evidenceNovelty({
9
+ question: 'How do I reset my password and when does the link expire?',
10
+ passage: 'Reset links expire after 30 minutes.',
11
+ existingEvidence: [
12
+ {
13
+ id: 'steps',
14
+ text: 'Select Forgot password to receive a reset link.',
15
+ },
16
+ ],
17
+ });
18
+
19
+ console.log(result.status, result.verdict);
20
+ ```
21
+
22
+ ## Input
23
+
24
+ | Field | Accepts |
25
+ | ------------------ | -------------------------------------------- |
26
+ | `passage` | Non-empty text |
27
+ | `existingEvidence` | 1 to 50 `{ id, text }` items with unique IDs |
28
+ | `question` | Non-empty text |
29
+ | `minConfidence` | Optional number from 0 to 1; defaults to 0.8 |
30
+
31
+ See [shared options and behavior](../README.md#shared-options-and-behavior) for client configuration, validation, and errors.
32
+
33
+ ## Result
34
+
35
+ | Verdict | Meaning |
36
+ | --------------------- | --------------------------------------------------------------------------------- |
37
+ | `adds_information` | The passage adds a material relevant fact or distinction not already represented. |
38
+ | `repeats_information` | It only repeats information already represented. |
39
+ | `irrelevant` | It contributes no information relevant to the question. |
40
+ | `unclear` | Its contribution cannot be determined from the supplied material. |
41
+
42
+ 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.
43
+
44
+ Results include model and token usage. Decisions below `minConfidence` require review. Inspect the outcome as well as the status.
45
+
46
+ ## Reuse and calls
47
+
48
+ 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.
49
+
50
+ ## Limits
51
+
52
+ Assesses novelty within the supplied set. It does not establish correctness or decide when retrieval must stop.
53
+
54
+ ## Example input
55
+
56
+ [demo.json](demo.json) contains editable input and a hand-authored response. After installing `jev-recipes`, `npx jev-recipes demo evidence-novelty` shows the result offline. The fixture is an illustration, not an accuracy measurement. `npx jev-recipes describe evidence-novelty` shows the input and result schemas.
@@ -0,0 +1,32 @@
1
+ {
2
+ "input": {
3
+ "question": "How do I reset my password and when does the link expire?",
4
+ "passage": "Reset links expire after 30 minutes.",
5
+ "existingEvidence": [
6
+ {
7
+ "id": "steps",
8
+ "text": "Select Forgot password to receive a reset link."
9
+ }
10
+ ]
11
+ },
12
+ "response": {
13
+ "model": "demo-fixture",
14
+ "usage": {
15
+ "input_tokens": 0,
16
+ "output_tokens": 0
17
+ },
18
+ "answers": {
19
+ "decision": {
20
+ "type": "choice",
21
+ "choice": "adds_information",
22
+ "confidence": 0.96,
23
+ "probabilities": {
24
+ "adds_information": 1,
25
+ "repeats_information": 0,
26
+ "irrelevant": 0,
27
+ "unclear": 0
28
+ }
29
+ }
30
+ }
31
+ }
32
+ }
@@ -0,0 +1,47 @@
1
+ # Assess fact stability
2
+
3
+ Is fact about an enduring or historical attribute, or a state that is expected to change? Classify the kind of information, not whether this particular fact is currently true.
4
+
5
+ ```ts
6
+ import { factStability } from 'jev-recipes/fact-stability';
7
+
8
+ const result = await factStability({
9
+ fact: 'The API is currently experiencing an outage.',
10
+ });
11
+
12
+ console.log(result.status, result.verdict);
13
+ ```
14
+
15
+ ## Input
16
+
17
+ | Field | Accepts |
18
+ | --------------- | -------------------------------------------- |
19
+ | `fact` | Non-empty text |
20
+ | `context` | Optional non-empty text |
21
+ | `minConfidence` | Optional number from 0 to 1; defaults to 0.8 |
22
+
23
+ See [shared options and behavior](../README.md#shared-options-and-behavior) for client configuration, validation, and errors.
24
+
25
+ ## Result
26
+
27
+ | Verdict | Meaning |
28
+ | ------------ | -------------------------------------------------------------------------------------------------------------------- |
29
+ | `stable` | The fact describes a historical event, definition, or enduring attribute unlikely to change in the relevant context. |
30
+ | `changeable` | The fact describes a current state, preference, configuration, or other information that can change. |
31
+ | `unclear` | The kind or relevant timescale is not established. |
32
+
33
+ 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.
34
+
35
+ Results include model and token usage. Decisions below `minConfidence` require review. Inspect the outcome as well as the status.
36
+
37
+ ## Reuse and calls
38
+
39
+ 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.
40
+
41
+ ## Limits
42
+
43
+ Does not establish truth, expiration times, or freshness. Refresh policies and timestamp comparisons belong in code.
44
+
45
+ ## Example input
46
+
47
+ [demo.json](demo.json) contains editable input and a hand-authored response. After installing `jev-recipes`, `npx jev-recipes demo fact-stability` shows the result offline. The fixture is an illustration, not an accuracy measurement. `npx jev-recipes describe fact-stability` shows the input and result schemas.
@@ -0,0 +1,24 @@
1
+ {
2
+ "input": {
3
+ "fact": "The API is currently experiencing an outage."
4
+ },
5
+ "response": {
6
+ "model": "demo-fixture",
7
+ "usage": {
8
+ "input_tokens": 0,
9
+ "output_tokens": 0
10
+ },
11
+ "answers": {
12
+ "decision": {
13
+ "type": "choice",
14
+ "choice": "changeable",
15
+ "confidence": 0.96,
16
+ "probabilities": {
17
+ "stable": 0,
18
+ "changeable": 1,
19
+ "unclear": 0
20
+ }
21
+ }
22
+ }
23
+ }
24
+ }
@@ -0,0 +1,52 @@
1
+ # Classify a described failure
2
+
3
+ Which supplied category best describes the observed failure? Classify the described failure rather than inventing an underlying cause.
4
+
5
+ ```ts
6
+ import { failureKind } from 'jev-recipes/failure-kind';
7
+
8
+ const result = await failureKind({
9
+ failure: 'The export was rejected because the report name is missing.',
10
+ categories: [
11
+ {
12
+ id: 'missing-input',
13
+ text: 'A required input was not supplied.',
14
+ },
15
+ {
16
+ id: 'temporary',
17
+ text: 'A temporary service interruption prevented the operation.',
18
+ },
19
+ ],
20
+ });
21
+
22
+ console.log(result.status, result.selection);
23
+ ```
24
+
25
+ ## Input
26
+
27
+ | Field | Accepts |
28
+ | --------------- | -------------------------------------------- |
29
+ | `failure` | Non-empty text |
30
+ | `categories` | 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
+ Maps text to your categories. Use structured error codes first; this recipe does not diagnose a root cause or initiate retries.
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 failure-kind` shows the result offline. The fixture is an illustration, not an accuracy measurement. `npx jev-recipes describe failure-kind` shows the input and result schemas.
@@ -0,0 +1,35 @@
1
+ {
2
+ "input": {
3
+ "failure": "The export was rejected because the report name is missing.",
4
+ "categories": [
5
+ {
6
+ "id": "missing-input",
7
+ "text": "A required input was not supplied."
8
+ },
9
+ {
10
+ "id": "temporary",
11
+ "text": "A temporary service interruption prevented the operation."
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
+ }
@@ -0,0 +1,51 @@
1
+ # Classify customer feedback
2
+
3
+ What is the primary kind of feedback in message? Prefer the explicit requested outcome over incidental tone. Choose unclear when several kinds are equally central.
4
+
5
+ ```ts
6
+ import { feedbackKind } from 'jev-recipes/feedback-kind';
7
+
8
+ const result = await feedbackKind({
9
+ message: 'Could you add CSV export to the activity page?',
10
+ });
11
+
12
+ console.log(result.status, result.verdict);
13
+ ```
14
+
15
+ ## Input
16
+
17
+ | Field | Accepts |
18
+ | --------------- | -------------------------------------------- |
19
+ | `message` | Non-empty text |
20
+ | `context` | Optional non-empty text |
21
+ | `minConfidence` | Optional number from 0 to 1; defaults to 0.8 |
22
+
23
+ See [shared options and behavior](../README.md#shared-options-and-behavior) for client configuration, validation, and errors.
24
+
25
+ ## Result
26
+
27
+ | Verdict | Meaning |
28
+ | ----------------- | ------------------------------------------------------------------------------------------------ |
29
+ | `bug_report` | Reports existing functionality behaving incorrectly. |
30
+ | `feature_request` | Requests a new capability or changed behavior. |
31
+ | `question` | Asks for information or instructions. |
32
+ | `praise` | Primarily expresses positive feedback without another requested outcome. |
33
+ | `complaint` | Primarily expresses dissatisfaction without a specific bug report, feature request, or question. |
34
+ | `other` | The feedback has a clear purpose outside these categories. |
35
+ | `unclear` | The primary kind cannot be established. |
36
+
37
+ 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.
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 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.
44
+
45
+ ## Limits
46
+
47
+ Returns one primary category. It does not create a ticket, extract multiple issues, or set a priority.
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 feedback-kind` shows the result offline. The fixture is an illustration, not an accuracy measurement. `npx jev-recipes describe feedback-kind` shows the input and result schemas.
@@ -0,0 +1,28 @@
1
+ {
2
+ "input": {
3
+ "message": "Could you add CSV export to the activity page?"
4
+ },
5
+ "response": {
6
+ "model": "demo-fixture",
7
+ "usage": {
8
+ "input_tokens": 0,
9
+ "output_tokens": 0
10
+ },
11
+ "answers": {
12
+ "decision": {
13
+ "type": "choice",
14
+ "choice": "feature_request",
15
+ "confidence": 0.96,
16
+ "probabilities": {
17
+ "bug_report": 0,
18
+ "feature_request": 1,
19
+ "question": 0,
20
+ "praise": 0,
21
+ "complaint": 0,
22
+ "other": 0,
23
+ "unclear": 0
24
+ }
25
+ }
26
+ }
27
+ }
28
+ }
@@ -0,0 +1,53 @@
1
+ # Select a field value
2
+
3
+ Which supplied candidate is the value of field in document? Select an existing candidate only. Do not calculate a value, invent one, or infer an unstated field.
4
+
5
+ ```ts
6
+ import { fieldSelect } from 'jev-recipes/field-select';
7
+
8
+ const result = await fieldSelect({
9
+ field: 'Invoice reference',
10
+ document: 'Invoice INV-2026-A. Purchase order PO-77.',
11
+ candidates: [
12
+ {
13
+ id: 'invoice',
14
+ text: 'INV-2026-A',
15
+ },
16
+ {
17
+ id: 'purchase-order',
18
+ text: 'PO-77',
19
+ },
20
+ ],
21
+ });
22
+
23
+ console.log(result.status, result.selection);
24
+ ```
25
+
26
+ ## Input
27
+
28
+ | Field | Accepts |
29
+ | --------------- | -------------------------------------------- |
30
+ | `field` | Non-empty text |
31
+ | `document` | Non-empty text |
32
+ | `candidates` | 1 to 50 `{ id, text }` items with unique IDs |
33
+ | `minConfidence` | Optional number from 0 to 1; defaults to 0.8 |
34
+
35
+ See [shared options and behavior](../README.md#shared-options-and-behavior) for client configuration, validation, and errors.
36
+
37
+ ## Result
38
+
39
+ `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`.
40
+
41
+ Results include model and token usage. Decisions below `minConfidence` require review. Inspect the outcome as well as the status.
42
+
43
+ ## Reuse and calls
44
+
45
+ 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.
46
+
47
+ ## Limits
48
+
49
+ Chooses among caller-supplied candidates. Extract candidates with a parser or generator first; validate exact formats and identifiers in code.
50
+
51
+ ## Example input
52
+
53
+ [demo.json](demo.json) contains editable input and a hand-authored response. After installing `jev-recipes`, `npx jev-recipes demo field-select` shows the result offline. The fixture is an illustration, not an accuracy measurement. `npx jev-recipes describe field-select` shows the input and result schemas.
@@ -0,0 +1,36 @@
1
+ {
2
+ "input": {
3
+ "field": "Invoice reference",
4
+ "document": "Invoice INV-2026-A. Purchase order PO-77.",
5
+ "candidates": [
6
+ {
7
+ "id": "invoice",
8
+ "text": "INV-2026-A"
9
+ },
10
+ {
11
+ "id": "purchase-order",
12
+ "text": "PO-77"
13
+ }
14
+ ]
15
+ },
16
+ "response": {
17
+ "model": "demo-fixture",
18
+ "usage": {
19
+ "input_tokens": 0,
20
+ "output_tokens": 0
21
+ },
22
+ "answers": {
23
+ "decision": {
24
+ "type": "choice",
25
+ "choice": "candidate_0",
26
+ "confidence": 0.96,
27
+ "probabilities": {
28
+ "candidate_0": 1,
29
+ "candidate_1": 0,
30
+ "none": 0,
31
+ "ambiguous": 0
32
+ }
33
+ }
34
+ }
35
+ }
36
+ }