@bendyline/gilde 0.1.26 → 0.1.28

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 (571) hide show
  1. package/authoring/chat-models/README.md +5 -0
  2. package/authoring/chat-models/deepseek-v4-flash-284b-mxfp4.json +4 -0
  3. package/authoring/chat-models/deepseek-v4-flash-284b-q2.json +4 -0
  4. package/authoring/chat-models/deepseek-v4-flash-284b-q2q4.json +4 -0
  5. package/authoring/chat-models/glm-5.2-754b-q2.json +4 -0
  6. package/authoring/gstack/evals/investigate.json +1 -0
  7. package/authoring/gstack/evals/plan-ceo-review.json +1 -0
  8. package/authoring/gstack/wave.json +2 -2
  9. package/data/chat-models/de/deepseek-v4-flash-284b-mxfp4/manifest.json +4 -0
  10. package/data/chat-models/de/deepseek-v4-flash-284b-q2/manifest.json +4 -0
  11. package/data/chat-models/de/deepseek-v4-flash-284b-q2q4/manifest.json +4 -0
  12. package/data/chat-models/gl/glm-5.2-754b-q2/manifest.json +4 -0
  13. package/data/chat-models/index.json +1 -1
  14. package/data/craftbook-templates/a1/a11y-audit/versions/1.1.1/craftbook.json +141 -0
  15. package/data/craftbook-templates/a1/a11y-audit/versions/1.1.1/test.json +115 -0
  16. package/data/craftbook-templates/ab/ab-test-readout/versions/1.0.1/craftbook.json +141 -0
  17. package/data/craftbook-templates/ab/ab-test-readout/versions/1.0.1/test.json +186 -0
  18. package/data/craftbook-templates/ac/accessibility-retrofit/versions/1.0.1/craftbook.json +110 -0
  19. package/data/craftbook-templates/ac/accessibility-retrofit/versions/1.0.1/test.json +97 -0
  20. package/data/craftbook-templates/ad/ad-variations/versions/1.0.1/craftbook.json +105 -0
  21. package/data/craftbook-templates/ad/ad-variations/versions/1.0.1/test.json +108 -0
  22. package/data/craftbook-templates/al/album-curate/versions/1.0.1/craftbook.json +115 -0
  23. package/data/craftbook-templates/al/album-curate/versions/1.0.1/test.json +147 -0
  24. package/data/craftbook-templates/al/alert-rules/versions/1.0.1/craftbook.json +101 -0
  25. package/data/craftbook-templates/al/alert-rules/versions/1.0.1/test.json +145 -0
  26. package/data/craftbook-templates/al/alt-text-pass/versions/1.0.1/craftbook.json +142 -0
  27. package/data/craftbook-templates/al/alt-text-pass/versions/1.0.1/test.json +97 -0
  28. package/data/craftbook-templates/an/anniversary-cut/versions/1.0.3/craftbook.json +226 -0
  29. package/data/craftbook-templates/an/anniversary-cut/versions/1.0.3/test.json +157 -0
  30. package/data/craftbook-templates/an/annotated-bibliography/versions/1.0.1/craftbook.json +146 -0
  31. package/data/craftbook-templates/an/annotated-bibliography/versions/1.0.1/test.json +102 -0
  32. package/data/craftbook-templates/an/annual-document-review/versions/1.0.1/craftbook.json +140 -0
  33. package/data/craftbook-templates/an/annual-document-review/versions/1.0.1/test.json +110 -0
  34. package/data/craftbook-templates/an/anomaly-scan/versions/1.0.1/craftbook.json +141 -0
  35. package/data/craftbook-templates/an/anomaly-scan/versions/1.0.1/test.json +120 -0
  36. package/data/craftbook-templates/ap/api-contract-review/versions/1.1.1/craftbook.json +141 -0
  37. package/data/craftbook-templates/ap/api-contract-review/versions/1.1.1/test.json +115 -0
  38. package/data/craftbook-templates/ar/artifact-integrity-review/versions/1.0.1/craftbook.json +158 -0
  39. package/data/craftbook-templates/ar/artifact-integrity-review/versions/1.0.1/test.json +136 -0
  40. package/data/craftbook-templates/au/audio-ad-spot/versions/1.0.1/craftbook.json +129 -0
  41. package/data/craftbook-templates/au/audio-ad-spot/versions/1.0.1/test.json +103 -0
  42. package/data/craftbook-templates/au/audio-highlight-reel/versions/1.0.1/craftbook.json +123 -0
  43. package/data/craftbook-templates/au/audio-highlight-reel/versions/1.0.1/test.json +103 -0
  44. package/data/craftbook-templates/au/audiobook-master-pack/versions/1.0.3/craftbook.json +210 -0
  45. package/data/craftbook-templates/au/audiobook-master-pack/versions/1.0.3/test.json +221 -0
  46. package/data/craftbook-templates/au/auth-flow/versions/1.0.1/craftbook.json +148 -0
  47. package/data/craftbook-templates/au/auth-flow/versions/1.0.1/test.json +140 -0
  48. package/data/craftbook-templates/au/automation-recipe/versions/1.0.1/craftbook.json +164 -0
  49. package/data/craftbook-templates/au/automation-recipe/versions/1.0.1/test.json +296 -0
  50. package/data/craftbook-templates/ba/backup-routine/versions/1.0.1/craftbook.json +148 -0
  51. package/data/craftbook-templates/ba/backup-routine/versions/1.0.1/test.json +108 -0
  52. package/data/craftbook-templates/bl/blog-post/versions/1.0.1/craftbook.json +143 -0
  53. package/data/craftbook-templates/bl/blog-post/versions/1.0.1/test.json +118 -0
  54. package/data/craftbook-templates/bo/board-deck/versions/1.0.1/craftbook.json +141 -0
  55. package/data/craftbook-templates/bo/board-deck/versions/1.0.1/test.json +100 -0
  56. package/data/craftbook-templates/bo/board-game-web/versions/1.0.1/craftbook.json +150 -0
  57. package/data/craftbook-templates/bo/board-game-web/versions/1.0.1/test.json +99 -0
  58. package/data/craftbook-templates/bo/booking-automation/versions/1.0.1/craftbook.json +158 -0
  59. package/data/craftbook-templates/bo/booking-automation/versions/1.0.1/test.json +162 -0
  60. package/data/craftbook-templates/br/branding-website/versions/1.1.1/craftbook.json +211 -0
  61. package/data/craftbook-templates/br/branding-website/versions/1.1.1/test.json +164 -0
  62. package/data/craftbook-templates/br/broadcast-announcement/versions/1.0.1/craftbook.json +107 -0
  63. package/data/craftbook-templates/br/broadcast-announcement/versions/1.0.1/test.json +103 -0
  64. package/data/craftbook-templates/br/browser-qa-audit/versions/2.0.3/craftbook.json +417 -0
  65. package/data/craftbook-templates/br/browser-qa-audit/versions/2.0.3/test.json +376 -0
  66. package/data/craftbook-templates/bu/bug-fix-tdd/versions/1.0.2/craftbook.json +164 -0
  67. package/data/craftbook-templates/bu/bug-fix-tdd/versions/1.0.2/test.json +92 -0
  68. package/data/craftbook-templates/ca/calendar-brief/versions/1.0.1/craftbook.json +107 -0
  69. package/data/craftbook-templates/ca/calendar-brief/versions/1.0.1/test.json +102 -0
  70. package/data/craftbook-templates/ca/canvas-generative-art/versions/1.0.1/craftbook.json +110 -0
  71. package/data/craftbook-templates/ca/canvas-generative-art/versions/1.0.1/test.json +106 -0
  72. package/data/craftbook-templates/ca/case-study/versions/1.0.1/craftbook.json +143 -0
  73. package/data/craftbook-templates/ca/case-study/versions/1.0.1/test.json +112 -0
  74. package/data/craftbook-templates/ca/case-study-writeup/versions/1.0.1/craftbook.json +151 -0
  75. package/data/craftbook-templates/ca/case-study-writeup/versions/1.0.1/test.json +105 -0
  76. package/data/craftbook-templates/ch/changelog-cut/versions/1.0.1/craftbook.json +113 -0
  77. package/data/craftbook-templates/ch/changelog-cut/versions/1.0.1/test.json +106 -0
  78. package/data/craftbook-templates/ch/changelog-writeup/versions/1.0.1/craftbook.json +107 -0
  79. package/data/craftbook-templates/ch/changelog-writeup/versions/1.0.1/test.json +129 -0
  80. package/data/craftbook-templates/ch/chapter-narration-run/versions/1.0.2/craftbook.json +123 -0
  81. package/data/craftbook-templates/ch/chapter-narration-run/versions/1.0.2/test.json +155 -0
  82. package/data/craftbook-templates/ch/chapter-weave/versions/1.0.1/craftbook.json +74 -0
  83. package/data/craftbook-templates/ch/chapter-weave/versions/1.0.1/test.json +98 -0
  84. package/data/craftbook-templates/ch/character-sheet/versions/1.0.1/craftbook.json +82 -0
  85. package/data/craftbook-templates/ch/character-sheet/versions/1.0.1/test.json +143 -0
  86. package/data/craftbook-templates/ch/character-turnaround/versions/1.0.1/craftbook.json +121 -0
  87. package/data/craftbook-templates/ch/character-turnaround/versions/1.0.1/test.json +178 -0
  88. package/data/craftbook-templates/ch/chart-pack/versions/1.0.1/craftbook.json +148 -0
  89. package/data/craftbook-templates/ch/chart-pack/versions/1.0.1/test.json +104 -0
  90. package/data/craftbook-templates/ch/chrome-extension/versions/1.0.1/craftbook.json +148 -0
  91. package/data/craftbook-templates/ch/chrome-extension/versions/1.0.1/test.json +97 -0
  92. package/data/craftbook-templates/ci/ci-pipeline/versions/1.0.1/craftbook.json +132 -0
  93. package/data/craftbook-templates/ci/ci-pipeline/versions/1.0.1/test.json +162 -0
  94. package/data/craftbook-templates/ci/citation-audit/versions/1.0.1/craftbook.json +146 -0
  95. package/data/craftbook-templates/ci/citation-audit/versions/1.0.1/test.json +149 -0
  96. package/data/craftbook-templates/cl/cli-tool/versions/1.1.1/craftbook.json +147 -0
  97. package/data/craftbook-templates/cl/cli-tool/versions/1.1.1/test.json +128 -0
  98. package/data/craftbook-templates/co/codebase-refactoring-review/versions/1.0.1/craftbook.json +153 -0
  99. package/data/craftbook-templates/co/codebase-refactoring-review/versions/1.0.1/test.json +116 -0
  100. package/data/craftbook-templates/co/codebase-ux-review/versions/1.0.1/craftbook.json +153 -0
  101. package/data/craftbook-templates/co/codebase-ux-review/versions/1.0.1/test.json +119 -0
  102. package/data/craftbook-templates/co/cohort-analysis/versions/1.0.1/craftbook.json +141 -0
  103. package/data/craftbook-templates/co/cohort-analysis/versions/1.0.1/test.json +226 -0
  104. package/data/craftbook-templates/co/company-research-brief/versions/1.0.1/craftbook.json +139 -0
  105. package/data/craftbook-templates/co/company-research-brief/versions/1.0.1/test.json +97 -0
  106. package/data/craftbook-templates/co/comparison-matrix/versions/1.0.1/craftbook.json +153 -0
  107. package/data/craftbook-templates/co/comparison-matrix/versions/1.0.1/test.json +109 -0
  108. package/data/craftbook-templates/co/compat-check/versions/1.0.1/craftbook.json +146 -0
  109. package/data/craftbook-templates/co/compat-check/versions/1.0.1/test.json +145 -0
  110. package/data/craftbook-templates/co/competitive-analysis/versions/1.0.1/craftbook.json +140 -0
  111. package/data/craftbook-templates/co/competitive-analysis/versions/1.0.1/test.json +116 -0
  112. package/data/craftbook-templates/co/config-scaffold/versions/1.0.1/craftbook.json +105 -0
  113. package/data/craftbook-templates/co/config-scaffold/versions/1.0.1/test.json +120 -0
  114. package/data/craftbook-templates/co/content-accuracy-review/versions/1.0.1/craftbook.json +141 -0
  115. package/data/craftbook-templates/co/content-accuracy-review/versions/1.0.1/test.json +149 -0
  116. package/data/craftbook-templates/co/content-deck/versions/1.2.1/craftbook.json +206 -0
  117. package/data/craftbook-templates/co/content-deck/versions/1.2.1/test.json +169 -0
  118. package/data/craftbook-templates/co/contract-template/versions/1.0.1/craftbook.json +145 -0
  119. package/data/craftbook-templates/co/contract-template/versions/1.0.1/test.json +102 -0
  120. package/data/craftbook-templates/co/cookbook-layout/versions/1.0.1/craftbook.json +121 -0
  121. package/data/craftbook-templates/co/cookbook-layout/versions/1.0.1/test.json +159 -0
  122. package/data/craftbook-templates/co/copy-review/versions/1.0.1/craftbook.json +141 -0
  123. package/data/craftbook-templates/co/copy-review/versions/1.0.1/test.json +102 -0
  124. package/data/craftbook-templates/co/corpus-email-digest/versions/1.2.1/craftbook.json +210 -0
  125. package/data/craftbook-templates/co/corpus-email-digest/versions/1.2.1/test.json +187 -0
  126. package/data/craftbook-templates/co/corpus-synthesis/versions/1.0.1/craftbook.json +146 -0
  127. package/data/craftbook-templates/co/corpus-synthesis/versions/1.0.1/test.json +156 -0
  128. package/data/craftbook-templates/co/cover-letter/versions/1.0.1/craftbook.json +107 -0
  129. package/data/craftbook-templates/co/cover-letter/versions/1.0.1/test.json +100 -0
  130. package/data/craftbook-templates/cr/crm-update-batch/versions/1.0.1/craftbook.json +101 -0
  131. package/data/craftbook-templates/cr/crm-update-batch/versions/1.0.1/test.json +207 -0
  132. package/data/craftbook-templates/cr/cron-job/versions/1.0.1/craftbook.json +147 -0
  133. package/data/craftbook-templates/cr/cron-job/versions/1.0.1/test.json +104 -0
  134. package/data/craftbook-templates/cr/crossword-forge/versions/1.0.1/craftbook.json +164 -0
  135. package/data/craftbook-templates/cr/crossword-forge/versions/1.0.1/test.json +135 -0
  136. package/data/craftbook-templates/cs/csv-transformer/versions/1.2.2/craftbook.json +101 -0
  137. package/data/craftbook-templates/cs/csv-transformer/versions/1.2.2/test.json +102 -0
  138. package/data/craftbook-templates/da/dashboard-spec/versions/1.0.1/craftbook.json +107 -0
  139. package/data/craftbook-templates/da/dashboard-spec/versions/1.0.1/test.json +114 -0
  140. package/data/craftbook-templates/da/data-dictionary/versions/1.0.1/craftbook.json +107 -0
  141. package/data/craftbook-templates/da/data-dictionary/versions/1.0.1/test.json +101 -0
  142. package/data/craftbook-templates/da/data-export-migrate/versions/1.0.1/craftbook.json +148 -0
  143. package/data/craftbook-templates/da/data-export-migrate/versions/1.0.1/test.json +104 -0
  144. package/data/craftbook-templates/da/data-join-merge/versions/1.0.1/craftbook.json +101 -0
  145. package/data/craftbook-templates/da/data-join-merge/versions/1.0.1/test.json +104 -0
  146. package/data/craftbook-templates/da/data-pipeline-etl/versions/1.0.2/craftbook.json +148 -0
  147. package/data/craftbook-templates/da/data-pipeline-etl/versions/1.0.2/test.json +162 -0
  148. package/data/craftbook-templates/da/data-quality-audit/versions/1.0.1/craftbook.json +141 -0
  149. package/data/craftbook-templates/da/data-quality-audit/versions/1.0.1/test.json +326 -0
  150. package/data/craftbook-templates/da/data-to-report/versions/1.0.1/craftbook.json +140 -0
  151. package/data/craftbook-templates/da/data-to-report/versions/1.0.1/test.json +95 -0
  152. package/data/craftbook-templates/da/data-viz-page/versions/1.0.1/craftbook.json +143 -0
  153. package/data/craftbook-templates/da/data-viz-page/versions/1.0.1/test.json +117 -0
  154. package/data/craftbook-templates/da/dataset-clean/versions/1.2.2/craftbook.json +101 -0
  155. package/data/craftbook-templates/da/dataset-clean/versions/1.2.2/test.json +95 -0
  156. package/data/craftbook-templates/db/db-index-tuning/versions/1.0.1/craftbook.json +148 -0
  157. package/data/craftbook-templates/db/db-index-tuning/versions/1.0.1/test.json +104 -0
  158. package/data/craftbook-templates/de/deep-security-review/versions/1.1.1/craftbook.json +211 -0
  159. package/data/craftbook-templates/de/deep-security-review/versions/1.1.1/test.json +157 -0
  160. package/data/craftbook-templates/de/dependency-audit/versions/1.1.1/craftbook.json +141 -0
  161. package/data/craftbook-templates/de/dependency-audit/versions/1.1.1/test.json +108 -0
  162. package/data/craftbook-templates/de/deploy-checklist/versions/1.0.1/craftbook.json +159 -0
  163. package/data/craftbook-templates/de/deploy-checklist/versions/1.0.1/test.json +165 -0
  164. package/data/craftbook-templates/de/design-review/versions/1.0.1/craftbook.json +141 -0
  165. package/data/craftbook-templates/de/design-review/versions/1.0.1/test.json +118 -0
  166. package/data/craftbook-templates/de/design-system-consultation/versions/2.0.3/craftbook.json +431 -0
  167. package/data/craftbook-templates/de/design-system-consultation/versions/2.0.3/test.json +201 -0
  168. package/data/craftbook-templates/di/diagram-from-text/versions/1.0.1/craftbook.json +109 -0
  169. package/data/craftbook-templates/di/diagram-from-text/versions/1.0.1/test.json +97 -0
  170. package/data/craftbook-templates/di/digest-from-feeds/versions/1.0.1/craftbook.json +146 -0
  171. package/data/craftbook-templates/di/digest-from-feeds/versions/1.0.1/test.json +162 -0
  172. package/data/craftbook-templates/do/doc-intake-pipeline/versions/1.0.1/craftbook.json +148 -0
  173. package/data/craftbook-templates/do/doc-intake-pipeline/versions/1.0.1/test.json +104 -0
  174. package/data/craftbook-templates/do/doc-rewrite/versions/1.0.1/craftbook.json +107 -0
  175. package/data/craftbook-templates/do/doc-rewrite/versions/1.0.1/test.json +110 -0
  176. package/data/craftbook-templates/do/dockerize-app/versions/1.0.1/craftbook.json +148 -0
  177. package/data/craftbook-templates/do/dockerize-app/versions/1.0.1/test.json +92 -0
  178. package/data/craftbook-templates/do/docs-site/versions/1.0.1/craftbook.json +143 -0
  179. package/data/craftbook-templates/do/docs-site/versions/1.0.1/test.json +97 -0
  180. package/data/craftbook-templates/do/documentation-drift-review/versions/1.0.1/craftbook.json +153 -0
  181. package/data/craftbook-templates/do/documentation-drift-review/versions/1.0.1/test.json +132 -0
  182. package/data/craftbook-templates/dr/drive-wrap-up/versions/1.0.1/craftbook.json +140 -0
  183. package/data/craftbook-templates/dr/drive-wrap-up/versions/1.0.1/test.json +104 -0
  184. package/data/craftbook-templates/du/due-diligence-brief/versions/1.0.1/craftbook.json +146 -0
  185. package/data/craftbook-templates/du/due-diligence-brief/versions/1.0.1/test.json +110 -0
  186. package/data/craftbook-templates/eb/ebook-compile/versions/1.0.1/craftbook.json +143 -0
  187. package/data/craftbook-templates/eb/ebook-compile/versions/1.0.1/test.json +97 -0
  188. package/data/craftbook-templates/ed/edit-notes/versions/1.0.1/craftbook.json +176 -0
  189. package/data/craftbook-templates/ed/edit-notes/versions/1.0.1/test.json +146 -0
  190. package/data/craftbook-templates/em/email-sequence/versions/1.0.1/craftbook.json +142 -0
  191. package/data/craftbook-templates/em/email-sequence/versions/1.0.1/test.json +97 -0
  192. package/data/craftbook-templates/em/email-template/versions/1.0.1/craftbook.json +143 -0
  193. package/data/craftbook-templates/em/email-template/versions/1.0.1/test.json +97 -0
  194. package/data/craftbook-templates/en/engineering-retrospective/versions/2.0.3/craftbook.json +403 -0
  195. package/data/craftbook-templates/en/engineering-retrospective/versions/2.0.3/test.json +191 -0
  196. package/data/craftbook-templates/ep/episode-plan/versions/1.0.1/craftbook.json +140 -0
  197. package/data/craftbook-templates/ep/episode-plan/versions/1.0.1/test.json +97 -0
  198. package/data/craftbook-templates/es/escalation-playbook/versions/1.0.1/craftbook.json +107 -0
  199. package/data/craftbook-templates/es/escalation-playbook/versions/1.0.1/test.json +110 -0
  200. package/data/craftbook-templates/ev/evidence-brief/versions/1.0.1/craftbook.json +146 -0
  201. package/data/craftbook-templates/ev/evidence-brief/versions/1.0.1/test.json +110 -0
  202. package/data/craftbook-templates/ex/executive-level-review/versions/2.0.3/craftbook.json +433 -0
  203. package/data/craftbook-templates/ex/executive-level-review/versions/2.0.3/test.json +136 -0
  204. package/data/craftbook-templates/ex/expense-categorize/versions/1.0.1/craftbook.json +140 -0
  205. package/data/craftbook-templates/ex/expense-categorize/versions/1.0.1/test.json +104 -0
  206. package/data/craftbook-templates/fa/fact-check/versions/1.0.1/craftbook.json +146 -0
  207. package/data/craftbook-templates/fa/fact-check/versions/1.0.1/test.json +110 -0
  208. package/data/craftbook-templates/fa/family-story-chapter/versions/1.0.1/craftbook.json +74 -0
  209. package/data/craftbook-templates/fa/family-story-chapter/versions/1.0.1/test.json +108 -0
  210. package/data/craftbook-templates/fa/faq-from-docs/versions/1.0.1/craftbook.json +107 -0
  211. package/data/craftbook-templates/fa/faq-from-docs/versions/1.0.1/test.json +110 -0
  212. package/data/craftbook-templates/fa/favicon-set/versions/1.0.1/craftbook.json +146 -0
  213. package/data/craftbook-templates/fa/favicon-set/versions/1.0.1/test.json +103 -0
  214. package/data/craftbook-templates/fe/feature-flag-release/versions/1.0.1/craftbook.json +159 -0
  215. package/data/craftbook-templates/fe/feature-flag-release/versions/1.0.1/test.json +162 -0
  216. package/data/craftbook-templates/fe/feature-flag-rollout/versions/1.0.1/craftbook.json +148 -0
  217. package/data/craftbook-templates/fe/feature-flag-rollout/versions/1.0.1/test.json +162 -0
  218. package/data/craftbook-templates/fe/feedback-widget/versions/1.0.1/craftbook.json +143 -0
  219. package/data/craftbook-templates/fe/feedback-widget/versions/1.0.1/test.json +97 -0
  220. package/data/craftbook-templates/fo/folder-to-audio/versions/1.0.1/craftbook.json +103 -0
  221. package/data/craftbook-templates/fo/folder-to-audio/versions/1.0.1/test.json +103 -0
  222. package/data/craftbook-templates/fo/forecast-model/versions/1.0.1/craftbook.json +105 -0
  223. package/data/craftbook-templates/fo/forecast-model/versions/1.0.1/test.json +104 -0
  224. package/data/craftbook-templates/fo/form-fill-batch/versions/1.0.1/craftbook.json +148 -0
  225. package/data/craftbook-templates/fo/form-fill-batch/versions/1.0.1/test.json +162 -0
  226. package/data/craftbook-templates/fo/form-wizard/versions/1.0.1/craftbook.json +110 -0
  227. package/data/craftbook-templates/fo/form-wizard/versions/1.0.1/test.json +110 -0
  228. package/data/craftbook-templates/ga/game-with-screens/versions/1.0.1/craftbook.json +168 -0
  229. package/data/craftbook-templates/ga/game-with-screens/versions/1.0.1/test.json +99 -0
  230. package/data/craftbook-templates/gl/glossary-build/versions/1.0.1/craftbook.json +140 -0
  231. package/data/craftbook-templates/gl/glossary-build/versions/1.0.1/test.json +110 -0
  232. package/data/craftbook-templates/gr/graphql-api/versions/1.0.2/craftbook.json +146 -0
  233. package/data/craftbook-templates/gr/graphql-api/versions/1.0.2/test.json +92 -0
  234. package/data/craftbook-templates/gr/grpc-service/versions/1.0.1/craftbook.json +147 -0
  235. package/data/craftbook-templates/gr/grpc-service/versions/1.0.1/test.json +92 -0
  236. package/data/craftbook-templates/ha/handbook-section/versions/1.0.1/craftbook.json +145 -0
  237. package/data/craftbook-templates/ha/handbook-section/versions/1.0.1/test.json +110 -0
  238. package/data/craftbook-templates/he/hero-image/versions/1.0.1/craftbook.json +154 -0
  239. package/data/craftbook-templates/he/hero-image/versions/1.0.1/test.json +103 -0
  240. package/data/craftbook-templates/ho/holiday-card-run/versions/1.0.1/craftbook.json +202 -0
  241. package/data/craftbook-templates/ho/holiday-card-run/versions/1.0.1/test.json +128 -0
  242. package/data/craftbook-templates/ho/hotfix-flow/versions/1.0.1/craftbook.json +182 -0
  243. package/data/craftbook-templates/ho/hotfix-flow/versions/1.0.1/test.json +92 -0
  244. package/data/craftbook-templates/ht/html-arcade-game/versions/1.2.1/craftbook.json +218 -0
  245. package/data/craftbook-templates/ht/html-arcade-game/versions/1.2.1/test.json +176 -0
  246. package/data/craftbook-templates/ht/html-puzzle-game/versions/1.0.1/craftbook.json +150 -0
  247. package/data/craftbook-templates/ht/html-puzzle-game/versions/1.0.1/test.json +99 -0
  248. package/data/craftbook-templates/ic/icon-pack/versions/1.0.1/craftbook.json +146 -0
  249. package/data/craftbook-templates/ic/icon-pack/versions/1.0.1/test.json +103 -0
  250. package/data/craftbook-templates/id/idea-office-hours/versions/2.0.3/craftbook.json +397 -0
  251. package/data/craftbook-templates/id/idea-office-hours/versions/2.0.3/test.json +141 -0
  252. package/data/craftbook-templates/id/idle-clicker-game/versions/1.0.1/craftbook.json +150 -0
  253. package/data/craftbook-templates/id/idle-clicker-game/versions/1.0.1/test.json +99 -0
  254. package/data/craftbook-templates/im/image-batch-edit/versions/1.0.1/craftbook.json +141 -0
  255. package/data/craftbook-templates/im/image-batch-edit/versions/1.0.1/test.json +103 -0
  256. package/data/craftbook-templates/im/image-dedup-cluster/versions/1.0.1/craftbook.json +140 -0
  257. package/data/craftbook-templates/im/image-dedup-cluster/versions/1.0.1/test.json +103 -0
  258. package/data/craftbook-templates/im/image-palette-extract/versions/1.0.1/craftbook.json +109 -0
  259. package/data/craftbook-templates/im/image-palette-extract/versions/1.0.1/test.json +97 -0
  260. package/data/craftbook-templates/im/image-seo-rename/versions/1.0.1/craftbook.json +105 -0
  261. package/data/craftbook-templates/im/image-seo-rename/versions/1.0.1/test.json +103 -0
  262. package/data/craftbook-templates/im/image-set-index/versions/1.2.1/craftbook.json +179 -0
  263. package/data/craftbook-templates/im/image-set-index/versions/1.2.1/test.json +180 -0
  264. package/data/craftbook-templates/in/inbox-triage/versions/1.0.1/craftbook.json +140 -0
  265. package/data/craftbook-templates/in/inbox-triage/versions/1.0.1/test.json +104 -0
  266. package/data/craftbook-templates/in/incident-comms-templates/versions/1.0.1/craftbook.json +107 -0
  267. package/data/craftbook-templates/in/incident-comms-templates/versions/1.0.1/test.json +110 -0
  268. package/data/craftbook-templates/in/incident-postmortem/versions/1.0.1/craftbook.json +158 -0
  269. package/data/craftbook-templates/in/incident-postmortem/versions/1.0.1/test.json +109 -0
  270. package/data/craftbook-templates/in/insurance-inventory/versions/1.0.1/craftbook.json +153 -0
  271. package/data/craftbook-templates/in/insurance-inventory/versions/1.0.1/test.json +121 -0
  272. package/data/craftbook-templates/in/interactive-quiz/versions/1.0.1/craftbook.json +143 -0
  273. package/data/craftbook-templates/in/interactive-quiz/versions/1.0.1/test.json +99 -0
  274. package/data/craftbook-templates/in/investigate-root-cause/versions/1.0.1/craftbook.json +141 -0
  275. package/data/craftbook-templates/in/investigate-root-cause/versions/1.0.1/test.json +110 -0
  276. package/data/craftbook-templates/in/invitation-design/versions/1.0.1/craftbook.json +128 -0
  277. package/data/craftbook-templates/in/invitation-design/versions/1.0.1/test.json +121 -0
  278. package/data/craftbook-templates/in/invoice-generator/versions/1.0.1/craftbook.json +110 -0
  279. package/data/craftbook-templates/in/invoice-generator/versions/1.0.1/test.json +97 -0
  280. package/data/craftbook-templates/in/invoice-run/versions/1.1.1/craftbook.json +199 -0
  281. package/data/craftbook-templates/in/invoice-run/versions/1.1.1/test.json +140 -0
  282. package/data/craftbook-templates/index.json +1 -1
  283. package/data/craftbook-templates/it/item-intake/versions/1.0.1/craftbook.json +140 -0
  284. package/data/craftbook-templates/it/item-intake/versions/1.0.1/test.json +145 -0
  285. package/data/craftbook-templates/ju/juice-pass/versions/1.0.1/craftbook.json +116 -0
  286. package/data/craftbook-templates/ju/juice-pass/versions/1.0.1/test.json +116 -0
  287. package/data/craftbook-templates/kn/knowledge-base-article/versions/1.0.1/craftbook.json +143 -0
  288. package/data/craftbook-templates/kn/knowledge-base-article/versions/1.0.1/test.json +110 -0
  289. package/data/craftbook-templates/kp/kpi-scorecard/versions/1.0.1/craftbook.json +148 -0
  290. package/data/craftbook-templates/kp/kpi-scorecard/versions/1.0.1/test.json +97 -0
  291. package/data/craftbook-templates/la/landing-copy/versions/1.0.1/craftbook.json +143 -0
  292. package/data/craftbook-templates/la/landing-copy/versions/1.0.1/test.json +110 -0
  293. package/data/craftbook-templates/la/landing-page/versions/1.0.1/craftbook.json +184 -0
  294. package/data/craftbook-templates/la/landing-page/versions/1.0.1/test.json +97 -0
  295. package/data/craftbook-templates/le/lead-enrichment/versions/1.0.1/craftbook.json +140 -0
  296. package/data/craftbook-templates/le/lead-enrichment/versions/1.0.1/test.json +104 -0
  297. package/data/craftbook-templates/li/library-package/versions/1.0.1/craftbook.json +147 -0
  298. package/data/craftbook-templates/li/library-package/versions/1.0.1/test.json +92 -0
  299. package/data/craftbook-templates/li/literature-review/versions/1.0.1/craftbook.json +146 -0
  300. package/data/craftbook-templates/li/literature-review/versions/1.0.1/test.json +110 -0
  301. package/data/craftbook-templates/li/live-browser-qa/versions/1.0.1/craftbook.json +141 -0
  302. package/data/craftbook-templates/li/live-browser-qa/versions/1.0.1/test.json +162 -0
  303. package/data/craftbook-templates/lo/localize-content/versions/1.0.1/craftbook.json +143 -0
  304. package/data/craftbook-templates/lo/localize-content/versions/1.0.1/test.json +110 -0
  305. package/data/craftbook-templates/lo/logo-set/versions/1.0.1/craftbook.json +146 -0
  306. package/data/craftbook-templates/lo/logo-set/versions/1.0.1/test.json +103 -0
  307. package/data/craftbook-templates/ma/market-scan/versions/1.0.1/craftbook.json +146 -0
  308. package/data/craftbook-templates/ma/market-scan/versions/1.0.1/test.json +210 -0
  309. package/data/craftbook-templates/me/meeting-minutes/versions/1.0.1/craftbook.json +108 -0
  310. package/data/craftbook-templates/me/meeting-minutes/versions/1.0.1/test.json +110 -0
  311. package/data/craftbook-templates/me/meeting-notes-to-actions/versions/1.0.1/craftbook.json +107 -0
  312. package/data/craftbook-templates/me/meeting-notes-to-actions/versions/1.0.1/test.json +110 -0
  313. package/data/craftbook-templates/me/meeting-prep-brief/versions/1.0.1/craftbook.json +107 -0
  314. package/data/craftbook-templates/me/meeting-prep-brief/versions/1.0.1/test.json +184 -0
  315. package/data/craftbook-templates/me/meeting-summary-audio/versions/1.0.1/craftbook.json +109 -0
  316. package/data/craftbook-templates/me/meeting-summary-audio/versions/1.0.1/test.json +103 -0
  317. package/data/craftbook-templates/me/memory-prompt-session/versions/1.0.1/craftbook.json +115 -0
  318. package/data/craftbook-templates/me/memory-prompt-session/versions/1.0.1/test.json +112 -0
  319. package/data/craftbook-templates/me/message-queue-consumer/versions/1.0.1/craftbook.json +147 -0
  320. package/data/craftbook-templates/me/message-queue-consumer/versions/1.0.1/test.json +92 -0
  321. package/data/craftbook-templates/mi/micro-game-jam/versions/1.0.1/craftbook.json +117 -0
  322. package/data/craftbook-templates/mi/micro-game-jam/versions/1.0.1/test.json +99 -0
  323. package/data/craftbook-templates/mo/mock-interview/versions/1.0.1/craftbook.json +139 -0
  324. package/data/craftbook-templates/mo/mock-interview/versions/1.0.1/test.json +110 -0
  325. package/data/craftbook-templates/mo/mod-scaffold/versions/1.0.1/craftbook.json +156 -0
  326. package/data/craftbook-templates/mo/mod-scaffold/versions/1.0.1/test.json +133 -0
  327. package/data/craftbook-templates/mo/monitor-and-alert/versions/1.0.1/craftbook.json +158 -0
  328. package/data/craftbook-templates/mo/monitor-and-alert/versions/1.0.1/test.json +197 -0
  329. package/data/craftbook-templates/mo/month-close/versions/1.0.1/craftbook.json +140 -0
  330. package/data/craftbook-templates/mo/month-close/versions/1.0.1/test.json +97 -0
  331. package/data/craftbook-templates/mo/monthly-recording-review/versions/1.0.1/craftbook.json +140 -0
  332. package/data/craftbook-templates/mo/monthly-recording-review/versions/1.0.1/test.json +117 -0
  333. package/data/craftbook-templates/mo/moodboard/versions/1.0.1/craftbook.json +109 -0
  334. package/data/craftbook-templates/mo/moodboard/versions/1.0.1/test.json +103 -0
  335. package/data/craftbook-templates/mo/morning-brief/versions/1.0.1/craftbook.json +107 -0
  336. package/data/craftbook-templates/mo/morning-brief/versions/1.0.1/test.json +225 -0
  337. package/data/craftbook-templates/mo/morning-report/versions/1.0.1/craftbook.json +152 -0
  338. package/data/craftbook-templates/mo/morning-report/versions/1.0.1/test.json +250 -0
  339. package/data/craftbook-templates/mu/music-metadata-tag/versions/1.0.1/craftbook.json +101 -0
  340. package/data/craftbook-templates/mu/music-metadata-tag/versions/1.0.1/test.json +103 -0
  341. package/data/craftbook-templates/na/narrated-slideshow/versions/1.1.1/craftbook.json +181 -0
  342. package/data/craftbook-templates/na/narrated-slideshow/versions/1.1.1/test.json +86 -0
  343. package/data/craftbook-templates/ne/newsletter-issue/versions/1.0.1/craftbook.json +143 -0
  344. package/data/craftbook-templates/ne/newsletter-issue/versions/1.0.1/test.json +110 -0
  345. package/data/craftbook-templates/no/notification-router/versions/1.0.1/craftbook.json +158 -0
  346. package/data/craftbook-templates/no/notification-router/versions/1.0.1/test.json +162 -0
  347. package/data/craftbook-templates/oc/ocr-extract/versions/1.0.1/craftbook.json +137 -0
  348. package/data/craftbook-templates/oc/ocr-extract/versions/1.0.1/test.json +103 -0
  349. package/data/craftbook-templates/of/offer-compare/versions/1.0.1/craftbook.json +106 -0
  350. package/data/craftbook-templates/of/offer-compare/versions/1.0.1/test.json +110 -0
  351. package/data/craftbook-templates/on/onboarding-checklist/versions/1.0.1/craftbook.json +107 -0
  352. package/data/craftbook-templates/on/onboarding-checklist/versions/1.0.1/test.json +110 -0
  353. package/data/craftbook-templates/on/onboarding-flow/versions/1.0.1/craftbook.json +143 -0
  354. package/data/craftbook-templates/on/onboarding-flow/versions/1.0.1/test.json +97 -0
  355. package/data/craftbook-templates/on/oncall-handoff/versions/1.0.1/craftbook.json +107 -0
  356. package/data/craftbook-templates/on/oncall-handoff/versions/1.0.1/test.json +110 -0
  357. package/data/craftbook-templates/on/one-pager/versions/1.0.1/craftbook.json +143 -0
  358. package/data/craftbook-templates/on/one-pager/versions/1.0.1/test.json +110 -0
  359. package/data/craftbook-templates/op/ops-runbook/versions/1.0.1/craftbook.json +112 -0
  360. package/data/craftbook-templates/op/ops-runbook/versions/1.0.1/test.json +104 -0
  361. package/data/craftbook-templates/pa/page-spread/versions/1.0.1/craftbook.json +82 -0
  362. package/data/craftbook-templates/pa/page-spread/versions/1.0.1/test.json +132 -0
  363. package/data/craftbook-templates/pa/parser-grammar/versions/1.0.1/craftbook.json +147 -0
  364. package/data/craftbook-templates/pa/parser-grammar/versions/1.0.1/test.json +92 -0
  365. package/data/craftbook-templates/pe/perf-audit/versions/1.0.1/craftbook.json +141 -0
  366. package/data/craftbook-templates/pe/perf-audit/versions/1.0.1/test.json +162 -0
  367. package/data/craftbook-templates/pe/perf-optimization/versions/1.0.1/craftbook.json +148 -0
  368. package/data/craftbook-templates/pe/perf-optimization/versions/1.0.1/test.json +92 -0
  369. package/data/craftbook-templates/pe/pest-diagnosis/versions/1.0.1/craftbook.json +140 -0
  370. package/data/craftbook-templates/pe/pest-diagnosis/versions/1.0.1/test.json +122 -0
  371. package/data/craftbook-templates/ph/photo-cull/versions/1.0.1/craftbook.json +140 -0
  372. package/data/craftbook-templates/ph/photo-cull/versions/1.0.1/test.json +103 -0
  373. package/data/craftbook-templates/ph/physics-toy/versions/1.0.1/craftbook.json +110 -0
  374. package/data/craftbook-templates/ph/physics-toy/versions/1.0.1/test.json +99 -0
  375. package/data/craftbook-templates/pi/pitch-deck/versions/1.0.1/craftbook.json +141 -0
  376. package/data/craftbook-templates/pi/pitch-deck/versions/1.0.1/test.json +97 -0
  377. package/data/craftbook-templates/pl/playtest-report/versions/1.0.1/craftbook.json +140 -0
  378. package/data/craftbook-templates/pl/playtest-report/versions/1.0.1/test.json +111 -0
  379. package/data/craftbook-templates/po/podcast-chaptering/versions/1.0.1/craftbook.json +140 -0
  380. package/data/craftbook-templates/po/podcast-chaptering/versions/1.0.1/test.json +103 -0
  381. package/data/craftbook-templates/po/portfolio-site/versions/1.0.1/craftbook.json +151 -0
  382. package/data/craftbook-templates/po/portfolio-site/versions/1.0.1/test.json +97 -0
  383. package/data/craftbook-templates/po/powerpoint-deck/versions/1.7.0/craftbook.json +257 -0
  384. package/data/craftbook-templates/po/powerpoint-deck/versions/1.7.0/test.json +228 -0
  385. package/data/craftbook-templates/po/powerpoint-deck/versions/1.7.1/craftbook.json +347 -0
  386. package/data/craftbook-templates/po/powerpoint-deck/versions/1.7.1/test.json +228 -0
  387. package/data/craftbook-templates/pr/pr-security-review/versions/1.0.1/craftbook.json +141 -0
  388. package/data/craftbook-templates/pr/pr-security-review/versions/1.0.1/test.json +110 -0
  389. package/data/craftbook-templates/pr/practice-exam/versions/1.0.1/craftbook.json +159 -0
  390. package/data/craftbook-templates/pr/practice-exam/versions/1.0.1/test.json +117 -0
  391. package/data/craftbook-templates/pr/practice-session/versions/1.0.1/craftbook.json +115 -0
  392. package/data/craftbook-templates/pr/practice-session/versions/1.0.1/test.json +114 -0
  393. package/data/craftbook-templates/pr/pre-departure-countdown/versions/1.0.1/craftbook.json +140 -0
  394. package/data/craftbook-templates/pr/pre-departure-countdown/versions/1.0.1/test.json +97 -0
  395. package/data/craftbook-templates/pr/press-release/versions/1.0.1/craftbook.json +143 -0
  396. package/data/craftbook-templates/pr/press-release/versions/1.0.1/test.json +356 -0
  397. package/data/craftbook-templates/pr/price-tracker/versions/1.0.1/craftbook.json +109 -0
  398. package/data/craftbook-templates/pr/price-tracker/versions/1.0.1/test.json +150 -0
  399. package/data/craftbook-templates/pr/pricing-page/versions/1.0.1/craftbook.json +184 -0
  400. package/data/craftbook-templates/pr/pricing-page/versions/1.0.1/test.json +97 -0
  401. package/data/craftbook-templates/pr/product-descriptions/versions/1.0.1/craftbook.json +105 -0
  402. package/data/craftbook-templates/pr/product-descriptions/versions/1.0.1/test.json +110 -0
  403. package/data/craftbook-templates/pr/proposal-sow/versions/1.0.1/craftbook.json +143 -0
  404. package/data/craftbook-templates/pr/proposal-sow/versions/1.0.1/test.json +110 -0
  405. package/data/craftbook-templates/pu/pull-request-review/manifest.json +3 -1
  406. package/data/craftbook-templates/pu/pull-request-review/versions/1.4.1/craftbook.json +180 -0
  407. package/data/craftbook-templates/pu/pull-request-review/versions/1.4.1/test.json +123 -0
  408. package/data/craftbook-templates/pu/puzzle-pack-layout/versions/1.0.1/craftbook.json +121 -0
  409. package/data/craftbook-templates/pu/puzzle-pack-layout/versions/1.0.1/test.json +123 -0
  410. package/data/craftbook-templates/pw/pwa-offline/versions/1.0.1/craftbook.json +155 -0
  411. package/data/craftbook-templates/pw/pwa-offline/versions/1.0.1/test.json +97 -0
  412. package/data/craftbook-templates/qu/quarterly-summary/versions/1.0.1/craftbook.json +140 -0
  413. package/data/craftbook-templates/qu/quarterly-summary/versions/1.0.1/test.json +113 -0
  414. package/data/craftbook-templates/re/reading-list/versions/1.0.1/craftbook.json +107 -0
  415. package/data/craftbook-templates/re/reading-list/versions/1.0.1/test.json +110 -0
  416. package/data/craftbook-templates/re/receipt-intake/versions/1.0.1/craftbook.json +140 -0
  417. package/data/craftbook-templates/re/receipt-intake/versions/1.0.1/test.json +149 -0
  418. package/data/craftbook-templates/re/receipt-ocr-ledger/versions/1.0.1/craftbook.json +140 -0
  419. package/data/craftbook-templates/re/receipt-ocr-ledger/versions/1.0.1/test.json +104 -0
  420. package/data/craftbook-templates/re/recipe-capture/versions/1.0.1/craftbook.json +140 -0
  421. package/data/craftbook-templates/re/recipe-capture/versions/1.0.1/test.json +128 -0
  422. package/data/craftbook-templates/re/record-a-relative/versions/1.0.1/craftbook.json +115 -0
  423. package/data/craftbook-templates/re/record-a-relative/versions/1.0.1/test.json +110 -0
  424. package/data/craftbook-templates/re/recurring-invoice-run/versions/1.0.1/craftbook.json +148 -0
  425. package/data/craftbook-templates/re/recurring-invoice-run/versions/1.0.1/test.json +104 -0
  426. package/data/craftbook-templates/re/refactor-module/versions/1.0.2/craftbook.json +148 -0
  427. package/data/craftbook-templates/re/refactor-module/versions/1.0.2/test.json +92 -0
  428. package/data/craftbook-templates/re/regex-builder/versions/1.0.1/craftbook.json +147 -0
  429. package/data/craftbook-templates/re/regex-builder/versions/1.0.1/test.json +92 -0
  430. package/data/craftbook-templates/re/release-announcement/versions/1.0.1/craftbook.json +159 -0
  431. package/data/craftbook-templates/re/release-announcement/versions/1.0.1/test.json +202 -0
  432. package/data/craftbook-templates/re/release-artifact-sanity-check/versions/1.0.1/craftbook.json +214 -0
  433. package/data/craftbook-templates/re/release-artifact-sanity-check/versions/1.0.1/test.json +138 -0
  434. package/data/craftbook-templates/re/release-notes/versions/1.0.1/craftbook.json +159 -0
  435. package/data/craftbook-templates/re/release-notes/versions/1.0.1/test.json +111 -0
  436. package/data/craftbook-templates/re/release-pipeline-ci/versions/1.0.1/craftbook.json +147 -0
  437. package/data/craftbook-templates/re/release-pipeline-ci/versions/1.0.1/test.json +162 -0
  438. package/data/craftbook-templates/re/release-readiness-review/versions/1.0.1/craftbook.json +141 -0
  439. package/data/craftbook-templates/re/release-readiness-review/versions/1.0.1/test.json +110 -0
  440. package/data/craftbook-templates/re/reliability-review/versions/1.0.1/craftbook.json +153 -0
  441. package/data/craftbook-templates/re/reliability-review/versions/1.0.1/test.json +112 -0
  442. package/data/craftbook-templates/re/report-pdf/versions/1.1.1/craftbook.json +173 -0
  443. package/data/craftbook-templates/re/report-pdf/versions/1.1.1/test.json +98 -0
  444. package/data/craftbook-templates/re/research-report/versions/1.0.1/craftbook.json +146 -0
  445. package/data/craftbook-templates/re/research-report/versions/1.0.1/test.json +110 -0
  446. package/data/craftbook-templates/re/research-to-document/versions/1.2.1/craftbook.json +216 -0
  447. package/data/craftbook-templates/re/research-to-document/versions/1.2.1/test.json +240 -0
  448. package/data/craftbook-templates/re/rest-api/versions/1.0.2/craftbook.json +147 -0
  449. package/data/craftbook-templates/re/rest-api/versions/1.0.2/test.json +387 -0
  450. package/data/craftbook-templates/re/resume-cv/versions/1.0.1/craftbook.json +143 -0
  451. package/data/craftbook-templates/re/resume-cv/versions/1.0.1/test.json +97 -0
  452. package/data/craftbook-templates/ro/rollback-plan/versions/1.0.1/craftbook.json +159 -0
  453. package/data/craftbook-templates/ro/rollback-plan/versions/1.0.1/test.json +162 -0
  454. package/data/craftbook-templates/ro/root-cause-investigation/versions/2.0.3/craftbook.json +413 -0
  455. package/data/craftbook-templates/ro/root-cause-investigation/versions/2.0.3/test.json +154 -0
  456. package/data/craftbook-templates/ro/rough-cut-assembly/versions/1.0.2/craftbook.json +167 -0
  457. package/data/craftbook-templates/ro/rough-cut-assembly/versions/1.0.2/test.json +137 -0
  458. package/data/craftbook-templates/ru/runbook/versions/1.0.1/craftbook.json +145 -0
  459. package/data/craftbook-templates/ru/runbook/versions/1.0.1/test.json +118 -0
  460. package/data/craftbook-templates/sc/schema-migration/versions/1.0.1/craftbook.json +144 -0
  461. package/data/craftbook-templates/sc/schema-migration/versions/1.0.1/test.json +103 -0
  462. package/data/craftbook-templates/sc/scrape-to-structured/versions/1.0.2/craftbook.json +140 -0
  463. package/data/craftbook-templates/sc/scrape-to-structured/versions/1.0.2/test.json +162 -0
  464. package/data/craftbook-templates/sc/script-automation/versions/1.0.1/craftbook.json +148 -0
  465. package/data/craftbook-templates/sc/script-automation/versions/1.0.1/test.json +162 -0
  466. package/data/craftbook-templates/sd/sdk-wrapper/versions/1.0.2/craftbook.json +147 -0
  467. package/data/craftbook-templates/sd/sdk-wrapper/versions/1.0.2/test.json +90 -0
  468. package/data/craftbook-templates/se/seasonal-maintenance-sweep/versions/1.0.1/craftbook.json +140 -0
  469. package/data/craftbook-templates/se/seasonal-maintenance-sweep/versions/1.0.1/test.json +110 -0
  470. package/data/craftbook-templates/se/security-architecture-review/versions/2.0.3/craftbook.json +440 -0
  471. package/data/craftbook-templates/se/security-architecture-review/versions/2.0.3/test.json +154 -0
  472. package/data/craftbook-templates/se/seo-meta-pack/versions/1.0.1/craftbook.json +105 -0
  473. package/data/craftbook-templates/se/seo-meta-pack/versions/1.0.1/test.json +97 -0
  474. package/data/craftbook-templates/so/social-thread/versions/1.0.1/craftbook.json +107 -0
  475. package/data/craftbook-templates/so/social-thread/versions/1.0.1/test.json +110 -0
  476. package/data/craftbook-templates/so/source-quality-audit/versions/1.0.1/craftbook.json +140 -0
  477. package/data/craftbook-templates/so/source-quality-audit/versions/1.0.1/test.json +158 -0
  478. package/data/craftbook-templates/sp/spa-dashboard/versions/1.0.1/craftbook.json +143 -0
  479. package/data/craftbook-templates/sp/spa-dashboard/versions/1.0.1/test.json +97 -0
  480. package/data/craftbook-templates/sp/spec-authoring/versions/2.0.3/craftbook.json +436 -0
  481. package/data/craftbook-templates/sp/spec-authoring/versions/2.0.3/test.json +162 -0
  482. package/data/craftbook-templates/sp/spec-doc/versions/1.0.1/craftbook.json +143 -0
  483. package/data/craftbook-templates/sp/spec-doc/versions/1.0.1/test.json +104 -0
  484. package/data/craftbook-templates/sp/spreadsheet-model/versions/1.0.1/craftbook.json +109 -0
  485. package/data/craftbook-templates/sp/spreadsheet-model/versions/1.0.1/test.json +160 -0
  486. package/data/craftbook-templates/sp/sprite-sheet/versions/1.0.1/craftbook.json +137 -0
  487. package/data/craftbook-templates/sp/sprite-sheet/versions/1.0.1/test.json +103 -0
  488. package/data/craftbook-templates/sq/sql-analysis/versions/1.0.1/craftbook.json +109 -0
  489. package/data/craftbook-templates/sq/sql-analysis/versions/1.0.1/test.json +104 -0
  490. package/data/craftbook-templates/st/standup-summary/versions/1.0.1/craftbook.json +107 -0
  491. package/data/craftbook-templates/st/standup-summary/versions/1.0.1/test.json +110 -0
  492. package/data/craftbook-templates/st/state-machine/versions/1.0.1/craftbook.json +147 -0
  493. package/data/craftbook-templates/st/state-machine/versions/1.0.1/test.json +92 -0
  494. package/data/craftbook-templates/st/status-report/versions/1.0.1/craftbook.json +146 -0
  495. package/data/craftbook-templates/st/status-report/versions/1.0.1/test.json +110 -0
  496. package/data/craftbook-templates/su/subscription-audit/versions/1.0.1/craftbook.json +140 -0
  497. package/data/craftbook-templates/su/subscription-audit/versions/1.0.1/test.json +104 -0
  498. package/data/craftbook-templates/su/subtitle-generator/versions/1.0.1/craftbook.json +128 -0
  499. package/data/craftbook-templates/su/subtitle-generator/versions/1.0.1/test.json +103 -0
  500. package/data/craftbook-templates/su/summarize-long/versions/1.0.1/craftbook.json +107 -0
  501. package/data/craftbook-templates/su/summarize-long/versions/1.0.1/test.json +110 -0
  502. package/data/craftbook-templates/su/survey-analysis/versions/1.0.1/craftbook.json +141 -0
  503. package/data/craftbook-templates/su/survey-analysis/versions/1.0.1/test.json +104 -0
  504. package/data/craftbook-templates/sv/svg-animation/versions/1.0.1/craftbook.json +110 -0
  505. package/data/craftbook-templates/sv/svg-animation/versions/1.0.1/test.json +97 -0
  506. package/data/craftbook-templates/ta/tailor-resume/versions/1.0.1/craftbook.json +114 -0
  507. package/data/craftbook-templates/ta/tailor-resume/versions/1.0.1/test.json +97 -0
  508. package/data/craftbook-templates/te/technical-documentation/versions/2.0.3/craftbook.json +408 -0
  509. package/data/craftbook-templates/te/technical-documentation/versions/2.0.3/test.json +174 -0
  510. package/data/craftbook-templates/te/test-coverage-review/versions/1.1.1/craftbook.json +141 -0
  511. package/data/craftbook-templates/te/test-coverage-review/versions/1.1.1/test.json +113 -0
  512. package/data/craftbook-templates/te/test-suite-backfill/versions/1.0.1/craftbook.json +120 -0
  513. package/data/craftbook-templates/te/test-suite-backfill/versions/1.0.1/test.json +92 -0
  514. package/data/craftbook-templates/th/thank-you-batch/versions/1.0.1/craftbook.json +143 -0
  515. package/data/craftbook-templates/th/thank-you-batch/versions/1.0.1/test.json +141 -0
  516. package/data/craftbook-templates/th/thank-you-sweep/versions/1.0.1/craftbook.json +143 -0
  517. package/data/craftbook-templates/th/thank-you-sweep/versions/1.0.1/test.json +142 -0
  518. package/data/craftbook-templates/th/threat-model/versions/1.0.1/craftbook.json +141 -0
  519. package/data/craftbook-templates/th/threat-model/versions/1.0.1/test.json +110 -0
  520. package/data/craftbook-templates/th/thumbnail-generator/versions/1.0.1/craftbook.json +103 -0
  521. package/data/craftbook-templates/th/thumbnail-generator/versions/1.0.1/test.json +103 -0
  522. package/data/craftbook-templates/ti/tileset-batch/versions/1.0.1/craftbook.json +160 -0
  523. package/data/craftbook-templates/ti/tileset-batch/versions/1.0.1/test.json +159 -0
  524. package/data/craftbook-templates/to/tone-rewrite/versions/1.0.1/craftbook.json +107 -0
  525. package/data/craftbook-templates/to/tone-rewrite/versions/1.0.1/test.json +110 -0
  526. package/data/craftbook-templates/to/topic-explainer/versions/1.0.1/craftbook.json +140 -0
  527. package/data/craftbook-templates/to/topic-explainer/versions/1.0.1/test.json +110 -0
  528. package/data/craftbook-templates/tr/transcribe-and-shownotes/versions/1.0.1/craftbook.json +115 -0
  529. package/data/craftbook-templates/tr/transcribe-and-shownotes/versions/1.0.1/test.json +98 -0
  530. package/data/craftbook-templates/tr/transcribe-audio/versions/1.0.1/craftbook.json +107 -0
  531. package/data/craftbook-templates/tr/transcribe-audio/versions/1.0.1/test.json +103 -0
  532. package/data/craftbook-templates/tr/transcribe-index/versions/1.0.1/craftbook.json +171 -0
  533. package/data/craftbook-templates/tr/transcribe-index/versions/1.0.1/test.json +151 -0
  534. package/data/craftbook-templates/ty/type-safety-pass/versions/1.0.1/craftbook.json +148 -0
  535. package/data/craftbook-templates/ty/type-safety-pass/versions/1.0.1/test.json +92 -0
  536. package/data/craftbook-templates/ve/version-bump/versions/1.0.1/craftbook.json +155 -0
  537. package/data/craftbook-templates/ve/version-bump/versions/1.0.1/test.json +92 -0
  538. package/data/craftbook-templates/vi/video-storyboard/versions/1.0.1/craftbook.json +109 -0
  539. package/data/craftbook-templates/vi/video-storyboard/versions/1.0.1/test.json +103 -0
  540. package/data/craftbook-templates/vi/visit-prep/versions/1.0.1/craftbook.json +140 -0
  541. package/data/craftbook-templates/vi/visit-prep/versions/1.0.1/test.json +97 -0
  542. package/data/craftbook-templates/vo/voiceover-script/versions/1.0.1/craftbook.json +107 -0
  543. package/data/craftbook-templates/vo/voiceover-script/versions/1.0.1/test.json +103 -0
  544. package/data/craftbook-templates/we/weak-spot-drill/versions/1.0.1/craftbook.json +154 -0
  545. package/data/craftbook-templates/we/weak-spot-drill/versions/1.0.1/test.json +124 -0
  546. package/data/craftbook-templates/we/web-app-crud/versions/1.0.1/craftbook.json +143 -0
  547. package/data/craftbook-templates/we/web-app-crud/versions/1.0.1/test.json +97 -0
  548. package/data/craftbook-templates/we/web-component/versions/1.0.1/craftbook.json +110 -0
  549. package/data/craftbook-templates/we/web-component/versions/1.0.1/test.json +97 -0
  550. package/data/craftbook-templates/we/webhook-handler/versions/1.0.1/craftbook.json +147 -0
  551. package/data/craftbook-templates/we/webhook-handler/versions/1.0.1/test.json +162 -0
  552. package/data/craftbook-templates/we/week-plan/versions/1.0.1/craftbook.json +140 -0
  553. package/data/craftbook-templates/we/week-plan/versions/1.0.1/test.json +255 -0
  554. package/data/craftbook-templates/we/weekly-menu-plan/versions/1.0.1/craftbook.json +140 -0
  555. package/data/craftbook-templates/we/weekly-menu-plan/versions/1.0.1/test.json +97 -0
  556. package/data/craftbook-templates/we/weekly-pipeline-review/versions/1.0.1/craftbook.json +106 -0
  557. package/data/craftbook-templates/we/weekly-pipeline-review/versions/1.0.1/test.json +104 -0
  558. package/data/craftbook-templates/we/weekly-review/versions/1.0.1/craftbook.json +107 -0
  559. package/data/craftbook-templates/we/weekly-review/versions/1.0.1/test.json +110 -0
  560. package/data/craftbook-templates/we/weekly-walkthrough/versions/1.0.1/craftbook.json +140 -0
  561. package/data/craftbook-templates/we/weekly-walkthrough/versions/1.0.1/test.json +138 -0
  562. package/data/craftbook-templates/wh/whitepaper/versions/1.0.1/craftbook.json +141 -0
  563. package/data/craftbook-templates/wh/whitepaper/versions/1.0.1/test.json +110 -0
  564. package/data/craftbook-templates/ye/year-in-review/versions/1.0.1/craftbook.json +115 -0
  565. package/data/craftbook-templates/ye/year-in-review/versions/1.0.1/test.json +145 -0
  566. package/data/craftbook-templates/yo/youtube-chapters-seo/versions/1.0.1/craftbook.json +134 -0
  567. package/data/craftbook-templates/yo/youtube-chapters-seo/versions/1.0.1/test.json +103 -0
  568. package/package.json +1 -1
  569. package/schemas/chat-model-identity.schema.json +16 -0
  570. package/schemas/craftbook-doc.schema.json +8 -2
  571. package/schemas/craftbook-template-version.schema.json +8 -2
