@bendyline/gilde 0.1.27 → 0.1.29

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 (562) hide show
  1. package/authoring/chat-models/qwen3.8-27b-q4.json +181 -0
  2. package/authoring/gstack/evals/investigate.json +1 -0
  3. package/authoring/gstack/evals/plan-ceo-review.json +1 -0
  4. package/authoring/gstack/wave.json +2 -2
  5. package/data/chat-models/index.json +1 -1
  6. package/data/chat-models/qw/qwen3.8-27b-q4/manifest.json +186 -0
  7. package/data/chat-models/qw/qwen3.8-27b-q4/versions/1.0.0/manifest.json +20 -0
  8. package/data/craftbook-templates/a1/a11y-audit/versions/1.1.1/craftbook.json +141 -0
  9. package/data/craftbook-templates/a1/a11y-audit/versions/1.1.1/test.json +115 -0
  10. package/data/craftbook-templates/ab/ab-test-readout/versions/1.0.1/craftbook.json +141 -0
  11. package/data/craftbook-templates/ab/ab-test-readout/versions/1.0.1/test.json +186 -0
  12. package/data/craftbook-templates/ac/accessibility-retrofit/versions/1.0.1/craftbook.json +110 -0
  13. package/data/craftbook-templates/ac/accessibility-retrofit/versions/1.0.1/test.json +97 -0
  14. package/data/craftbook-templates/ad/ad-variations/versions/1.0.1/craftbook.json +105 -0
  15. package/data/craftbook-templates/ad/ad-variations/versions/1.0.1/test.json +108 -0
  16. package/data/craftbook-templates/al/album-curate/versions/1.0.1/craftbook.json +115 -0
  17. package/data/craftbook-templates/al/album-curate/versions/1.0.1/test.json +147 -0
  18. package/data/craftbook-templates/al/alert-rules/versions/1.0.1/craftbook.json +101 -0
  19. package/data/craftbook-templates/al/alert-rules/versions/1.0.1/test.json +145 -0
  20. package/data/craftbook-templates/al/alt-text-pass/versions/1.0.1/craftbook.json +142 -0
  21. package/data/craftbook-templates/al/alt-text-pass/versions/1.0.1/test.json +97 -0
  22. package/data/craftbook-templates/an/anniversary-cut/versions/1.0.3/craftbook.json +226 -0
  23. package/data/craftbook-templates/an/anniversary-cut/versions/1.0.3/test.json +157 -0
  24. package/data/craftbook-templates/an/annotated-bibliography/versions/1.0.1/craftbook.json +146 -0
  25. package/data/craftbook-templates/an/annotated-bibliography/versions/1.0.1/test.json +102 -0
  26. package/data/craftbook-templates/an/annual-document-review/versions/1.0.1/craftbook.json +140 -0
  27. package/data/craftbook-templates/an/annual-document-review/versions/1.0.1/test.json +110 -0
  28. package/data/craftbook-templates/an/anomaly-scan/versions/1.0.1/craftbook.json +141 -0
  29. package/data/craftbook-templates/an/anomaly-scan/versions/1.0.1/test.json +120 -0
  30. package/data/craftbook-templates/ap/api-contract-review/versions/1.1.1/craftbook.json +141 -0
  31. package/data/craftbook-templates/ap/api-contract-review/versions/1.1.1/test.json +115 -0
  32. package/data/craftbook-templates/ar/artifact-integrity-review/versions/1.0.1/craftbook.json +158 -0
  33. package/data/craftbook-templates/ar/artifact-integrity-review/versions/1.0.1/test.json +136 -0
  34. package/data/craftbook-templates/au/audio-ad-spot/versions/1.0.1/craftbook.json +129 -0
  35. package/data/craftbook-templates/au/audio-ad-spot/versions/1.0.1/test.json +103 -0
  36. package/data/craftbook-templates/au/audio-highlight-reel/versions/1.0.1/craftbook.json +123 -0
  37. package/data/craftbook-templates/au/audio-highlight-reel/versions/1.0.1/test.json +103 -0
  38. package/data/craftbook-templates/au/audiobook-master-pack/versions/1.0.3/craftbook.json +210 -0
  39. package/data/craftbook-templates/au/audiobook-master-pack/versions/1.0.3/test.json +221 -0
  40. package/data/craftbook-templates/au/auth-flow/versions/1.0.1/craftbook.json +148 -0
  41. package/data/craftbook-templates/au/auth-flow/versions/1.0.1/test.json +140 -0
  42. package/data/craftbook-templates/au/automation-recipe/versions/1.0.1/craftbook.json +164 -0
  43. package/data/craftbook-templates/au/automation-recipe/versions/1.0.1/test.json +296 -0
  44. package/data/craftbook-templates/ba/backup-routine/versions/1.0.1/craftbook.json +148 -0
  45. package/data/craftbook-templates/ba/backup-routine/versions/1.0.1/test.json +108 -0
  46. package/data/craftbook-templates/bl/blog-post/versions/1.0.1/craftbook.json +143 -0
  47. package/data/craftbook-templates/bl/blog-post/versions/1.0.1/test.json +118 -0
  48. package/data/craftbook-templates/bo/board-deck/versions/1.0.1/craftbook.json +141 -0
  49. package/data/craftbook-templates/bo/board-deck/versions/1.0.1/test.json +100 -0
  50. package/data/craftbook-templates/bo/board-game-web/versions/1.0.1/craftbook.json +150 -0
  51. package/data/craftbook-templates/bo/board-game-web/versions/1.0.1/test.json +99 -0
  52. package/data/craftbook-templates/bo/booking-automation/versions/1.0.1/craftbook.json +158 -0
  53. package/data/craftbook-templates/bo/booking-automation/versions/1.0.1/test.json +162 -0
  54. package/data/craftbook-templates/br/branding-website/versions/1.1.1/craftbook.json +211 -0
  55. package/data/craftbook-templates/br/branding-website/versions/1.1.1/test.json +164 -0
  56. package/data/craftbook-templates/br/broadcast-announcement/versions/1.0.1/craftbook.json +107 -0
  57. package/data/craftbook-templates/br/broadcast-announcement/versions/1.0.1/test.json +103 -0
  58. package/data/craftbook-templates/br/browser-qa-audit/versions/2.0.3/craftbook.json +417 -0
  59. package/data/craftbook-templates/br/browser-qa-audit/versions/2.0.3/test.json +376 -0
  60. package/data/craftbook-templates/bu/bug-fix-tdd/versions/1.0.2/craftbook.json +164 -0
  61. package/data/craftbook-templates/bu/bug-fix-tdd/versions/1.0.2/test.json +92 -0
  62. package/data/craftbook-templates/ca/calendar-brief/versions/1.0.1/craftbook.json +107 -0
  63. package/data/craftbook-templates/ca/calendar-brief/versions/1.0.1/test.json +102 -0
  64. package/data/craftbook-templates/ca/canvas-generative-art/versions/1.0.1/craftbook.json +110 -0
  65. package/data/craftbook-templates/ca/canvas-generative-art/versions/1.0.1/test.json +106 -0
  66. package/data/craftbook-templates/ca/case-study/versions/1.0.1/craftbook.json +143 -0
  67. package/data/craftbook-templates/ca/case-study/versions/1.0.1/test.json +112 -0
  68. package/data/craftbook-templates/ca/case-study-writeup/versions/1.0.1/craftbook.json +151 -0
  69. package/data/craftbook-templates/ca/case-study-writeup/versions/1.0.1/test.json +105 -0
  70. package/data/craftbook-templates/ch/changelog-cut/versions/1.0.1/craftbook.json +113 -0
  71. package/data/craftbook-templates/ch/changelog-cut/versions/1.0.1/test.json +106 -0
  72. package/data/craftbook-templates/ch/changelog-writeup/versions/1.0.1/craftbook.json +107 -0
  73. package/data/craftbook-templates/ch/changelog-writeup/versions/1.0.1/test.json +129 -0
  74. package/data/craftbook-templates/ch/chapter-narration-run/versions/1.0.2/craftbook.json +123 -0
  75. package/data/craftbook-templates/ch/chapter-narration-run/versions/1.0.2/test.json +155 -0
  76. package/data/craftbook-templates/ch/chapter-weave/versions/1.0.1/craftbook.json +74 -0
  77. package/data/craftbook-templates/ch/chapter-weave/versions/1.0.1/test.json +98 -0
  78. package/data/craftbook-templates/ch/character-sheet/versions/1.0.1/craftbook.json +82 -0
  79. package/data/craftbook-templates/ch/character-sheet/versions/1.0.1/test.json +143 -0
  80. package/data/craftbook-templates/ch/character-turnaround/versions/1.0.1/craftbook.json +121 -0
  81. package/data/craftbook-templates/ch/character-turnaround/versions/1.0.1/test.json +178 -0
  82. package/data/craftbook-templates/ch/chart-pack/versions/1.0.1/craftbook.json +148 -0
  83. package/data/craftbook-templates/ch/chart-pack/versions/1.0.1/test.json +104 -0
  84. package/data/craftbook-templates/ch/chrome-extension/versions/1.0.1/craftbook.json +148 -0
  85. package/data/craftbook-templates/ch/chrome-extension/versions/1.0.1/test.json +97 -0
  86. package/data/craftbook-templates/ci/ci-pipeline/versions/1.0.1/craftbook.json +132 -0
  87. package/data/craftbook-templates/ci/ci-pipeline/versions/1.0.1/test.json +162 -0
  88. package/data/craftbook-templates/ci/citation-audit/versions/1.0.1/craftbook.json +146 -0
  89. package/data/craftbook-templates/ci/citation-audit/versions/1.0.1/test.json +149 -0
  90. package/data/craftbook-templates/cl/cli-tool/versions/1.1.1/craftbook.json +147 -0
  91. package/data/craftbook-templates/cl/cli-tool/versions/1.1.1/test.json +128 -0
  92. package/data/craftbook-templates/co/codebase-refactoring-review/versions/1.0.1/craftbook.json +153 -0
  93. package/data/craftbook-templates/co/codebase-refactoring-review/versions/1.0.1/test.json +116 -0
  94. package/data/craftbook-templates/co/codebase-ux-review/versions/1.0.1/craftbook.json +153 -0
  95. package/data/craftbook-templates/co/codebase-ux-review/versions/1.0.1/test.json +119 -0
  96. package/data/craftbook-templates/co/cohort-analysis/versions/1.0.1/craftbook.json +141 -0
  97. package/data/craftbook-templates/co/cohort-analysis/versions/1.0.1/test.json +226 -0
  98. package/data/craftbook-templates/co/company-research-brief/versions/1.0.1/craftbook.json +139 -0
  99. package/data/craftbook-templates/co/company-research-brief/versions/1.0.1/test.json +97 -0
  100. package/data/craftbook-templates/co/comparison-matrix/versions/1.0.1/craftbook.json +153 -0
  101. package/data/craftbook-templates/co/comparison-matrix/versions/1.0.1/test.json +109 -0
  102. package/data/craftbook-templates/co/compat-check/versions/1.0.1/craftbook.json +146 -0
  103. package/data/craftbook-templates/co/compat-check/versions/1.0.1/test.json +145 -0
  104. package/data/craftbook-templates/co/competitive-analysis/versions/1.0.1/craftbook.json +140 -0
  105. package/data/craftbook-templates/co/competitive-analysis/versions/1.0.1/test.json +116 -0
  106. package/data/craftbook-templates/co/config-scaffold/versions/1.0.1/craftbook.json +105 -0
  107. package/data/craftbook-templates/co/config-scaffold/versions/1.0.1/test.json +120 -0
  108. package/data/craftbook-templates/co/content-accuracy-review/versions/1.0.1/craftbook.json +141 -0
  109. package/data/craftbook-templates/co/content-accuracy-review/versions/1.0.1/test.json +149 -0
  110. package/data/craftbook-templates/co/content-deck/versions/1.2.1/craftbook.json +206 -0
  111. package/data/craftbook-templates/co/content-deck/versions/1.2.1/test.json +169 -0
  112. package/data/craftbook-templates/co/contract-template/versions/1.0.1/craftbook.json +145 -0
  113. package/data/craftbook-templates/co/contract-template/versions/1.0.1/test.json +102 -0
  114. package/data/craftbook-templates/co/cookbook-layout/versions/1.0.1/craftbook.json +121 -0
  115. package/data/craftbook-templates/co/cookbook-layout/versions/1.0.1/test.json +159 -0
  116. package/data/craftbook-templates/co/copy-review/versions/1.0.1/craftbook.json +141 -0
  117. package/data/craftbook-templates/co/copy-review/versions/1.0.1/test.json +102 -0
  118. package/data/craftbook-templates/co/corpus-email-digest/versions/1.2.1/craftbook.json +210 -0
  119. package/data/craftbook-templates/co/corpus-email-digest/versions/1.2.1/test.json +187 -0
  120. package/data/craftbook-templates/co/corpus-synthesis/versions/1.0.1/craftbook.json +146 -0
  121. package/data/craftbook-templates/co/corpus-synthesis/versions/1.0.1/test.json +156 -0
  122. package/data/craftbook-templates/co/cover-letter/versions/1.0.1/craftbook.json +107 -0
  123. package/data/craftbook-templates/co/cover-letter/versions/1.0.1/test.json +100 -0
  124. package/data/craftbook-templates/cr/crm-update-batch/versions/1.0.1/craftbook.json +101 -0
  125. package/data/craftbook-templates/cr/crm-update-batch/versions/1.0.1/test.json +207 -0
  126. package/data/craftbook-templates/cr/cron-job/versions/1.0.1/craftbook.json +147 -0
  127. package/data/craftbook-templates/cr/cron-job/versions/1.0.1/test.json +104 -0
  128. package/data/craftbook-templates/cr/crossword-forge/versions/1.0.1/craftbook.json +164 -0
  129. package/data/craftbook-templates/cr/crossword-forge/versions/1.0.1/test.json +135 -0
  130. package/data/craftbook-templates/cs/csv-transformer/versions/1.2.2/craftbook.json +101 -0
  131. package/data/craftbook-templates/cs/csv-transformer/versions/1.2.2/test.json +102 -0
  132. package/data/craftbook-templates/da/dashboard-spec/versions/1.0.1/craftbook.json +107 -0
  133. package/data/craftbook-templates/da/dashboard-spec/versions/1.0.1/test.json +114 -0
  134. package/data/craftbook-templates/da/data-dictionary/versions/1.0.1/craftbook.json +107 -0
  135. package/data/craftbook-templates/da/data-dictionary/versions/1.0.1/test.json +101 -0
  136. package/data/craftbook-templates/da/data-export-migrate/versions/1.0.1/craftbook.json +148 -0
  137. package/data/craftbook-templates/da/data-export-migrate/versions/1.0.1/test.json +104 -0
  138. package/data/craftbook-templates/da/data-join-merge/versions/1.0.1/craftbook.json +101 -0
  139. package/data/craftbook-templates/da/data-join-merge/versions/1.0.1/test.json +104 -0
  140. package/data/craftbook-templates/da/data-pipeline-etl/versions/1.0.2/craftbook.json +148 -0
  141. package/data/craftbook-templates/da/data-pipeline-etl/versions/1.0.2/test.json +162 -0
  142. package/data/craftbook-templates/da/data-quality-audit/versions/1.0.1/craftbook.json +141 -0
  143. package/data/craftbook-templates/da/data-quality-audit/versions/1.0.1/test.json +326 -0
  144. package/data/craftbook-templates/da/data-to-report/versions/1.0.1/craftbook.json +140 -0
  145. package/data/craftbook-templates/da/data-to-report/versions/1.0.1/test.json +95 -0
  146. package/data/craftbook-templates/da/data-viz-page/versions/1.0.1/craftbook.json +143 -0
  147. package/data/craftbook-templates/da/data-viz-page/versions/1.0.1/test.json +117 -0
  148. package/data/craftbook-templates/da/dataset-clean/versions/1.2.2/craftbook.json +101 -0
  149. package/data/craftbook-templates/da/dataset-clean/versions/1.2.2/test.json +95 -0
  150. package/data/craftbook-templates/db/db-index-tuning/versions/1.0.1/craftbook.json +148 -0
  151. package/data/craftbook-templates/db/db-index-tuning/versions/1.0.1/test.json +104 -0
  152. package/data/craftbook-templates/de/deep-security-review/versions/1.1.1/craftbook.json +211 -0
  153. package/data/craftbook-templates/de/deep-security-review/versions/1.1.1/test.json +157 -0
  154. package/data/craftbook-templates/de/dependency-audit/versions/1.1.1/craftbook.json +141 -0
  155. package/data/craftbook-templates/de/dependency-audit/versions/1.1.1/test.json +108 -0
  156. package/data/craftbook-templates/de/deploy-checklist/versions/1.0.1/craftbook.json +159 -0
  157. package/data/craftbook-templates/de/deploy-checklist/versions/1.0.1/test.json +165 -0
  158. package/data/craftbook-templates/de/design-review/versions/1.0.1/craftbook.json +141 -0
  159. package/data/craftbook-templates/de/design-review/versions/1.0.1/test.json +118 -0
  160. package/data/craftbook-templates/de/design-system-consultation/versions/2.0.3/craftbook.json +431 -0
  161. package/data/craftbook-templates/de/design-system-consultation/versions/2.0.3/test.json +201 -0
  162. package/data/craftbook-templates/di/diagram-from-text/versions/1.0.1/craftbook.json +109 -0
  163. package/data/craftbook-templates/di/diagram-from-text/versions/1.0.1/test.json +97 -0
  164. package/data/craftbook-templates/di/digest-from-feeds/versions/1.0.1/craftbook.json +146 -0
  165. package/data/craftbook-templates/di/digest-from-feeds/versions/1.0.1/test.json +162 -0
  166. package/data/craftbook-templates/do/doc-intake-pipeline/versions/1.0.1/craftbook.json +148 -0
  167. package/data/craftbook-templates/do/doc-intake-pipeline/versions/1.0.1/test.json +104 -0
  168. package/data/craftbook-templates/do/doc-rewrite/versions/1.0.1/craftbook.json +107 -0
  169. package/data/craftbook-templates/do/doc-rewrite/versions/1.0.1/test.json +110 -0
  170. package/data/craftbook-templates/do/dockerize-app/versions/1.0.1/craftbook.json +148 -0
  171. package/data/craftbook-templates/do/dockerize-app/versions/1.0.1/test.json +92 -0
  172. package/data/craftbook-templates/do/docs-site/versions/1.0.1/craftbook.json +143 -0
  173. package/data/craftbook-templates/do/docs-site/versions/1.0.1/test.json +97 -0
  174. package/data/craftbook-templates/do/documentation-drift-review/versions/1.0.1/craftbook.json +153 -0
  175. package/data/craftbook-templates/do/documentation-drift-review/versions/1.0.1/test.json +132 -0
  176. package/data/craftbook-templates/dr/drive-wrap-up/versions/1.0.1/craftbook.json +140 -0
  177. package/data/craftbook-templates/dr/drive-wrap-up/versions/1.0.1/test.json +104 -0
  178. package/data/craftbook-templates/du/due-diligence-brief/versions/1.0.1/craftbook.json +146 -0
  179. package/data/craftbook-templates/du/due-diligence-brief/versions/1.0.1/test.json +110 -0
  180. package/data/craftbook-templates/eb/ebook-compile/versions/1.0.1/craftbook.json +143 -0
  181. package/data/craftbook-templates/eb/ebook-compile/versions/1.0.1/test.json +97 -0
  182. package/data/craftbook-templates/ed/edit-notes/versions/1.0.1/craftbook.json +176 -0
  183. package/data/craftbook-templates/ed/edit-notes/versions/1.0.1/test.json +146 -0
  184. package/data/craftbook-templates/em/email-sequence/versions/1.0.1/craftbook.json +142 -0
  185. package/data/craftbook-templates/em/email-sequence/versions/1.0.1/test.json +97 -0
  186. package/data/craftbook-templates/em/email-template/versions/1.0.1/craftbook.json +143 -0
  187. package/data/craftbook-templates/em/email-template/versions/1.0.1/test.json +97 -0
  188. package/data/craftbook-templates/en/engineering-retrospective/versions/2.0.3/craftbook.json +403 -0
  189. package/data/craftbook-templates/en/engineering-retrospective/versions/2.0.3/test.json +191 -0
  190. package/data/craftbook-templates/ep/episode-plan/versions/1.0.1/craftbook.json +140 -0
  191. package/data/craftbook-templates/ep/episode-plan/versions/1.0.1/test.json +97 -0
  192. package/data/craftbook-templates/es/escalation-playbook/versions/1.0.1/craftbook.json +107 -0
  193. package/data/craftbook-templates/es/escalation-playbook/versions/1.0.1/test.json +110 -0
  194. package/data/craftbook-templates/ev/evidence-brief/versions/1.0.1/craftbook.json +146 -0
  195. package/data/craftbook-templates/ev/evidence-brief/versions/1.0.1/test.json +110 -0
  196. package/data/craftbook-templates/ex/executive-level-review/versions/2.0.3/craftbook.json +433 -0
  197. package/data/craftbook-templates/ex/executive-level-review/versions/2.0.3/test.json +136 -0
  198. package/data/craftbook-templates/ex/expense-categorize/versions/1.0.1/craftbook.json +140 -0
  199. package/data/craftbook-templates/ex/expense-categorize/versions/1.0.1/test.json +104 -0
  200. package/data/craftbook-templates/fa/fact-check/versions/1.0.1/craftbook.json +146 -0
  201. package/data/craftbook-templates/fa/fact-check/versions/1.0.1/test.json +110 -0
  202. package/data/craftbook-templates/fa/family-story-chapter/versions/1.0.1/craftbook.json +74 -0
  203. package/data/craftbook-templates/fa/family-story-chapter/versions/1.0.1/test.json +108 -0
  204. package/data/craftbook-templates/fa/faq-from-docs/versions/1.0.1/craftbook.json +107 -0
  205. package/data/craftbook-templates/fa/faq-from-docs/versions/1.0.1/test.json +110 -0
  206. package/data/craftbook-templates/fa/favicon-set/versions/1.0.1/craftbook.json +146 -0
  207. package/data/craftbook-templates/fa/favicon-set/versions/1.0.1/test.json +103 -0
  208. package/data/craftbook-templates/fe/feature-flag-release/versions/1.0.1/craftbook.json +159 -0
  209. package/data/craftbook-templates/fe/feature-flag-release/versions/1.0.1/test.json +162 -0
  210. package/data/craftbook-templates/fe/feature-flag-rollout/versions/1.0.1/craftbook.json +148 -0
  211. package/data/craftbook-templates/fe/feature-flag-rollout/versions/1.0.1/test.json +162 -0
  212. package/data/craftbook-templates/fe/feedback-widget/versions/1.0.1/craftbook.json +143 -0
  213. package/data/craftbook-templates/fe/feedback-widget/versions/1.0.1/test.json +97 -0
  214. package/data/craftbook-templates/fo/folder-to-audio/versions/1.0.1/craftbook.json +103 -0
  215. package/data/craftbook-templates/fo/folder-to-audio/versions/1.0.1/test.json +103 -0
  216. package/data/craftbook-templates/fo/forecast-model/versions/1.0.1/craftbook.json +105 -0
  217. package/data/craftbook-templates/fo/forecast-model/versions/1.0.1/test.json +104 -0
  218. package/data/craftbook-templates/fo/form-fill-batch/versions/1.0.1/craftbook.json +148 -0
  219. package/data/craftbook-templates/fo/form-fill-batch/versions/1.0.1/test.json +162 -0
  220. package/data/craftbook-templates/fo/form-wizard/versions/1.0.1/craftbook.json +110 -0
  221. package/data/craftbook-templates/fo/form-wizard/versions/1.0.1/test.json +110 -0
  222. package/data/craftbook-templates/ga/game-with-screens/versions/1.0.1/craftbook.json +168 -0
  223. package/data/craftbook-templates/ga/game-with-screens/versions/1.0.1/test.json +99 -0
  224. package/data/craftbook-templates/gl/glossary-build/versions/1.0.1/craftbook.json +140 -0
  225. package/data/craftbook-templates/gl/glossary-build/versions/1.0.1/test.json +110 -0
  226. package/data/craftbook-templates/gr/graphql-api/versions/1.0.2/craftbook.json +146 -0
  227. package/data/craftbook-templates/gr/graphql-api/versions/1.0.2/test.json +92 -0
  228. package/data/craftbook-templates/gr/grpc-service/versions/1.0.1/craftbook.json +147 -0
  229. package/data/craftbook-templates/gr/grpc-service/versions/1.0.1/test.json +92 -0
  230. package/data/craftbook-templates/ha/handbook-section/versions/1.0.1/craftbook.json +145 -0
  231. package/data/craftbook-templates/ha/handbook-section/versions/1.0.1/test.json +110 -0
  232. package/data/craftbook-templates/he/hero-image/versions/1.0.1/craftbook.json +154 -0
  233. package/data/craftbook-templates/he/hero-image/versions/1.0.1/test.json +103 -0
  234. package/data/craftbook-templates/ho/holiday-card-run/versions/1.0.1/craftbook.json +202 -0
  235. package/data/craftbook-templates/ho/holiday-card-run/versions/1.0.1/test.json +128 -0
  236. package/data/craftbook-templates/ho/hotfix-flow/versions/1.0.1/craftbook.json +182 -0
  237. package/data/craftbook-templates/ho/hotfix-flow/versions/1.0.1/test.json +92 -0
  238. package/data/craftbook-templates/ht/html-arcade-game/versions/1.2.1/craftbook.json +218 -0
  239. package/data/craftbook-templates/ht/html-arcade-game/versions/1.2.1/test.json +176 -0
  240. package/data/craftbook-templates/ht/html-puzzle-game/versions/1.0.1/craftbook.json +150 -0
  241. package/data/craftbook-templates/ht/html-puzzle-game/versions/1.0.1/test.json +99 -0
  242. package/data/craftbook-templates/ic/icon-pack/versions/1.0.1/craftbook.json +146 -0
  243. package/data/craftbook-templates/ic/icon-pack/versions/1.0.1/test.json +103 -0
  244. package/data/craftbook-templates/id/idea-office-hours/versions/2.0.3/craftbook.json +397 -0
  245. package/data/craftbook-templates/id/idea-office-hours/versions/2.0.3/test.json +141 -0
  246. package/data/craftbook-templates/id/idle-clicker-game/versions/1.0.1/craftbook.json +150 -0
  247. package/data/craftbook-templates/id/idle-clicker-game/versions/1.0.1/test.json +99 -0
  248. package/data/craftbook-templates/im/image-batch-edit/versions/1.0.1/craftbook.json +141 -0
  249. package/data/craftbook-templates/im/image-batch-edit/versions/1.0.1/test.json +103 -0
  250. package/data/craftbook-templates/im/image-dedup-cluster/versions/1.0.1/craftbook.json +140 -0
  251. package/data/craftbook-templates/im/image-dedup-cluster/versions/1.0.1/test.json +103 -0
  252. package/data/craftbook-templates/im/image-palette-extract/versions/1.0.1/craftbook.json +109 -0
  253. package/data/craftbook-templates/im/image-palette-extract/versions/1.0.1/test.json +97 -0
  254. package/data/craftbook-templates/im/image-seo-rename/versions/1.0.1/craftbook.json +105 -0
  255. package/data/craftbook-templates/im/image-seo-rename/versions/1.0.1/test.json +103 -0
  256. package/data/craftbook-templates/im/image-set-index/versions/1.2.1/craftbook.json +179 -0
  257. package/data/craftbook-templates/im/image-set-index/versions/1.2.1/test.json +180 -0
  258. package/data/craftbook-templates/in/inbox-triage/versions/1.0.1/craftbook.json +140 -0
  259. package/data/craftbook-templates/in/inbox-triage/versions/1.0.1/test.json +104 -0
  260. package/data/craftbook-templates/in/incident-comms-templates/versions/1.0.1/craftbook.json +107 -0
  261. package/data/craftbook-templates/in/incident-comms-templates/versions/1.0.1/test.json +110 -0
  262. package/data/craftbook-templates/in/incident-postmortem/versions/1.0.1/craftbook.json +158 -0
  263. package/data/craftbook-templates/in/incident-postmortem/versions/1.0.1/test.json +109 -0
  264. package/data/craftbook-templates/in/insurance-inventory/versions/1.0.1/craftbook.json +153 -0
  265. package/data/craftbook-templates/in/insurance-inventory/versions/1.0.1/test.json +121 -0
  266. package/data/craftbook-templates/in/interactive-quiz/versions/1.0.1/craftbook.json +143 -0
  267. package/data/craftbook-templates/in/interactive-quiz/versions/1.0.1/test.json +99 -0
  268. package/data/craftbook-templates/in/investigate-root-cause/versions/1.0.1/craftbook.json +141 -0
  269. package/data/craftbook-templates/in/investigate-root-cause/versions/1.0.1/test.json +110 -0
  270. package/data/craftbook-templates/in/invitation-design/versions/1.0.1/craftbook.json +128 -0
  271. package/data/craftbook-templates/in/invitation-design/versions/1.0.1/test.json +121 -0
  272. package/data/craftbook-templates/in/invoice-generator/versions/1.0.1/craftbook.json +110 -0
  273. package/data/craftbook-templates/in/invoice-generator/versions/1.0.1/test.json +97 -0
  274. package/data/craftbook-templates/in/invoice-run/versions/1.1.1/craftbook.json +199 -0
  275. package/data/craftbook-templates/in/invoice-run/versions/1.1.1/test.json +140 -0
  276. package/data/craftbook-templates/index.json +1 -1
  277. package/data/craftbook-templates/it/item-intake/versions/1.0.1/craftbook.json +140 -0
  278. package/data/craftbook-templates/it/item-intake/versions/1.0.1/test.json +145 -0
  279. package/data/craftbook-templates/ju/juice-pass/versions/1.0.1/craftbook.json +116 -0
  280. package/data/craftbook-templates/ju/juice-pass/versions/1.0.1/test.json +116 -0
  281. package/data/craftbook-templates/kn/knowledge-base-article/versions/1.0.1/craftbook.json +143 -0
  282. package/data/craftbook-templates/kn/knowledge-base-article/versions/1.0.1/test.json +110 -0
  283. package/data/craftbook-templates/kp/kpi-scorecard/versions/1.0.1/craftbook.json +148 -0
  284. package/data/craftbook-templates/kp/kpi-scorecard/versions/1.0.1/test.json +97 -0
  285. package/data/craftbook-templates/la/landing-copy/versions/1.0.1/craftbook.json +143 -0
  286. package/data/craftbook-templates/la/landing-copy/versions/1.0.1/test.json +110 -0
  287. package/data/craftbook-templates/la/landing-page/versions/1.0.1/craftbook.json +184 -0
  288. package/data/craftbook-templates/la/landing-page/versions/1.0.1/test.json +97 -0
  289. package/data/craftbook-templates/le/lead-enrichment/versions/1.0.1/craftbook.json +140 -0
  290. package/data/craftbook-templates/le/lead-enrichment/versions/1.0.1/test.json +104 -0
  291. package/data/craftbook-templates/li/library-package/versions/1.0.1/craftbook.json +147 -0
  292. package/data/craftbook-templates/li/library-package/versions/1.0.1/test.json +92 -0
  293. package/data/craftbook-templates/li/literature-review/versions/1.0.1/craftbook.json +146 -0
  294. package/data/craftbook-templates/li/literature-review/versions/1.0.1/test.json +110 -0
  295. package/data/craftbook-templates/li/live-browser-qa/versions/1.0.1/craftbook.json +141 -0
  296. package/data/craftbook-templates/li/live-browser-qa/versions/1.0.1/test.json +162 -0
  297. package/data/craftbook-templates/lo/localize-content/versions/1.0.1/craftbook.json +143 -0
  298. package/data/craftbook-templates/lo/localize-content/versions/1.0.1/test.json +110 -0
  299. package/data/craftbook-templates/lo/logo-set/versions/1.0.1/craftbook.json +146 -0
  300. package/data/craftbook-templates/lo/logo-set/versions/1.0.1/test.json +103 -0
  301. package/data/craftbook-templates/ma/market-scan/versions/1.0.1/craftbook.json +146 -0
  302. package/data/craftbook-templates/ma/market-scan/versions/1.0.1/test.json +210 -0
  303. package/data/craftbook-templates/me/meeting-minutes/versions/1.0.1/craftbook.json +108 -0
  304. package/data/craftbook-templates/me/meeting-minutes/versions/1.0.1/test.json +110 -0
  305. package/data/craftbook-templates/me/meeting-notes-to-actions/versions/1.0.1/craftbook.json +107 -0
  306. package/data/craftbook-templates/me/meeting-notes-to-actions/versions/1.0.1/test.json +110 -0
  307. package/data/craftbook-templates/me/meeting-prep-brief/versions/1.0.1/craftbook.json +107 -0
  308. package/data/craftbook-templates/me/meeting-prep-brief/versions/1.0.1/test.json +184 -0
  309. package/data/craftbook-templates/me/meeting-summary-audio/versions/1.0.1/craftbook.json +109 -0
  310. package/data/craftbook-templates/me/meeting-summary-audio/versions/1.0.1/test.json +103 -0
  311. package/data/craftbook-templates/me/memory-prompt-session/versions/1.0.1/craftbook.json +115 -0
  312. package/data/craftbook-templates/me/memory-prompt-session/versions/1.0.1/test.json +112 -0
  313. package/data/craftbook-templates/me/message-queue-consumer/versions/1.0.1/craftbook.json +147 -0
  314. package/data/craftbook-templates/me/message-queue-consumer/versions/1.0.1/test.json +92 -0
  315. package/data/craftbook-templates/mi/micro-game-jam/versions/1.0.1/craftbook.json +117 -0
  316. package/data/craftbook-templates/mi/micro-game-jam/versions/1.0.1/test.json +99 -0
  317. package/data/craftbook-templates/mo/mock-interview/versions/1.0.1/craftbook.json +139 -0
  318. package/data/craftbook-templates/mo/mock-interview/versions/1.0.1/test.json +110 -0
  319. package/data/craftbook-templates/mo/mod-scaffold/versions/1.0.1/craftbook.json +156 -0
  320. package/data/craftbook-templates/mo/mod-scaffold/versions/1.0.1/test.json +133 -0
  321. package/data/craftbook-templates/mo/monitor-and-alert/versions/1.0.1/craftbook.json +158 -0
  322. package/data/craftbook-templates/mo/monitor-and-alert/versions/1.0.1/test.json +197 -0
  323. package/data/craftbook-templates/mo/month-close/versions/1.0.1/craftbook.json +140 -0
  324. package/data/craftbook-templates/mo/month-close/versions/1.0.1/test.json +97 -0
  325. package/data/craftbook-templates/mo/monthly-recording-review/versions/1.0.1/craftbook.json +140 -0
  326. package/data/craftbook-templates/mo/monthly-recording-review/versions/1.0.1/test.json +117 -0
  327. package/data/craftbook-templates/mo/moodboard/versions/1.0.1/craftbook.json +109 -0
  328. package/data/craftbook-templates/mo/moodboard/versions/1.0.1/test.json +103 -0
  329. package/data/craftbook-templates/mo/morning-brief/versions/1.0.1/craftbook.json +107 -0
  330. package/data/craftbook-templates/mo/morning-brief/versions/1.0.1/test.json +225 -0
  331. package/data/craftbook-templates/mo/morning-report/versions/1.0.1/craftbook.json +152 -0
  332. package/data/craftbook-templates/mo/morning-report/versions/1.0.1/test.json +250 -0
  333. package/data/craftbook-templates/mu/music-metadata-tag/versions/1.0.1/craftbook.json +101 -0
  334. package/data/craftbook-templates/mu/music-metadata-tag/versions/1.0.1/test.json +103 -0
  335. package/data/craftbook-templates/na/narrated-slideshow/versions/1.1.1/craftbook.json +181 -0
  336. package/data/craftbook-templates/na/narrated-slideshow/versions/1.1.1/test.json +86 -0
  337. package/data/craftbook-templates/ne/newsletter-issue/versions/1.0.1/craftbook.json +143 -0
  338. package/data/craftbook-templates/ne/newsletter-issue/versions/1.0.1/test.json +110 -0
  339. package/data/craftbook-templates/no/notification-router/versions/1.0.1/craftbook.json +158 -0
  340. package/data/craftbook-templates/no/notification-router/versions/1.0.1/test.json +162 -0
  341. package/data/craftbook-templates/oc/ocr-extract/versions/1.0.1/craftbook.json +137 -0
  342. package/data/craftbook-templates/oc/ocr-extract/versions/1.0.1/test.json +103 -0
  343. package/data/craftbook-templates/of/offer-compare/versions/1.0.1/craftbook.json +106 -0
  344. package/data/craftbook-templates/of/offer-compare/versions/1.0.1/test.json +110 -0
  345. package/data/craftbook-templates/on/onboarding-checklist/versions/1.0.1/craftbook.json +107 -0
  346. package/data/craftbook-templates/on/onboarding-checklist/versions/1.0.1/test.json +110 -0
  347. package/data/craftbook-templates/on/onboarding-flow/versions/1.0.1/craftbook.json +143 -0
  348. package/data/craftbook-templates/on/onboarding-flow/versions/1.0.1/test.json +97 -0
  349. package/data/craftbook-templates/on/oncall-handoff/versions/1.0.1/craftbook.json +107 -0
  350. package/data/craftbook-templates/on/oncall-handoff/versions/1.0.1/test.json +110 -0
  351. package/data/craftbook-templates/on/one-pager/versions/1.0.1/craftbook.json +143 -0
  352. package/data/craftbook-templates/on/one-pager/versions/1.0.1/test.json +110 -0
  353. package/data/craftbook-templates/op/ops-runbook/versions/1.0.1/craftbook.json +112 -0
  354. package/data/craftbook-templates/op/ops-runbook/versions/1.0.1/test.json +104 -0
  355. package/data/craftbook-templates/pa/page-spread/versions/1.0.1/craftbook.json +82 -0
  356. package/data/craftbook-templates/pa/page-spread/versions/1.0.1/test.json +132 -0
  357. package/data/craftbook-templates/pa/parser-grammar/versions/1.0.1/craftbook.json +147 -0
  358. package/data/craftbook-templates/pa/parser-grammar/versions/1.0.1/test.json +92 -0
  359. package/data/craftbook-templates/pe/perf-audit/versions/1.0.1/craftbook.json +141 -0
  360. package/data/craftbook-templates/pe/perf-audit/versions/1.0.1/test.json +162 -0
  361. package/data/craftbook-templates/pe/perf-optimization/versions/1.0.1/craftbook.json +148 -0
  362. package/data/craftbook-templates/pe/perf-optimization/versions/1.0.1/test.json +92 -0
  363. package/data/craftbook-templates/pe/pest-diagnosis/versions/1.0.1/craftbook.json +140 -0
  364. package/data/craftbook-templates/pe/pest-diagnosis/versions/1.0.1/test.json +122 -0
  365. package/data/craftbook-templates/ph/photo-cull/versions/1.0.1/craftbook.json +140 -0
  366. package/data/craftbook-templates/ph/photo-cull/versions/1.0.1/test.json +103 -0
  367. package/data/craftbook-templates/ph/physics-toy/versions/1.0.1/craftbook.json +110 -0
  368. package/data/craftbook-templates/ph/physics-toy/versions/1.0.1/test.json +99 -0
  369. package/data/craftbook-templates/pi/pitch-deck/versions/1.0.1/craftbook.json +141 -0
  370. package/data/craftbook-templates/pi/pitch-deck/versions/1.0.1/test.json +97 -0
  371. package/data/craftbook-templates/pl/playtest-report/versions/1.0.1/craftbook.json +140 -0
  372. package/data/craftbook-templates/pl/playtest-report/versions/1.0.1/test.json +111 -0
  373. package/data/craftbook-templates/po/podcast-chaptering/versions/1.0.1/craftbook.json +140 -0
  374. package/data/craftbook-templates/po/podcast-chaptering/versions/1.0.1/test.json +103 -0
  375. package/data/craftbook-templates/po/portfolio-site/versions/1.0.1/craftbook.json +151 -0
  376. package/data/craftbook-templates/po/portfolio-site/versions/1.0.1/test.json +97 -0
  377. package/data/craftbook-templates/po/powerpoint-deck/versions/1.7.0/craftbook.json +257 -0
  378. package/data/craftbook-templates/po/powerpoint-deck/versions/1.7.0/test.json +228 -0
  379. package/data/craftbook-templates/po/powerpoint-deck/versions/1.7.1/craftbook.json +347 -0
  380. package/data/craftbook-templates/po/powerpoint-deck/versions/1.7.1/test.json +228 -0
  381. package/data/craftbook-templates/pr/pr-security-review/versions/1.0.1/craftbook.json +141 -0
  382. package/data/craftbook-templates/pr/pr-security-review/versions/1.0.1/test.json +110 -0
  383. package/data/craftbook-templates/pr/practice-exam/versions/1.0.1/craftbook.json +159 -0
  384. package/data/craftbook-templates/pr/practice-exam/versions/1.0.1/test.json +117 -0
  385. package/data/craftbook-templates/pr/practice-session/versions/1.0.1/craftbook.json +115 -0
  386. package/data/craftbook-templates/pr/practice-session/versions/1.0.1/test.json +114 -0
  387. package/data/craftbook-templates/pr/pre-departure-countdown/versions/1.0.1/craftbook.json +140 -0
  388. package/data/craftbook-templates/pr/pre-departure-countdown/versions/1.0.1/test.json +97 -0
  389. package/data/craftbook-templates/pr/press-release/versions/1.0.1/craftbook.json +143 -0
  390. package/data/craftbook-templates/pr/press-release/versions/1.0.1/test.json +356 -0
  391. package/data/craftbook-templates/pr/price-tracker/versions/1.0.1/craftbook.json +109 -0
  392. package/data/craftbook-templates/pr/price-tracker/versions/1.0.1/test.json +150 -0
  393. package/data/craftbook-templates/pr/pricing-page/versions/1.0.1/craftbook.json +184 -0
  394. package/data/craftbook-templates/pr/pricing-page/versions/1.0.1/test.json +97 -0
  395. package/data/craftbook-templates/pr/product-descriptions/versions/1.0.1/craftbook.json +105 -0
  396. package/data/craftbook-templates/pr/product-descriptions/versions/1.0.1/test.json +110 -0
  397. package/data/craftbook-templates/pr/proposal-sow/versions/1.0.1/craftbook.json +143 -0
  398. package/data/craftbook-templates/pr/proposal-sow/versions/1.0.1/test.json +110 -0
  399. package/data/craftbook-templates/pu/pull-request-review/manifest.json +3 -1
  400. package/data/craftbook-templates/pu/pull-request-review/versions/1.4.1/craftbook.json +180 -0
  401. package/data/craftbook-templates/pu/pull-request-review/versions/1.4.1/test.json +123 -0
  402. package/data/craftbook-templates/pu/puzzle-pack-layout/versions/1.0.1/craftbook.json +121 -0
  403. package/data/craftbook-templates/pu/puzzle-pack-layout/versions/1.0.1/test.json +123 -0
  404. package/data/craftbook-templates/pw/pwa-offline/versions/1.0.1/craftbook.json +155 -0
  405. package/data/craftbook-templates/pw/pwa-offline/versions/1.0.1/test.json +97 -0
  406. package/data/craftbook-templates/qu/quarterly-summary/versions/1.0.1/craftbook.json +140 -0
  407. package/data/craftbook-templates/qu/quarterly-summary/versions/1.0.1/test.json +113 -0
  408. package/data/craftbook-templates/re/reading-list/versions/1.0.1/craftbook.json +107 -0
  409. package/data/craftbook-templates/re/reading-list/versions/1.0.1/test.json +110 -0
  410. package/data/craftbook-templates/re/receipt-intake/versions/1.0.1/craftbook.json +140 -0
  411. package/data/craftbook-templates/re/receipt-intake/versions/1.0.1/test.json +149 -0
  412. package/data/craftbook-templates/re/receipt-ocr-ledger/versions/1.0.1/craftbook.json +140 -0
  413. package/data/craftbook-templates/re/receipt-ocr-ledger/versions/1.0.1/test.json +104 -0
  414. package/data/craftbook-templates/re/recipe-capture/versions/1.0.1/craftbook.json +140 -0
  415. package/data/craftbook-templates/re/recipe-capture/versions/1.0.1/test.json +128 -0
  416. package/data/craftbook-templates/re/record-a-relative/versions/1.0.1/craftbook.json +115 -0
  417. package/data/craftbook-templates/re/record-a-relative/versions/1.0.1/test.json +110 -0
  418. package/data/craftbook-templates/re/recurring-invoice-run/versions/1.0.1/craftbook.json +148 -0
  419. package/data/craftbook-templates/re/recurring-invoice-run/versions/1.0.1/test.json +104 -0
  420. package/data/craftbook-templates/re/refactor-module/versions/1.0.2/craftbook.json +148 -0
  421. package/data/craftbook-templates/re/refactor-module/versions/1.0.2/test.json +92 -0
  422. package/data/craftbook-templates/re/regex-builder/versions/1.0.1/craftbook.json +147 -0
  423. package/data/craftbook-templates/re/regex-builder/versions/1.0.1/test.json +92 -0
  424. package/data/craftbook-templates/re/release-announcement/versions/1.0.1/craftbook.json +159 -0
  425. package/data/craftbook-templates/re/release-announcement/versions/1.0.1/test.json +202 -0
  426. package/data/craftbook-templates/re/release-artifact-sanity-check/versions/1.0.1/craftbook.json +214 -0
  427. package/data/craftbook-templates/re/release-artifact-sanity-check/versions/1.0.1/test.json +138 -0
  428. package/data/craftbook-templates/re/release-notes/versions/1.0.1/craftbook.json +159 -0
  429. package/data/craftbook-templates/re/release-notes/versions/1.0.1/test.json +111 -0
  430. package/data/craftbook-templates/re/release-pipeline-ci/versions/1.0.1/craftbook.json +147 -0
  431. package/data/craftbook-templates/re/release-pipeline-ci/versions/1.0.1/test.json +162 -0
  432. package/data/craftbook-templates/re/release-readiness-review/versions/1.0.1/craftbook.json +141 -0
  433. package/data/craftbook-templates/re/release-readiness-review/versions/1.0.1/test.json +110 -0
  434. package/data/craftbook-templates/re/reliability-review/versions/1.0.1/craftbook.json +153 -0
  435. package/data/craftbook-templates/re/reliability-review/versions/1.0.1/test.json +112 -0
  436. package/data/craftbook-templates/re/report-pdf/versions/1.1.1/craftbook.json +173 -0
  437. package/data/craftbook-templates/re/report-pdf/versions/1.1.1/test.json +98 -0
  438. package/data/craftbook-templates/re/research-report/versions/1.0.1/craftbook.json +146 -0
  439. package/data/craftbook-templates/re/research-report/versions/1.0.1/test.json +110 -0
  440. package/data/craftbook-templates/re/research-to-document/versions/1.2.1/craftbook.json +216 -0
  441. package/data/craftbook-templates/re/research-to-document/versions/1.2.1/test.json +240 -0
  442. package/data/craftbook-templates/re/rest-api/versions/1.0.2/craftbook.json +147 -0
  443. package/data/craftbook-templates/re/rest-api/versions/1.0.2/test.json +387 -0
  444. package/data/craftbook-templates/re/resume-cv/versions/1.0.1/craftbook.json +143 -0
  445. package/data/craftbook-templates/re/resume-cv/versions/1.0.1/test.json +97 -0
  446. package/data/craftbook-templates/ro/rollback-plan/versions/1.0.1/craftbook.json +159 -0
  447. package/data/craftbook-templates/ro/rollback-plan/versions/1.0.1/test.json +162 -0
  448. package/data/craftbook-templates/ro/root-cause-investigation/versions/2.0.3/craftbook.json +413 -0
  449. package/data/craftbook-templates/ro/root-cause-investigation/versions/2.0.3/test.json +154 -0
  450. package/data/craftbook-templates/ro/rough-cut-assembly/versions/1.0.2/craftbook.json +167 -0
  451. package/data/craftbook-templates/ro/rough-cut-assembly/versions/1.0.2/test.json +137 -0
  452. package/data/craftbook-templates/ru/runbook/versions/1.0.1/craftbook.json +145 -0
  453. package/data/craftbook-templates/ru/runbook/versions/1.0.1/test.json +118 -0
  454. package/data/craftbook-templates/sc/schema-migration/versions/1.0.1/craftbook.json +144 -0
  455. package/data/craftbook-templates/sc/schema-migration/versions/1.0.1/test.json +103 -0
  456. package/data/craftbook-templates/sc/scrape-to-structured/versions/1.0.2/craftbook.json +140 -0
  457. package/data/craftbook-templates/sc/scrape-to-structured/versions/1.0.2/test.json +162 -0
  458. package/data/craftbook-templates/sc/script-automation/versions/1.0.1/craftbook.json +148 -0
  459. package/data/craftbook-templates/sc/script-automation/versions/1.0.1/test.json +162 -0
  460. package/data/craftbook-templates/sd/sdk-wrapper/versions/1.0.2/craftbook.json +147 -0
  461. package/data/craftbook-templates/sd/sdk-wrapper/versions/1.0.2/test.json +90 -0
  462. package/data/craftbook-templates/se/seasonal-maintenance-sweep/versions/1.0.1/craftbook.json +140 -0
  463. package/data/craftbook-templates/se/seasonal-maintenance-sweep/versions/1.0.1/test.json +110 -0
  464. package/data/craftbook-templates/se/security-architecture-review/versions/2.0.3/craftbook.json +440 -0
  465. package/data/craftbook-templates/se/security-architecture-review/versions/2.0.3/test.json +154 -0
  466. package/data/craftbook-templates/se/seo-meta-pack/versions/1.0.1/craftbook.json +105 -0
  467. package/data/craftbook-templates/se/seo-meta-pack/versions/1.0.1/test.json +97 -0
  468. package/data/craftbook-templates/so/social-thread/versions/1.0.1/craftbook.json +107 -0
  469. package/data/craftbook-templates/so/social-thread/versions/1.0.1/test.json +110 -0
  470. package/data/craftbook-templates/so/source-quality-audit/versions/1.0.1/craftbook.json +140 -0
  471. package/data/craftbook-templates/so/source-quality-audit/versions/1.0.1/test.json +158 -0
  472. package/data/craftbook-templates/sp/spa-dashboard/versions/1.0.1/craftbook.json +143 -0
  473. package/data/craftbook-templates/sp/spa-dashboard/versions/1.0.1/test.json +97 -0
  474. package/data/craftbook-templates/sp/spec-authoring/versions/2.0.3/craftbook.json +436 -0
  475. package/data/craftbook-templates/sp/spec-authoring/versions/2.0.3/test.json +162 -0
  476. package/data/craftbook-templates/sp/spec-doc/versions/1.0.1/craftbook.json +143 -0
  477. package/data/craftbook-templates/sp/spec-doc/versions/1.0.1/test.json +104 -0
  478. package/data/craftbook-templates/sp/spreadsheet-model/versions/1.0.1/craftbook.json +109 -0
  479. package/data/craftbook-templates/sp/spreadsheet-model/versions/1.0.1/test.json +160 -0
  480. package/data/craftbook-templates/sp/sprite-sheet/versions/1.0.1/craftbook.json +137 -0
  481. package/data/craftbook-templates/sp/sprite-sheet/versions/1.0.1/test.json +103 -0
  482. package/data/craftbook-templates/sq/sql-analysis/versions/1.0.1/craftbook.json +109 -0
  483. package/data/craftbook-templates/sq/sql-analysis/versions/1.0.1/test.json +104 -0
  484. package/data/craftbook-templates/st/standup-summary/versions/1.0.1/craftbook.json +107 -0
  485. package/data/craftbook-templates/st/standup-summary/versions/1.0.1/test.json +110 -0
  486. package/data/craftbook-templates/st/state-machine/versions/1.0.1/craftbook.json +147 -0
  487. package/data/craftbook-templates/st/state-machine/versions/1.0.1/test.json +92 -0
  488. package/data/craftbook-templates/st/status-report/versions/1.0.1/craftbook.json +146 -0
  489. package/data/craftbook-templates/st/status-report/versions/1.0.1/test.json +110 -0
  490. package/data/craftbook-templates/su/subscription-audit/versions/1.0.1/craftbook.json +140 -0
  491. package/data/craftbook-templates/su/subscription-audit/versions/1.0.1/test.json +104 -0
  492. package/data/craftbook-templates/su/subtitle-generator/versions/1.0.1/craftbook.json +128 -0
  493. package/data/craftbook-templates/su/subtitle-generator/versions/1.0.1/test.json +103 -0
  494. package/data/craftbook-templates/su/summarize-long/versions/1.0.1/craftbook.json +107 -0
  495. package/data/craftbook-templates/su/summarize-long/versions/1.0.1/test.json +110 -0
  496. package/data/craftbook-templates/su/survey-analysis/versions/1.0.1/craftbook.json +141 -0
  497. package/data/craftbook-templates/su/survey-analysis/versions/1.0.1/test.json +104 -0
  498. package/data/craftbook-templates/sv/svg-animation/versions/1.0.1/craftbook.json +110 -0
  499. package/data/craftbook-templates/sv/svg-animation/versions/1.0.1/test.json +97 -0
  500. package/data/craftbook-templates/ta/tailor-resume/versions/1.0.1/craftbook.json +114 -0
  501. package/data/craftbook-templates/ta/tailor-resume/versions/1.0.1/test.json +97 -0
  502. package/data/craftbook-templates/te/technical-documentation/versions/2.0.3/craftbook.json +408 -0
  503. package/data/craftbook-templates/te/technical-documentation/versions/2.0.3/test.json +174 -0
  504. package/data/craftbook-templates/te/test-coverage-review/versions/1.1.1/craftbook.json +141 -0
  505. package/data/craftbook-templates/te/test-coverage-review/versions/1.1.1/test.json +113 -0
  506. package/data/craftbook-templates/te/test-suite-backfill/versions/1.0.1/craftbook.json +120 -0
  507. package/data/craftbook-templates/te/test-suite-backfill/versions/1.0.1/test.json +92 -0
  508. package/data/craftbook-templates/th/thank-you-batch/versions/1.0.1/craftbook.json +143 -0
  509. package/data/craftbook-templates/th/thank-you-batch/versions/1.0.1/test.json +141 -0
  510. package/data/craftbook-templates/th/thank-you-sweep/versions/1.0.1/craftbook.json +143 -0
  511. package/data/craftbook-templates/th/thank-you-sweep/versions/1.0.1/test.json +142 -0
  512. package/data/craftbook-templates/th/threat-model/versions/1.0.1/craftbook.json +141 -0
  513. package/data/craftbook-templates/th/threat-model/versions/1.0.1/test.json +110 -0
  514. package/data/craftbook-templates/th/thumbnail-generator/versions/1.0.1/craftbook.json +103 -0
  515. package/data/craftbook-templates/th/thumbnail-generator/versions/1.0.1/test.json +103 -0
  516. package/data/craftbook-templates/ti/tileset-batch/versions/1.0.1/craftbook.json +160 -0
  517. package/data/craftbook-templates/ti/tileset-batch/versions/1.0.1/test.json +159 -0
  518. package/data/craftbook-templates/to/tone-rewrite/versions/1.0.1/craftbook.json +107 -0
  519. package/data/craftbook-templates/to/tone-rewrite/versions/1.0.1/test.json +110 -0
  520. package/data/craftbook-templates/to/topic-explainer/versions/1.0.1/craftbook.json +140 -0
  521. package/data/craftbook-templates/to/topic-explainer/versions/1.0.1/test.json +110 -0
  522. package/data/craftbook-templates/tr/transcribe-and-shownotes/versions/1.0.1/craftbook.json +115 -0
  523. package/data/craftbook-templates/tr/transcribe-and-shownotes/versions/1.0.1/test.json +98 -0
  524. package/data/craftbook-templates/tr/transcribe-audio/versions/1.0.1/craftbook.json +107 -0
  525. package/data/craftbook-templates/tr/transcribe-audio/versions/1.0.1/test.json +103 -0
  526. package/data/craftbook-templates/tr/transcribe-index/versions/1.0.1/craftbook.json +171 -0
  527. package/data/craftbook-templates/tr/transcribe-index/versions/1.0.1/test.json +151 -0
  528. package/data/craftbook-templates/ty/type-safety-pass/versions/1.0.1/craftbook.json +148 -0
  529. package/data/craftbook-templates/ty/type-safety-pass/versions/1.0.1/test.json +92 -0
  530. package/data/craftbook-templates/ve/version-bump/versions/1.0.1/craftbook.json +155 -0
  531. package/data/craftbook-templates/ve/version-bump/versions/1.0.1/test.json +92 -0
  532. package/data/craftbook-templates/vi/video-storyboard/versions/1.0.1/craftbook.json +109 -0
  533. package/data/craftbook-templates/vi/video-storyboard/versions/1.0.1/test.json +103 -0
  534. package/data/craftbook-templates/vi/visit-prep/versions/1.0.1/craftbook.json +140 -0
  535. package/data/craftbook-templates/vi/visit-prep/versions/1.0.1/test.json +97 -0
  536. package/data/craftbook-templates/vo/voiceover-script/versions/1.0.1/craftbook.json +107 -0
  537. package/data/craftbook-templates/vo/voiceover-script/versions/1.0.1/test.json +103 -0
  538. package/data/craftbook-templates/we/weak-spot-drill/versions/1.0.1/craftbook.json +154 -0
  539. package/data/craftbook-templates/we/weak-spot-drill/versions/1.0.1/test.json +124 -0
  540. package/data/craftbook-templates/we/web-app-crud/versions/1.0.1/craftbook.json +143 -0
  541. package/data/craftbook-templates/we/web-app-crud/versions/1.0.1/test.json +97 -0
  542. package/data/craftbook-templates/we/web-component/versions/1.0.1/craftbook.json +110 -0
  543. package/data/craftbook-templates/we/web-component/versions/1.0.1/test.json +97 -0
  544. package/data/craftbook-templates/we/webhook-handler/versions/1.0.1/craftbook.json +147 -0
  545. package/data/craftbook-templates/we/webhook-handler/versions/1.0.1/test.json +162 -0
  546. package/data/craftbook-templates/we/week-plan/versions/1.0.1/craftbook.json +140 -0
  547. package/data/craftbook-templates/we/week-plan/versions/1.0.1/test.json +255 -0
  548. package/data/craftbook-templates/we/weekly-menu-plan/versions/1.0.1/craftbook.json +140 -0
  549. package/data/craftbook-templates/we/weekly-menu-plan/versions/1.0.1/test.json +97 -0
  550. package/data/craftbook-templates/we/weekly-pipeline-review/versions/1.0.1/craftbook.json +106 -0
  551. package/data/craftbook-templates/we/weekly-pipeline-review/versions/1.0.1/test.json +104 -0
  552. package/data/craftbook-templates/we/weekly-review/versions/1.0.1/craftbook.json +107 -0
  553. package/data/craftbook-templates/we/weekly-review/versions/1.0.1/test.json +110 -0
  554. package/data/craftbook-templates/we/weekly-walkthrough/versions/1.0.1/craftbook.json +140 -0
  555. package/data/craftbook-templates/we/weekly-walkthrough/versions/1.0.1/test.json +138 -0
  556. package/data/craftbook-templates/wh/whitepaper/versions/1.0.1/craftbook.json +141 -0
  557. package/data/craftbook-templates/wh/whitepaper/versions/1.0.1/test.json +110 -0
  558. package/data/craftbook-templates/ye/year-in-review/versions/1.0.1/craftbook.json +115 -0
  559. package/data/craftbook-templates/ye/year-in-review/versions/1.0.1/test.json +145 -0
  560. package/data/craftbook-templates/yo/youtube-chapters-seo/versions/1.0.1/craftbook.json +134 -0
  561. package/data/craftbook-templates/yo/youtube-chapters-seo/versions/1.0.1/test.json +103 -0
  562. package/package.json +1 -1
