@bendyline/gilde 0.1.27 → 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 (558) hide show
  1. package/authoring/gstack/evals/investigate.json +1 -0
  2. package/authoring/gstack/evals/plan-ceo-review.json +1 -0
  3. package/authoring/gstack/wave.json +2 -2
  4. package/data/craftbook-templates/a1/a11y-audit/versions/1.1.1/craftbook.json +141 -0
  5. package/data/craftbook-templates/a1/a11y-audit/versions/1.1.1/test.json +115 -0
  6. package/data/craftbook-templates/ab/ab-test-readout/versions/1.0.1/craftbook.json +141 -0
  7. package/data/craftbook-templates/ab/ab-test-readout/versions/1.0.1/test.json +186 -0
  8. package/data/craftbook-templates/ac/accessibility-retrofit/versions/1.0.1/craftbook.json +110 -0
  9. package/data/craftbook-templates/ac/accessibility-retrofit/versions/1.0.1/test.json +97 -0
  10. package/data/craftbook-templates/ad/ad-variations/versions/1.0.1/craftbook.json +105 -0
  11. package/data/craftbook-templates/ad/ad-variations/versions/1.0.1/test.json +108 -0
  12. package/data/craftbook-templates/al/album-curate/versions/1.0.1/craftbook.json +115 -0
  13. package/data/craftbook-templates/al/album-curate/versions/1.0.1/test.json +147 -0
  14. package/data/craftbook-templates/al/alert-rules/versions/1.0.1/craftbook.json +101 -0
  15. package/data/craftbook-templates/al/alert-rules/versions/1.0.1/test.json +145 -0
  16. package/data/craftbook-templates/al/alt-text-pass/versions/1.0.1/craftbook.json +142 -0
  17. package/data/craftbook-templates/al/alt-text-pass/versions/1.0.1/test.json +97 -0
  18. package/data/craftbook-templates/an/anniversary-cut/versions/1.0.3/craftbook.json +226 -0
  19. package/data/craftbook-templates/an/anniversary-cut/versions/1.0.3/test.json +157 -0
  20. package/data/craftbook-templates/an/annotated-bibliography/versions/1.0.1/craftbook.json +146 -0
  21. package/data/craftbook-templates/an/annotated-bibliography/versions/1.0.1/test.json +102 -0
  22. package/data/craftbook-templates/an/annual-document-review/versions/1.0.1/craftbook.json +140 -0
  23. package/data/craftbook-templates/an/annual-document-review/versions/1.0.1/test.json +110 -0
  24. package/data/craftbook-templates/an/anomaly-scan/versions/1.0.1/craftbook.json +141 -0
  25. package/data/craftbook-templates/an/anomaly-scan/versions/1.0.1/test.json +120 -0
  26. package/data/craftbook-templates/ap/api-contract-review/versions/1.1.1/craftbook.json +141 -0
  27. package/data/craftbook-templates/ap/api-contract-review/versions/1.1.1/test.json +115 -0
  28. package/data/craftbook-templates/ar/artifact-integrity-review/versions/1.0.1/craftbook.json +158 -0
  29. package/data/craftbook-templates/ar/artifact-integrity-review/versions/1.0.1/test.json +136 -0
  30. package/data/craftbook-templates/au/audio-ad-spot/versions/1.0.1/craftbook.json +129 -0
  31. package/data/craftbook-templates/au/audio-ad-spot/versions/1.0.1/test.json +103 -0
  32. package/data/craftbook-templates/au/audio-highlight-reel/versions/1.0.1/craftbook.json +123 -0
  33. package/data/craftbook-templates/au/audio-highlight-reel/versions/1.0.1/test.json +103 -0
  34. package/data/craftbook-templates/au/audiobook-master-pack/versions/1.0.3/craftbook.json +210 -0
  35. package/data/craftbook-templates/au/audiobook-master-pack/versions/1.0.3/test.json +221 -0
  36. package/data/craftbook-templates/au/auth-flow/versions/1.0.1/craftbook.json +148 -0
  37. package/data/craftbook-templates/au/auth-flow/versions/1.0.1/test.json +140 -0
  38. package/data/craftbook-templates/au/automation-recipe/versions/1.0.1/craftbook.json +164 -0
  39. package/data/craftbook-templates/au/automation-recipe/versions/1.0.1/test.json +296 -0
  40. package/data/craftbook-templates/ba/backup-routine/versions/1.0.1/craftbook.json +148 -0
  41. package/data/craftbook-templates/ba/backup-routine/versions/1.0.1/test.json +108 -0
  42. package/data/craftbook-templates/bl/blog-post/versions/1.0.1/craftbook.json +143 -0
  43. package/data/craftbook-templates/bl/blog-post/versions/1.0.1/test.json +118 -0
  44. package/data/craftbook-templates/bo/board-deck/versions/1.0.1/craftbook.json +141 -0
  45. package/data/craftbook-templates/bo/board-deck/versions/1.0.1/test.json +100 -0
  46. package/data/craftbook-templates/bo/board-game-web/versions/1.0.1/craftbook.json +150 -0
  47. package/data/craftbook-templates/bo/board-game-web/versions/1.0.1/test.json +99 -0
  48. package/data/craftbook-templates/bo/booking-automation/versions/1.0.1/craftbook.json +158 -0
  49. package/data/craftbook-templates/bo/booking-automation/versions/1.0.1/test.json +162 -0
  50. package/data/craftbook-templates/br/branding-website/versions/1.1.1/craftbook.json +211 -0
  51. package/data/craftbook-templates/br/branding-website/versions/1.1.1/test.json +164 -0
  52. package/data/craftbook-templates/br/broadcast-announcement/versions/1.0.1/craftbook.json +107 -0
  53. package/data/craftbook-templates/br/broadcast-announcement/versions/1.0.1/test.json +103 -0
  54. package/data/craftbook-templates/br/browser-qa-audit/versions/2.0.3/craftbook.json +417 -0
  55. package/data/craftbook-templates/br/browser-qa-audit/versions/2.0.3/test.json +376 -0
  56. package/data/craftbook-templates/bu/bug-fix-tdd/versions/1.0.2/craftbook.json +164 -0
  57. package/data/craftbook-templates/bu/bug-fix-tdd/versions/1.0.2/test.json +92 -0
  58. package/data/craftbook-templates/ca/calendar-brief/versions/1.0.1/craftbook.json +107 -0
  59. package/data/craftbook-templates/ca/calendar-brief/versions/1.0.1/test.json +102 -0
  60. package/data/craftbook-templates/ca/canvas-generative-art/versions/1.0.1/craftbook.json +110 -0
  61. package/data/craftbook-templates/ca/canvas-generative-art/versions/1.0.1/test.json +106 -0
  62. package/data/craftbook-templates/ca/case-study/versions/1.0.1/craftbook.json +143 -0
  63. package/data/craftbook-templates/ca/case-study/versions/1.0.1/test.json +112 -0
  64. package/data/craftbook-templates/ca/case-study-writeup/versions/1.0.1/craftbook.json +151 -0
  65. package/data/craftbook-templates/ca/case-study-writeup/versions/1.0.1/test.json +105 -0
  66. package/data/craftbook-templates/ch/changelog-cut/versions/1.0.1/craftbook.json +113 -0
  67. package/data/craftbook-templates/ch/changelog-cut/versions/1.0.1/test.json +106 -0
  68. package/data/craftbook-templates/ch/changelog-writeup/versions/1.0.1/craftbook.json +107 -0
  69. package/data/craftbook-templates/ch/changelog-writeup/versions/1.0.1/test.json +129 -0
  70. package/data/craftbook-templates/ch/chapter-narration-run/versions/1.0.2/craftbook.json +123 -0
  71. package/data/craftbook-templates/ch/chapter-narration-run/versions/1.0.2/test.json +155 -0
  72. package/data/craftbook-templates/ch/chapter-weave/versions/1.0.1/craftbook.json +74 -0
  73. package/data/craftbook-templates/ch/chapter-weave/versions/1.0.1/test.json +98 -0
  74. package/data/craftbook-templates/ch/character-sheet/versions/1.0.1/craftbook.json +82 -0
  75. package/data/craftbook-templates/ch/character-sheet/versions/1.0.1/test.json +143 -0
  76. package/data/craftbook-templates/ch/character-turnaround/versions/1.0.1/craftbook.json +121 -0
  77. package/data/craftbook-templates/ch/character-turnaround/versions/1.0.1/test.json +178 -0
  78. package/data/craftbook-templates/ch/chart-pack/versions/1.0.1/craftbook.json +148 -0
  79. package/data/craftbook-templates/ch/chart-pack/versions/1.0.1/test.json +104 -0
  80. package/data/craftbook-templates/ch/chrome-extension/versions/1.0.1/craftbook.json +148 -0
  81. package/data/craftbook-templates/ch/chrome-extension/versions/1.0.1/test.json +97 -0
  82. package/data/craftbook-templates/ci/ci-pipeline/versions/1.0.1/craftbook.json +132 -0
  83. package/data/craftbook-templates/ci/ci-pipeline/versions/1.0.1/test.json +162 -0
  84. package/data/craftbook-templates/ci/citation-audit/versions/1.0.1/craftbook.json +146 -0
  85. package/data/craftbook-templates/ci/citation-audit/versions/1.0.1/test.json +149 -0
  86. package/data/craftbook-templates/cl/cli-tool/versions/1.1.1/craftbook.json +147 -0
  87. package/data/craftbook-templates/cl/cli-tool/versions/1.1.1/test.json +128 -0
  88. package/data/craftbook-templates/co/codebase-refactoring-review/versions/1.0.1/craftbook.json +153 -0
  89. package/data/craftbook-templates/co/codebase-refactoring-review/versions/1.0.1/test.json +116 -0
  90. package/data/craftbook-templates/co/codebase-ux-review/versions/1.0.1/craftbook.json +153 -0
  91. package/data/craftbook-templates/co/codebase-ux-review/versions/1.0.1/test.json +119 -0
  92. package/data/craftbook-templates/co/cohort-analysis/versions/1.0.1/craftbook.json +141 -0
  93. package/data/craftbook-templates/co/cohort-analysis/versions/1.0.1/test.json +226 -0
  94. package/data/craftbook-templates/co/company-research-brief/versions/1.0.1/craftbook.json +139 -0
  95. package/data/craftbook-templates/co/company-research-brief/versions/1.0.1/test.json +97 -0
  96. package/data/craftbook-templates/co/comparison-matrix/versions/1.0.1/craftbook.json +153 -0
  97. package/data/craftbook-templates/co/comparison-matrix/versions/1.0.1/test.json +109 -0
  98. package/data/craftbook-templates/co/compat-check/versions/1.0.1/craftbook.json +146 -0
  99. package/data/craftbook-templates/co/compat-check/versions/1.0.1/test.json +145 -0
  100. package/data/craftbook-templates/co/competitive-analysis/versions/1.0.1/craftbook.json +140 -0
  101. package/data/craftbook-templates/co/competitive-analysis/versions/1.0.1/test.json +116 -0
  102. package/data/craftbook-templates/co/config-scaffold/versions/1.0.1/craftbook.json +105 -0
  103. package/data/craftbook-templates/co/config-scaffold/versions/1.0.1/test.json +120 -0
  104. package/data/craftbook-templates/co/content-accuracy-review/versions/1.0.1/craftbook.json +141 -0
  105. package/data/craftbook-templates/co/content-accuracy-review/versions/1.0.1/test.json +149 -0
  106. package/data/craftbook-templates/co/content-deck/versions/1.2.1/craftbook.json +206 -0
  107. package/data/craftbook-templates/co/content-deck/versions/1.2.1/test.json +169 -0
  108. package/data/craftbook-templates/co/contract-template/versions/1.0.1/craftbook.json +145 -0
  109. package/data/craftbook-templates/co/contract-template/versions/1.0.1/test.json +102 -0
  110. package/data/craftbook-templates/co/cookbook-layout/versions/1.0.1/craftbook.json +121 -0
  111. package/data/craftbook-templates/co/cookbook-layout/versions/1.0.1/test.json +159 -0
  112. package/data/craftbook-templates/co/copy-review/versions/1.0.1/craftbook.json +141 -0
  113. package/data/craftbook-templates/co/copy-review/versions/1.0.1/test.json +102 -0
  114. package/data/craftbook-templates/co/corpus-email-digest/versions/1.2.1/craftbook.json +210 -0
  115. package/data/craftbook-templates/co/corpus-email-digest/versions/1.2.1/test.json +187 -0
  116. package/data/craftbook-templates/co/corpus-synthesis/versions/1.0.1/craftbook.json +146 -0
  117. package/data/craftbook-templates/co/corpus-synthesis/versions/1.0.1/test.json +156 -0
  118. package/data/craftbook-templates/co/cover-letter/versions/1.0.1/craftbook.json +107 -0
  119. package/data/craftbook-templates/co/cover-letter/versions/1.0.1/test.json +100 -0
  120. package/data/craftbook-templates/cr/crm-update-batch/versions/1.0.1/craftbook.json +101 -0
  121. package/data/craftbook-templates/cr/crm-update-batch/versions/1.0.1/test.json +207 -0
  122. package/data/craftbook-templates/cr/cron-job/versions/1.0.1/craftbook.json +147 -0
  123. package/data/craftbook-templates/cr/cron-job/versions/1.0.1/test.json +104 -0
  124. package/data/craftbook-templates/cr/crossword-forge/versions/1.0.1/craftbook.json +164 -0
  125. package/data/craftbook-templates/cr/crossword-forge/versions/1.0.1/test.json +135 -0
  126. package/data/craftbook-templates/cs/csv-transformer/versions/1.2.2/craftbook.json +101 -0
  127. package/data/craftbook-templates/cs/csv-transformer/versions/1.2.2/test.json +102 -0
  128. package/data/craftbook-templates/da/dashboard-spec/versions/1.0.1/craftbook.json +107 -0
  129. package/data/craftbook-templates/da/dashboard-spec/versions/1.0.1/test.json +114 -0
  130. package/data/craftbook-templates/da/data-dictionary/versions/1.0.1/craftbook.json +107 -0
  131. package/data/craftbook-templates/da/data-dictionary/versions/1.0.1/test.json +101 -0
  132. package/data/craftbook-templates/da/data-export-migrate/versions/1.0.1/craftbook.json +148 -0
  133. package/data/craftbook-templates/da/data-export-migrate/versions/1.0.1/test.json +104 -0
  134. package/data/craftbook-templates/da/data-join-merge/versions/1.0.1/craftbook.json +101 -0
  135. package/data/craftbook-templates/da/data-join-merge/versions/1.0.1/test.json +104 -0
  136. package/data/craftbook-templates/da/data-pipeline-etl/versions/1.0.2/craftbook.json +148 -0
  137. package/data/craftbook-templates/da/data-pipeline-etl/versions/1.0.2/test.json +162 -0
  138. package/data/craftbook-templates/da/data-quality-audit/versions/1.0.1/craftbook.json +141 -0
  139. package/data/craftbook-templates/da/data-quality-audit/versions/1.0.1/test.json +326 -0
  140. package/data/craftbook-templates/da/data-to-report/versions/1.0.1/craftbook.json +140 -0
  141. package/data/craftbook-templates/da/data-to-report/versions/1.0.1/test.json +95 -0
  142. package/data/craftbook-templates/da/data-viz-page/versions/1.0.1/craftbook.json +143 -0
  143. package/data/craftbook-templates/da/data-viz-page/versions/1.0.1/test.json +117 -0
  144. package/data/craftbook-templates/da/dataset-clean/versions/1.2.2/craftbook.json +101 -0
  145. package/data/craftbook-templates/da/dataset-clean/versions/1.2.2/test.json +95 -0
  146. package/data/craftbook-templates/db/db-index-tuning/versions/1.0.1/craftbook.json +148 -0
  147. package/data/craftbook-templates/db/db-index-tuning/versions/1.0.1/test.json +104 -0
  148. package/data/craftbook-templates/de/deep-security-review/versions/1.1.1/craftbook.json +211 -0
  149. package/data/craftbook-templates/de/deep-security-review/versions/1.1.1/test.json +157 -0
  150. package/data/craftbook-templates/de/dependency-audit/versions/1.1.1/craftbook.json +141 -0
  151. package/data/craftbook-templates/de/dependency-audit/versions/1.1.1/test.json +108 -0
  152. package/data/craftbook-templates/de/deploy-checklist/versions/1.0.1/craftbook.json +159 -0
  153. package/data/craftbook-templates/de/deploy-checklist/versions/1.0.1/test.json +165 -0
  154. package/data/craftbook-templates/de/design-review/versions/1.0.1/craftbook.json +141 -0
  155. package/data/craftbook-templates/de/design-review/versions/1.0.1/test.json +118 -0
  156. package/data/craftbook-templates/de/design-system-consultation/versions/2.0.3/craftbook.json +431 -0
  157. package/data/craftbook-templates/de/design-system-consultation/versions/2.0.3/test.json +201 -0
  158. package/data/craftbook-templates/di/diagram-from-text/versions/1.0.1/craftbook.json +109 -0
  159. package/data/craftbook-templates/di/diagram-from-text/versions/1.0.1/test.json +97 -0
  160. package/data/craftbook-templates/di/digest-from-feeds/versions/1.0.1/craftbook.json +146 -0
  161. package/data/craftbook-templates/di/digest-from-feeds/versions/1.0.1/test.json +162 -0
  162. package/data/craftbook-templates/do/doc-intake-pipeline/versions/1.0.1/craftbook.json +148 -0
  163. package/data/craftbook-templates/do/doc-intake-pipeline/versions/1.0.1/test.json +104 -0
  164. package/data/craftbook-templates/do/doc-rewrite/versions/1.0.1/craftbook.json +107 -0
  165. package/data/craftbook-templates/do/doc-rewrite/versions/1.0.1/test.json +110 -0
  166. package/data/craftbook-templates/do/dockerize-app/versions/1.0.1/craftbook.json +148 -0
  167. package/data/craftbook-templates/do/dockerize-app/versions/1.0.1/test.json +92 -0
  168. package/data/craftbook-templates/do/docs-site/versions/1.0.1/craftbook.json +143 -0
  169. package/data/craftbook-templates/do/docs-site/versions/1.0.1/test.json +97 -0
  170. package/data/craftbook-templates/do/documentation-drift-review/versions/1.0.1/craftbook.json +153 -0
  171. package/data/craftbook-templates/do/documentation-drift-review/versions/1.0.1/test.json +132 -0
  172. package/data/craftbook-templates/dr/drive-wrap-up/versions/1.0.1/craftbook.json +140 -0
  173. package/data/craftbook-templates/dr/drive-wrap-up/versions/1.0.1/test.json +104 -0
  174. package/data/craftbook-templates/du/due-diligence-brief/versions/1.0.1/craftbook.json +146 -0
  175. package/data/craftbook-templates/du/due-diligence-brief/versions/1.0.1/test.json +110 -0
  176. package/data/craftbook-templates/eb/ebook-compile/versions/1.0.1/craftbook.json +143 -0
  177. package/data/craftbook-templates/eb/ebook-compile/versions/1.0.1/test.json +97 -0
  178. package/data/craftbook-templates/ed/edit-notes/versions/1.0.1/craftbook.json +176 -0
  179. package/data/craftbook-templates/ed/edit-notes/versions/1.0.1/test.json +146 -0
  180. package/data/craftbook-templates/em/email-sequence/versions/1.0.1/craftbook.json +142 -0
  181. package/data/craftbook-templates/em/email-sequence/versions/1.0.1/test.json +97 -0
  182. package/data/craftbook-templates/em/email-template/versions/1.0.1/craftbook.json +143 -0
  183. package/data/craftbook-templates/em/email-template/versions/1.0.1/test.json +97 -0
  184. package/data/craftbook-templates/en/engineering-retrospective/versions/2.0.3/craftbook.json +403 -0
  185. package/data/craftbook-templates/en/engineering-retrospective/versions/2.0.3/test.json +191 -0
  186. package/data/craftbook-templates/ep/episode-plan/versions/1.0.1/craftbook.json +140 -0
  187. package/data/craftbook-templates/ep/episode-plan/versions/1.0.1/test.json +97 -0
  188. package/data/craftbook-templates/es/escalation-playbook/versions/1.0.1/craftbook.json +107 -0
  189. package/data/craftbook-templates/es/escalation-playbook/versions/1.0.1/test.json +110 -0
  190. package/data/craftbook-templates/ev/evidence-brief/versions/1.0.1/craftbook.json +146 -0
  191. package/data/craftbook-templates/ev/evidence-brief/versions/1.0.1/test.json +110 -0
  192. package/data/craftbook-templates/ex/executive-level-review/versions/2.0.3/craftbook.json +433 -0
  193. package/data/craftbook-templates/ex/executive-level-review/versions/2.0.3/test.json +136 -0
  194. package/data/craftbook-templates/ex/expense-categorize/versions/1.0.1/craftbook.json +140 -0
  195. package/data/craftbook-templates/ex/expense-categorize/versions/1.0.1/test.json +104 -0
  196. package/data/craftbook-templates/fa/fact-check/versions/1.0.1/craftbook.json +146 -0
  197. package/data/craftbook-templates/fa/fact-check/versions/1.0.1/test.json +110 -0
  198. package/data/craftbook-templates/fa/family-story-chapter/versions/1.0.1/craftbook.json +74 -0
  199. package/data/craftbook-templates/fa/family-story-chapter/versions/1.0.1/test.json +108 -0
  200. package/data/craftbook-templates/fa/faq-from-docs/versions/1.0.1/craftbook.json +107 -0
  201. package/data/craftbook-templates/fa/faq-from-docs/versions/1.0.1/test.json +110 -0
  202. package/data/craftbook-templates/fa/favicon-set/versions/1.0.1/craftbook.json +146 -0
  203. package/data/craftbook-templates/fa/favicon-set/versions/1.0.1/test.json +103 -0
  204. package/data/craftbook-templates/fe/feature-flag-release/versions/1.0.1/craftbook.json +159 -0
  205. package/data/craftbook-templates/fe/feature-flag-release/versions/1.0.1/test.json +162 -0
  206. package/data/craftbook-templates/fe/feature-flag-rollout/versions/1.0.1/craftbook.json +148 -0
  207. package/data/craftbook-templates/fe/feature-flag-rollout/versions/1.0.1/test.json +162 -0
  208. package/data/craftbook-templates/fe/feedback-widget/versions/1.0.1/craftbook.json +143 -0
  209. package/data/craftbook-templates/fe/feedback-widget/versions/1.0.1/test.json +97 -0
  210. package/data/craftbook-templates/fo/folder-to-audio/versions/1.0.1/craftbook.json +103 -0
  211. package/data/craftbook-templates/fo/folder-to-audio/versions/1.0.1/test.json +103 -0
  212. package/data/craftbook-templates/fo/forecast-model/versions/1.0.1/craftbook.json +105 -0
  213. package/data/craftbook-templates/fo/forecast-model/versions/1.0.1/test.json +104 -0
  214. package/data/craftbook-templates/fo/form-fill-batch/versions/1.0.1/craftbook.json +148 -0
  215. package/data/craftbook-templates/fo/form-fill-batch/versions/1.0.1/test.json +162 -0
  216. package/data/craftbook-templates/fo/form-wizard/versions/1.0.1/craftbook.json +110 -0
  217. package/data/craftbook-templates/fo/form-wizard/versions/1.0.1/test.json +110 -0
  218. package/data/craftbook-templates/ga/game-with-screens/versions/1.0.1/craftbook.json +168 -0
  219. package/data/craftbook-templates/ga/game-with-screens/versions/1.0.1/test.json +99 -0
  220. package/data/craftbook-templates/gl/glossary-build/versions/1.0.1/craftbook.json +140 -0
  221. package/data/craftbook-templates/gl/glossary-build/versions/1.0.1/test.json +110 -0
  222. package/data/craftbook-templates/gr/graphql-api/versions/1.0.2/craftbook.json +146 -0
  223. package/data/craftbook-templates/gr/graphql-api/versions/1.0.2/test.json +92 -0
  224. package/data/craftbook-templates/gr/grpc-service/versions/1.0.1/craftbook.json +147 -0
  225. package/data/craftbook-templates/gr/grpc-service/versions/1.0.1/test.json +92 -0
  226. package/data/craftbook-templates/ha/handbook-section/versions/1.0.1/craftbook.json +145 -0
  227. package/data/craftbook-templates/ha/handbook-section/versions/1.0.1/test.json +110 -0
  228. package/data/craftbook-templates/he/hero-image/versions/1.0.1/craftbook.json +154 -0
  229. package/data/craftbook-templates/he/hero-image/versions/1.0.1/test.json +103 -0
  230. package/data/craftbook-templates/ho/holiday-card-run/versions/1.0.1/craftbook.json +202 -0
  231. package/data/craftbook-templates/ho/holiday-card-run/versions/1.0.1/test.json +128 -0
  232. package/data/craftbook-templates/ho/hotfix-flow/versions/1.0.1/craftbook.json +182 -0
  233. package/data/craftbook-templates/ho/hotfix-flow/versions/1.0.1/test.json +92 -0
  234. package/data/craftbook-templates/ht/html-arcade-game/versions/1.2.1/craftbook.json +218 -0
  235. package/data/craftbook-templates/ht/html-arcade-game/versions/1.2.1/test.json +176 -0
  236. package/data/craftbook-templates/ht/html-puzzle-game/versions/1.0.1/craftbook.json +150 -0
  237. package/data/craftbook-templates/ht/html-puzzle-game/versions/1.0.1/test.json +99 -0
  238. package/data/craftbook-templates/ic/icon-pack/versions/1.0.1/craftbook.json +146 -0
  239. package/data/craftbook-templates/ic/icon-pack/versions/1.0.1/test.json +103 -0
  240. package/data/craftbook-templates/id/idea-office-hours/versions/2.0.3/craftbook.json +397 -0
  241. package/data/craftbook-templates/id/idea-office-hours/versions/2.0.3/test.json +141 -0
  242. package/data/craftbook-templates/id/idle-clicker-game/versions/1.0.1/craftbook.json +150 -0
  243. package/data/craftbook-templates/id/idle-clicker-game/versions/1.0.1/test.json +99 -0
  244. package/data/craftbook-templates/im/image-batch-edit/versions/1.0.1/craftbook.json +141 -0
  245. package/data/craftbook-templates/im/image-batch-edit/versions/1.0.1/test.json +103 -0
  246. package/data/craftbook-templates/im/image-dedup-cluster/versions/1.0.1/craftbook.json +140 -0
  247. package/data/craftbook-templates/im/image-dedup-cluster/versions/1.0.1/test.json +103 -0
  248. package/data/craftbook-templates/im/image-palette-extract/versions/1.0.1/craftbook.json +109 -0
  249. package/data/craftbook-templates/im/image-palette-extract/versions/1.0.1/test.json +97 -0
  250. package/data/craftbook-templates/im/image-seo-rename/versions/1.0.1/craftbook.json +105 -0
  251. package/data/craftbook-templates/im/image-seo-rename/versions/1.0.1/test.json +103 -0
  252. package/data/craftbook-templates/im/image-set-index/versions/1.2.1/craftbook.json +179 -0
  253. package/data/craftbook-templates/im/image-set-index/versions/1.2.1/test.json +180 -0
  254. package/data/craftbook-templates/in/inbox-triage/versions/1.0.1/craftbook.json +140 -0
  255. package/data/craftbook-templates/in/inbox-triage/versions/1.0.1/test.json +104 -0
  256. package/data/craftbook-templates/in/incident-comms-templates/versions/1.0.1/craftbook.json +107 -0
  257. package/data/craftbook-templates/in/incident-comms-templates/versions/1.0.1/test.json +110 -0
  258. package/data/craftbook-templates/in/incident-postmortem/versions/1.0.1/craftbook.json +158 -0
  259. package/data/craftbook-templates/in/incident-postmortem/versions/1.0.1/test.json +109 -0
  260. package/data/craftbook-templates/in/insurance-inventory/versions/1.0.1/craftbook.json +153 -0
  261. package/data/craftbook-templates/in/insurance-inventory/versions/1.0.1/test.json +121 -0
  262. package/data/craftbook-templates/in/interactive-quiz/versions/1.0.1/craftbook.json +143 -0
  263. package/data/craftbook-templates/in/interactive-quiz/versions/1.0.1/test.json +99 -0
  264. package/data/craftbook-templates/in/investigate-root-cause/versions/1.0.1/craftbook.json +141 -0
  265. package/data/craftbook-templates/in/investigate-root-cause/versions/1.0.1/test.json +110 -0
  266. package/data/craftbook-templates/in/invitation-design/versions/1.0.1/craftbook.json +128 -0
  267. package/data/craftbook-templates/in/invitation-design/versions/1.0.1/test.json +121 -0
  268. package/data/craftbook-templates/in/invoice-generator/versions/1.0.1/craftbook.json +110 -0
  269. package/data/craftbook-templates/in/invoice-generator/versions/1.0.1/test.json +97 -0
  270. package/data/craftbook-templates/in/invoice-run/versions/1.1.1/craftbook.json +199 -0
  271. package/data/craftbook-templates/in/invoice-run/versions/1.1.1/test.json +140 -0
  272. package/data/craftbook-templates/index.json +1 -1
  273. package/data/craftbook-templates/it/item-intake/versions/1.0.1/craftbook.json +140 -0
  274. package/data/craftbook-templates/it/item-intake/versions/1.0.1/test.json +145 -0
  275. package/data/craftbook-templates/ju/juice-pass/versions/1.0.1/craftbook.json +116 -0
  276. package/data/craftbook-templates/ju/juice-pass/versions/1.0.1/test.json +116 -0
  277. package/data/craftbook-templates/kn/knowledge-base-article/versions/1.0.1/craftbook.json +143 -0
  278. package/data/craftbook-templates/kn/knowledge-base-article/versions/1.0.1/test.json +110 -0
  279. package/data/craftbook-templates/kp/kpi-scorecard/versions/1.0.1/craftbook.json +148 -0
  280. package/data/craftbook-templates/kp/kpi-scorecard/versions/1.0.1/test.json +97 -0
  281. package/data/craftbook-templates/la/landing-copy/versions/1.0.1/craftbook.json +143 -0
  282. package/data/craftbook-templates/la/landing-copy/versions/1.0.1/test.json +110 -0
  283. package/data/craftbook-templates/la/landing-page/versions/1.0.1/craftbook.json +184 -0
  284. package/data/craftbook-templates/la/landing-page/versions/1.0.1/test.json +97 -0
  285. package/data/craftbook-templates/le/lead-enrichment/versions/1.0.1/craftbook.json +140 -0
  286. package/data/craftbook-templates/le/lead-enrichment/versions/1.0.1/test.json +104 -0
  287. package/data/craftbook-templates/li/library-package/versions/1.0.1/craftbook.json +147 -0
  288. package/data/craftbook-templates/li/library-package/versions/1.0.1/test.json +92 -0
  289. package/data/craftbook-templates/li/literature-review/versions/1.0.1/craftbook.json +146 -0
  290. package/data/craftbook-templates/li/literature-review/versions/1.0.1/test.json +110 -0
  291. package/data/craftbook-templates/li/live-browser-qa/versions/1.0.1/craftbook.json +141 -0
  292. package/data/craftbook-templates/li/live-browser-qa/versions/1.0.1/test.json +162 -0
  293. package/data/craftbook-templates/lo/localize-content/versions/1.0.1/craftbook.json +143 -0
  294. package/data/craftbook-templates/lo/localize-content/versions/1.0.1/test.json +110 -0
  295. package/data/craftbook-templates/lo/logo-set/versions/1.0.1/craftbook.json +146 -0
  296. package/data/craftbook-templates/lo/logo-set/versions/1.0.1/test.json +103 -0
  297. package/data/craftbook-templates/ma/market-scan/versions/1.0.1/craftbook.json +146 -0
  298. package/data/craftbook-templates/ma/market-scan/versions/1.0.1/test.json +210 -0
  299. package/data/craftbook-templates/me/meeting-minutes/versions/1.0.1/craftbook.json +108 -0
  300. package/data/craftbook-templates/me/meeting-minutes/versions/1.0.1/test.json +110 -0
  301. package/data/craftbook-templates/me/meeting-notes-to-actions/versions/1.0.1/craftbook.json +107 -0
  302. package/data/craftbook-templates/me/meeting-notes-to-actions/versions/1.0.1/test.json +110 -0
  303. package/data/craftbook-templates/me/meeting-prep-brief/versions/1.0.1/craftbook.json +107 -0
  304. package/data/craftbook-templates/me/meeting-prep-brief/versions/1.0.1/test.json +184 -0
  305. package/data/craftbook-templates/me/meeting-summary-audio/versions/1.0.1/craftbook.json +109 -0
  306. package/data/craftbook-templates/me/meeting-summary-audio/versions/1.0.1/test.json +103 -0
  307. package/data/craftbook-templates/me/memory-prompt-session/versions/1.0.1/craftbook.json +115 -0
  308. package/data/craftbook-templates/me/memory-prompt-session/versions/1.0.1/test.json +112 -0
  309. package/data/craftbook-templates/me/message-queue-consumer/versions/1.0.1/craftbook.json +147 -0
  310. package/data/craftbook-templates/me/message-queue-consumer/versions/1.0.1/test.json +92 -0
  311. package/data/craftbook-templates/mi/micro-game-jam/versions/1.0.1/craftbook.json +117 -0
  312. package/data/craftbook-templates/mi/micro-game-jam/versions/1.0.1/test.json +99 -0
  313. package/data/craftbook-templates/mo/mock-interview/versions/1.0.1/craftbook.json +139 -0
  314. package/data/craftbook-templates/mo/mock-interview/versions/1.0.1/test.json +110 -0
  315. package/data/craftbook-templates/mo/mod-scaffold/versions/1.0.1/craftbook.json +156 -0
  316. package/data/craftbook-templates/mo/mod-scaffold/versions/1.0.1/test.json +133 -0
  317. package/data/craftbook-templates/mo/monitor-and-alert/versions/1.0.1/craftbook.json +158 -0
  318. package/data/craftbook-templates/mo/monitor-and-alert/versions/1.0.1/test.json +197 -0
  319. package/data/craftbook-templates/mo/month-close/versions/1.0.1/craftbook.json +140 -0
  320. package/data/craftbook-templates/mo/month-close/versions/1.0.1/test.json +97 -0
  321. package/data/craftbook-templates/mo/monthly-recording-review/versions/1.0.1/craftbook.json +140 -0
  322. package/data/craftbook-templates/mo/monthly-recording-review/versions/1.0.1/test.json +117 -0
  323. package/data/craftbook-templates/mo/moodboard/versions/1.0.1/craftbook.json +109 -0
  324. package/data/craftbook-templates/mo/moodboard/versions/1.0.1/test.json +103 -0
  325. package/data/craftbook-templates/mo/morning-brief/versions/1.0.1/craftbook.json +107 -0
  326. package/data/craftbook-templates/mo/morning-brief/versions/1.0.1/test.json +225 -0
  327. package/data/craftbook-templates/mo/morning-report/versions/1.0.1/craftbook.json +152 -0
  328. package/data/craftbook-templates/mo/morning-report/versions/1.0.1/test.json +250 -0
  329. package/data/craftbook-templates/mu/music-metadata-tag/versions/1.0.1/craftbook.json +101 -0
  330. package/data/craftbook-templates/mu/music-metadata-tag/versions/1.0.1/test.json +103 -0
  331. package/data/craftbook-templates/na/narrated-slideshow/versions/1.1.1/craftbook.json +181 -0
  332. package/data/craftbook-templates/na/narrated-slideshow/versions/1.1.1/test.json +86 -0
  333. package/data/craftbook-templates/ne/newsletter-issue/versions/1.0.1/craftbook.json +143 -0
  334. package/data/craftbook-templates/ne/newsletter-issue/versions/1.0.1/test.json +110 -0
  335. package/data/craftbook-templates/no/notification-router/versions/1.0.1/craftbook.json +158 -0
  336. package/data/craftbook-templates/no/notification-router/versions/1.0.1/test.json +162 -0
  337. package/data/craftbook-templates/oc/ocr-extract/versions/1.0.1/craftbook.json +137 -0
  338. package/data/craftbook-templates/oc/ocr-extract/versions/1.0.1/test.json +103 -0
  339. package/data/craftbook-templates/of/offer-compare/versions/1.0.1/craftbook.json +106 -0
  340. package/data/craftbook-templates/of/offer-compare/versions/1.0.1/test.json +110 -0
  341. package/data/craftbook-templates/on/onboarding-checklist/versions/1.0.1/craftbook.json +107 -0
  342. package/data/craftbook-templates/on/onboarding-checklist/versions/1.0.1/test.json +110 -0
  343. package/data/craftbook-templates/on/onboarding-flow/versions/1.0.1/craftbook.json +143 -0
  344. package/data/craftbook-templates/on/onboarding-flow/versions/1.0.1/test.json +97 -0
  345. package/data/craftbook-templates/on/oncall-handoff/versions/1.0.1/craftbook.json +107 -0
  346. package/data/craftbook-templates/on/oncall-handoff/versions/1.0.1/test.json +110 -0
  347. package/data/craftbook-templates/on/one-pager/versions/1.0.1/craftbook.json +143 -0
  348. package/data/craftbook-templates/on/one-pager/versions/1.0.1/test.json +110 -0
  349. package/data/craftbook-templates/op/ops-runbook/versions/1.0.1/craftbook.json +112 -0
  350. package/data/craftbook-templates/op/ops-runbook/versions/1.0.1/test.json +104 -0
  351. package/data/craftbook-templates/pa/page-spread/versions/1.0.1/craftbook.json +82 -0
  352. package/data/craftbook-templates/pa/page-spread/versions/1.0.1/test.json +132 -0
  353. package/data/craftbook-templates/pa/parser-grammar/versions/1.0.1/craftbook.json +147 -0
  354. package/data/craftbook-templates/pa/parser-grammar/versions/1.0.1/test.json +92 -0
  355. package/data/craftbook-templates/pe/perf-audit/versions/1.0.1/craftbook.json +141 -0
  356. package/data/craftbook-templates/pe/perf-audit/versions/1.0.1/test.json +162 -0
  357. package/data/craftbook-templates/pe/perf-optimization/versions/1.0.1/craftbook.json +148 -0
  358. package/data/craftbook-templates/pe/perf-optimization/versions/1.0.1/test.json +92 -0
  359. package/data/craftbook-templates/pe/pest-diagnosis/versions/1.0.1/craftbook.json +140 -0
  360. package/data/craftbook-templates/pe/pest-diagnosis/versions/1.0.1/test.json +122 -0
  361. package/data/craftbook-templates/ph/photo-cull/versions/1.0.1/craftbook.json +140 -0
  362. package/data/craftbook-templates/ph/photo-cull/versions/1.0.1/test.json +103 -0
  363. package/data/craftbook-templates/ph/physics-toy/versions/1.0.1/craftbook.json +110 -0
  364. package/data/craftbook-templates/ph/physics-toy/versions/1.0.1/test.json +99 -0
  365. package/data/craftbook-templates/pi/pitch-deck/versions/1.0.1/craftbook.json +141 -0
  366. package/data/craftbook-templates/pi/pitch-deck/versions/1.0.1/test.json +97 -0
  367. package/data/craftbook-templates/pl/playtest-report/versions/1.0.1/craftbook.json +140 -0
  368. package/data/craftbook-templates/pl/playtest-report/versions/1.0.1/test.json +111 -0
  369. package/data/craftbook-templates/po/podcast-chaptering/versions/1.0.1/craftbook.json +140 -0
  370. package/data/craftbook-templates/po/podcast-chaptering/versions/1.0.1/test.json +103 -0
  371. package/data/craftbook-templates/po/portfolio-site/versions/1.0.1/craftbook.json +151 -0
  372. package/data/craftbook-templates/po/portfolio-site/versions/1.0.1/test.json +97 -0
  373. package/data/craftbook-templates/po/powerpoint-deck/versions/1.7.0/craftbook.json +257 -0
  374. package/data/craftbook-templates/po/powerpoint-deck/versions/1.7.0/test.json +228 -0
  375. package/data/craftbook-templates/po/powerpoint-deck/versions/1.7.1/craftbook.json +347 -0
  376. package/data/craftbook-templates/po/powerpoint-deck/versions/1.7.1/test.json +228 -0
  377. package/data/craftbook-templates/pr/pr-security-review/versions/1.0.1/craftbook.json +141 -0
  378. package/data/craftbook-templates/pr/pr-security-review/versions/1.0.1/test.json +110 -0
  379. package/data/craftbook-templates/pr/practice-exam/versions/1.0.1/craftbook.json +159 -0
  380. package/data/craftbook-templates/pr/practice-exam/versions/1.0.1/test.json +117 -0
  381. package/data/craftbook-templates/pr/practice-session/versions/1.0.1/craftbook.json +115 -0
  382. package/data/craftbook-templates/pr/practice-session/versions/1.0.1/test.json +114 -0
  383. package/data/craftbook-templates/pr/pre-departure-countdown/versions/1.0.1/craftbook.json +140 -0
  384. package/data/craftbook-templates/pr/pre-departure-countdown/versions/1.0.1/test.json +97 -0
  385. package/data/craftbook-templates/pr/press-release/versions/1.0.1/craftbook.json +143 -0
  386. package/data/craftbook-templates/pr/press-release/versions/1.0.1/test.json +356 -0
  387. package/data/craftbook-templates/pr/price-tracker/versions/1.0.1/craftbook.json +109 -0
  388. package/data/craftbook-templates/pr/price-tracker/versions/1.0.1/test.json +150 -0
  389. package/data/craftbook-templates/pr/pricing-page/versions/1.0.1/craftbook.json +184 -0
  390. package/data/craftbook-templates/pr/pricing-page/versions/1.0.1/test.json +97 -0
  391. package/data/craftbook-templates/pr/product-descriptions/versions/1.0.1/craftbook.json +105 -0
  392. package/data/craftbook-templates/pr/product-descriptions/versions/1.0.1/test.json +110 -0
  393. package/data/craftbook-templates/pr/proposal-sow/versions/1.0.1/craftbook.json +143 -0
  394. package/data/craftbook-templates/pr/proposal-sow/versions/1.0.1/test.json +110 -0
  395. package/data/craftbook-templates/pu/pull-request-review/manifest.json +3 -1
  396. package/data/craftbook-templates/pu/pull-request-review/versions/1.4.1/craftbook.json +180 -0
  397. package/data/craftbook-templates/pu/pull-request-review/versions/1.4.1/test.json +123 -0
  398. package/data/craftbook-templates/pu/puzzle-pack-layout/versions/1.0.1/craftbook.json +121 -0
  399. package/data/craftbook-templates/pu/puzzle-pack-layout/versions/1.0.1/test.json +123 -0
  400. package/data/craftbook-templates/pw/pwa-offline/versions/1.0.1/craftbook.json +155 -0
  401. package/data/craftbook-templates/pw/pwa-offline/versions/1.0.1/test.json +97 -0
  402. package/data/craftbook-templates/qu/quarterly-summary/versions/1.0.1/craftbook.json +140 -0
  403. package/data/craftbook-templates/qu/quarterly-summary/versions/1.0.1/test.json +113 -0
  404. package/data/craftbook-templates/re/reading-list/versions/1.0.1/craftbook.json +107 -0
  405. package/data/craftbook-templates/re/reading-list/versions/1.0.1/test.json +110 -0
  406. package/data/craftbook-templates/re/receipt-intake/versions/1.0.1/craftbook.json +140 -0
  407. package/data/craftbook-templates/re/receipt-intake/versions/1.0.1/test.json +149 -0
  408. package/data/craftbook-templates/re/receipt-ocr-ledger/versions/1.0.1/craftbook.json +140 -0
  409. package/data/craftbook-templates/re/receipt-ocr-ledger/versions/1.0.1/test.json +104 -0
  410. package/data/craftbook-templates/re/recipe-capture/versions/1.0.1/craftbook.json +140 -0
  411. package/data/craftbook-templates/re/recipe-capture/versions/1.0.1/test.json +128 -0
  412. package/data/craftbook-templates/re/record-a-relative/versions/1.0.1/craftbook.json +115 -0
  413. package/data/craftbook-templates/re/record-a-relative/versions/1.0.1/test.json +110 -0
  414. package/data/craftbook-templates/re/recurring-invoice-run/versions/1.0.1/craftbook.json +148 -0
  415. package/data/craftbook-templates/re/recurring-invoice-run/versions/1.0.1/test.json +104 -0
  416. package/data/craftbook-templates/re/refactor-module/versions/1.0.2/craftbook.json +148 -0
  417. package/data/craftbook-templates/re/refactor-module/versions/1.0.2/test.json +92 -0
  418. package/data/craftbook-templates/re/regex-builder/versions/1.0.1/craftbook.json +147 -0
  419. package/data/craftbook-templates/re/regex-builder/versions/1.0.1/test.json +92 -0
  420. package/data/craftbook-templates/re/release-announcement/versions/1.0.1/craftbook.json +159 -0
  421. package/data/craftbook-templates/re/release-announcement/versions/1.0.1/test.json +202 -0
  422. package/data/craftbook-templates/re/release-artifact-sanity-check/versions/1.0.1/craftbook.json +214 -0
  423. package/data/craftbook-templates/re/release-artifact-sanity-check/versions/1.0.1/test.json +138 -0
  424. package/data/craftbook-templates/re/release-notes/versions/1.0.1/craftbook.json +159 -0
  425. package/data/craftbook-templates/re/release-notes/versions/1.0.1/test.json +111 -0
  426. package/data/craftbook-templates/re/release-pipeline-ci/versions/1.0.1/craftbook.json +147 -0
  427. package/data/craftbook-templates/re/release-pipeline-ci/versions/1.0.1/test.json +162 -0
  428. package/data/craftbook-templates/re/release-readiness-review/versions/1.0.1/craftbook.json +141 -0
  429. package/data/craftbook-templates/re/release-readiness-review/versions/1.0.1/test.json +110 -0
  430. package/data/craftbook-templates/re/reliability-review/versions/1.0.1/craftbook.json +153 -0
  431. package/data/craftbook-templates/re/reliability-review/versions/1.0.1/test.json +112 -0
  432. package/data/craftbook-templates/re/report-pdf/versions/1.1.1/craftbook.json +173 -0
  433. package/data/craftbook-templates/re/report-pdf/versions/1.1.1/test.json +98 -0
  434. package/data/craftbook-templates/re/research-report/versions/1.0.1/craftbook.json +146 -0
  435. package/data/craftbook-templates/re/research-report/versions/1.0.1/test.json +110 -0
  436. package/data/craftbook-templates/re/research-to-document/versions/1.2.1/craftbook.json +216 -0
  437. package/data/craftbook-templates/re/research-to-document/versions/1.2.1/test.json +240 -0
  438. package/data/craftbook-templates/re/rest-api/versions/1.0.2/craftbook.json +147 -0
  439. package/data/craftbook-templates/re/rest-api/versions/1.0.2/test.json +387 -0
  440. package/data/craftbook-templates/re/resume-cv/versions/1.0.1/craftbook.json +143 -0
  441. package/data/craftbook-templates/re/resume-cv/versions/1.0.1/test.json +97 -0
  442. package/data/craftbook-templates/ro/rollback-plan/versions/1.0.1/craftbook.json +159 -0
  443. package/data/craftbook-templates/ro/rollback-plan/versions/1.0.1/test.json +162 -0
  444. package/data/craftbook-templates/ro/root-cause-investigation/versions/2.0.3/craftbook.json +413 -0
  445. package/data/craftbook-templates/ro/root-cause-investigation/versions/2.0.3/test.json +154 -0
  446. package/data/craftbook-templates/ro/rough-cut-assembly/versions/1.0.2/craftbook.json +167 -0
  447. package/data/craftbook-templates/ro/rough-cut-assembly/versions/1.0.2/test.json +137 -0
  448. package/data/craftbook-templates/ru/runbook/versions/1.0.1/craftbook.json +145 -0
  449. package/data/craftbook-templates/ru/runbook/versions/1.0.1/test.json +118 -0
  450. package/data/craftbook-templates/sc/schema-migration/versions/1.0.1/craftbook.json +144 -0
  451. package/data/craftbook-templates/sc/schema-migration/versions/1.0.1/test.json +103 -0
  452. package/data/craftbook-templates/sc/scrape-to-structured/versions/1.0.2/craftbook.json +140 -0
  453. package/data/craftbook-templates/sc/scrape-to-structured/versions/1.0.2/test.json +162 -0
  454. package/data/craftbook-templates/sc/script-automation/versions/1.0.1/craftbook.json +148 -0
  455. package/data/craftbook-templates/sc/script-automation/versions/1.0.1/test.json +162 -0
  456. package/data/craftbook-templates/sd/sdk-wrapper/versions/1.0.2/craftbook.json +147 -0
  457. package/data/craftbook-templates/sd/sdk-wrapper/versions/1.0.2/test.json +90 -0
  458. package/data/craftbook-templates/se/seasonal-maintenance-sweep/versions/1.0.1/craftbook.json +140 -0
  459. package/data/craftbook-templates/se/seasonal-maintenance-sweep/versions/1.0.1/test.json +110 -0
  460. package/data/craftbook-templates/se/security-architecture-review/versions/2.0.3/craftbook.json +440 -0
  461. package/data/craftbook-templates/se/security-architecture-review/versions/2.0.3/test.json +154 -0
  462. package/data/craftbook-templates/se/seo-meta-pack/versions/1.0.1/craftbook.json +105 -0
  463. package/data/craftbook-templates/se/seo-meta-pack/versions/1.0.1/test.json +97 -0
  464. package/data/craftbook-templates/so/social-thread/versions/1.0.1/craftbook.json +107 -0
  465. package/data/craftbook-templates/so/social-thread/versions/1.0.1/test.json +110 -0
  466. package/data/craftbook-templates/so/source-quality-audit/versions/1.0.1/craftbook.json +140 -0
  467. package/data/craftbook-templates/so/source-quality-audit/versions/1.0.1/test.json +158 -0
  468. package/data/craftbook-templates/sp/spa-dashboard/versions/1.0.1/craftbook.json +143 -0
  469. package/data/craftbook-templates/sp/spa-dashboard/versions/1.0.1/test.json +97 -0
  470. package/data/craftbook-templates/sp/spec-authoring/versions/2.0.3/craftbook.json +436 -0
  471. package/data/craftbook-templates/sp/spec-authoring/versions/2.0.3/test.json +162 -0
  472. package/data/craftbook-templates/sp/spec-doc/versions/1.0.1/craftbook.json +143 -0
  473. package/data/craftbook-templates/sp/spec-doc/versions/1.0.1/test.json +104 -0
  474. package/data/craftbook-templates/sp/spreadsheet-model/versions/1.0.1/craftbook.json +109 -0
  475. package/data/craftbook-templates/sp/spreadsheet-model/versions/1.0.1/test.json +160 -0
  476. package/data/craftbook-templates/sp/sprite-sheet/versions/1.0.1/craftbook.json +137 -0
  477. package/data/craftbook-templates/sp/sprite-sheet/versions/1.0.1/test.json +103 -0
  478. package/data/craftbook-templates/sq/sql-analysis/versions/1.0.1/craftbook.json +109 -0
  479. package/data/craftbook-templates/sq/sql-analysis/versions/1.0.1/test.json +104 -0
  480. package/data/craftbook-templates/st/standup-summary/versions/1.0.1/craftbook.json +107 -0
  481. package/data/craftbook-templates/st/standup-summary/versions/1.0.1/test.json +110 -0
  482. package/data/craftbook-templates/st/state-machine/versions/1.0.1/craftbook.json +147 -0
  483. package/data/craftbook-templates/st/state-machine/versions/1.0.1/test.json +92 -0
  484. package/data/craftbook-templates/st/status-report/versions/1.0.1/craftbook.json +146 -0
  485. package/data/craftbook-templates/st/status-report/versions/1.0.1/test.json +110 -0
  486. package/data/craftbook-templates/su/subscription-audit/versions/1.0.1/craftbook.json +140 -0
  487. package/data/craftbook-templates/su/subscription-audit/versions/1.0.1/test.json +104 -0
  488. package/data/craftbook-templates/su/subtitle-generator/versions/1.0.1/craftbook.json +128 -0
  489. package/data/craftbook-templates/su/subtitle-generator/versions/1.0.1/test.json +103 -0
  490. package/data/craftbook-templates/su/summarize-long/versions/1.0.1/craftbook.json +107 -0
  491. package/data/craftbook-templates/su/summarize-long/versions/1.0.1/test.json +110 -0
  492. package/data/craftbook-templates/su/survey-analysis/versions/1.0.1/craftbook.json +141 -0
  493. package/data/craftbook-templates/su/survey-analysis/versions/1.0.1/test.json +104 -0
  494. package/data/craftbook-templates/sv/svg-animation/versions/1.0.1/craftbook.json +110 -0
  495. package/data/craftbook-templates/sv/svg-animation/versions/1.0.1/test.json +97 -0
  496. package/data/craftbook-templates/ta/tailor-resume/versions/1.0.1/craftbook.json +114 -0
  497. package/data/craftbook-templates/ta/tailor-resume/versions/1.0.1/test.json +97 -0
  498. package/data/craftbook-templates/te/technical-documentation/versions/2.0.3/craftbook.json +408 -0
  499. package/data/craftbook-templates/te/technical-documentation/versions/2.0.3/test.json +174 -0
  500. package/data/craftbook-templates/te/test-coverage-review/versions/1.1.1/craftbook.json +141 -0
  501. package/data/craftbook-templates/te/test-coverage-review/versions/1.1.1/test.json +113 -0
  502. package/data/craftbook-templates/te/test-suite-backfill/versions/1.0.1/craftbook.json +120 -0
  503. package/data/craftbook-templates/te/test-suite-backfill/versions/1.0.1/test.json +92 -0
  504. package/data/craftbook-templates/th/thank-you-batch/versions/1.0.1/craftbook.json +143 -0
  505. package/data/craftbook-templates/th/thank-you-batch/versions/1.0.1/test.json +141 -0
  506. package/data/craftbook-templates/th/thank-you-sweep/versions/1.0.1/craftbook.json +143 -0
  507. package/data/craftbook-templates/th/thank-you-sweep/versions/1.0.1/test.json +142 -0
  508. package/data/craftbook-templates/th/threat-model/versions/1.0.1/craftbook.json +141 -0
  509. package/data/craftbook-templates/th/threat-model/versions/1.0.1/test.json +110 -0
  510. package/data/craftbook-templates/th/thumbnail-generator/versions/1.0.1/craftbook.json +103 -0
  511. package/data/craftbook-templates/th/thumbnail-generator/versions/1.0.1/test.json +103 -0
  512. package/data/craftbook-templates/ti/tileset-batch/versions/1.0.1/craftbook.json +160 -0
  513. package/data/craftbook-templates/ti/tileset-batch/versions/1.0.1/test.json +159 -0
  514. package/data/craftbook-templates/to/tone-rewrite/versions/1.0.1/craftbook.json +107 -0
  515. package/data/craftbook-templates/to/tone-rewrite/versions/1.0.1/test.json +110 -0
  516. package/data/craftbook-templates/to/topic-explainer/versions/1.0.1/craftbook.json +140 -0
  517. package/data/craftbook-templates/to/topic-explainer/versions/1.0.1/test.json +110 -0
  518. package/data/craftbook-templates/tr/transcribe-and-shownotes/versions/1.0.1/craftbook.json +115 -0
  519. package/data/craftbook-templates/tr/transcribe-and-shownotes/versions/1.0.1/test.json +98 -0
  520. package/data/craftbook-templates/tr/transcribe-audio/versions/1.0.1/craftbook.json +107 -0
  521. package/data/craftbook-templates/tr/transcribe-audio/versions/1.0.1/test.json +103 -0
  522. package/data/craftbook-templates/tr/transcribe-index/versions/1.0.1/craftbook.json +171 -0
  523. package/data/craftbook-templates/tr/transcribe-index/versions/1.0.1/test.json +151 -0
  524. package/data/craftbook-templates/ty/type-safety-pass/versions/1.0.1/craftbook.json +148 -0
  525. package/data/craftbook-templates/ty/type-safety-pass/versions/1.0.1/test.json +92 -0
  526. package/data/craftbook-templates/ve/version-bump/versions/1.0.1/craftbook.json +155 -0
  527. package/data/craftbook-templates/ve/version-bump/versions/1.0.1/test.json +92 -0
  528. package/data/craftbook-templates/vi/video-storyboard/versions/1.0.1/craftbook.json +109 -0
  529. package/data/craftbook-templates/vi/video-storyboard/versions/1.0.1/test.json +103 -0
  530. package/data/craftbook-templates/vi/visit-prep/versions/1.0.1/craftbook.json +140 -0
  531. package/data/craftbook-templates/vi/visit-prep/versions/1.0.1/test.json +97 -0
  532. package/data/craftbook-templates/vo/voiceover-script/versions/1.0.1/craftbook.json +107 -0
  533. package/data/craftbook-templates/vo/voiceover-script/versions/1.0.1/test.json +103 -0
  534. package/data/craftbook-templates/we/weak-spot-drill/versions/1.0.1/craftbook.json +154 -0
  535. package/data/craftbook-templates/we/weak-spot-drill/versions/1.0.1/test.json +124 -0
  536. package/data/craftbook-templates/we/web-app-crud/versions/1.0.1/craftbook.json +143 -0
  537. package/data/craftbook-templates/we/web-app-crud/versions/1.0.1/test.json +97 -0
  538. package/data/craftbook-templates/we/web-component/versions/1.0.1/craftbook.json +110 -0
  539. package/data/craftbook-templates/we/web-component/versions/1.0.1/test.json +97 -0
  540. package/data/craftbook-templates/we/webhook-handler/versions/1.0.1/craftbook.json +147 -0
  541. package/data/craftbook-templates/we/webhook-handler/versions/1.0.1/test.json +162 -0
  542. package/data/craftbook-templates/we/week-plan/versions/1.0.1/craftbook.json +140 -0
  543. package/data/craftbook-templates/we/week-plan/versions/1.0.1/test.json +255 -0
  544. package/data/craftbook-templates/we/weekly-menu-plan/versions/1.0.1/craftbook.json +140 -0
  545. package/data/craftbook-templates/we/weekly-menu-plan/versions/1.0.1/test.json +97 -0
  546. package/data/craftbook-templates/we/weekly-pipeline-review/versions/1.0.1/craftbook.json +106 -0
  547. package/data/craftbook-templates/we/weekly-pipeline-review/versions/1.0.1/test.json +104 -0
  548. package/data/craftbook-templates/we/weekly-review/versions/1.0.1/craftbook.json +107 -0
  549. package/data/craftbook-templates/we/weekly-review/versions/1.0.1/test.json +110 -0
  550. package/data/craftbook-templates/we/weekly-walkthrough/versions/1.0.1/craftbook.json +140 -0
  551. package/data/craftbook-templates/we/weekly-walkthrough/versions/1.0.1/test.json +138 -0
  552. package/data/craftbook-templates/wh/whitepaper/versions/1.0.1/craftbook.json +141 -0
  553. package/data/craftbook-templates/wh/whitepaper/versions/1.0.1/test.json +110 -0
  554. package/data/craftbook-templates/ye/year-in-review/versions/1.0.1/craftbook.json +115 -0
  555. package/data/craftbook-templates/ye/year-in-review/versions/1.0.1/test.json +145 -0
  556. package/data/craftbook-templates/yo/youtube-chapters-seo/versions/1.0.1/craftbook.json +134 -0
  557. package/data/craftbook-templates/yo/youtube-chapters-seo/versions/1.0.1/test.json +103 -0
  558. package/package.json +1 -1