@@ -0,0 +1,132 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "title": "Documentation Drift Review traceability eval",
4
+ "objective": "Measure whether the review verifies high-impact documentation claims against package scripts, config, routes, and real paths and supplies exact corrections.",
5
+ "tags": [
6
+ "corpus"
7
+ ],
8
+ "prompt": "Use the Documentation Drift Review craftbook for the weekly docs-health pass. Compare the seeded docs with the code/config and write documentation-drift-review.md. Do not edit documentation.",
9
+ "setup": {
10
+ "projectName": "Documentation Maintenance Eval",
11
+ "about": "A small service whose README and runbook contain deliberate command, port, endpoint, path, and recovery drift.",
12
+ "missionObjectives": "Cite both the stale doc location and source of truth, include exact corrected wording, and rank harmful operational drift first.",
13
+ "files": [
14
+ {
15
+ "path": "README.md",
16
+ "content": "# Returns Service\n\nRun `npm start` and open http://localhost:3000. List customers with `GET /customers`. See [setup](docs/setup.md).\n"
17
+ },
18
+ {
19
+ "path": "docs/runbook.md",
20
+ "content": "# Recovery\n\nIf the queue stalls, delete `runtime.db` and restart. The service will rebuild all pending jobs from memory.\n"
21
+ },
22
+ {
23
+ "path": "package.json",
24
+ "content": "{\"name\":\"returns-service\",\"scripts\":{\"dev\":\"node src/server.js\",\"test\":\"vitest run\"}}\n"
25
+ },
26
+ {
27
+ "path": "src/config.ts",
28
+ "content": "export const port = Number(process.env.PORT ?? 8080);\nexport const stateFile = process.env.STATE_FILE ?? 'data/queue.sqlite';\n"
29
+ },
30
+ {
31
+ "path": "src/routes.ts",
32
+ "content": "app.get('/users', requireUser, async (_req, res) => res.json(await store.listUsers()));\n"
33
+ },
34
+ {
35
+ "path": "src/queue.ts",
36
+ "content": "// data/queue.sqlite is the durable source of truth; deleting it loses pending jobs.\nexport async function recover(db) { return db.pending(); }\n"
37
+ }
38
+ ],
39
+ "worker": {
40
+ "name": "Rae",
41
+ "role": "Reviewer"
42
+ }
43
+ },
44
+ "mocks": [],
45
+ "success": {
46
+ "summary": "documentation-drift-review.md finds every seeded drift item, cites both sides, gives corrected wording, and prioritizes unsafe recovery guidance.",
47
+ "deliverables": [
48
+ {
49
+ "path": "documentation-drift-review.md",
50
+ "kind": "markdown-report",
51
+ "minBytes": 1500,
52
+ "checks": [
53
+ {
54
+ "kind": "contains",
55
+ "file": "documentation-drift-review.md",
56
+ "pattern": "README\\.md:[0-9]+|README\\.md",
57
+ "flags": "i"
58
+ },
59
+ {
60
+ "kind": "contains",
61
+ "file": "documentation-drift-review.md",
62
+ "pattern": "npm start[\\s\\S]{0,180}npm run dev|package\\.json",
63
+ "flags": "i"
64
+ },
65
+ {
66
+ "kind": "contains",
67
+ "file": "documentation-drift-review.md",
68
+ "pattern": "3000[\\s\\S]{0,120}8080|src/config\\.ts",
69
+ "flags": "i"
70
+ },
71
+ {
72
+ "kind": "contains",
73
+ "file": "documentation-drift-review.md",
74
+ "pattern": "/customers[\\s\\S]{0,120}/users|src/routes\\.ts",
75
+ "flags": "i"
76
+ },
77
+ {
78
+ "kind": "contains",
79
+ "file": "documentation-drift-review.md",
80
+ "pattern": "docs/setup\\.md[\\s\\S]{0,120}(missing|broken|does not exist)",
81
+ "flags": "i"
82
+ },
83
+ {
84
+ "kind": "contains",
85
+ "file": "documentation-drift-review.md",
86
+ "pattern": "runtime\\.db|queue\\.sqlite|data loss|pending jobs",
87
+ "flags": "i",
88
+ "label": "unsafe recovery drift"
89
+ },
90
+ {
91
+ "kind": "contains",
92
+ "file": "documentation-drift-review.md",
93
+ "pattern": "corrected|replace with|should read",
94
+ "flags": "i",
95
+ "label": "exact corrections"
96
+ },
97
+ {
98
+ "kind": "contains",
99
+ "file": "documentation-drift-review.md",
100
+ "pattern": "Prevention|tested snippet|link check|generate",
101
+ "flags": "i"
102
+ }
103
+ ]
104
+ }
105
+ ]
106
+ },
107
+ "rubric": {
108
+ "artifact": {
109
+ "path": "documentation-drift-review.md",
110
+ "kind": "markdown"
111
+ },
112
+ "axes": [
113
+ {
114
+ "name": "traceability",
115
+ "description": "Each stale claim is tied to both its doc location and source of truth."
116
+ },
117
+ {
118
+ "name": "harm prioritization",
119
+ "description": "Operationally dangerous drift is ranked above cosmetic issues."
120
+ },
121
+ {
122
+ "name": "repairability",
123
+ "description": "Findings include exact corrected wording, ownership, and targeted prevention."
124
+ }
125
+ ]
126
+ },
127
+ "qualityFocus": [
128
+ "doc-to-source traceability",
129
+ "operational harm",
130
+ "exact corrections"
131
+ ]
132
+ }
@@ -0,0 +1,140 @@
1
+ {
2
+ "id": "drive-wrap-up",
3
+ "name": "Fundraiser Wrap-Up",
4
+ "description": "Close a fundraising drive properly: verify the final numbers against the donation ledger, confirm every donor was thanked (or finish the thank-yous now), and write the wrap-up story — the total, what the money does, and the people who made it happen — ready to share with the community and hand to the next organizer. Locks the wrap-up's claims and the thank-you completeness check FIRST, then verifies against the ledger, then writes the story. Use for ending a fundraiser, drive wrap-up reports, final fundraising totals, and community thank-you posts.\n\nA gallery craftbook generated from an archetype spec. It runs\n`phase → (per-phase gate) → … → evaluate → (loop) → finish`. Each build\nphase that produces a checkable artifact is followed by a **runtime\ngate-checkpoint** — the runtime verifies the artifact and routes with no\nmodel turn, looping back to redo the phase on a miss. The final `evaluate`\nstep holds a static deliverable gate plus a reviewer QA pass. What it adds\nover the generic `build-loop`: a specialist role per phase, a\ndomain-correct ordering, and a concrete per-phase quality bar.\n\nDeliverables marked \"artifact\" land in the project's artifacts drawer (`write_artifact` / `read_artifact`), not the shipped workspace — review output is not product source.\n\nPhases:\n\n1. Scope the wrap-up (planner) — final claims to verify, thank-you completeness, audiences → gated on artifact `notes/scope.md` (markdown-notes)\n2. Verify against the ledger (data-analyst) — recompute totals, close the thank-you debt → gated on artifact `notes/verify.md` (markdown-notes)\n3. Write the wrap-up (copywriter) — the community story plus the organizer handoff → gated on artifact `report.md` (markdown-report)\n\nThe gates never advance with an unmet criterion, and loop back to the\nowning phase to fix named gaps.\n",
5
+ "entryStepId": "scope",
6
+ "triggers": [
7
+ "wrap up the fundraiser",
8
+ "close the drive",
9
+ "final fundraising report",
10
+ "fundraiser wrap up",
11
+ "end the campaign"
12
+ ],
13
+ "steps": [
14
+ {
15
+ "id": "scope",
16
+ "name": "Scope the wrap-up",
17
+ "description": "final claims to verify, thank-you completeness, audiences",
18
+ "prompt": "Define the wrap-up before writing a word of it. Step 1: read donations.json from the workspace — the goal, the entry count, and the thanked/unthanked split. Step 2: fix the claims the wrap-up will make and that must be verified — the final total, the percent of goal, the gift count, the largest gift (if the owner wants it named), and the impact statement (what the money concretely does). Step 3: set the thank-you rule — the drive does not close with unthanked donors; either the thank-yous go out during this wrap-up or each remaining one is assigned to a named person. Step 4: identify the audiences — the community post, and the handoff note for whoever runs the next drive. Step 5: write an acceptance-criteria checklist ('every number in the wrap-up recomputed from the ledger', 'zero unthanked donors or each assigned by name', 'impact stated concretely, not vaguely', 'donors thanked collectively in the story, individually in the record', 'handoff note tells the next organizer what worked'). Call write_task_note with the totals + checklist and write notes/scope.md.\n\nThe deliverable `notes/scope.md` lands in the project's artifacts drawer — write it with `write_artifact` and read it back with `read_artifact`; the shipped workspace stays untouched.",
19
+ "suggestedRole": "planner",
20
+ "advanceWhen": {
21
+ "file": "notes/scope.md",
22
+ "minBytes": 1,
23
+ "sniff": "nonempty",
24
+ "artifact": true
25
+ },
26
+ "gate": {
27
+ "at": "completion",
28
+ "checks": [
29
+ {
30
+ "kind": "minBytes",
31
+ "file": "notes/scope.md",
32
+ "bytes": 120,
33
+ "artifact": true
34
+ },
35
+ {
36
+ "kind": "sniff",
37
+ "file": "notes/scope.md",
38
+ "sniff": "nonempty",
39
+ "artifact": true
40
+ }
41
+ ],
42
+ "onReject": "scope",
43
+ "maxAttempts": 3
44
+ },
45
+ "next": "verify"
46
+ },
47
+ {
48
+ "id": "verify",
49
+ "name": "Verify against the ledger",
50
+ "description": "recompute totals, close the thank-you debt",
51
+ "prompt": "Verify every claim against the ledger. Step 1: recompute the total raised, the gift count, and the percent of goal directly from the donation entries — the wrap-up uses these numbers, not remembered ones. Step 2: list every unthanked donor; draft each missing thank-you for the owner to send now, and record each as thanked through the project's drive capabilities once it goes out (or assign it by name if it truly cannot go now). Step 3: pull the drive's story beats from the record — the first gift, the day the thermometer moved most, the moment the goal broke. Step 4: confirm the impact statement math (what the total actually buys) with the owner. Step 5: write the verified numbers and beats to notes/verify.md and call write_task_note with the final total and the remaining thank-you count (target: zero).\n\nThe deliverable `notes/verify.md` lands in the project's artifacts drawer — write it with `write_artifact` and read it back with `read_artifact`; the shipped workspace stays untouched.",
52
+ "suggestedRole": "data-analyst",
53
+ "advanceWhen": {
54
+ "file": "notes/verify.md",
55
+ "minBytes": 1,
56
+ "sniff": "nonempty",
57
+ "artifact": true
58
+ },
59
+ "gate": {
60
+ "at": "completion",
61
+ "checks": [
62
+ {
63
+ "kind": "minBytes",
64
+ "file": "notes/verify.md",
65
+ "bytes": 120,
66
+ "artifact": true
67
+ },
68
+ {
69
+ "kind": "sniff",
70
+ "file": "notes/verify.md",
71
+ "sniff": "nonempty",
72
+ "artifact": true
73
+ }
74
+ ],
75
+ "onReject": "verify",
76
+ "maxAttempts": 3
77
+ },
78
+ "next": "report"
79
+ },
80
+ {
81
+ "id": "report",
82
+ "name": "Write the wrap-up",
83
+ "description": "the community story plus the organizer handoff",
84
+ "prompt": "Write the wrap-up from the verified record. Step 1: the community story — open with the total and what it does, in one warm sentence; tell the drive's arc through the verified beats; thank the givers and the helpers collectively and specifically enough to feel real; end with what happens next with the money. Celebration, not accounting. Step 2: the organizer handoff — the final numbers, what worked and what didn't, the timing and asks that pulled best, and the one thing to do differently — honest and short. Step 3: keep the story shareable as-is (no internal notes in it) and put the handoff under its own heading after it. Write report.md and call write_task_note with the report path and the headline total.\n\nThe deliverable `report.md` lands in the project's artifacts drawer — write it with `write_artifact` and read it back with `read_artifact`; the shipped workspace stays untouched.",
85
+ "suggestedRole": "copywriter",
86
+ "advanceWhen": {
87
+ "file": "report.md",
88
+ "minBytes": 1,
89
+ "sniff": "nonempty",
90
+ "artifact": true
91
+ },
92
+ "gate": {
93
+ "at": "completion",
94
+ "checks": [
95
+ {
96
+ "kind": "minBytes",
97
+ "file": "report.md",
98
+ "bytes": 1500,
99
+ "artifact": true
100
+ },
101
+ {
102
+ "kind": "contains",
103
+ "file": "report.md",
104
+ "pattern": "(?:^|\\n)#{1,3}\\s+\\S",
105
+ "flags": "i",
106
+ "label": "at least one markdown heading",
107
+ "artifact": true
108
+ }
109
+ ],
110
+ "onReject": "report",
111
+ "maxAttempts": 4
112
+ },
113
+ "next": "evaluate"
114
+ },
115
+ {
116
+ "id": "evaluate",
117
+ "name": "Evaluate",
118
+ "description": "Grade the deliverable against every acceptance criterion. All pass → finish; any fail → loop back and fix the gap.",
119
+ "prompt": "Open report.md and notes/verify.md and verify every criterion from notes/scope.md: every number in the wrap-up matches the ledger recomputation (re-add the total yourself), the thank-you debt is zero or each remaining one is assigned by name, the impact statement is concrete, the community story stands alone without internal notes, and the handoff names what worked and the one change for next time. Write PASS/FAIL per criterion; on any failure, name the gap and loop back to report.\n\nThe deliverable lives in the project's artifacts drawer — open `report.md` with `read_artifact`, not `read_file`.\n\nThen route — this is the whole point of the loop:\n\n- **Every criterion PASSES →** call `advance_task_step({ ref, stepId: \"evaluate\", next: \"finish\" })`.\n- **Any criterion FAILS →** write the specific gaps to notes, then call `advance_task_step({ ref, stepId: \"evaluate\", next: \"report\" })` to loop back. The builder fixes exactly those gaps.\n\nNever route to `finish` while any criterion is unmet. The build phase's completion gate already blocked a grossly-incomplete deliverable; your job is the judgment an automated check cannot make (does it actually work, read well, look right). After ~3 unproductive loops, stop and report DONE_WITH_CONCERNS so the user can step in.",
120
+ "suggestedRole": "reviewer",
121
+ "consumes": [
122
+ {
123
+ "file": "report.md",
124
+ "artifact": true
125
+ }
126
+ ],
127
+ "next": "report"
128
+ },
129
+ {
130
+ "id": "finish",
131
+ "name": "Finish",
132
+ "description": "All acceptance criteria met. Stamp a short summary and report DONE.",
133
+ "prompt": "Every acceptance criterion passed. Write a one-paragraph DONE summary to task notes via `write_task_note`: what was built, the deliverable path(s), and a one-line confirmation that each criterion is met. Then report DONE.",
134
+ "suggestedRole": "developer",
135
+ "terminal": true
136
+ }
137
+ ],
138
+ "version": "1.0.1",
139
+ "releasedAt": "2026-08-14T00:00:00Z"
140
+ }
@@ -0,0 +1,104 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "title": "Fundraiser Wrap-Up smoke eval",
4
+ "objective": "Self-contained smoke eval for the Fundraiser Wrap-Up craftbook using the data generic harness.",
5
+ "tags": [
6
+ "data"
7
+ ],
8
+ "prompt": "I dropped our numbers in source/records.csv. Can you look at the data, analyze it, and put togehter some results in analysis.md?",
9
+ "setup": {
10
+ "projectName": "Fundraiser Wrap-Up Eval",
11
+ "about": "Self-contained eval project for drive-wrap-up. Seeded inputs are under workspace/source or workspace/fixtures; final deliverable is workspace/analysis.md.",
12
+ "missionObjectives": "Use the Fundraiser Wrap-Up craftbook/template, read the seeded local fixtures, and write analysis.md without network calls, real credentials, or live services.",
13
+ "files": [
14
+ {
15
+ "path": "source/brief.md",
16
+ "content": "# Fundraiser Wrap-Up Eval Brief\n\nClient: Boreal Desk, a home-office accessories company.\nAudience: operations leads who need an artifact they can use this week.\n\nFixed source facts for grounding:\n- The returns desk pilot covered 18 SKUs.\n- Median first response improved from 18 hours to 6 hours.\n- Preventable refund leakage fell from 14.2% to 8.9%.\n- The top unresolved complaint is status silence after photo submission.\n- Required next actions are automated status emails, barcode-exception training, and a weekly Finance exception export.\n\nUse these facts when the task asks for prose, analysis, copy, UI content, or test data. Do not use live web services, real credentials, or current outside data.\n\nCraftbook under test: drive-wrap-up - Fundraiser Wrap-Up.\n"
17
+ },
18
+ {
19
+ "path": "source/records.csv",
20
+ "content": "customer,region,orders,revenue_usd,churn_risk\nAster,North,12,1440,low\nBoreal,South,8,720,medium\nCedar,West,15,2100,high\nDune,North,5,500,low\n"
21
+ }
22
+ ],
23
+ "worker": {
24
+ "name": "Jules",
25
+ "role": "Data Analyst"
26
+ }
27
+ },
28
+ "mocks": [],
29
+ "success": {
30
+ "summary": "analysis.md is a seeded-data analysis with deterministic computed facts.",
31
+ "deliverables": [
32
+ {
33
+ "path": "analysis.md",
34
+ "kind": "markdown-report",
35
+ "minBytes": 900,
36
+ "checks": [
37
+ {
38
+ "kind": "contains",
39
+ "file": "analysis.md",
40
+ "pattern": "(?:^|\\n)#{1,3}\\s+\\S",
41
+ "flags": "i"
42
+ },
43
+ {
44
+ "kind": "contains",
45
+ "file": "analysis.md",
46
+ "pattern": "40\\b",
47
+ "flags": "i",
48
+ "label": "include total orders of 40"
49
+ },
50
+ {
51
+ "kind": "contains",
52
+ "file": "analysis.md",
53
+ "pattern": "\\$?4,?760\\b",
54
+ "flags": "i",
55
+ "label": "include total revenue of 4760"
56
+ },
57
+ {
58
+ "kind": "contains",
59
+ "file": "analysis.md",
60
+ "pattern": "Cedar",
61
+ "flags": "i",
62
+ "label": "identify Cedar as top revenue and high risk"
63
+ },
64
+ {
65
+ "kind": "contains",
66
+ "file": "analysis.md",
67
+ "pattern": "high",
68
+ "flags": "i",
69
+ "label": "include churn-risk finding"
70
+ }
71
+ ]
72
+ }
73
+ ]
74
+ },
75
+ "rubric": {
76
+ "artifact": {
77
+ "path": "analysis.md",
78
+ "kind": "markdown"
79
+ },
80
+ "axes": [
81
+ {
82
+ "name": "accuracy",
83
+ "description": "Computed figures are correct against the seeded records."
84
+ },
85
+ {
86
+ "name": "grounding",
87
+ "description": "Every claim traces to the seeded data — nothing invented."
88
+ },
89
+ {
90
+ "name": "structure",
91
+ "description": "Tables and sections make the analysis checkable at a glance."
92
+ },
93
+ {
94
+ "name": "actionability",
95
+ "description": "Recommendations follow from the findings and are concretely doable."
96
+ }
97
+ ]
98
+ },
99
+ "qualityFocus": [
100
+ "seeded data reading",
101
+ "computed facts",
102
+ "recommendation grounding"
103
+ ]
104
+ }
@@ -0,0 +1,146 @@
1
+ {
2
+ "id": "due-diligence-brief",
3
+ "name": "Due-Diligence Brief",
4
+ "description": "Produce a structured due-diligence brief on an entity (company, vendor, investment, partner): a planner locks the diligence dimensions and red-flag criteria, a researcher gathers verifiable facts and risk signals per dimension with sources, and a copywriter writes a decision-oriented brief with findings, risks, and an overall read. The ordering matters because diligence without locked dimensions misses a category (e.g. legal, financial, reputational) and a brief without a red-flag rubric buries the risks; fixing the dimensions and what counts as a flag first makes the brief decision-ready and defensible. Use this for vendor/partner due diligence, investment diligence, background briefs on a company or person, risk assessments, and 'should we work with / invest in X' questions.\n\nA gallery craftbook generated from an archetype spec. It runs\n`phase → (per-phase gate) → … → evaluate → (loop) → finish`. Each build\nphase that produces a checkable artifact is followed by a **runtime\ngate-checkpoint** — the runtime verifies the artifact and routes with no\nmodel turn, looping back to redo the phase on a miss. The final `evaluate`\nstep holds a static deliverable gate plus a reviewer QA pass. What it adds\nover the generic `build-loop`: a specialist role per phase, a\ndomain-correct ordering, and a concrete per-phase quality bar.\n\nDeliverables marked \"artifact\" land in the project's artifacts drawer (`write_artifact` / `read_artifact`), not the shipped workspace — review output is not product source.\n\nPhases:\n\n1. Scope the diligence (planner) — lock diligence dimensions + red-flag criteria → gated on artifact `notes/scope.md` (markdown-notes)\n2. Gather facts & signals (researcher) — verifiable facts + risk signals per dimension, sourced → gated on artifact `notes/findings.md` (markdown-notes)\n3. Write the brief (copywriter) — decision-oriented brief with findings, risks, and a read → gated on artifact `brief.md` (markdown-report)\n\nThe gates never advance with an unmet criterion, and loop back to the\nowning phase to fix named gaps.\n",
5
+ "entryStepId": "scope",
6
+ "triggers": [
7
+ "due diligence brief",
8
+ "diligence on this company",
9
+ "background check on a vendor",
10
+ "should we partner with",
11
+ "risk assessment of an entity"
12
+ ],
13
+ "steps": [
14
+ {
15
+ "id": "scope",
16
+ "name": "Scope the diligence",
17
+ "description": "lock diligence dimensions + red-flag criteria",
18
+ "prompt": "1. Name the entity and the decision the brief informs (invest, partner, buy, hire) in one sentence. 2. Lock the diligence dimensions to cover (e.g. business model & traction, financials/funding, leadership, legal/regulatory, reputation/litigation, security/compliance as relevant) and what each must establish. 3. Define the red-flag rubric: what observations count as a red, amber, or green signal in each dimension. 4. Write an acceptance-criteria checklist (e.g. 'every dimension has a findings section', 'each material fact cites a source', 'risks are rated red/amber/green per the rubric', 'an overall recommendation/read is stated', 'unknowns and information gaps are listed'). 5. Record decisions. Call write_task_note with the dimensions, red-flag rubric, and checklist; write the same to notes/scope.md.\n\nThe deliverable `notes/scope.md` lands in the project's artifacts drawer — write it with `write_artifact` and read it back with `read_artifact`; the shipped workspace stays untouched.",
19
+ "suggestedRole": "planner",
20
+ "advanceWhen": {
21
+ "file": "notes/scope.md",
22
+ "minBytes": 1,
23
+ "sniff": "nonempty",
24
+ "artifact": true
25
+ },
26
+ "gate": {
27
+ "at": "completion",
28
+ "checks": [
29
+ {
30
+ "kind": "minBytes",
31
+ "file": "notes/scope.md",
32
+ "bytes": 120,
33
+ "artifact": true
34
+ },
35
+ {
36
+ "kind": "sniff",
37
+ "file": "notes/scope.md",
38
+ "sniff": "nonempty",
39
+ "artifact": true
40
+ }
41
+ ],
42
+ "onReject": "scope",
43
+ "maxAttempts": 3
44
+ },
45
+ "next": "research"
46
+ },
47
+ {
48
+ "id": "research",
49
+ "name": "Gather facts & signals",
50
+ "description": "verifiable facts + risk signals per dimension, sourced",
51
+ "prompt": "1. For each locked dimension, gather verifiable facts into notes/findings.md: the fact, its source [n] (official filing, registry, reputable reporting), and the date. 2. Apply the red-flag rubric as you go: tag each notable signal red/amber/green with the reason. 3. Prefer primary records (registrations, filings, official statements) over rumor; corroborate any serious negative with a second independent source before flagging it red. 4. Explicitly list what you could NOT find — open questions and information gaps are a diligence output, not a failure. 5. Do not assert unverified rumors as fact; mark them UNVERIFIED. Good looks like a per-dimension findings file with rated signals. Do not write the brief yet.\n\nThe deliverable `notes/findings.md` lands in the project's artifacts drawer — write it with `write_artifact` and read it back with `read_artifact`; the shipped workspace stays untouched.",
52
+ "suggestedRole": "researcher",
53
+ "advanceWhen": {
54
+ "file": "notes/findings.md",
55
+ "minBytes": 1,
56
+ "sniff": "nonempty",
57
+ "artifact": true
58
+ },
59
+ "gate": {
60
+ "at": "completion",
61
+ "checks": [
62
+ {
63
+ "kind": "minBytes",
64
+ "file": "notes/findings.md",
65
+ "bytes": 120,
66
+ "artifact": true
67
+ },
68
+ {
69
+ "kind": "sniff",
70
+ "file": "notes/findings.md",
71
+ "sniff": "nonempty",
72
+ "artifact": true
73
+ }
74
+ ],
75
+ "onReject": "research",
76
+ "maxAttempts": 3
77
+ },
78
+ "next": "write"
79
+ },
80
+ {
81
+ "id": "write",
82
+ "name": "Write the brief",
83
+ "description": "decision-oriented brief with findings, risks, and a read",
84
+ "prompt": "1. Write brief.md: a 1-paragraph bottom-line read up top (overall recommendation + the single biggest risk), then a section per diligence dimension with its findings and rated signals, then a consolidated 'Risks (red/amber/green)' section, then 'Open questions & information gaps'. 2. Every material fact carries its citation [n] and date; never state a serious negative without a corroborating source. 3. Keep it decision-oriented and scannable — a busy reader should get the verdict and risks in 60 seconds. 4. Add a References list from notes/findings.md so every [n] resolves. 5. On a loop-back, fix only the named gaps. 6. Call write_task_note with the brief path and which criteria now pass.\n\nBefore working, open the artifact input `notes/findings.md` with `read_artifact`; do not look for it in the workspace.\n\nThe deliverable `brief.md` lands in the project's artifacts drawer — write it with `write_artifact` and read it back with `read_artifact`; the shipped workspace stays untouched.",
85
+ "suggestedRole": "copywriter",
86
+ "consumes": [
87
+ {
88
+ "file": "notes/findings.md",
89
+ "artifact": true
90
+ }
91
+ ],
92
+ "advanceWhen": {
93
+ "file": "brief.md",
94
+ "minBytes": 1,
95
+ "sniff": "nonempty",
96
+ "artifact": true
97
+ },
98
+ "gate": {
99
+ "at": "completion",
100
+ "checks": [
101
+ {
102
+ "kind": "minBytes",
103
+ "file": "brief.md",
104
+ "bytes": 1500,
105
+ "artifact": true
106
+ },
107
+ {
108
+ "kind": "contains",
109
+ "file": "brief.md",
110
+ "pattern": "(?:^|\\n)#{1,3}\\s+\\S",
111
+ "flags": "i",
112
+ "label": "at least one markdown heading",
113
+ "artifact": true
114
+ }
115
+ ],
116
+ "onReject": "write",
117
+ "maxAttempts": 4
118
+ },
119
+ "next": "evaluate"
120
+ },
121
+ {
122
+ "id": "evaluate",
123
+ "name": "Evaluate",
124
+ "description": "Grade the deliverable against every acceptance criterion. All pass → finish; any fail → loop back and fix the gap.",
125
+ "prompt": "Open brief.md and check EACH criterion PASS/FAIL: (1) every locked dimension has a findings section; (2) each material fact cites a dated source (spot-check 3 against notes/findings.md); (3) risks are rated red/amber/green per the rubric and serious negatives are corroborated by a second source; (4) an explicit bottom-line read/recommendation is stated up top; (5) an open-questions/information-gaps section lists what could not be confirmed; (6) no UNVERIFIED rumor is presented as fact. A brief that buries the risks, omits a dimension, or states an uncorroborated negative as fact FAILS.\n\nThe deliverable lives in the project's artifacts drawer — open `brief.md` with `read_artifact`, not `read_file`.\n\nThen route — this is the whole point of the loop:\n\n- **Every criterion PASSES →** call `advance_task_step({ ref, stepId: \"evaluate\", next: \"finish\" })`.\n- **Any criterion FAILS →** write the specific gaps to notes, then call `advance_task_step({ ref, stepId: \"evaluate\", next: \"write\" })` to loop back. The builder fixes exactly those gaps.\n\nNever route to `finish` while any criterion is unmet. The build phase's completion gate already blocked a grossly-incomplete deliverable; your job is the judgment an automated check cannot make (does it actually work, read well, look right). After ~3 unproductive loops, stop and report DONE_WITH_CONCERNS so the user can step in.",
126
+ "suggestedRole": "reviewer",
127
+ "consumes": [
128
+ {
129
+ "file": "brief.md",
130
+ "artifact": true
131
+ }
132
+ ],
133
+ "next": "write"
134
+ },
135
+ {
136
+ "id": "finish",
137
+ "name": "Finish",
138
+ "description": "All acceptance criteria met. Stamp a short summary and report DONE.",
139
+ "prompt": "Every acceptance criterion passed. Write a one-paragraph DONE summary to task notes via `write_task_note`: what was built, the deliverable path(s), and a one-line confirmation that each criterion is met. Then report DONE.",
140
+ "suggestedRole": "developer",
141
+ "terminal": true
142
+ }
143
+ ],
144
+ "version": "1.0.1",
145
+ "releasedAt": "2026-08-14T00:00:00Z"
146
+ }
@@ -0,0 +1,110 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "title": "Due-Diligence Brief smoke eval",
4
+ "objective": "Self-contained smoke eval for the Due-Diligence Brief craftbook using the corpus generic harness.",
5
+ "tags": [
6
+ "corpus"
7
+ ],
8
+ "prompt": "We need a due-diligence brief for the returns-desk work. The backgound info is in source/brief.md — have a look and write it up in report.md.",
9
+ "setup": {
10
+ "projectName": "Due-Diligence Brief Eval",
11
+ "about": "Self-contained eval project for due-diligence-brief. Seeded inputs are under workspace/source or workspace/fixtures; final deliverable is workspace/report.md.",
12
+ "missionObjectives": "Use the Due-Diligence Brief craftbook/template, read the seeded local fixtures, and write report.md without network calls, real credentials, or live services.",
13
+ "files": [
14
+ {
15
+ "path": "source/brief.md",
16
+ "content": "# Due-Diligence Brief Eval Brief\n\nClient: Boreal Desk, a home-office accessories company.\nAudience: operations leads who need an artifact they can use this week.\n\nFixed source facts for grounding:\n- The returns desk pilot covered 18 SKUs.\n- Median first response improved from 18 hours to 6 hours.\n- Preventable refund leakage fell from 14.2% to 8.9%.\n- The top unresolved complaint is status silence after photo submission.\n- Required next actions are automated status emails, barcode-exception training, and a weekly Finance exception export.\n\nUse these facts when the task asks for prose, analysis, copy, UI content, or test data. Do not use live web services, real credentials, or current outside data.\n\nCraftbook under test: due-diligence-brief - Due-Diligence Brief.\n"
17
+ }
18
+ ],
19
+ "worker": {
20
+ "name": "Jules",
21
+ "role": "Writer"
22
+ }
23
+ },
24
+ "mocks": [],
25
+ "success": {
26
+ "summary": "report.md is a source-grounded markdown artifact with required facts and actions.",
27
+ "deliverables": [
28
+ {
29
+ "path": "report.md",
30
+ "kind": "markdown-report",
31
+ "minBytes": 1000,
32
+ "checks": [
33
+ {
34
+ "kind": "contains",
35
+ "file": "report.md",
36
+ "pattern": "(?:^|\\n)#{1,3}\\s+\\S",
37
+ "flags": "i"
38
+ },
39
+ {
40
+ "kind": "contains",
41
+ "file": "report.md",
42
+ "pattern": "source/brief\\.md|Brief",
43
+ "flags": "i",
44
+ "label": "cite or name the seeded source"
45
+ },
46
+ {
47
+ "kind": "contains",
48
+ "file": "report.md",
49
+ "pattern": "18\\b[\\s\\S]{0,30}\\bSKUs",
50
+ "flags": "i",
51
+ "label": "include the 18-SKU pilot scope"
52
+ },
53
+ {
54
+ "kind": "contains",
55
+ "file": "report.md",
56
+ "pattern": "18\\s*hours|6\\s*hours",
57
+ "flags": "i"
58
+ },
59
+ {
60
+ "kind": "contains",
61
+ "file": "report.md",
62
+ "pattern": "14\\.2%|8\\.9%",
63
+ "flags": "i"
64
+ },
65
+ {
66
+ "kind": "contains",
67
+ "file": "report.md",
68
+ "pattern": "status silence|photo submission",
69
+ "flags": "i"
70
+ },
71
+ {
72
+ "kind": "contains",
73
+ "file": "report.md",
74
+ "pattern": "automated status emails|barcode|Finance",
75
+ "flags": "i"
76
+ }
77
+ ]
78
+ }
79
+ ]
80
+ },
81
+ "rubric": {
82
+ "artifact": {
83
+ "path": "report.md",
84
+ "kind": "markdown"
85
+ },
86
+ "axes": [
87
+ {
88
+ "name": "grounding",
89
+ "description": "Seeded facts appear faithfully and the source is cited."
90
+ },
91
+ {
92
+ "name": "structure",
93
+ "description": "Sections progress logically for the artifact class."
94
+ },
95
+ {
96
+ "name": "completeness",
97
+ "description": "Required elements (risks, next actions, scope) are all present."
98
+ },
99
+ {
100
+ "name": "tone",
101
+ "description": "The register fits the audience and artifact class."
102
+ }
103
+ ]
104
+ },
105
+ "qualityFocus": [
106
+ "source-grounded prose",
107
+ "section structure",
108
+ "next-action clarity"
109
+ ]
110
+ }