@@ -0,0 +1,120 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "title": "Anomaly scan over seeded orders data",
4
+ "objective": "Measure whether the anomaly-scan craftbook defines reproducible criteria, emits machine-readable flags, and writes a triage-ready report.",
5
+ "tags": [
6
+ "data"
7
+ ],
8
+ "prompt": "In the `Anomaly Scan Eval` project, read `data/orders.csv`, define concrete anomaly thresholds, write `data/anomalies.json`, and then write `report.md` ranking the findings. The report must separate likely real problems from probable noise.",
9
+ "setup": {
10
+ "projectName": "Anomaly Scan Eval",
11
+ "about": "Self-contained eval project for anomaly-scan. The source dataset is workspace/data/orders.csv.",
12
+ "missionObjectives": "Find and explain anomalous order rows with explicit rules, JSON flags, severities, and a triage report.",
13
+ "files": [
14
+ {
15
+ "path": "data/orders.csv",
16
+ "content": "order_id,order_date,sku,quantity,revenue,region\nO-1001,2026-05-01,CHAIR-1,2,240,West\nO-1002,2026-05-01,LAMP-2,1,80,East\nO-1003,2026-05-02,DESK-5,1,620,West\nO-1004,2026-05-02,CHAIR-1,3,360,South\nO-1005,2026-05-03,LAMP-2,2,160,East\nO-1006,2026-05-03,DESK-5,1,610,West\nO-1007,2026-05-04,CHAIR-1,4,-480,West\nO-1008,2026-05-04,LAMP-2,1,82,North\nO-1009,2026-05-05,DESK-5,50,30500,West\nO-1010,2028-01-01,LAMP-2,1,80,East\nO-1011,2026-05-06,CHAIR-1,2,242,South\nO-1012,2026-05-06,DESK-5,1,615,West\nO-1013,2026-05-07,LAMP-2,0,0,East\n"
17
+ }
18
+ ],
19
+ "worker": {
20
+ "name": "Cato",
21
+ "role": "Data Analyst"
22
+ }
23
+ },
24
+ "mocks": [],
25
+ "success": {
26
+ "summary": "workspace/report.md and data/anomalies.json identify the seeded anomalous rows with rules, thresholds, severity, and triage guidance.",
27
+ "deliverables": [
28
+ {
29
+ "path": "report.md",
30
+ "kind": "markdown-report",
31
+ "minBytes": 1800,
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": "O-1007|O-1009|O-1010|O-1013",
43
+ "flags": "i"
44
+ },
45
+ {
46
+ "kind": "contains",
47
+ "file": "report.md",
48
+ "pattern": "negative|future|quantity|outlier|threshold|severity",
49
+ "flags": "i"
50
+ },
51
+ {
52
+ "kind": "contains",
53
+ "file": "report.md",
54
+ "pattern": "likely real|probable noise|false positive",
55
+ "flags": "i"
56
+ },
57
+ {
58
+ "kind": "contains",
59
+ "file": "report.md",
60
+ "pattern": "recommended next steps|triage|action",
61
+ "flags": "i"
62
+ }
63
+ ]
64
+ },
65
+ {
66
+ "path": "data/anomalies.json",
67
+ "kind": "json",
68
+ "minBytes": 300,
69
+ "checks": [
70
+ {
71
+ "kind": "sniff",
72
+ "file": "data/anomalies.json",
73
+ "sniff": "json-valid"
74
+ },
75
+ {
76
+ "kind": "contains",
77
+ "file": "data/anomalies.json",
78
+ "pattern": "O-1007|O-1009|O-1010|O-1013",
79
+ "flags": "i"
80
+ },
81
+ {
82
+ "kind": "contains",
83
+ "file": "data/anomalies.json",
84
+ "pattern": "severity|rule|threshold|summary",
85
+ "flags": "i"
86
+ }
87
+ ]
88
+ }
89
+ ]
90
+ },
91
+ "rubric": {
92
+ "artifact": {
93
+ "path": "report.md",
94
+ "kind": "markdown"
95
+ },
96
+ "axes": [
97
+ {
98
+ "name": "accuracy",
99
+ "description": "Computed figures are correct against the seeded records."
100
+ },
101
+ {
102
+ "name": "grounding",
103
+ "description": "Every claim traces to the seeded data — nothing invented."
104
+ },
105
+ {
106
+ "name": "structure",
107
+ "description": "Tables and sections make the analysis checkable at a glance."
108
+ },
109
+ {
110
+ "name": "actionability",
111
+ "description": "Recommendations follow from the findings and are concretely doable."
112
+ }
113
+ ]
114
+ },
115
+ "qualityFocus": [
116
+ "criteria first",
117
+ "JSON flags",
118
+ "ranked triage report"
119
+ ]
120
+ }
@@ -0,0 +1,141 @@
1
+ {
2
+ "id": "api-contract-review",
3
+ "name": "API Contract Review",
4
+ "description": "Review an API contract or specification (OpenAPI/REST/GraphQL) for correctness, consistency, and developer ergonomics, then produce a findings report. First scopes the surface and locks an API design checklist (resource naming and HTTP semantics, status codes, pagination and filtering, error schema consistency, auth, versioning and backward compatibility, idempotency, and schema/type rigor), then reviews each endpoint and type against those rules and REST/GraphQL best practices, then writes a findings report rating each issue and giving the corrected contract snippet. Use this for an API design review, reviewing an OpenAPI/Swagger spec, a REST or GraphQL contract review, endpoint/schema critique, or checking an API for consistency and backward compatibility before it ships — it returns specific, spec-anchored fixes rather than 'make the API cleaner'.\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 contract review (reviewer) — map the surface, lock an API design checklist → gated on artifact `notes/scope.md` (markdown-notes)\n2. Review the endpoints (developer) — check each operation + type against the rules → gated on artifact `notes/review.md` (markdown-notes)\n3. Write the contract report (reviewer) — findings with corrected snippets + compat verdict → gated on artifact `api-review.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
+ "api contract review",
8
+ "review my openapi spec",
9
+ "review this REST API",
10
+ "graphql schema review",
11
+ "is this api backward compatible",
12
+ "api design review"
13
+ ],
14
+ "steps": [
15
+ {
16
+ "id": "scope",
17
+ "name": "Scope the contract review",
18
+ "description": "map the surface, lock an API design checklist",
19
+ "prompt": "Step 1: Read the contract (OpenAPI/Swagger YAML/JSON, a GraphQL SDL, or the route/handler definitions) and inventory every endpoint/operation/type with its method, path, params, request/response schema, and auth. Step 2: Note whether this is a NEW API or a CHANGE to an existing one (if a change, backward compatibility is a first-class criterion). Step 3: Write an API acceptance-criteria checklist covering: resource naming (nouns, plural collections, consistent casing) and correct HTTP-method semantics; correct and consistent status codes (201 on create, 204 on empty, 4xx vs 5xx); a single consistent error schema across all endpoints; pagination/filtering/sorting conventions applied uniformly; auth declared per operation; explicit versioning and no breaking changes (no removed/renamed fields, no narrowed types, no new required inputs) for changes; idempotency for unsafe-but-retried operations; and schema rigor (required vs optional correct, enums constrained, types precise, examples present). Step 4: State the pass condition for each. Write the surface inventory + checklist to `write_task_note` AND `notes/scope.md`. No findings yet.\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.",
20
+ "suggestedRole": "reviewer",
21
+ "advanceWhen": {
22
+ "file": "notes/scope.md",
23
+ "minBytes": 1,
24
+ "sniff": "nonempty",
25
+ "artifact": true
26
+ },
27
+ "gate": {
28
+ "at": "completion",
29
+ "checks": [
30
+ {
31
+ "kind": "minBytes",
32
+ "file": "notes/scope.md",
33
+ "bytes": 120,
34
+ "artifact": true
35
+ },
36
+ {
37
+ "kind": "sniff",
38
+ "file": "notes/scope.md",
39
+ "sniff": "nonempty",
40
+ "artifact": true
41
+ }
42
+ ],
43
+ "onReject": "scope",
44
+ "maxAttempts": 3
45
+ },
46
+ "next": "review"
47
+ },
48
+ {
49
+ "id": "review",
50
+ "name": "Review the endpoints",
51
+ "description": "check each operation + type against the rules",
52
+ "prompt": "Step 1: Walk EACH endpoint/operation against the checklist: verify the method matches the action, the path is a sensible resource, the status codes are correct and complete (including error codes), the request/response schemas are precise, and auth is declared. Step 2: Walk EACH type/schema: required vs optional fields are right, enums and formats constrain values, nullability is intentional, and naming is consistent. Step 3: Cross-cut the whole surface for consistency: do all errors share one schema, is pagination uniform, is casing consistent, are similar resources modeled the same way. Step 4: For a CHANGE, diff against the prior contract and flag every breaking change. Step 5: For each finding capture: the operation/type, the rule violated, the impact on a client developer, severity, and the CORRECTED snippet (the fixed YAML/SDL/schema fragment). Good looks like: a finding with a before/after contract snippet, not 'improve error handling'. Stage findings to `write_task_note`. Do not write the report yet.\n\nThe deliverable `notes/review.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.",
53
+ "suggestedRole": "developer",
54
+ "advanceWhen": {
55
+ "file": "notes/review.md",
56
+ "minBytes": 1,
57
+ "sniff": "nonempty",
58
+ "artifact": true
59
+ },
60
+ "gate": {
61
+ "at": "completion",
62
+ "checks": [
63
+ {
64
+ "kind": "minBytes",
65
+ "file": "notes/review.md",
66
+ "bytes": 120,
67
+ "artifact": true
68
+ },
69
+ {
70
+ "kind": "sniff",
71
+ "file": "notes/review.md",
72
+ "sniff": "nonempty",
73
+ "artifact": true
74
+ }
75
+ ],
76
+ "onReject": "review",
77
+ "maxAttempts": 3
78
+ },
79
+ "next": "report"
80
+ },
81
+ {
82
+ "id": "report",
83
+ "name": "Write the contract report",
84
+ "description": "findings with corrected snippets + compat verdict",
85
+ "prompt": "Step 1: Open `api-review.md` and write a verdict: Approve / Approve-with-changes / Request-changes, and for a change an explicit Backward-compatible: yes/no. Step 2: Add a '## Breaking changes' section first if any (each with the operation and the corrected approach), then '## Blocking' and '## Non-blocking' findings, each as `operation/type — rule — impact — corrected snippet`. Step 3: Add a '## Consistency' section for cross-cutting issues (error schema, pagination, casing). Step 4: Add a '## Strengths' note on what the contract gets right. Every finding must cite the operation/type and include a concrete corrected snippet — no generic advice. On a loop-back, fix only the named gaps. `write_task_note` the report path, the compatibility verdict, and the count of blocking findings.\n\nThe deliverable `api-review.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.",
86
+ "suggestedRole": "reviewer",
87
+ "advanceWhen": {
88
+ "file": "api-review.md",
89
+ "minBytes": 1,
90
+ "sniff": "nonempty",
91
+ "artifact": true
92
+ },
93
+ "gate": {
94
+ "at": "completion",
95
+ "checks": [
96
+ {
97
+ "kind": "minBytes",
98
+ "file": "api-review.md",
99
+ "bytes": 1500,
100
+ "artifact": true
101
+ },
102
+ {
103
+ "kind": "contains",
104
+ "file": "api-review.md",
105
+ "pattern": "(?:^|\\n)#{1,3}\\s+\\S",
106
+ "flags": "i",
107
+ "label": "at least one markdown heading",
108
+ "artifact": true
109
+ }
110
+ ],
111
+ "onReject": "report",
112
+ "maxAttempts": 4
113
+ },
114
+ "next": "evaluate"
115
+ },
116
+ {
117
+ "id": "evaluate",
118
+ "name": "Evaluate",
119
+ "description": "Grade the deliverable against every acceptance criterion. All pass → finish; any fail → loop back and fix the gap.",
120
+ "prompt": "Open `api-review.md` and grade it against the scope checklist. Check EACH criterion and write PASS/FAIL with a one-line reason: (1) every endpoint/operation and type was reviewed; (2) HTTP-method/status-code semantics were checked; (3) error schema, pagination, and naming consistency were assessed across the surface; (4) for a change, backward compatibility is explicitly stated and any breaking change is flagged; (5) each finding includes a concrete corrected contract snippet; (6) findings are prioritized (breaking/blocking/non-blocking); (7) the verdict matches the findings. If any criterion fails, name the exact gap and loop back.\n\nThe deliverable lives in the project's artifacts drawer — open `api-review.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.",
121
+ "suggestedRole": "reviewer",
122
+ "consumes": [
123
+ {
124
+ "file": "api-review.md",
125
+ "artifact": true
126
+ }
127
+ ],
128
+ "next": "report"
129
+ },
130
+ {
131
+ "id": "finish",
132
+ "name": "Finish",
133
+ "description": "All acceptance criteria met. Stamp a short summary and report DONE.",
134
+ "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.",
135
+ "suggestedRole": "developer",
136
+ "terminal": true
137
+ }
138
+ ],
139
+ "version": "1.1.1",
140
+ "releasedAt": "2026-08-14T00:00:00Z"
141
+ }
@@ -0,0 +1,115 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "title": "API Contract Review codebase eval",
4
+ "objective": "Measure whether the review reconciles an OpenAPI contract with its handler and catches consistency, semantics, auth, and pagination defects.",
5
+ "tags": [
6
+ "corpus"
7
+ ],
8
+ "prompt": "Use the API Contract Review craftbook for a codebase-wide API design pass. Compare openapi.yaml with src/routes.ts and write api-review.md with corrected snippets. Do not edit the contract or handler.",
9
+ "setup": {
10
+ "projectName": "API Design Maintenance Eval",
11
+ "about": "A small REST API whose contract and implementation contain deliberate design and drift defects.",
12
+ "missionObjectives": "Produce an evidence-backed API design report covering every seeded operation and its implementation.",
13
+ "files": [
14
+ {
15
+ "path": "openapi.yaml",
16
+ "content": "openapi: 3.0.3\ninfo: { title: Widget API, version: 1.0.0 }\npaths:\n /getWidgets:\n get:\n responses:\n '200':\n description: widgets\n content:\n application/json:\n schema: { type: array, items: { $ref: '#/components/schemas/Widget' } }\n /widgets:\n post:\n requestBody:\n required: true\n content:\n application/json:\n schema: { $ref: '#/components/schemas/Widget' }\n responses:\n '200': { description: created }\ncomponents:\n schemas:\n Widget:\n type: object\n properties:\n id: { type: string }\n display_name: { type: string }\n"
17
+ },
18
+ {
19
+ "path": "src/routes.ts",
20
+ "content": "app.get('/widgets', async (_req, res) => res.json(await db.widgets.all()));\napp.post('/widgets', async (req, res) => {\n const widget = await db.widgets.create(req.body);\n res.status(200).json(widget);\n});\napp.get('/widgets/:id', async (req, res) => {\n const item = await db.widgets.get(req.params.id);\n if (!item) return res.status(404).json({ message: 'missing' });\n res.json(item);\n});\n"
21
+ }
22
+ ],
23
+ "worker": {
24
+ "name": "Rae",
25
+ "role": "Reviewer"
26
+ }
27
+ },
28
+ "mocks": [],
29
+ "success": {
30
+ "summary": "api-review.md covers every seeded operation, contract/implementation drift, and corrected contract snippets.",
31
+ "deliverables": [
32
+ {
33
+ "path": "api-review.md",
34
+ "kind": "markdown-report",
35
+ "minBytes": 1400,
36
+ "checks": [
37
+ {
38
+ "kind": "contains",
39
+ "file": "api-review.md",
40
+ "pattern": "openapi\\.yaml|src/routes\\.ts",
41
+ "flags": "i",
42
+ "label": "real evidence"
43
+ },
44
+ {
45
+ "kind": "contains",
46
+ "file": "api-review.md",
47
+ "pattern": "/getWidgets|resource naming|noun",
48
+ "flags": "i",
49
+ "label": "resource naming"
50
+ },
51
+ {
52
+ "kind": "contains",
53
+ "file": "api-review.md",
54
+ "pattern": "201|created",
55
+ "flags": "i",
56
+ "label": "create response semantics"
57
+ },
58
+ {
59
+ "kind": "contains",
60
+ "file": "api-review.md",
61
+ "pattern": "pagination|cursor|limit",
62
+ "flags": "i",
63
+ "label": "collection pagination"
64
+ },
65
+ {
66
+ "kind": "contains",
67
+ "file": "api-review.md",
68
+ "pattern": "auth|security",
69
+ "flags": "i",
70
+ "label": "auth coverage"
71
+ },
72
+ {
73
+ "kind": "contains",
74
+ "file": "api-review.md",
75
+ "pattern": "/widgets/:id|not documented|drift",
76
+ "flags": "i",
77
+ "label": "implementation drift"
78
+ },
79
+ {
80
+ "kind": "contains",
81
+ "file": "api-review.md",
82
+ "pattern": "```(?:ya?ml|json)?[\\s\\S]{20,}```",
83
+ "flags": "i",
84
+ "label": "corrected snippet"
85
+ }
86
+ ]
87
+ }
88
+ ]
89
+ },
90
+ "rubric": {
91
+ "artifact": {
92
+ "path": "api-review.md",
93
+ "kind": "markdown"
94
+ },
95
+ "axes": [
96
+ {
97
+ "name": "surface coverage",
98
+ "description": "The contract and all implemented operations are reconciled."
99
+ },
100
+ {
101
+ "name": "design rigor",
102
+ "description": "Semantics, consistency, auth, pagination, and schema quality are reviewed."
103
+ },
104
+ {
105
+ "name": "actionability",
106
+ "description": "Findings include concrete corrected snippets and compatibility impact."
107
+ }
108
+ ]
109
+ },
110
+ "qualityFocus": [
111
+ "contract-implementation reconciliation",
112
+ "API semantics",
113
+ "corrected snippets"
114
+ ]
115
+ }
@@ -0,0 +1,158 @@
1
+ {
2
+ "id": "artifact-integrity-review",
3
+ "name": "Artifact Integrity & Ship Review",
4
+ "description": "Perform an isolated ship-readiness review of the actual built artifacts of a project—sites, npm packages, archives, CLIs, binaries, installers, checksums, signatures, and release bundles—rather than trusting source or CI status. Inventories expected versus present assets, stages immutable copies, inspects archive contents and metadata, runs safe sandboxed smoke checks where possible, and leaves per-artifact GO/NO-GO verdicts plus a release-wide decision. Can review locally staged assets or public-release evidence supplied to the project. Use before shipping a release or as a recurring artifact-integrity night-shift audit.\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. Inventory and stage the release (reviewer) — lock the expected matrix and immutable evidence set before inspecting it → gated on artifact `notes/artifacts/inventory.md` (markdown-notes)\n2. Inspect each artifact (developer) — verify identity, contents, installability, safety, and cross-artifact consistency → gated on artifact `notes/artifacts/checks.md` (markdown-notes)\n3. Write the artifact ship report (reviewer) — per-artifact verdicts and a release-wide ship decision → gated on artifact `artifact-integrity-review.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": "inventory",
6
+ "triggers": [
7
+ "artifact integrity review",
8
+ "review the built artifacts",
9
+ "test the release assets",
10
+ "are these installers ready to ship",
11
+ "audit a public github release",
12
+ "nightly artifact review"
13
+ ],
14
+ "toolsets": [
15
+ {
16
+ "toolsetId": "builtin.archives",
17
+ "autoAllow": true,
18
+ "reason": "inspect zip, tar, tgz, and package contents without trusting filenames"
19
+ },
20
+ {
21
+ "toolsetId": "builtin.code-execution",
22
+ "autoAllow": true,
23
+ "reason": "perform bounded, sandboxed metadata and smoke checks on staged artifacts"
24
+ },
25
+ {
26
+ "toolsetId": "builtin.web",
27
+ "autoAllow": true,
28
+ "reason": "read public release metadata and verify supplied public asset URLs when allowed"
29
+ }
30
+ ],
31
+ "steps": [
32
+ {
33
+ "id": "inventory",
34
+ "name": "Inventory and stage the release",
35
+ "description": "lock the expected matrix and immutable evidence set before inspecting it",
36
+ "prompt": "Define the exact release under review (version, commit/tag, target platforms, artifact types). Derive the expected asset matrix from release manifests, package metadata, CI/release configuration, checksums, and supplied release notes. Inventory every locally staged artifact with path, byte size, type/magic when available, and a cryptographic hash. If public release metadata or URLs were supplied and Web Access is allowed, verify the public listing and headers; never claim a remote binary was downloaded or inspected unless it is actually present in the workspace. Preserve the originals and work only on isolated extracted/staged copies. Record missing, duplicate, unexpected, truncated, or zero-byte assets immediately. Write the expected-vs-present matrix, provenance, hashes, acquisition limitations, and isolation plan to `notes/artifacts/inventory.md`.\n\nThe deliverable `notes/artifacts/inventory.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.",
37
+ "suggestedRole": "reviewer",
38
+ "advanceWhen": {
39
+ "file": "notes/artifacts/inventory.md",
40
+ "minBytes": 1,
41
+ "sniff": "nonempty",
42
+ "artifact": true
43
+ },
44
+ "gate": {
45
+ "at": "completion",
46
+ "checks": [
47
+ {
48
+ "kind": "minBytes",
49
+ "file": "notes/artifacts/inventory.md",
50
+ "bytes": 120,
51
+ "artifact": true
52
+ },
53
+ {
54
+ "kind": "sniff",
55
+ "file": "notes/artifacts/inventory.md",
56
+ "sniff": "nonempty",
57
+ "artifact": true
58
+ }
59
+ ],
60
+ "onReject": "inventory",
61
+ "maxAttempts": 3
62
+ },
63
+ "next": "inspect"
64
+ },
65
+ {
66
+ "id": "inspect",
67
+ "name": "Inspect each artifact",
68
+ "description": "verify identity, contents, installability, safety, and cross-artifact consistency",
69
+ "prompt": "Inspect every artifact independently. Use `list_archive` before extraction, then extract into isolated paths. Verify filename/type/magic, version and commit identity, checksums/signatures when provided, expected entrypoints, executable bits, package manifests, dependency/lock and license/SBOM notices, source-map/debug-symbol policy, update/uninstall metadata, and absence of secrets, private keys, `.env`, build caches, absolute developer paths, or unexpected source. Check sites for missing referenced assets. For npm/CLI/packages, perform only safe sandboxed pack/install/help/version/smoke checks; never run an untrusted native installer on the host. For platform artifacts that cannot run here, inspect statically and mark the platform smoke test NOT VERIFIED. Compare all artifacts for one version/commit and consistent bundled files. Record commands, exit codes, and evidence per artifact in `notes/artifacts/checks.md`.\n\nThe deliverable `notes/artifacts/checks.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.",
70
+ "suggestedRole": "developer",
71
+ "advanceWhen": {
72
+ "file": "notes/artifacts/checks.md",
73
+ "minBytes": 1,
74
+ "sniff": "nonempty",
75
+ "artifact": true
76
+ },
77
+ "gate": {
78
+ "at": "completion",
79
+ "checks": [
80
+ {
81
+ "kind": "minBytes",
82
+ "file": "notes/artifacts/checks.md",
83
+ "bytes": 120,
84
+ "artifact": true
85
+ },
86
+ {
87
+ "kind": "sniff",
88
+ "file": "notes/artifacts/checks.md",
89
+ "sniff": "nonempty",
90
+ "artifact": true
91
+ }
92
+ ],
93
+ "onReject": "inspect",
94
+ "maxAttempts": 3
95
+ },
96
+ "next": "report"
97
+ },
98
+ {
99
+ "id": "report",
100
+ "name": "Write the artifact ship report",
101
+ "description": "per-artifact verdicts and a release-wide ship decision",
102
+ "prompt": "Write `artifact-integrity-review.md` with: `## Release verdict`, `## Evidence provenance`, `## Artifact matrix`, `## Blocking findings`, `## Advisory findings`, `## Cross-artifact consistency`, `## Not verified`, and `## Reproduction commands`. Give every artifact its own GO / NO-GO / NOT-VERIFIED verdict. Every claim must point to a staged path, hash, manifest field, archive member, command/exit code, or supplied public-release record. Any missing expected artifact, secret/private key, checksum/signature mismatch, version/commit mismatch, broken entrypoint, failed smoke test, or missing referenced site asset is a blocker unless explicitly justified. A release cannot be GO when any required artifact is NO-GO or materially unverified. Keep source-code readiness outside scope except where needed to explain artifact provenance.\n\nThe deliverable `artifact-integrity-review.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.",
103
+ "suggestedRole": "reviewer",
104
+ "advanceWhen": {
105
+ "file": "artifact-integrity-review.md",
106
+ "minBytes": 1,
107
+ "sniff": "nonempty",
108
+ "artifact": true
109
+ },
110
+ "gate": {
111
+ "at": "completion",
112
+ "checks": [
113
+ {
114
+ "kind": "minBytes",
115
+ "file": "artifact-integrity-review.md",
116
+ "bytes": 2000,
117
+ "artifact": true
118
+ },
119
+ {
120
+ "kind": "contains",
121
+ "file": "artifact-integrity-review.md",
122
+ "pattern": "(?:^|\\n)#{1,3}\\s+\\S",
123
+ "flags": "i",
124
+ "label": "at least one markdown heading",
125
+ "artifact": true
126
+ }
127
+ ],
128
+ "onReject": "report",
129
+ "maxAttempts": 4
130
+ },
131
+ "next": "evaluate"
132
+ },
133
+ {
134
+ "id": "evaluate",
135
+ "name": "Evaluate",
136
+ "description": "Grade the deliverable against every acceptance criterion. All pass → finish; any fail → loop back and fix the gap.",
137
+ "prompt": "Grade `artifact-integrity-review.md`: (1) expected and present assets are reconciled; (2) each artifact has provenance, size/type/hash, checks, and an individual verdict; (3) archive/package contents and metadata were inspected in isolation; (4) safe smoke tests include commands and exit codes while unrun platform tests are NOT VERIFIED; (5) versions/commits and bundled content agree across artifacts; (6) secrets, licenses/SBOM, source maps/debug files, signatures/checksums, entrypoints, and missing site assets were considered where applicable; (7) the release verdict follows blockers and uncertainty. PASS all or loop back with exact gaps.\n\nThe deliverable lives in the project's artifacts drawer — open `artifact-integrity-review.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.",
138
+ "suggestedRole": "reviewer",
139
+ "consumes": [
140
+ {
141
+ "file": "artifact-integrity-review.md",
142
+ "artifact": true
143
+ }
144
+ ],
145
+ "next": "report"
146
+ },
147
+ {
148
+ "id": "finish",
149
+ "name": "Finish",
150
+ "description": "All acceptance criteria met. Stamp a short summary and report DONE.",
151
+ "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.",
152
+ "suggestedRole": "developer",
153
+ "terminal": true
154
+ }
155
+ ],
156
+ "version": "1.0.1",
157
+ "releasedAt": "2026-08-14T00:00:00Z"
158
+ }