@@ -0,0 +1,162 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "title": "CI Pipeline from Scratch smoke eval",
4
+ "objective": "Self-contained smoke eval for the CI Pipeline from Scratch craftbook using the external generic harness.",
5
+ "tags": [
6
+ "external"
7
+ ],
8
+ "prompt": "Theres a fake ops service wired up for this so nothing real gets touched — the endpoints are in mocks/services.md, and the ready-made mock-probe script talks to them for you. Can you run the automation against it and write up how it went in automation.md?",
9
+ "setup": {
10
+ "projectName": "CI Pipeline from Scratch Eval",
11
+ "about": "Self-contained eval project for ci-pipeline. Seeded inputs are under workspace/source or workspace/fixtures; final deliverable is workspace/automation.md.",
12
+ "missionObjectives": "Use the CI Pipeline from Scratch craftbook/template, read the seeded local fixtures, and write automation.md without network calls, real credentials, or live services.",
13
+ "files": [
14
+ {
15
+ "path": "source/brief.md",
16
+ "content": "# CI Pipeline from Scratch 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: ci-pipeline - CI Pipeline from Scratch.\n"
17
+ }
18
+ ],
19
+ "worker": {
20
+ "name": "Jules",
21
+ "role": "Developer"
22
+ }
23
+ },
24
+ "mocks": [
25
+ {
26
+ "kind": "http",
27
+ "id": "ops",
28
+ "description": "Fake operations service for this eval. GET /api/bookings/open lists the open work items; POST /api/bookings/dry-run records a simulated submission and returns DRY_RUN_OK.",
29
+ "credential": {
30
+ "name": "mock.ops"
31
+ },
32
+ "routes": [
33
+ {
34
+ "method": "GET",
35
+ "path": "/api/bookings/open",
36
+ "body": {
37
+ "items": [
38
+ "BKG-1001",
39
+ "BKG-1002",
40
+ "BKG-1003"
41
+ ]
42
+ }
43
+ },
44
+ {
45
+ "method": "POST",
46
+ "path": "/api/bookings/dry-run",
47
+ "status": 201,
48
+ "body": {
49
+ "status": "DRY_RUN_OK",
50
+ "recorded": 3
51
+ }
52
+ }
53
+ ]
54
+ },
55
+ {
56
+ "kind": "webhook",
57
+ "id": "notify",
58
+ "description": "Notification receiver. POST a JSON completion notice here when the run finishes.",
59
+ "path": "/hooks/notify"
60
+ },
61
+ {
62
+ "kind": "cli",
63
+ "id": "probe",
64
+ "description": "Provenance-trusted project script `mock-probe` that exercises the fake ops service through http.authed and returns the raw responses.",
65
+ "shim": {
66
+ "path": "scripts/mock-probe.ts",
67
+ "content": "import { defineScript, gezel } from '@bendyline/gezel-sdk';\n\nexport const meta = defineScript({\n name: 'mock-probe',\n description:\n 'Probe the live fake ops service for this eval: lists the open work items and records a dry-run submission. Outputs the raw JSON responses as evidence for the write-up.',\n inputs: {},\n outputs: {\n open: { type: 'string', description: 'Raw JSON body from the open-items listing.' },\n dryRun: { type: 'string', description: 'Raw JSON body from the dry-run submission.' },\n },\n requires: ['workspace.read', 'network', 'credential:mock.ops'],\n});\n\nconst services = JSON.parse(await gezel.fs.read('mocks/services.json'));\nconst base = (id) => {\n const service = services.find((entry) => entry.id === id);\n if (!service) throw new Error(`mock service \"${id}\" is not listed in mocks/services.json`);\n return service.baseUrl;\n};\n\nconst open = await gezel.http.authed(`${base('ops')}/api/bookings/open`, {\n credential: 'mock.ops',\n});\nif (!open.ok) throw new Error(`open-items listing failed: ${open.status} ${open.body}`);\n\nconst dryRun = await gezel.http.authed(`${base('ops')}/api/bookings/dry-run`, {\n credential: 'mock.ops',\n method: 'POST',\n body: JSON.stringify({ items: JSON.parse(open.body).items, mode: 'dry-run' }),\n});\nif (!dryRun.ok) throw new Error(`dry-run submission failed: ${dryRun.status} ${dryRun.body}`);\n\ngezel.output({ open: open.body, dryRun: dryRun.body });\n"
68
+ }
69
+ }
70
+ ],
71
+ "success": {
72
+ "summary": "automation.md is grounded in live fake-service responses: the open items were actually listed and a dry-run actually recorded (request-log assertions), with safety guards and signals described.",
73
+ "deliverables": [
74
+ {
75
+ "path": "automation.md",
76
+ "kind": "markdown-report",
77
+ "minBytes": 900,
78
+ "checks": [
79
+ {
80
+ "kind": "contains",
81
+ "file": "automation.md",
82
+ "pattern": "(?:^|\\n)#{1,3}\\s+\\S",
83
+ "flags": "i"
84
+ },
85
+ {
86
+ "kind": "contains",
87
+ "file": "automation.md",
88
+ "pattern": "DRY_RUN_OK|dry-run|dry run",
89
+ "flags": "i"
90
+ },
91
+ {
92
+ "kind": "contains",
93
+ "file": "automation.md",
94
+ "pattern": "fake-ci|fake-github|/api/bookings",
95
+ "flags": "i"
96
+ },
97
+ {
98
+ "kind": "contains",
99
+ "file": "automation.md",
100
+ "pattern": "no real|credentials|safety|guard",
101
+ "flags": "i"
102
+ },
103
+ {
104
+ "kind": "contains",
105
+ "file": "automation.md",
106
+ "pattern": "success|failure|retry|abort",
107
+ "flags": "i"
108
+ }
109
+ ]
110
+ }
111
+ ],
112
+ "mocks": [
113
+ {
114
+ "service": "ops",
115
+ "minRequests": 2,
116
+ "requiredPaths": [
117
+ "^/api/bookings/open$",
118
+ "^/api/bookings/dry-run$"
119
+ ]
120
+ }
121
+ ]
122
+ },
123
+ "rubric": {
124
+ "artifact": {
125
+ "path": "automation.md",
126
+ "kind": "markdown"
127
+ },
128
+ "axes": [
129
+ {
130
+ "name": "safety",
131
+ "description": "Dry-run posture is explicit: no real credentials, clear stop-before-side-effect boundary."
132
+ },
133
+ {
134
+ "name": "mapping",
135
+ "description": "Fake endpoints/commands are mapped completely to the workflow steps."
136
+ },
137
+ {
138
+ "name": "signals",
139
+ "description": "Success, failure, retry, and abort conditions are all defined."
140
+ },
141
+ {
142
+ "name": "containment",
143
+ "description": "The plan cannot accidentally reach a real service from a mock context."
144
+ }
145
+ ]
146
+ },
147
+ "qualityFocus": [
148
+ "dry-run safety",
149
+ "fake tool mapping",
150
+ "side-effect containment"
151
+ ],
152
+ "extensions": {
153
+ "legacySimulators": [
154
+ {
155
+ "id": "ci-pipeline-fake-service-fixture",
156
+ "kind": "data-source",
157
+ "status": "implemented",
158
+ "description": "Seeded local fake service contract replacing live CLIs, HTTP APIs, credentials, and side effects."
159
+ }
160
+ ]
161
+ }
162
+ }
@@ -0,0 +1,146 @@
1
+ {
2
+ "id": "citation-audit",
3
+ "name": "Citation Audit",
4
+ "description": "Audit an existing document's claims against its citations and report every mismatch: a reviewer pairs each cited claim with the citation it depends on and locks the audit rubric, a researcher opens each cited source and verifies the claim is actually supported, and a reviewer compiles a per-citation audit report with verdicts and fixes. The ordering matters because auditing without first pairing claims to citations misses unsupported claims, and a report without a fixed verdict scale is inconsistent; building the claim-citation pairing and rubric first makes the audit exhaustive and the report actionable. Use this for checking that citations support their claims, source-verification of a draft, catching citation drift or unsupported statements, and 'do these references actually back up the text' reviews.\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 audit (reviewer) — pair each cited claim to its citation + lock the rubric → gated on artifact `notes/scope.md` (markdown-notes)\n2. Verify each citation (researcher) — open each source, confirm it backs the paired claim → gated on artifact `notes/verify.md` (markdown-notes)\n3. Compile the audit report (reviewer) — per-citation verdicts, justifying quotes, and fixes → gated on artifact `audit.md` (markdown-report)\n\nSource discipline:\n\n- Audit only claims that appear in the supplied draft or source bundle.\n- Keep the draft's citation labels verbatim, such as `Claim [A]`, so each verdict is traceable.\n- Treat uncited factual sentences in the draft as `Uncited-Claim`; do not create new claims to make the report longer.\n- If a source excerpt is missing or contradicts the draft, say that directly and propose a correction or citation fix.\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
+ "audit the citations",
8
+ "check citations support the claims",
9
+ "verify the references in this doc",
10
+ "citation accuracy check",
11
+ "are these sources legit"
12
+ ],
13
+ "steps": [
14
+ {
15
+ "id": "scope",
16
+ "name": "Scope the audit",
17
+ "description": "pair each cited claim to its citation + lock the rubric",
18
+ "prompt": "1. Read the target document and build a pairing table in notes/scope.md: for every inline citation, record a pair id (P1, P2, ...), the exact claim sentence it supports, and the citation/reference it points to. 2. Also flag every factual claim that has NO citation as a candidate (these are audit findings too). 3. Lock the verdict rubric: Supported (source clearly backs the claim), Partially-Supported (source backs part / overstates), Not-Supported (source does not back it), Source-Missing/Dead (citation cannot be located), Uncited-Claim. 4. Write an acceptance-criteria checklist (e.g. 'every inline citation is paired and audited', 'uncited factual claims are listed', 'each pair gets exactly one verdict from the rubric', 'each Not-Supported/Partial verdict quotes the source to justify it', 'a fix is proposed per problem'). 5. Record decisions. Call write_task_note with the pairing table + rubric + 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": "reviewer",
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 each citation",
50
+ "description": "open each source, confirm it backs the paired claim",
51
+ "prompt": "1. For each pair id, locate and open the cited source and read the relevant part. 2. Log to notes/verify.md: the pair id, whether the source was reachable, the exact passage/figure the claim relies on (quote it), and a proposed verdict from the locked rubric with a one-line reason. 3. Be strict: a source on the right topic that does not actually state the specific claim is Not-Supported, not Supported. 4. For dead or unfindable citations, record Source-Missing/Dead and what you searched. 5. For each problem, draft a concrete fix (correct the claim, swap the source, or add a citation). Good looks like a verify log where every pair's verdict is justified by a quote. Do not write the final report yet.\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": "researcher",
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": "Compile the audit report",
83
+ "description": "per-citation verdicts, justifying quotes, and fixes",
84
+ "prompt": "1. Write audit.md with a summary (counts per verdict, and the count of uncited claims) then one entry per pair id: the claim, the citation, the verdict from the rubric, the justifying quote from the source, and the proposed fix for any non-Supported verdict. 2. Add a dedicated 'Uncited claims' section listing factual statements that lack a citation. 3. Use ONLY rubric verdicts and base each strictly on notes/verify.md. 4. Make it actionable — an editor should be able to apply every fix directly. 5. On a loop-back, fix only the named gaps. 6. Call write_task_note with the report path and which criteria now pass.\n\nBefore working, open the artifact input `notes/verify.md` with `read_artifact`; do not look for it in the workspace.\n\nThe deliverable `audit.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": "reviewer",
86
+ "consumes": [
87
+ {
88
+ "file": "notes/verify.md",
89
+ "artifact": true
90
+ }
91
+ ],
92
+ "advanceWhen": {
93
+ "file": "audit.md",
94
+ "minBytes": 1,
95
+ "sniff": "nonempty",
96
+ "artifact": true
97
+ },
98
+ "gate": {
99
+ "at": "completion",
100
+ "checks": [
101
+ {
102
+ "kind": "minBytes",
103
+ "file": "audit.md",
104
+ "bytes": 1500,
105
+ "artifact": true
106
+ },
107
+ {
108
+ "kind": "contains",
109
+ "file": "audit.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": "report",
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 audit.md and check EACH criterion PASS/FAIL: (1) every citation paired in notes/scope.md has an audited entry — none skipped; (2) an uncited-claims section lists statements lacking citations; (3) each entry has exactly one rubric verdict; (4) every Not-Supported/Partially-Supported/Dead verdict is justified by a quoted source passage (spot-check 3 against notes/verify.md); (5) each problem has a concrete, applicable fix; (6) the summary counts match the entries. A report that marks a topically-related-but-non-supporting source as Supported, or skips a citation, FAILS.\n\nThe deliverable lives in the project's artifacts drawer — open `audit.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.",
126
+ "suggestedRole": "reviewer",
127
+ "consumes": [
128
+ {
129
+ "file": "audit.md",
130
+ "artifact": true
131
+ }
132
+ ],
133
+ "next": "report"
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,149 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "title": "Citation audit over seeded draft and source excerpts",
4
+ "objective": "Measure whether the citation-audit craftbook pairs claims to citations and reports supported, partial, unsupported, dead, and uncited claims.",
5
+ "tags": [
6
+ "corpus"
7
+ ],
8
+ "prompt": "In the `Citation Audit Eval` project, read only `source/draft.md` and `source/source-excerpts.md`, then write `audit.md`. Audit exactly the four cited claims `Claim [A]` through `Claim [D]`, plus the uncited sentence about Finance receiving a weekly exception export. Do not add Claim [E], Claim [F], outside company metrics, or imagined source sections. Use verdicts Supported, Not-Supported, Source-Missing/Dead, and Uncited-Claim, with source quotes and concrete fixes.",
9
+ "setup": {
10
+ "projectName": "Citation Audit Eval",
11
+ "about": "Self-contained eval project for citation-audit. Draft and source excerpts are seeded under workspace/source.",
12
+ "missionObjectives": "Audit every citation and uncited factual claim with strict verdicts, quotes from source excerpts, and concrete fixes.",
13
+ "files": [
14
+ {
15
+ "path": "source/draft.md",
16
+ "content": "# Draft\n\nGuided returns intake reduced median first response from 18 hours to 6 hours [A]. The pilot covered every SKU in the catalog [B]. Customers were 34% more satisfied after photo evidence was required [C]. Finance now receives a weekly exception export. Warehouse teams need barcode exception training before national rollout [D].\n"
17
+ },
18
+ {
19
+ "path": "source/source-excerpts.md",
20
+ "content": "# Source excerpts\n\n[A] Pilot dashboard: median first response improved from 18 hours to 6 hours for the 18 pilot SKUs.\n[B] Rollout memo: March pilot covered 18 home-office accessory SKUs, not the full catalog.\n[C] Source missing: no satisfaction survey was run during the pilot.\n[D] Operations notes: warehouse teams need barcode exception training before national rollout.\n"
21
+ }
22
+ ],
23
+ "worker": {
24
+ "name": "Iris",
25
+ "role": "Reviewer"
26
+ }
27
+ },
28
+ "mocks": [],
29
+ "success": {
30
+ "summary": "workspace/audit.md audits all seeded citations and uncited claims with rubric verdicts, source quotes, counts, and fixes.",
31
+ "deliverables": [
32
+ {
33
+ "path": "audit.md",
34
+ "kind": "markdown-report",
35
+ "minBytes": 1200,
36
+ "checks": [
37
+ {
38
+ "kind": "contains",
39
+ "file": "audit.md",
40
+ "pattern": "(?:^|\\n)#{1,3}\\s+\\S",
41
+ "flags": "i"
42
+ },
43
+ {
44
+ "kind": "contains",
45
+ "file": "audit.md",
46
+ "pattern": "Supported|Partially-Supported|Not-Supported|Source-Missing|Uncited-Claim",
47
+ "flags": "i"
48
+ },
49
+ {
50
+ "kind": "contains",
51
+ "file": "audit.md",
52
+ "pattern": "\\[A\\]|\\[B\\]|\\[C\\]|\\[D\\]",
53
+ "flags": "i"
54
+ },
55
+ {
56
+ "kind": "contains",
57
+ "file": "audit.md",
58
+ "pattern": "Claim \\[A\\][\\s\\S]{0,500}Supported",
59
+ "flags": "i"
60
+ },
61
+ {
62
+ "kind": "contains",
63
+ "file": "audit.md",
64
+ "pattern": "Claim \\[B\\][\\s\\S]{0,500}Not-Supported",
65
+ "flags": "i"
66
+ },
67
+ {
68
+ "kind": "contains",
69
+ "file": "audit.md",
70
+ "pattern": "Claim \\[C\\][\\s\\S]{0,500}Source-Missing|Claim \\[C\\][\\s\\S]{0,500}Dead",
71
+ "flags": "i"
72
+ },
73
+ {
74
+ "kind": "contains",
75
+ "file": "audit.md",
76
+ "pattern": "Claim \\[D\\][\\s\\S]{0,500}Supported",
77
+ "flags": "i"
78
+ },
79
+ {
80
+ "kind": "contains",
81
+ "file": "audit.md",
82
+ "pattern": "Finance[\\s\\S]{0,500}Uncited-Claim|Uncited-Claim[\\s\\S]{0,500}Finance",
83
+ "flags": "i"
84
+ },
85
+ {
86
+ "kind": "contains",
87
+ "file": "audit.md",
88
+ "pattern": "18\\s*hours|6\\s*hours|18 home-office accessory SKUs|full catalog",
89
+ "flags": "i"
90
+ },
91
+ {
92
+ "kind": "contains",
93
+ "file": "audit.md",
94
+ "pattern": "34%|satisfaction survey",
95
+ "flags": "i"
96
+ },
97
+ {
98
+ "kind": "contains",
99
+ "file": "audit.md",
100
+ "pattern": "Finance|weekly exception export",
101
+ "flags": "i"
102
+ },
103
+ {
104
+ "kind": "contains",
105
+ "file": "audit.md",
106
+ "pattern": "fix|correction|replace|add a citation",
107
+ "flags": "i"
108
+ },
109
+ {
110
+ "kind": "notContains",
111
+ "file": "audit.md",
112
+ "pattern": "Claim \\[E\\]|Claim \\[F\\]|cost per return|50 concurrent|RESTful API|Q3|stress tests|Financial summary|System architecture|expansion of this report",
113
+ "flags": "i",
114
+ "label": "do not invent audit claims or source excerpts beyond the seeded draft"
115
+ }
116
+ ]
117
+ }
118
+ ]
119
+ },
120
+ "rubric": {
121
+ "artifact": {
122
+ "path": "audit.md",
123
+ "kind": "markdown"
124
+ },
125
+ "axes": [
126
+ {
127
+ "name": "grounding",
128
+ "description": "Seeded facts appear faithfully and the source is cited."
129
+ },
130
+ {
131
+ "name": "structure",
132
+ "description": "Sections progress logically for the artifact class."
133
+ },
134
+ {
135
+ "name": "completeness",
136
+ "description": "Required elements (risks, next actions, scope) are all present."
137
+ },
138
+ {
139
+ "name": "tone",
140
+ "description": "The register fits the audience and artifact class."
141
+ }
142
+ ]
143
+ },
144
+ "qualityFocus": [
145
+ "claim-citation pairing",
146
+ "strict verdicts",
147
+ "actionable fixes"
148
+ ]
149
+ }
@@ -0,0 +1,147 @@
1
+ {
2
+ "id": "cli-tool",
3
+ "name": "Command-Line Tool",
4
+ "description": "Build a command-line tool with subcommands, flags, arguments, help text, and proper exit codes. Designs the CLI UX FIRST — the command surface, flags with defaults, positional args, help/usage output, and exit-code conventions — because a CLI's contract is its interface, then implements argument parsing and command logic, then writes tests for parsing, help, happy paths, and error exits. Covers argv parsing, subcommands, --flags and -short forms, --help, stdin/stdout/stderr conventions, and non-zero exit codes on error.\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. CLI UX scope (planner) — lock the command surface, flags, args, exit codes → gated on artifact `notes/ux-scope.md` (markdown-notes)\n2. Build the CLI (developer) — implement parsing + command logic → gated on `src/cli.js` (code-module)\n3. Write CLI tests (developer) — test parsing, help, happy paths, error exits → gated on `src/cli.test.js` (code-with-tests)\n\nThe gates never advance with an unmet criterion, and loop back to the\nowning phase to fix named gaps.\n",
5
+ "entryStepId": "ux-scope",
6
+ "triggers": [
7
+ "build a cli tool",
8
+ "command line tool",
9
+ "make a terminal command",
10
+ "cli with subcommands",
11
+ "argv parser"
12
+ ],
13
+ "steps": [
14
+ {
15
+ "id": "ux-scope",
16
+ "name": "CLI UX scope",
17
+ "description": "lock the command surface, flags, args, exit codes",
18
+ "prompt": "Design the command-line interface before any logic — the interface IS the contract. Step 1: Enumerate the commands/subcommands and what each does. Step 2: For each, list the positional arguments (required vs optional) and the flags (`--long`, `-s` short form, type, default value, whether it takes a value). Step 3: Draft the exact `--help`/usage text the tool prints, including a one-line synopsis per command. Step 4: Define the IO and exit-code contract: what goes to stdout vs stderr, exit 0 on success, distinct non-zero codes for usage errors vs runtime errors. Step 5: Write a numbered acceptance-criteria checklist of 5-9 items (e.g. 'running with no args or --help prints usage and exits 0', 'an unknown flag prints an error to stderr and exits non-zero', 'the primary command produces the documented output'). `write_task_note` the command spec + checklist and write the same to the produces path. No implementation yet.\n\nThe deliverable `notes/ux-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/ux-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/ux-scope.md",
32
+ "bytes": 120,
33
+ "artifact": true
34
+ },
35
+ {
36
+ "kind": "sniff",
37
+ "file": "notes/ux-scope.md",
38
+ "sniff": "nonempty",
39
+ "artifact": true
40
+ }
41
+ ],
42
+ "onReject": "ux-scope",
43
+ "maxAttempts": 3
44
+ },
45
+ "next": "build"
46
+ },
47
+ {
48
+ "id": "build",
49
+ "name": "Build the CLI",
50
+ "description": "implement parsing + command logic",
51
+ "prompt": "Implement the CLI in a single runnable source file with a real entry point. Step 1: Parse argv into commands, positional args, and flags exactly as scoped — support both long and short flag forms and apply defaults. Step 2: Implement each command's logic; write normal output to stdout and diagnostics/errors to stderr. Step 3: Wire `--help` (and bare invocation) to print the usage text and exit 0; on unknown command/flag or missing required arg, print a clear error to stderr and exit non-zero. Step 4: Ensure the process exits with the documented code in every path. On a loop-back, fix only the named gaps without regressing working commands. `write_task_note` the file path and which criteria now pass.",
52
+ "suggestedRole": "developer",
53
+ "advanceWhen": {
54
+ "file": "src/cli.js",
55
+ "minBytes": 1,
56
+ "sniff": "nonempty"
57
+ },
58
+ "gate": {
59
+ "at": "completion",
60
+ "checks": [
61
+ {
62
+ "kind": "minBytes",
63
+ "file": "src/cli.js",
64
+ "bytes": 200
65
+ },
66
+ {
67
+ "kind": "sniff",
68
+ "file": "src/cli.js",
69
+ "sniff": "nonempty"
70
+ },
71
+ {
72
+ "kind": "esmImports",
73
+ "file": "src/cli.js"
74
+ },
75
+ {
76
+ "kind": "sourceParses",
77
+ "file": "src/cli.js"
78
+ }
79
+ ],
80
+ "onReject": "build",
81
+ "maxAttempts": 3
82
+ },
83
+ "next": "test"
84
+ },
85
+ {
86
+ "id": "test",
87
+ "name": "Write CLI tests",
88
+ "description": "test parsing, help, happy paths, error exits",
89
+ "prompt": "Write tests that invoke the CLI and inspect output + exit code. Step 1: Assert `--help` and bare invocation print usage and exit 0. Step 2: Assert each command's happy path produces the documented stdout and exits 0. Step 3: Assert error cases (unknown flag, missing required arg, bad value) print to stderr and exit non-zero with the right code. Step 4: Assert flag parsing handles long form, short form, and defaults. Capture stdout/stderr separately. `write_task_note` the test file path and pass/fail count.",
90
+ "suggestedRole": "developer",
91
+ "advanceWhen": {
92
+ "file": "src/cli.test.js",
93
+ "minBytes": 1,
94
+ "sniff": "nonempty"
95
+ },
96
+ "gate": {
97
+ "at": "completion",
98
+ "checks": [
99
+ {
100
+ "kind": "minBytes",
101
+ "file": "src/cli.js",
102
+ "bytes": 200
103
+ },
104
+ {
105
+ "kind": "sniff",
106
+ "file": "src/cli.js",
107
+ "sniff": "nonempty"
108
+ },
109
+ {
110
+ "kind": "esmImports",
111
+ "file": "src/cli.js"
112
+ },
113
+ {
114
+ "kind": "sourceParses",
115
+ "file": "src/cli.js"
116
+ }
117
+ ],
118
+ "onReject": "test",
119
+ "maxAttempts": 4
120
+ },
121
+ "next": "evaluate"
122
+ },
123
+ {
124
+ "id": "evaluate",
125
+ "name": "Evaluate",
126
+ "description": "Grade the deliverable against every acceptance criterion. All pass → finish; any fail → loop back and fix the gap.",
127
+ "prompt": "Run the tests and invoke the CLI directly. For EACH acceptance criterion: confirm --help/usage works and exits 0, confirm each command's output matches the spec, confirm errors go to stderr with a non-zero exit, and confirm flag parsing (long, short, defaults) works. Write PASS/FAIL per criterion.\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: \"build\" })` 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.",
128
+ "suggestedRole": "reviewer",
129
+ "consumes": [
130
+ {
131
+ "file": "src/cli.js"
132
+ }
133
+ ],
134
+ "next": "build"
135
+ },
136
+ {
137
+ "id": "finish",
138
+ "name": "Finish",
139
+ "description": "All acceptance criteria met. Stamp a short summary and report DONE.",
140
+ "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.",
141
+ "suggestedRole": "developer",
142
+ "terminal": true
143
+ }
144
+ ],
145
+ "version": "1.1.1",
146
+ "releasedAt": "2026-08-14T00:00:00Z"
147
+ }