@bendyline/gilde 0.1.38 → 0.1.39

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 (546) hide show
  1. package/data/craftbook-templates/a1/a11y-audit/versions/1.1.2/craftbook.json +153 -0
  2. package/data/craftbook-templates/a1/a11y-audit/versions/1.1.2/test.json +118 -0
  3. package/data/craftbook-templates/ab/ab-test-readout/versions/1.0.2/craftbook.json +153 -0
  4. package/data/craftbook-templates/ab/ab-test-readout/versions/1.0.2/test.json +189 -0
  5. package/data/craftbook-templates/ac/accessibility-retrofit/versions/1.0.2/craftbook.json +122 -0
  6. package/data/craftbook-templates/ac/accessibility-retrofit/versions/1.0.2/test.json +100 -0
  7. package/data/craftbook-templates/ad/ad-variations/versions/1.0.2/craftbook.json +117 -0
  8. package/data/craftbook-templates/ad/ad-variations/versions/1.0.2/test.json +111 -0
  9. package/data/craftbook-templates/al/album-curate/versions/1.0.2/craftbook.json +127 -0
  10. package/data/craftbook-templates/al/album-curate/versions/1.0.2/test.json +150 -0
  11. package/data/craftbook-templates/al/alert-rules/versions/1.0.2/craftbook.json +113 -0
  12. package/data/craftbook-templates/al/alert-rules/versions/1.0.2/test.json +148 -0
  13. package/data/craftbook-templates/al/alt-text-pass/versions/1.0.2/craftbook.json +154 -0
  14. package/data/craftbook-templates/al/alt-text-pass/versions/1.0.2/test.json +100 -0
  15. package/data/craftbook-templates/an/anniversary-cut/versions/1.0.4/craftbook.json +238 -0
  16. package/data/craftbook-templates/an/anniversary-cut/versions/1.0.4/test.json +160 -0
  17. package/data/craftbook-templates/an/annotated-bibliography/versions/1.0.2/craftbook.json +158 -0
  18. package/data/craftbook-templates/an/annotated-bibliography/versions/1.0.2/test.json +105 -0
  19. package/data/craftbook-templates/an/annual-document-review/versions/1.0.2/craftbook.json +152 -0
  20. package/data/craftbook-templates/an/annual-document-review/versions/1.0.2/test.json +113 -0
  21. package/data/craftbook-templates/an/anomaly-scan/versions/1.0.2/craftbook.json +153 -0
  22. package/data/craftbook-templates/an/anomaly-scan/versions/1.0.2/test.json +123 -0
  23. package/data/craftbook-templates/ap/api-contract-review/versions/1.1.2/craftbook.json +153 -0
  24. package/data/craftbook-templates/ap/api-contract-review/versions/1.1.2/test.json +118 -0
  25. package/data/craftbook-templates/ar/artifact-integrity-review/versions/1.0.2/craftbook.json +170 -0
  26. package/data/craftbook-templates/ar/artifact-integrity-review/versions/1.0.2/test.json +139 -0
  27. package/data/craftbook-templates/au/audio-ad-spot/versions/1.0.2/craftbook.json +141 -0
  28. package/data/craftbook-templates/au/audio-ad-spot/versions/1.0.2/test.json +106 -0
  29. package/data/craftbook-templates/au/audio-highlight-reel/versions/1.0.2/craftbook.json +135 -0
  30. package/data/craftbook-templates/au/audio-highlight-reel/versions/1.0.2/test.json +106 -0
  31. package/data/craftbook-templates/au/audiobook-master-pack/versions/1.0.4/craftbook.json +222 -0
  32. package/data/craftbook-templates/au/audiobook-master-pack/versions/1.0.4/test.json +224 -0
  33. package/data/craftbook-templates/au/auth-flow/versions/1.0.2/craftbook.json +160 -0
  34. package/data/craftbook-templates/au/auth-flow/versions/1.0.2/test.json +143 -0
  35. package/data/craftbook-templates/au/automation-recipe/versions/1.0.2/craftbook.json +176 -0
  36. package/data/craftbook-templates/au/automation-recipe/versions/1.0.2/test.json +299 -0
  37. package/data/craftbook-templates/ba/backup-routine/versions/1.0.2/craftbook.json +160 -0
  38. package/data/craftbook-templates/ba/backup-routine/versions/1.0.2/test.json +111 -0
  39. package/data/craftbook-templates/bl/blog-post/versions/1.0.2/craftbook.json +155 -0
  40. package/data/craftbook-templates/bl/blog-post/versions/1.0.2/test.json +121 -0
  41. package/data/craftbook-templates/bo/board-deck/versions/1.0.2/craftbook.json +153 -0
  42. package/data/craftbook-templates/bo/board-deck/versions/1.0.2/test.json +103 -0
  43. package/data/craftbook-templates/bo/board-game-web/versions/1.0.2/craftbook.json +162 -0
  44. package/data/craftbook-templates/bo/board-game-web/versions/1.0.2/test.json +102 -0
  45. package/data/craftbook-templates/bo/booking-automation/versions/1.0.2/craftbook.json +170 -0
  46. package/data/craftbook-templates/bo/booking-automation/versions/1.0.2/test.json +165 -0
  47. package/data/craftbook-templates/br/broadcast-announcement/versions/1.0.2/craftbook.json +119 -0
  48. package/data/craftbook-templates/br/broadcast-announcement/versions/1.0.2/test.json +106 -0
  49. package/data/craftbook-templates/br/browser-qa-audit/versions/2.0.4/craftbook.json +429 -0
  50. package/data/craftbook-templates/br/browser-qa-audit/versions/2.0.4/test.json +379 -0
  51. package/data/craftbook-templates/bu/bug-fix-tdd/versions/1.0.3/craftbook.json +176 -0
  52. package/data/craftbook-templates/bu/bug-fix-tdd/versions/1.0.3/test.json +95 -0
  53. package/data/craftbook-templates/ca/calendar-brief/versions/1.0.2/craftbook.json +119 -0
  54. package/data/craftbook-templates/ca/calendar-brief/versions/1.0.2/test.json +105 -0
  55. package/data/craftbook-templates/ca/canvas-generative-art/versions/1.0.2/craftbook.json +122 -0
  56. package/data/craftbook-templates/ca/canvas-generative-art/versions/1.0.2/test.json +109 -0
  57. package/data/craftbook-templates/ca/case-study/versions/1.0.2/craftbook.json +155 -0
  58. package/data/craftbook-templates/ca/case-study/versions/1.0.2/test.json +115 -0
  59. package/data/craftbook-templates/ca/case-study-writeup/versions/1.0.2/craftbook.json +163 -0
  60. package/data/craftbook-templates/ca/case-study-writeup/versions/1.0.2/test.json +108 -0
  61. package/data/craftbook-templates/ch/changelog-cut/versions/1.0.2/craftbook.json +125 -0
  62. package/data/craftbook-templates/ch/changelog-cut/versions/1.0.2/test.json +109 -0
  63. package/data/craftbook-templates/ch/changelog-writeup/versions/1.0.2/craftbook.json +119 -0
  64. package/data/craftbook-templates/ch/changelog-writeup/versions/1.0.2/test.json +132 -0
  65. package/data/craftbook-templates/ch/chapter-narration-run/versions/1.0.3/craftbook.json +135 -0
  66. package/data/craftbook-templates/ch/chapter-narration-run/versions/1.0.3/test.json +158 -0
  67. package/data/craftbook-templates/ch/chapter-weave/versions/1.0.2/craftbook.json +86 -0
  68. package/data/craftbook-templates/ch/chapter-weave/versions/1.0.2/test.json +101 -0
  69. package/data/craftbook-templates/ch/character-sheet/versions/1.0.2/craftbook.json +94 -0
  70. package/data/craftbook-templates/ch/character-sheet/versions/1.0.2/test.json +146 -0
  71. package/data/craftbook-templates/ch/character-turnaround/versions/1.0.2/craftbook.json +133 -0
  72. package/data/craftbook-templates/ch/character-turnaround/versions/1.0.2/test.json +181 -0
  73. package/data/craftbook-templates/ch/chart-pack/versions/1.0.2/craftbook.json +160 -0
  74. package/data/craftbook-templates/ch/chart-pack/versions/1.0.2/test.json +107 -0
  75. package/data/craftbook-templates/ch/chrome-extension/versions/1.0.2/craftbook.json +160 -0
  76. package/data/craftbook-templates/ch/chrome-extension/versions/1.0.2/test.json +100 -0
  77. package/data/craftbook-templates/ci/ci-pipeline/versions/1.0.2/craftbook.json +144 -0
  78. package/data/craftbook-templates/ci/ci-pipeline/versions/1.0.2/test.json +165 -0
  79. package/data/craftbook-templates/ci/citation-audit/versions/1.0.2/craftbook.json +158 -0
  80. package/data/craftbook-templates/ci/citation-audit/versions/1.0.2/test.json +152 -0
  81. package/data/craftbook-templates/cl/cli-tool/versions/1.1.2/craftbook.json +159 -0
  82. package/data/craftbook-templates/cl/cli-tool/versions/1.1.2/test.json +131 -0
  83. package/data/craftbook-templates/co/codebase-refactoring-review/versions/1.0.2/craftbook.json +165 -0
  84. package/data/craftbook-templates/co/codebase-refactoring-review/versions/1.0.2/test.json +119 -0
  85. package/data/craftbook-templates/co/codebase-ux-review/versions/1.0.2/craftbook.json +165 -0
  86. package/data/craftbook-templates/co/codebase-ux-review/versions/1.0.2/test.json +122 -0
  87. package/data/craftbook-templates/co/cohort-analysis/versions/1.0.2/craftbook.json +153 -0
  88. package/data/craftbook-templates/co/cohort-analysis/versions/1.0.2/test.json +229 -0
  89. package/data/craftbook-templates/co/company-research-brief/versions/1.0.2/craftbook.json +151 -0
  90. package/data/craftbook-templates/co/company-research-brief/versions/1.0.2/test.json +100 -0
  91. package/data/craftbook-templates/co/comparison-matrix/versions/1.0.2/craftbook.json +165 -0
  92. package/data/craftbook-templates/co/comparison-matrix/versions/1.0.2/test.json +112 -0
  93. package/data/craftbook-templates/co/compat-check/versions/1.0.2/craftbook.json +158 -0
  94. package/data/craftbook-templates/co/compat-check/versions/1.0.2/test.json +148 -0
  95. package/data/craftbook-templates/co/competitive-analysis/versions/1.0.2/craftbook.json +152 -0
  96. package/data/craftbook-templates/co/competitive-analysis/versions/1.0.2/test.json +119 -0
  97. package/data/craftbook-templates/co/config-scaffold/versions/1.0.2/craftbook.json +117 -0
  98. package/data/craftbook-templates/co/config-scaffold/versions/1.0.2/test.json +123 -0
  99. package/data/craftbook-templates/co/content-accuracy-review/versions/1.0.2/craftbook.json +153 -0
  100. package/data/craftbook-templates/co/content-accuracy-review/versions/1.0.2/test.json +152 -0
  101. package/data/craftbook-templates/co/contract-template/versions/1.0.2/craftbook.json +157 -0
  102. package/data/craftbook-templates/co/contract-template/versions/1.0.2/test.json +105 -0
  103. package/data/craftbook-templates/co/cookbook-layout/versions/1.0.2/craftbook.json +133 -0
  104. package/data/craftbook-templates/co/cookbook-layout/versions/1.0.2/test.json +162 -0
  105. package/data/craftbook-templates/co/copy-review/versions/1.0.2/craftbook.json +153 -0
  106. package/data/craftbook-templates/co/copy-review/versions/1.0.2/test.json +105 -0
  107. package/data/craftbook-templates/co/corpus-synthesis/versions/1.0.2/craftbook.json +158 -0
  108. package/data/craftbook-templates/co/corpus-synthesis/versions/1.0.2/test.json +159 -0
  109. package/data/craftbook-templates/co/cover-letter/versions/1.0.2/craftbook.json +119 -0
  110. package/data/craftbook-templates/co/cover-letter/versions/1.0.2/test.json +103 -0
  111. package/data/craftbook-templates/cr/crm-update-batch/versions/1.0.2/craftbook.json +113 -0
  112. package/data/craftbook-templates/cr/crm-update-batch/versions/1.0.2/test.json +210 -0
  113. package/data/craftbook-templates/cr/cron-job/versions/1.0.2/craftbook.json +159 -0
  114. package/data/craftbook-templates/cr/cron-job/versions/1.0.2/test.json +107 -0
  115. package/data/craftbook-templates/cr/crossword-forge/versions/1.0.2/craftbook.json +176 -0
  116. package/data/craftbook-templates/cr/crossword-forge/versions/1.0.2/test.json +138 -0
  117. package/data/craftbook-templates/cs/csv-transformer/versions/1.2.3/craftbook.json +113 -0
  118. package/data/craftbook-templates/cs/csv-transformer/versions/1.2.3/test.json +105 -0
  119. package/data/craftbook-templates/da/dashboard-spec/versions/1.0.2/craftbook.json +119 -0
  120. package/data/craftbook-templates/da/dashboard-spec/versions/1.0.2/test.json +117 -0
  121. package/data/craftbook-templates/da/data-dictionary/versions/1.0.2/craftbook.json +119 -0
  122. package/data/craftbook-templates/da/data-dictionary/versions/1.0.2/test.json +104 -0
  123. package/data/craftbook-templates/da/data-export-migrate/versions/1.0.2/craftbook.json +160 -0
  124. package/data/craftbook-templates/da/data-export-migrate/versions/1.0.2/test.json +107 -0
  125. package/data/craftbook-templates/da/data-join-merge/versions/1.0.2/craftbook.json +113 -0
  126. package/data/craftbook-templates/da/data-join-merge/versions/1.0.2/test.json +107 -0
  127. package/data/craftbook-templates/da/data-pipeline-etl/versions/1.0.3/craftbook.json +160 -0
  128. package/data/craftbook-templates/da/data-pipeline-etl/versions/1.0.3/test.json +165 -0
  129. package/data/craftbook-templates/da/data-quality-audit/versions/1.0.2/craftbook.json +153 -0
  130. package/data/craftbook-templates/da/data-quality-audit/versions/1.0.2/test.json +329 -0
  131. package/data/craftbook-templates/da/data-to-report/versions/1.0.2/craftbook.json +152 -0
  132. package/data/craftbook-templates/da/data-to-report/versions/1.0.2/test.json +98 -0
  133. package/data/craftbook-templates/da/data-viz-page/versions/1.0.2/craftbook.json +155 -0
  134. package/data/craftbook-templates/da/data-viz-page/versions/1.0.2/test.json +120 -0
  135. package/data/craftbook-templates/da/dataset-clean/versions/1.2.3/craftbook.json +113 -0
  136. package/data/craftbook-templates/da/dataset-clean/versions/1.2.3/test.json +98 -0
  137. package/data/craftbook-templates/db/db-index-tuning/versions/1.0.2/craftbook.json +160 -0
  138. package/data/craftbook-templates/db/db-index-tuning/versions/1.0.2/test.json +107 -0
  139. package/data/craftbook-templates/de/deep-security-review/versions/1.1.2/craftbook.json +223 -0
  140. package/data/craftbook-templates/de/deep-security-review/versions/1.1.2/test.json +160 -0
  141. package/data/craftbook-templates/de/dependency-audit/versions/1.1.2/craftbook.json +153 -0
  142. package/data/craftbook-templates/de/dependency-audit/versions/1.1.2/test.json +111 -0
  143. package/data/craftbook-templates/de/deploy-checklist/versions/1.0.2/craftbook.json +171 -0
  144. package/data/craftbook-templates/de/deploy-checklist/versions/1.0.2/test.json +168 -0
  145. package/data/craftbook-templates/de/design-review/versions/1.0.2/craftbook.json +153 -0
  146. package/data/craftbook-templates/de/design-review/versions/1.0.2/test.json +121 -0
  147. package/data/craftbook-templates/de/design-system-consultation/versions/2.0.4/craftbook.json +443 -0
  148. package/data/craftbook-templates/de/design-system-consultation/versions/2.0.4/test.json +204 -0
  149. package/data/craftbook-templates/di/diagram-from-text/versions/1.0.2/craftbook.json +121 -0
  150. package/data/craftbook-templates/di/diagram-from-text/versions/1.0.2/test.json +100 -0
  151. package/data/craftbook-templates/di/digest-from-feeds/versions/1.0.2/craftbook.json +158 -0
  152. package/data/craftbook-templates/di/digest-from-feeds/versions/1.0.2/test.json +165 -0
  153. package/data/craftbook-templates/do/doc-intake-pipeline/versions/1.0.2/craftbook.json +160 -0
  154. package/data/craftbook-templates/do/doc-intake-pipeline/versions/1.0.2/test.json +107 -0
  155. package/data/craftbook-templates/do/doc-rewrite/versions/1.0.2/craftbook.json +119 -0
  156. package/data/craftbook-templates/do/doc-rewrite/versions/1.0.2/test.json +113 -0
  157. package/data/craftbook-templates/do/dockerize-app/versions/1.0.2/craftbook.json +160 -0
  158. package/data/craftbook-templates/do/dockerize-app/versions/1.0.2/test.json +95 -0
  159. package/data/craftbook-templates/do/docs-site/versions/1.0.2/craftbook.json +155 -0
  160. package/data/craftbook-templates/do/docs-site/versions/1.0.2/test.json +100 -0
  161. package/data/craftbook-templates/do/documentation-drift-review/versions/1.0.2/craftbook.json +165 -0
  162. package/data/craftbook-templates/do/documentation-drift-review/versions/1.0.2/test.json +135 -0
  163. package/data/craftbook-templates/dr/drive-wrap-up/versions/1.0.2/craftbook.json +152 -0
  164. package/data/craftbook-templates/dr/drive-wrap-up/versions/1.0.2/test.json +107 -0
  165. package/data/craftbook-templates/du/due-diligence-brief/versions/1.0.2/craftbook.json +158 -0
  166. package/data/craftbook-templates/du/due-diligence-brief/versions/1.0.2/test.json +113 -0
  167. package/data/craftbook-templates/eb/ebook-compile/versions/1.0.2/craftbook.json +155 -0
  168. package/data/craftbook-templates/eb/ebook-compile/versions/1.0.2/test.json +100 -0
  169. package/data/craftbook-templates/ed/edit-notes/versions/1.0.2/craftbook.json +188 -0
  170. package/data/craftbook-templates/ed/edit-notes/versions/1.0.2/test.json +149 -0
  171. package/data/craftbook-templates/em/email-sequence/versions/1.0.2/craftbook.json +154 -0
  172. package/data/craftbook-templates/em/email-sequence/versions/1.0.2/test.json +100 -0
  173. package/data/craftbook-templates/em/email-template/versions/1.0.2/craftbook.json +155 -0
  174. package/data/craftbook-templates/em/email-template/versions/1.0.2/test.json +100 -0
  175. package/data/craftbook-templates/en/engineering-retrospective/versions/2.0.4/craftbook.json +415 -0
  176. package/data/craftbook-templates/en/engineering-retrospective/versions/2.0.4/test.json +194 -0
  177. package/data/craftbook-templates/ep/episode-plan/versions/1.0.2/craftbook.json +152 -0
  178. package/data/craftbook-templates/ep/episode-plan/versions/1.0.2/test.json +100 -0
  179. package/data/craftbook-templates/es/escalation-playbook/versions/1.0.2/craftbook.json +119 -0
  180. package/data/craftbook-templates/es/escalation-playbook/versions/1.0.2/test.json +113 -0
  181. package/data/craftbook-templates/ev/evidence-brief/versions/1.0.2/craftbook.json +158 -0
  182. package/data/craftbook-templates/ev/evidence-brief/versions/1.0.2/test.json +113 -0
  183. package/data/craftbook-templates/ex/executive-level-review/versions/2.0.4/craftbook.json +445 -0
  184. package/data/craftbook-templates/ex/executive-level-review/versions/2.0.4/test.json +139 -0
  185. package/data/craftbook-templates/ex/expense-categorize/versions/1.0.2/craftbook.json +152 -0
  186. package/data/craftbook-templates/ex/expense-categorize/versions/1.0.2/test.json +107 -0
  187. package/data/craftbook-templates/fa/fact-check/versions/1.0.2/craftbook.json +158 -0
  188. package/data/craftbook-templates/fa/fact-check/versions/1.0.2/test.json +113 -0
  189. package/data/craftbook-templates/fa/family-story-chapter/versions/1.0.2/craftbook.json +86 -0
  190. package/data/craftbook-templates/fa/family-story-chapter/versions/1.0.2/test.json +111 -0
  191. package/data/craftbook-templates/fa/faq-from-docs/versions/1.0.2/craftbook.json +119 -0
  192. package/data/craftbook-templates/fa/faq-from-docs/versions/1.0.2/test.json +113 -0
  193. package/data/craftbook-templates/fa/favicon-set/versions/1.0.2/craftbook.json +158 -0
  194. package/data/craftbook-templates/fa/favicon-set/versions/1.0.2/test.json +106 -0
  195. package/data/craftbook-templates/fe/feature-flag-release/versions/1.0.2/craftbook.json +171 -0
  196. package/data/craftbook-templates/fe/feature-flag-release/versions/1.0.2/test.json +165 -0
  197. package/data/craftbook-templates/fe/feature-flag-rollout/versions/1.0.2/craftbook.json +160 -0
  198. package/data/craftbook-templates/fe/feature-flag-rollout/versions/1.0.2/test.json +165 -0
  199. package/data/craftbook-templates/fe/feedback-widget/versions/1.0.2/craftbook.json +155 -0
  200. package/data/craftbook-templates/fe/feedback-widget/versions/1.0.2/test.json +100 -0
  201. package/data/craftbook-templates/fo/folder-to-audio/versions/1.0.2/craftbook.json +115 -0
  202. package/data/craftbook-templates/fo/folder-to-audio/versions/1.0.2/test.json +106 -0
  203. package/data/craftbook-templates/fo/forecast-model/versions/1.0.2/craftbook.json +117 -0
  204. package/data/craftbook-templates/fo/forecast-model/versions/1.0.2/test.json +107 -0
  205. package/data/craftbook-templates/fo/form-fill-batch/versions/1.0.2/craftbook.json +160 -0
  206. package/data/craftbook-templates/fo/form-fill-batch/versions/1.0.2/test.json +165 -0
  207. package/data/craftbook-templates/fo/form-wizard/versions/1.0.2/craftbook.json +122 -0
  208. package/data/craftbook-templates/fo/form-wizard/versions/1.0.2/test.json +113 -0
  209. package/data/craftbook-templates/ga/game-with-screens/versions/1.0.2/craftbook.json +180 -0
  210. package/data/craftbook-templates/ga/game-with-screens/versions/1.0.2/test.json +102 -0
  211. package/data/craftbook-templates/gl/glossary-build/versions/1.0.2/craftbook.json +152 -0
  212. package/data/craftbook-templates/gl/glossary-build/versions/1.0.2/test.json +113 -0
  213. package/data/craftbook-templates/gr/graphql-api/versions/1.0.3/craftbook.json +158 -0
  214. package/data/craftbook-templates/gr/graphql-api/versions/1.0.3/test.json +95 -0
  215. package/data/craftbook-templates/gr/grpc-service/versions/1.0.2/craftbook.json +159 -0
  216. package/data/craftbook-templates/gr/grpc-service/versions/1.0.2/test.json +95 -0
  217. package/data/craftbook-templates/ha/handbook-section/versions/1.0.2/craftbook.json +157 -0
  218. package/data/craftbook-templates/ha/handbook-section/versions/1.0.2/test.json +113 -0
  219. package/data/craftbook-templates/he/hero-image/versions/1.0.2/craftbook.json +166 -0
  220. package/data/craftbook-templates/he/hero-image/versions/1.0.2/test.json +106 -0
  221. package/data/craftbook-templates/ho/holiday-card-run/versions/1.0.2/craftbook.json +214 -0
  222. package/data/craftbook-templates/ho/holiday-card-run/versions/1.0.2/test.json +131 -0
  223. package/data/craftbook-templates/ho/hotfix-flow/versions/1.0.2/craftbook.json +194 -0
  224. package/data/craftbook-templates/ho/hotfix-flow/versions/1.0.2/test.json +95 -0
  225. package/data/craftbook-templates/ht/html-puzzle-game/versions/1.0.2/craftbook.json +162 -0
  226. package/data/craftbook-templates/ht/html-puzzle-game/versions/1.0.2/test.json +102 -0
  227. package/data/craftbook-templates/ic/icon-pack/versions/1.0.2/craftbook.json +158 -0
  228. package/data/craftbook-templates/ic/icon-pack/versions/1.0.2/test.json +106 -0
  229. package/data/craftbook-templates/id/idea-office-hours/versions/2.0.4/craftbook.json +409 -0
  230. package/data/craftbook-templates/id/idea-office-hours/versions/2.0.4/test.json +144 -0
  231. package/data/craftbook-templates/id/idle-clicker-game/versions/1.0.2/craftbook.json +162 -0
  232. package/data/craftbook-templates/id/idle-clicker-game/versions/1.0.2/test.json +102 -0
  233. package/data/craftbook-templates/im/image-batch-edit/versions/1.0.2/craftbook.json +153 -0
  234. package/data/craftbook-templates/im/image-batch-edit/versions/1.0.2/test.json +106 -0
  235. package/data/craftbook-templates/im/image-dedup-cluster/versions/1.0.2/craftbook.json +152 -0
  236. package/data/craftbook-templates/im/image-dedup-cluster/versions/1.0.2/test.json +106 -0
  237. package/data/craftbook-templates/im/image-palette-extract/versions/1.0.2/craftbook.json +121 -0
  238. package/data/craftbook-templates/im/image-palette-extract/versions/1.0.2/test.json +100 -0
  239. package/data/craftbook-templates/im/image-seo-rename/versions/1.0.2/craftbook.json +117 -0
  240. package/data/craftbook-templates/im/image-seo-rename/versions/1.0.2/test.json +106 -0
  241. package/data/craftbook-templates/in/inbox-triage/versions/1.0.2/craftbook.json +152 -0
  242. package/data/craftbook-templates/in/inbox-triage/versions/1.0.2/test.json +107 -0
  243. package/data/craftbook-templates/in/incident-comms-templates/versions/1.0.2/craftbook.json +119 -0
  244. package/data/craftbook-templates/in/incident-comms-templates/versions/1.0.2/test.json +113 -0
  245. package/data/craftbook-templates/in/incident-postmortem/versions/1.0.2/craftbook.json +170 -0
  246. package/data/craftbook-templates/in/incident-postmortem/versions/1.0.2/test.json +112 -0
  247. package/data/craftbook-templates/in/insurance-inventory/versions/1.0.2/craftbook.json +165 -0
  248. package/data/craftbook-templates/in/insurance-inventory/versions/1.0.2/test.json +124 -0
  249. package/data/craftbook-templates/in/interactive-quiz/versions/1.0.2/craftbook.json +155 -0
  250. package/data/craftbook-templates/in/interactive-quiz/versions/1.0.2/test.json +102 -0
  251. package/data/craftbook-templates/in/investigate-root-cause/versions/1.0.2/craftbook.json +153 -0
  252. package/data/craftbook-templates/in/investigate-root-cause/versions/1.0.2/test.json +113 -0
  253. package/data/craftbook-templates/in/invitation-design/versions/1.0.2/craftbook.json +140 -0
  254. package/data/craftbook-templates/in/invitation-design/versions/1.0.2/test.json +124 -0
  255. package/data/craftbook-templates/in/invoice-generator/versions/1.0.2/craftbook.json +122 -0
  256. package/data/craftbook-templates/in/invoice-generator/versions/1.0.2/test.json +100 -0
  257. package/data/craftbook-templates/in/invoice-run/versions/1.1.2/craftbook.json +211 -0
  258. package/data/craftbook-templates/in/invoice-run/versions/1.1.2/test.json +143 -0
  259. package/data/craftbook-templates/index.json +1 -1
  260. package/data/craftbook-templates/it/item-intake/versions/1.0.2/craftbook.json +152 -0
  261. package/data/craftbook-templates/it/item-intake/versions/1.0.2/test.json +148 -0
  262. package/data/craftbook-templates/ju/juice-pass/versions/1.0.2/craftbook.json +128 -0
  263. package/data/craftbook-templates/ju/juice-pass/versions/1.0.2/test.json +119 -0
  264. package/data/craftbook-templates/kn/knowledge-base-article/versions/1.0.2/craftbook.json +155 -0
  265. package/data/craftbook-templates/kn/knowledge-base-article/versions/1.0.2/test.json +113 -0
  266. package/data/craftbook-templates/kp/kpi-scorecard/versions/1.0.2/craftbook.json +160 -0
  267. package/data/craftbook-templates/kp/kpi-scorecard/versions/1.0.2/test.json +100 -0
  268. package/data/craftbook-templates/la/landing-copy/versions/1.0.2/craftbook.json +155 -0
  269. package/data/craftbook-templates/la/landing-copy/versions/1.0.2/test.json +113 -0
  270. package/data/craftbook-templates/la/landing-page/versions/1.0.2/craftbook.json +196 -0
  271. package/data/craftbook-templates/la/landing-page/versions/1.0.2/test.json +100 -0
  272. package/data/craftbook-templates/le/lead-enrichment/versions/1.0.2/craftbook.json +152 -0
  273. package/data/craftbook-templates/le/lead-enrichment/versions/1.0.2/test.json +107 -0
  274. package/data/craftbook-templates/li/library-package/versions/1.0.2/craftbook.json +159 -0
  275. package/data/craftbook-templates/li/library-package/versions/1.0.2/test.json +95 -0
  276. package/data/craftbook-templates/li/literature-review/versions/1.0.2/craftbook.json +158 -0
  277. package/data/craftbook-templates/li/literature-review/versions/1.0.2/test.json +113 -0
  278. package/data/craftbook-templates/li/live-browser-qa/versions/1.0.2/craftbook.json +153 -0
  279. package/data/craftbook-templates/li/live-browser-qa/versions/1.0.2/test.json +165 -0
  280. package/data/craftbook-templates/lo/localize-content/versions/1.0.2/craftbook.json +155 -0
  281. package/data/craftbook-templates/lo/localize-content/versions/1.0.2/test.json +113 -0
  282. package/data/craftbook-templates/lo/logo-set/versions/1.0.2/craftbook.json +158 -0
  283. package/data/craftbook-templates/lo/logo-set/versions/1.0.2/test.json +106 -0
  284. package/data/craftbook-templates/ma/market-scan/versions/1.0.2/craftbook.json +158 -0
  285. package/data/craftbook-templates/ma/market-scan/versions/1.0.2/test.json +213 -0
  286. package/data/craftbook-templates/me/meeting-minutes/versions/1.0.2/craftbook.json +120 -0
  287. package/data/craftbook-templates/me/meeting-minutes/versions/1.0.2/test.json +113 -0
  288. package/data/craftbook-templates/me/meeting-notes-to-actions/versions/1.0.2/craftbook.json +119 -0
  289. package/data/craftbook-templates/me/meeting-notes-to-actions/versions/1.0.2/test.json +113 -0
  290. package/data/craftbook-templates/me/meeting-prep-brief/versions/1.0.2/craftbook.json +119 -0
  291. package/data/craftbook-templates/me/meeting-prep-brief/versions/1.0.2/test.json +187 -0
  292. package/data/craftbook-templates/me/meeting-summary-audio/versions/1.0.2/craftbook.json +121 -0
  293. package/data/craftbook-templates/me/meeting-summary-audio/versions/1.0.2/test.json +106 -0
  294. package/data/craftbook-templates/me/memory-prompt-session/versions/1.0.2/craftbook.json +127 -0
  295. package/data/craftbook-templates/me/memory-prompt-session/versions/1.0.2/test.json +115 -0
  296. package/data/craftbook-templates/me/message-queue-consumer/versions/1.0.2/craftbook.json +159 -0
  297. package/data/craftbook-templates/me/message-queue-consumer/versions/1.0.2/test.json +95 -0
  298. package/data/craftbook-templates/mi/micro-game-jam/versions/1.0.2/craftbook.json +129 -0
  299. package/data/craftbook-templates/mi/micro-game-jam/versions/1.0.2/test.json +102 -0
  300. package/data/craftbook-templates/mo/mock-interview/versions/1.0.2/craftbook.json +151 -0
  301. package/data/craftbook-templates/mo/mock-interview/versions/1.0.2/test.json +113 -0
  302. package/data/craftbook-templates/mo/mod-scaffold/versions/1.0.2/craftbook.json +168 -0
  303. package/data/craftbook-templates/mo/mod-scaffold/versions/1.0.2/test.json +136 -0
  304. package/data/craftbook-templates/mo/monitor-and-alert/versions/1.0.2/craftbook.json +170 -0
  305. package/data/craftbook-templates/mo/monitor-and-alert/versions/1.0.2/test.json +200 -0
  306. package/data/craftbook-templates/mo/month-close/versions/1.0.2/craftbook.json +152 -0
  307. package/data/craftbook-templates/mo/month-close/versions/1.0.2/test.json +100 -0
  308. package/data/craftbook-templates/mo/monthly-recording-review/versions/1.0.2/craftbook.json +152 -0
  309. package/data/craftbook-templates/mo/monthly-recording-review/versions/1.0.2/test.json +120 -0
  310. package/data/craftbook-templates/mo/moodboard/versions/1.0.2/craftbook.json +121 -0
  311. package/data/craftbook-templates/mo/moodboard/versions/1.0.2/test.json +106 -0
  312. package/data/craftbook-templates/mo/morning-brief/versions/1.0.2/craftbook.json +119 -0
  313. package/data/craftbook-templates/mo/morning-brief/versions/1.0.2/test.json +228 -0
  314. package/data/craftbook-templates/mo/morning-report/versions/1.0.2/craftbook.json +164 -0
  315. package/data/craftbook-templates/mo/morning-report/versions/1.0.2/test.json +253 -0
  316. package/data/craftbook-templates/mu/music-metadata-tag/versions/1.0.2/craftbook.json +113 -0
  317. package/data/craftbook-templates/mu/music-metadata-tag/versions/1.0.2/test.json +106 -0
  318. package/data/craftbook-templates/na/narrated-slideshow/versions/1.1.2/craftbook.json +193 -0
  319. package/data/craftbook-templates/na/narrated-slideshow/versions/1.1.2/test.json +89 -0
  320. package/data/craftbook-templates/ne/newsletter-issue/versions/1.0.2/craftbook.json +155 -0
  321. package/data/craftbook-templates/ne/newsletter-issue/versions/1.0.2/test.json +113 -0
  322. package/data/craftbook-templates/no/notification-router/versions/1.0.2/craftbook.json +170 -0
  323. package/data/craftbook-templates/no/notification-router/versions/1.0.2/test.json +165 -0
  324. package/data/craftbook-templates/oc/ocr-extract/versions/1.0.2/craftbook.json +149 -0
  325. package/data/craftbook-templates/oc/ocr-extract/versions/1.0.2/test.json +106 -0
  326. package/data/craftbook-templates/of/offer-compare/versions/1.0.2/craftbook.json +118 -0
  327. package/data/craftbook-templates/of/offer-compare/versions/1.0.2/test.json +113 -0
  328. package/data/craftbook-templates/on/onboarding-checklist/versions/1.0.2/craftbook.json +119 -0
  329. package/data/craftbook-templates/on/onboarding-checklist/versions/1.0.2/test.json +113 -0
  330. package/data/craftbook-templates/on/onboarding-flow/versions/1.0.2/craftbook.json +155 -0
  331. package/data/craftbook-templates/on/onboarding-flow/versions/1.0.2/test.json +100 -0
  332. package/data/craftbook-templates/on/oncall-handoff/versions/1.0.2/craftbook.json +119 -0
  333. package/data/craftbook-templates/on/oncall-handoff/versions/1.0.2/test.json +113 -0
  334. package/data/craftbook-templates/on/one-pager/versions/1.0.2/craftbook.json +155 -0
  335. package/data/craftbook-templates/on/one-pager/versions/1.0.2/test.json +113 -0
  336. package/data/craftbook-templates/op/ops-runbook/versions/1.0.2/craftbook.json +124 -0
  337. package/data/craftbook-templates/op/ops-runbook/versions/1.0.2/test.json +107 -0
  338. package/data/craftbook-templates/pa/page-spread/versions/1.0.2/craftbook.json +94 -0
  339. package/data/craftbook-templates/pa/page-spread/versions/1.0.2/test.json +135 -0
  340. package/data/craftbook-templates/pa/parser-grammar/versions/1.0.2/craftbook.json +159 -0
  341. package/data/craftbook-templates/pa/parser-grammar/versions/1.0.2/test.json +95 -0
  342. package/data/craftbook-templates/pe/perf-audit/versions/1.0.2/craftbook.json +153 -0
  343. package/data/craftbook-templates/pe/perf-audit/versions/1.0.2/test.json +165 -0
  344. package/data/craftbook-templates/pe/perf-optimization/versions/1.0.2/craftbook.json +160 -0
  345. package/data/craftbook-templates/pe/perf-optimization/versions/1.0.2/test.json +95 -0
  346. package/data/craftbook-templates/pe/pest-diagnosis/versions/1.0.2/craftbook.json +152 -0
  347. package/data/craftbook-templates/pe/pest-diagnosis/versions/1.0.2/test.json +125 -0
  348. package/data/craftbook-templates/ph/photo-cull/versions/1.0.2/craftbook.json +152 -0
  349. package/data/craftbook-templates/ph/photo-cull/versions/1.0.2/test.json +106 -0
  350. package/data/craftbook-templates/ph/physics-toy/versions/1.0.2/craftbook.json +122 -0
  351. package/data/craftbook-templates/ph/physics-toy/versions/1.0.2/test.json +102 -0
  352. package/data/craftbook-templates/pi/pitch-deck/versions/1.0.2/craftbook.json +153 -0
  353. package/data/craftbook-templates/pi/pitch-deck/versions/1.0.2/test.json +100 -0
  354. package/data/craftbook-templates/pl/playtest-report/versions/1.0.2/craftbook.json +152 -0
  355. package/data/craftbook-templates/pl/playtest-report/versions/1.0.2/test.json +114 -0
  356. package/data/craftbook-templates/po/podcast-chaptering/versions/1.0.2/craftbook.json +152 -0
  357. package/data/craftbook-templates/po/podcast-chaptering/versions/1.0.2/test.json +106 -0
  358. package/data/craftbook-templates/po/portfolio-site/versions/1.0.2/craftbook.json +163 -0
  359. package/data/craftbook-templates/po/portfolio-site/versions/1.0.2/test.json +100 -0
  360. package/data/craftbook-templates/po/powerpoint-deck/versions/1.7.4/craftbook.json +397 -0
  361. package/data/craftbook-templates/po/powerpoint-deck/versions/1.7.4/test.json +242 -0
  362. package/data/craftbook-templates/pr/pr-security-review/versions/1.0.2/craftbook.json +153 -0
  363. package/data/craftbook-templates/pr/pr-security-review/versions/1.0.2/test.json +113 -0
  364. package/data/craftbook-templates/pr/practice-exam/versions/1.0.2/craftbook.json +171 -0
  365. package/data/craftbook-templates/pr/practice-exam/versions/1.0.2/test.json +120 -0
  366. package/data/craftbook-templates/pr/practice-session/versions/1.0.2/craftbook.json +127 -0
  367. package/data/craftbook-templates/pr/practice-session/versions/1.0.2/test.json +117 -0
  368. package/data/craftbook-templates/pr/pre-departure-countdown/versions/1.0.2/craftbook.json +152 -0
  369. package/data/craftbook-templates/pr/pre-departure-countdown/versions/1.0.2/test.json +100 -0
  370. package/data/craftbook-templates/pr/press-release/versions/1.0.2/craftbook.json +155 -0
  371. package/data/craftbook-templates/pr/press-release/versions/1.0.2/test.json +359 -0
  372. package/data/craftbook-templates/pr/price-tracker/versions/1.0.2/craftbook.json +121 -0
  373. package/data/craftbook-templates/pr/price-tracker/versions/1.0.2/test.json +153 -0
  374. package/data/craftbook-templates/pr/pricing-page/versions/1.0.2/craftbook.json +196 -0
  375. package/data/craftbook-templates/pr/pricing-page/versions/1.0.2/test.json +100 -0
  376. package/data/craftbook-templates/pr/product-descriptions/versions/1.0.2/craftbook.json +117 -0
  377. package/data/craftbook-templates/pr/product-descriptions/versions/1.0.2/test.json +113 -0
  378. package/data/craftbook-templates/pr/proposal-sow/versions/1.0.2/craftbook.json +155 -0
  379. package/data/craftbook-templates/pr/proposal-sow/versions/1.0.2/test.json +113 -0
  380. package/data/craftbook-templates/pu/pull-request-review/versions/1.7.2/craftbook.json +279 -0
  381. package/data/craftbook-templates/pu/pull-request-review/versions/1.7.2/test.json +144 -0
  382. package/data/craftbook-templates/pu/puzzle-pack-layout/versions/1.0.2/craftbook.json +133 -0
  383. package/data/craftbook-templates/pu/puzzle-pack-layout/versions/1.0.2/test.json +126 -0
  384. package/data/craftbook-templates/pw/pwa-offline/versions/1.0.2/craftbook.json +167 -0
  385. package/data/craftbook-templates/pw/pwa-offline/versions/1.0.2/test.json +100 -0
  386. package/data/craftbook-templates/qu/quarterly-summary/versions/1.0.2/craftbook.json +152 -0
  387. package/data/craftbook-templates/qu/quarterly-summary/versions/1.0.2/test.json +116 -0
  388. package/data/craftbook-templates/re/reading-list/versions/1.0.2/craftbook.json +119 -0
  389. package/data/craftbook-templates/re/reading-list/versions/1.0.2/test.json +113 -0
  390. package/data/craftbook-templates/re/receipt-intake/versions/1.0.2/craftbook.json +152 -0
  391. package/data/craftbook-templates/re/receipt-intake/versions/1.0.2/test.json +152 -0
  392. package/data/craftbook-templates/re/receipt-ocr-ledger/versions/1.0.2/craftbook.json +152 -0
  393. package/data/craftbook-templates/re/receipt-ocr-ledger/versions/1.0.2/test.json +107 -0
  394. package/data/craftbook-templates/re/reception-report/versions/1.0.1/craftbook.json +177 -0
  395. package/data/craftbook-templates/re/reception-report/versions/1.0.1/test.json +169 -0
  396. package/data/craftbook-templates/re/recipe-capture/versions/1.0.2/craftbook.json +152 -0
  397. package/data/craftbook-templates/re/recipe-capture/versions/1.0.2/test.json +131 -0
  398. package/data/craftbook-templates/re/record-a-relative/versions/1.0.2/craftbook.json +127 -0
  399. package/data/craftbook-templates/re/record-a-relative/versions/1.0.2/test.json +113 -0
  400. package/data/craftbook-templates/re/recurring-invoice-run/versions/1.0.2/craftbook.json +160 -0
  401. package/data/craftbook-templates/re/recurring-invoice-run/versions/1.0.2/test.json +107 -0
  402. package/data/craftbook-templates/re/refactor-module/versions/1.0.3/craftbook.json +160 -0
  403. package/data/craftbook-templates/re/refactor-module/versions/1.0.3/test.json +95 -0
  404. package/data/craftbook-templates/re/regex-builder/versions/1.0.2/craftbook.json +159 -0
  405. package/data/craftbook-templates/re/regex-builder/versions/1.0.2/test.json +95 -0
  406. package/data/craftbook-templates/re/release-announcement/versions/1.0.2/craftbook.json +171 -0
  407. package/data/craftbook-templates/re/release-announcement/versions/1.0.2/test.json +205 -0
  408. package/data/craftbook-templates/re/release-artifact-sanity-check/versions/1.0.2/craftbook.json +226 -0
  409. package/data/craftbook-templates/re/release-artifact-sanity-check/versions/1.0.2/test.json +141 -0
  410. package/data/craftbook-templates/re/release-notes/versions/1.0.2/craftbook.json +171 -0
  411. package/data/craftbook-templates/re/release-notes/versions/1.0.2/test.json +114 -0
  412. package/data/craftbook-templates/re/release-pipeline-ci/versions/1.0.2/craftbook.json +159 -0
  413. package/data/craftbook-templates/re/release-pipeline-ci/versions/1.0.2/test.json +165 -0
  414. package/data/craftbook-templates/re/release-readiness-review/versions/1.0.2/craftbook.json +153 -0
  415. package/data/craftbook-templates/re/release-readiness-review/versions/1.0.2/test.json +113 -0
  416. package/data/craftbook-templates/re/reliability-review/versions/1.0.2/craftbook.json +165 -0
  417. package/data/craftbook-templates/re/reliability-review/versions/1.0.2/test.json +115 -0
  418. package/data/craftbook-templates/re/report-pdf/versions/1.1.2/craftbook.json +185 -0
  419. package/data/craftbook-templates/re/report-pdf/versions/1.1.2/test.json +101 -0
  420. package/data/craftbook-templates/re/research-report/versions/1.0.2/craftbook.json +158 -0
  421. package/data/craftbook-templates/re/research-report/versions/1.0.2/test.json +113 -0
  422. package/data/craftbook-templates/re/research-to-document/versions/1.2.2/craftbook.json +228 -0
  423. package/data/craftbook-templates/re/research-to-document/versions/1.2.2/test.json +243 -0
  424. package/data/craftbook-templates/re/rest-api/versions/1.0.3/craftbook.json +159 -0
  425. package/data/craftbook-templates/re/rest-api/versions/1.0.3/test.json +390 -0
  426. package/data/craftbook-templates/re/resume-cv/versions/1.0.2/craftbook.json +155 -0
  427. package/data/craftbook-templates/re/resume-cv/versions/1.0.2/test.json +100 -0
  428. package/data/craftbook-templates/ro/rollback-plan/versions/1.0.2/craftbook.json +171 -0
  429. package/data/craftbook-templates/ro/rollback-plan/versions/1.0.2/test.json +165 -0
  430. package/data/craftbook-templates/ro/root-cause-investigation/versions/2.0.4/craftbook.json +425 -0
  431. package/data/craftbook-templates/ro/root-cause-investigation/versions/2.0.4/test.json +157 -0
  432. package/data/craftbook-templates/ro/rough-cut-assembly/versions/1.0.3/craftbook.json +179 -0
  433. package/data/craftbook-templates/ro/rough-cut-assembly/versions/1.0.3/test.json +140 -0
  434. package/data/craftbook-templates/ru/runbook/versions/1.0.2/craftbook.json +157 -0
  435. package/data/craftbook-templates/ru/runbook/versions/1.0.2/test.json +121 -0
  436. package/data/craftbook-templates/sc/schema-migration/versions/1.0.2/craftbook.json +156 -0
  437. package/data/craftbook-templates/sc/schema-migration/versions/1.0.2/test.json +106 -0
  438. package/data/craftbook-templates/sc/scrape-to-structured/versions/1.0.3/craftbook.json +152 -0
  439. package/data/craftbook-templates/sc/scrape-to-structured/versions/1.0.3/test.json +165 -0
  440. package/data/craftbook-templates/sc/script-automation/versions/1.0.2/craftbook.json +160 -0
  441. package/data/craftbook-templates/sc/script-automation/versions/1.0.2/test.json +165 -0
  442. package/data/craftbook-templates/sd/sdk-wrapper/versions/1.0.3/craftbook.json +159 -0
  443. package/data/craftbook-templates/sd/sdk-wrapper/versions/1.0.3/test.json +93 -0
  444. package/data/craftbook-templates/se/seasonal-maintenance-sweep/versions/1.0.2/craftbook.json +152 -0
  445. package/data/craftbook-templates/se/seasonal-maintenance-sweep/versions/1.0.2/test.json +113 -0
  446. package/data/craftbook-templates/se/security-architecture-review/versions/2.0.4/craftbook.json +452 -0
  447. package/data/craftbook-templates/se/security-architecture-review/versions/2.0.4/test.json +157 -0
  448. package/data/craftbook-templates/se/seo-meta-pack/versions/1.0.2/craftbook.json +117 -0
  449. package/data/craftbook-templates/se/seo-meta-pack/versions/1.0.2/test.json +100 -0
  450. package/data/craftbook-templates/so/social-digest/versions/1.0.1/craftbook.json +140 -0
  451. package/data/craftbook-templates/so/social-digest/versions/1.0.1/test.json +169 -0
  452. package/data/craftbook-templates/so/social-thread/versions/1.0.2/craftbook.json +119 -0
  453. package/data/craftbook-templates/so/social-thread/versions/1.0.2/test.json +113 -0
  454. package/data/craftbook-templates/so/source-quality-audit/versions/1.0.2/craftbook.json +152 -0
  455. package/data/craftbook-templates/so/source-quality-audit/versions/1.0.2/test.json +161 -0
  456. package/data/craftbook-templates/sp/spa-dashboard/versions/1.0.2/craftbook.json +155 -0
  457. package/data/craftbook-templates/sp/spa-dashboard/versions/1.0.2/test.json +100 -0
  458. package/data/craftbook-templates/sp/spec-authoring/versions/2.0.4/craftbook.json +448 -0
  459. package/data/craftbook-templates/sp/spec-authoring/versions/2.0.4/test.json +165 -0
  460. package/data/craftbook-templates/sp/spec-doc/versions/1.0.2/craftbook.json +155 -0
  461. package/data/craftbook-templates/sp/spec-doc/versions/1.0.2/test.json +107 -0
  462. package/data/craftbook-templates/sp/spreadsheet-model/versions/1.0.2/craftbook.json +121 -0
  463. package/data/craftbook-templates/sp/spreadsheet-model/versions/1.0.2/test.json +163 -0
  464. package/data/craftbook-templates/sp/sprite-sheet/versions/1.0.2/craftbook.json +149 -0
  465. package/data/craftbook-templates/sp/sprite-sheet/versions/1.0.2/test.json +106 -0
  466. package/data/craftbook-templates/sq/sql-analysis/versions/1.0.2/craftbook.json +121 -0
  467. package/data/craftbook-templates/sq/sql-analysis/versions/1.0.2/test.json +107 -0
  468. package/data/craftbook-templates/st/standup-summary/versions/1.0.2/craftbook.json +119 -0
  469. package/data/craftbook-templates/st/standup-summary/versions/1.0.2/test.json +113 -0
  470. package/data/craftbook-templates/st/state-machine/versions/1.0.2/craftbook.json +159 -0
  471. package/data/craftbook-templates/st/state-machine/versions/1.0.2/test.json +95 -0
  472. package/data/craftbook-templates/st/status-report/versions/1.0.2/craftbook.json +158 -0
  473. package/data/craftbook-templates/st/status-report/versions/1.0.2/test.json +113 -0
  474. package/data/craftbook-templates/su/subscription-audit/versions/1.0.2/craftbook.json +152 -0
  475. package/data/craftbook-templates/su/subscription-audit/versions/1.0.2/test.json +107 -0
  476. package/data/craftbook-templates/su/subtitle-generator/versions/1.0.2/craftbook.json +140 -0
  477. package/data/craftbook-templates/su/subtitle-generator/versions/1.0.2/test.json +106 -0
  478. package/data/craftbook-templates/su/summarize-long/versions/1.0.2/craftbook.json +119 -0
  479. package/data/craftbook-templates/su/summarize-long/versions/1.0.2/test.json +113 -0
  480. package/data/craftbook-templates/su/survey-analysis/versions/1.0.2/craftbook.json +153 -0
  481. package/data/craftbook-templates/su/survey-analysis/versions/1.0.2/test.json +107 -0
  482. package/data/craftbook-templates/sv/svg-animation/versions/1.0.2/craftbook.json +122 -0
  483. package/data/craftbook-templates/sv/svg-animation/versions/1.0.2/test.json +100 -0
  484. package/data/craftbook-templates/ta/tailor-resume/versions/1.0.2/craftbook.json +126 -0
  485. package/data/craftbook-templates/ta/tailor-resume/versions/1.0.2/test.json +100 -0
  486. package/data/craftbook-templates/te/technical-documentation/versions/2.0.4/craftbook.json +420 -0
  487. package/data/craftbook-templates/te/technical-documentation/versions/2.0.4/test.json +177 -0
  488. package/data/craftbook-templates/te/test-coverage-review/versions/1.1.2/craftbook.json +153 -0
  489. package/data/craftbook-templates/te/test-coverage-review/versions/1.1.2/test.json +116 -0
  490. package/data/craftbook-templates/te/test-suite-backfill/versions/1.0.2/craftbook.json +132 -0
  491. package/data/craftbook-templates/te/test-suite-backfill/versions/1.0.2/test.json +95 -0
  492. package/data/craftbook-templates/th/thank-you-batch/versions/1.0.2/craftbook.json +155 -0
  493. package/data/craftbook-templates/th/thank-you-batch/versions/1.0.2/test.json +144 -0
  494. package/data/craftbook-templates/th/thank-you-sweep/versions/1.0.2/craftbook.json +155 -0
  495. package/data/craftbook-templates/th/thank-you-sweep/versions/1.0.2/test.json +145 -0
  496. package/data/craftbook-templates/th/threat-model/versions/1.0.2/craftbook.json +153 -0
  497. package/data/craftbook-templates/th/threat-model/versions/1.0.2/test.json +113 -0
  498. package/data/craftbook-templates/th/thumbnail-generator/versions/1.0.2/craftbook.json +115 -0
  499. package/data/craftbook-templates/th/thumbnail-generator/versions/1.0.2/test.json +106 -0
  500. package/data/craftbook-templates/ti/tileset-batch/versions/1.0.2/craftbook.json +172 -0
  501. package/data/craftbook-templates/ti/tileset-batch/versions/1.0.2/test.json +162 -0
  502. package/data/craftbook-templates/to/tone-rewrite/versions/1.0.2/craftbook.json +119 -0
  503. package/data/craftbook-templates/to/tone-rewrite/versions/1.0.2/test.json +113 -0
  504. package/data/craftbook-templates/to/topic-explainer/versions/1.0.2/craftbook.json +152 -0
  505. package/data/craftbook-templates/to/topic-explainer/versions/1.0.2/test.json +113 -0
  506. package/data/craftbook-templates/tr/transcribe-and-shownotes/versions/1.0.2/craftbook.json +127 -0
  507. package/data/craftbook-templates/tr/transcribe-and-shownotes/versions/1.0.2/test.json +101 -0
  508. package/data/craftbook-templates/tr/transcribe-audio/versions/1.0.2/craftbook.json +119 -0
  509. package/data/craftbook-templates/tr/transcribe-audio/versions/1.0.2/test.json +106 -0
  510. package/data/craftbook-templates/tr/transcribe-index/versions/1.0.2/craftbook.json +183 -0
  511. package/data/craftbook-templates/tr/transcribe-index/versions/1.0.2/test.json +154 -0
  512. package/data/craftbook-templates/ty/type-safety-pass/versions/1.0.2/craftbook.json +160 -0
  513. package/data/craftbook-templates/ty/type-safety-pass/versions/1.0.2/test.json +95 -0
  514. package/data/craftbook-templates/ve/version-bump/versions/1.0.2/craftbook.json +167 -0
  515. package/data/craftbook-templates/ve/version-bump/versions/1.0.2/test.json +95 -0
  516. package/data/craftbook-templates/vi/video-storyboard/versions/1.0.2/craftbook.json +121 -0
  517. package/data/craftbook-templates/vi/video-storyboard/versions/1.0.2/test.json +106 -0
  518. package/data/craftbook-templates/vi/visit-prep/versions/1.0.2/craftbook.json +152 -0
  519. package/data/craftbook-templates/vi/visit-prep/versions/1.0.2/test.json +100 -0
  520. package/data/craftbook-templates/vo/voiceover-script/versions/1.0.2/craftbook.json +119 -0
  521. package/data/craftbook-templates/vo/voiceover-script/versions/1.0.2/test.json +106 -0
  522. package/data/craftbook-templates/we/weak-spot-drill/versions/1.0.2/craftbook.json +166 -0
  523. package/data/craftbook-templates/we/weak-spot-drill/versions/1.0.2/test.json +127 -0
  524. package/data/craftbook-templates/we/web-app-crud/versions/1.0.2/craftbook.json +155 -0
  525. package/data/craftbook-templates/we/web-app-crud/versions/1.0.2/test.json +100 -0
  526. package/data/craftbook-templates/we/web-component/versions/1.0.2/craftbook.json +122 -0
  527. package/data/craftbook-templates/we/web-component/versions/1.0.2/test.json +100 -0
  528. package/data/craftbook-templates/we/webhook-handler/versions/1.0.2/craftbook.json +159 -0
  529. package/data/craftbook-templates/we/webhook-handler/versions/1.0.2/test.json +165 -0
  530. package/data/craftbook-templates/we/week-plan/versions/1.0.2/craftbook.json +152 -0
  531. package/data/craftbook-templates/we/week-plan/versions/1.0.2/test.json +258 -0
  532. package/data/craftbook-templates/we/weekly-menu-plan/versions/1.0.2/craftbook.json +152 -0
  533. package/data/craftbook-templates/we/weekly-menu-plan/versions/1.0.2/test.json +100 -0
  534. package/data/craftbook-templates/we/weekly-pipeline-review/versions/1.0.2/craftbook.json +118 -0
  535. package/data/craftbook-templates/we/weekly-pipeline-review/versions/1.0.2/test.json +107 -0
  536. package/data/craftbook-templates/we/weekly-review/versions/1.0.2/craftbook.json +119 -0
  537. package/data/craftbook-templates/we/weekly-review/versions/1.0.2/test.json +113 -0
  538. package/data/craftbook-templates/we/weekly-walkthrough/versions/1.0.2/craftbook.json +152 -0
  539. package/data/craftbook-templates/we/weekly-walkthrough/versions/1.0.2/test.json +141 -0
  540. package/data/craftbook-templates/wh/whitepaper/versions/1.0.2/craftbook.json +153 -0
  541. package/data/craftbook-templates/wh/whitepaper/versions/1.0.2/test.json +113 -0
  542. package/data/craftbook-templates/ye/year-in-review/versions/1.0.2/craftbook.json +127 -0
  543. package/data/craftbook-templates/ye/year-in-review/versions/1.0.2/test.json +148 -0
  544. package/data/craftbook-templates/yo/youtube-chapters-seo/versions/1.0.2/craftbook.json +146 -0
  545. package/data/craftbook-templates/yo/youtube-chapters-seo/versions/1.0.2/test.json +106 -0
  546. package/package.json +1 -1
@@ -0,0 +1,172 @@
1
+ {
2
+ "id": "tileset-batch",
3
+ "name": "Tileset Batch",
4
+ "description": "Produce a style-locked batch of tiles and account for every one: named to the convention, sized to spec, generated against the library's style anchor, and appended to the manifest with tags — an asset library a game engine can trust, not a folder of maybes. Locks the tile list and the naming convention FIRST, then generates the batch in the house style, then writes the manifest records and the batch summary. Use for tile batches, 'we need forest tiles', growing a game's asset library, style-consistent tilesets, and keeping the asset manifest honest.\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. Lock the batch (assetsmid) — tile list, naming convention, size spec, style anchor → gated on artifact `{{workPath}}/scope.md` (markdown-notes)\n2. Generate the tiles (image-generator) — the batch, named to the convention, in the house style → gated on `assets/tiles` (image-set)\n3. Write the manifest records (data-analyst) — one record per new tile, appended, ids unique\n4. Write the batch summary (copywriter) — what was made, how it is named, what the library now holds → gated on artifact `{{workPath}}/report.md` (markdown-report)\n\nThe gates never advance with an unmet criterion, and loop back to the\nowning phase to fix named gaps.\n",
5
+ "entryStepId": "scope",
6
+ "triggers": [
7
+ "make a batch of tiles",
8
+ "we need more tiles for the game",
9
+ "tileset for the platformer",
10
+ "generate the tile batch",
11
+ "grow the asset library"
12
+ ],
13
+ "steps": [
14
+ {
15
+ "id": "scope",
16
+ "name": "Lock the batch",
17
+ "description": "tile list, naming convention, size spec, style anchor",
18
+ "prompt": "Lock the batch before generating a tile. Step 1: read assets/manifest.json from the workspace — the library's existing records — and the style notes in assets/ (the palette, tile size, outline and shading rules that make the library one family). Step 2: write the tile list from the ask — every tile the batch needs, including the unglamorous edges and corners that make a set usable, at least eight. Step 3: lock the conventions — file names as assets/tiles/tile-<terrain>-<variant>.png, the size spec from the style notes, and the tags each tile will carry. Step 4: write an acceptance-criteria checklist ('every listed tile generated at spec size in the house style', 'every file named to the convention', 'every new tile appended to the manifest with id, file, size, and tags', 'the manifest stays valid JSON and lists only files that exist'). Call write_task_note with the tile list + checklist and write {{workPath}}/scope.md.\n\nThe deliverable `{{workPath}}/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": "assetsmid",
20
+ "advanceWhen": {
21
+ "file": "{{workPath}}/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": "{{workPath}}/scope.md",
32
+ "bytes": 120,
33
+ "artifact": true
34
+ },
35
+ {
36
+ "kind": "sniff",
37
+ "file": "{{workPath}}/scope.md",
38
+ "sniff": "nonempty",
39
+ "artifact": true
40
+ }
41
+ ],
42
+ "onReject": "scope",
43
+ "maxAttempts": 3
44
+ },
45
+ "next": "generate"
46
+ },
47
+ {
48
+ "id": "generate",
49
+ "name": "Generate the tiles",
50
+ "description": "the batch, named to the convention, in the house style",
51
+ "prompt": "Generate the batch into assets/tiles/. Step 1: work the locked tile list one tile at a time through the project's image capabilities — every prompt built from the style anchor (palette, outline, shading) so the batch reads as one hand's work, saved under the locked naming convention. Step 2: keep the set complete — the edge and corner variants from the list matter more to a level builder than another hero tile. Step 3: after generating, re-list assets/tiles/ against the tile list and fill any gap before completing. Call write_task_note with the count generated and the names.",
52
+ "suggestedRole": "image-generator",
53
+ "advanceWhen": {
54
+ "file": "assets/tiles",
55
+ "minBytes": 1,
56
+ "sniff": "nonempty"
57
+ },
58
+ "gate": {
59
+ "at": "completion",
60
+ "checks": [
61
+ {
62
+ "kind": "fileCount",
63
+ "ext": [
64
+ "png",
65
+ "jpg",
66
+ "jpeg",
67
+ "svg",
68
+ "webp"
69
+ ],
70
+ "min": 3,
71
+ "dir": "assets/tiles"
72
+ },
73
+ {
74
+ "kind": "fileCount",
75
+ "ext": [
76
+ "png"
77
+ ],
78
+ "min": 8,
79
+ "dir": "assets/tiles"
80
+ }
81
+ ],
82
+ "onReject": "generate",
83
+ "maxAttempts": 3
84
+ },
85
+ "next": "manifest"
86
+ },
87
+ {
88
+ "id": "manifest",
89
+ "name": "Write the manifest records",
90
+ "description": "one record per new tile, appended, ids unique",
91
+ "prompt": "Account for every tile in assets/manifest.json. Step 1: append one record per new tile to the top-level JSON array, keeping the existing records untouched. Step 2: each record carries exactly these fields: \"id\" (unique, e.g. tile-grass-01), \"file\" (the workspace-relative path, e.g. assets/tiles/tile-grass-01.png), \"size\" (the pixel spec, e.g. 32x32), and \"tags\" (an array like [\"forest\", \"ground\"]) — plus \"seed\" and \"prompt\" where the generation gave you them, so a tile can be re-made in-style later. Step 3: re-read the whole file after writing — it must parse as JSON, ids must stay unique, and every recorded file must exist on disk; a manifest that lists a tile that is not there is worse than no manifest. Call write_task_note with the record count before and after.",
92
+ "suggestedRole": "data-analyst",
93
+ "consumes": [
94
+ {
95
+ "file": "assets/tiles"
96
+ }
97
+ ],
98
+ "next": "report"
99
+ },
100
+ {
101
+ "id": "report",
102
+ "name": "Write the batch summary",
103
+ "description": "what was made, how it is named, what the library now holds",
104
+ "prompt": "Write the batch summary at {{workPath}}/report.md. Step 1: the headline — how many tiles this batch added and what terrain they cover, in one plain sentence. Step 2: the batch list — each tile's id, file, and tags, one line each. Step 3: note the conventions used (naming, size, style anchor) so the next batch starts from the same page, and name anything from the ask that was skipped and why. Step 4: close with the library's new total. Keep it under a page. Write {{workPath}}/report.md and call write_task_note with the report path and the new total.\n\nThe deliverable `{{workPath}}/report.md` lands in the project's artifacts drawer — write it with `write_artifact` and read it back with `read_artifact`; the shipped workspace stays untouched.",
105
+ "suggestedRole": "copywriter",
106
+ "advanceWhen": {
107
+ "file": "{{workPath}}/report.md",
108
+ "minBytes": 1,
109
+ "sniff": "nonempty",
110
+ "artifact": true
111
+ },
112
+ "gate": {
113
+ "at": "completion",
114
+ "checks": [
115
+ {
116
+ "kind": "minBytes",
117
+ "file": "{{workPath}}/report.md",
118
+ "bytes": 600,
119
+ "artifact": true
120
+ },
121
+ {
122
+ "kind": "contains",
123
+ "file": "{{workPath}}/report.md",
124
+ "pattern": "(?:^|\\n)#{1,3}\\s+\\S",
125
+ "flags": "i",
126
+ "label": "at least one markdown heading",
127
+ "artifact": true
128
+ }
129
+ ],
130
+ "onReject": "report",
131
+ "maxAttempts": 4
132
+ },
133
+ "next": "evaluate"
134
+ },
135
+ {
136
+ "id": "evaluate",
137
+ "name": "Evaluate",
138
+ "description": "Grade the deliverable against every acceptance criterion. All pass → finish; any fail → loop back and fix the gap.",
139
+ "prompt": "Open assets/manifest.json, the assets/tiles/ listing, {{workPath}}/scope.md, and {{workPath}}/report.md and verify every criterion: every tile on the locked list exists at the convention name — the missing corner variant is the classic failure; every new tile has a manifest record with id, file, size, and tags, ids unique, and every recorded path resolves to a real file — check both directions; the batch reads as one style family against the anchor notes; and the report's counts match the manifest. Write PASS/FAIL per criterion; on any failure, name the tile or record and loop back to generate.\n\nThe deliverable lives in the project's artifacts drawer — open `{{workPath}}/report.md` with `read_artifact`, not `read_file`.\n\nThen route — this is the whole point of the loop:\n\n- **Every criterion PASSES →** call `advance_task_step({ ref, stepId: \"evaluate\", next: \"finish\" })`.\n- **Any criterion FAILS →** write the specific gaps to notes, then call `advance_task_step({ ref, stepId: \"evaluate\", next: \"generate\" })` 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.",
140
+ "suggestedRole": "reviewer",
141
+ "consumes": [
142
+ {
143
+ "file": "{{workPath}}/report.md",
144
+ "artifact": true
145
+ }
146
+ ],
147
+ "next": "generate"
148
+ },
149
+ {
150
+ "id": "finish",
151
+ "name": "Finish",
152
+ "description": "All acceptance criteria met. Stamp a short summary and report DONE.",
153
+ "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.",
154
+ "suggestedRole": "developer",
155
+ "terminal": true
156
+ }
157
+ ],
158
+ "version": "1.0.2",
159
+ "releasedAt": "2026-08-21T00:00:00Z",
160
+ "paramSchema": {
161
+ "type": "object",
162
+ "properties": {
163
+ "workPath": {
164
+ "type": "string",
165
+ "title": "Working folder",
166
+ "description": "Per-task working folder in the artifacts drawer. Defaults to this task's own folder so runs never collide; override with a stable name when you deliberately want runs to share files.",
167
+ "default": "{{task.dir}}"
168
+ }
169
+ }
170
+ },
171
+ "minGezelVersion": "1.26233"
172
+ }
@@ -0,0 +1,162 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "title": "Tileset Batch — forest tiles, accounted for",
4
+ "objective": "Measure whether the tileset-batch craftbook produces a style-locked batch of forest tiles named to the library convention and appends an honest manifest record for every one — ids unique, every recorded file real.",
5
+ "tags": [
6
+ "data"
7
+ ],
8
+ "prompt": "need a batch of forest tiles for the platformer — grass, dirt, water edges, that kind of thing. keep the manifst updated",
9
+ "setup": {
10
+ "projectName": "Foxglove Platformer Assets",
11
+ "about": "Asset foundry project. The library's records live at workspace/assets/manifest.json (a JSON array, one record per asset) and the style anchor at workspace/assets/style.md. Tiles land in workspace/assets/tiles; the batch summary goes to workspace/report.md.",
12
+ "missionObjectives": "An asset library a game engine can trust: tiles at spec size in the house style, named to the convention, every one recorded in the manifest and no record pointing at a file that is not there. No live services, no real credentials.",
13
+ "files": [
14
+ {
15
+ "path": "assets/style.md",
16
+ "content": "# Asset library style anchor\n\n- Tile size: 32x32 pixels, no partial tiles.\n- Palette: moss green #4c7a3f, loam brown #6b4a2e, slate gray #5a6472,\n water blue #3f6d8e, highlight cream #e8dcb8.\n- Look: chunky 2px dark outlines (#22201c), flat interior shading, one\n highlight edge top-left. No gradients, no anti-aliased edges.\n- Naming: assets/tiles/tile-<terrain>-<variant>.png (e.g. tile-grass-01,\n tile-water-edge-n).\n- Every shipped asset gets a manifest record: id, file, size, tags —\n plus seed and prompt when generation provides them.\n"
17
+ },
18
+ {
19
+ "path": "assets/manifest.json",
20
+ "content": "[\n {\n \"id\": \"tile-stone-01\",\n \"file\": \"assets/tiles/tile-stone-01.png\",\n \"size\": \"32x32\",\n \"tags\": [\n \"stone\",\n \"ground\"\n ]\n },\n {\n \"id\": \"tile-stone-02\",\n \"file\": \"assets/tiles/tile-stone-02.png\",\n \"size\": \"32x32\",\n \"tags\": [\n \"stone\",\n \"ground\",\n \"variant\"\n ]\n }\n]\n"
21
+ },
22
+ {
23
+ "path": "assets/tiles/tile-stone-01.png",
24
+ "content": "placeholder tile image: stone ground\n"
25
+ },
26
+ {
27
+ "path": "assets/tiles/tile-stone-02.png",
28
+ "content": "placeholder tile image: stone ground variant\n"
29
+ }
30
+ ],
31
+ "worker": {
32
+ "name": "Bram",
33
+ "role": "Assetsmid"
34
+ },
35
+ "craftbookParams": {
36
+ "workPath": "tasks/eval"
37
+ }
38
+ },
39
+ "mocks": [],
40
+ "success": {
41
+ "summary": "assets/tiles holds the forest batch named to the convention; assets/manifest.json accounts for every tile with unique ids and real paths; tasks/eval/report.md summarizes the batch.",
42
+ "checks": [
43
+ {
44
+ "kind": "fileCount",
45
+ "ext": [
46
+ "png"
47
+ ],
48
+ "min": 8,
49
+ "dir": "assets/tiles"
50
+ }
51
+ ],
52
+ "deliverables": [
53
+ {
54
+ "path": "assets/manifest.json",
55
+ "kind": "json",
56
+ "minBytes": 400,
57
+ "checks": [
58
+ {
59
+ "kind": "sniff",
60
+ "file": "assets/manifest.json",
61
+ "sniff": "json-valid"
62
+ },
63
+ {
64
+ "kind": "recordSchema",
65
+ "file": "assets/manifest.json",
66
+ "fields": [
67
+ {
68
+ "name": "id",
69
+ "type": "nonempty"
70
+ },
71
+ {
72
+ "name": "file",
73
+ "type": "nonempty"
74
+ },
75
+ {
76
+ "name": "size",
77
+ "required": false
78
+ },
79
+ {
80
+ "name": "tags",
81
+ "required": false
82
+ },
83
+ {
84
+ "name": "seed",
85
+ "required": false
86
+ },
87
+ {
88
+ "name": "prompt",
89
+ "required": false
90
+ }
91
+ ],
92
+ "minRows": 8,
93
+ "uniqueBy": "id"
94
+ },
95
+ {
96
+ "kind": "citationsResolve",
97
+ "file": "assets/manifest.json",
98
+ "pattern": "\"file\"\\s*:\\s*\"([^\"]+)\"",
99
+ "minCitations": 8,
100
+ "label": "every recorded file exists on disk"
101
+ },
102
+ {
103
+ "kind": "contains",
104
+ "file": "assets/manifest.json",
105
+ "pattern": "grass|dirt|water",
106
+ "flags": "i",
107
+ "label": "the asked-for terrain made the batch"
108
+ }
109
+ ]
110
+ },
111
+ {
112
+ "path": "tasks/eval/report.md",
113
+ "kind": "markdown-report",
114
+ "minBytes": 600,
115
+ "checks": [
116
+ {
117
+ "kind": "contains",
118
+ "file": "tasks/eval/report.md",
119
+ "pattern": "(?:^|\\n)#{1,3}\\s+\\S",
120
+ "flags": "i"
121
+ },
122
+ {
123
+ "kind": "contains",
124
+ "file": "tasks/eval/report.md",
125
+ "pattern": "tile",
126
+ "flags": "i",
127
+ "label": "the batch is summarized"
128
+ }
129
+ ]
130
+ }
131
+ ]
132
+ },
133
+ "rubric": {
134
+ "artifact": {
135
+ "path": "tasks/eval/report.md",
136
+ "kind": "markdown"
137
+ },
138
+ "axes": [
139
+ {
140
+ "name": "style consistency",
141
+ "description": "The batch reads as one hand's work against the style anchor — palette, outlines, and shading held across every tile."
142
+ },
143
+ {
144
+ "name": "naming discipline",
145
+ "description": "Every file follows tile-<terrain>-<variant>.png; the unglamorous edge and corner variants are there."
146
+ },
147
+ {
148
+ "name": "coverage",
149
+ "description": "The batch covers what was asked — grass, dirt, water edges — as a usable set, not eight hero tiles."
150
+ },
151
+ {
152
+ "name": "manifest quality",
153
+ "description": "Records are complete and honest: unique ids, real paths, useful tags, existing records untouched."
154
+ }
155
+ ]
156
+ },
157
+ "qualityFocus": [
158
+ "manifest honesty",
159
+ "naming convention",
160
+ "style lock"
161
+ ]
162
+ }
@@ -0,0 +1,119 @@
1
+ {
2
+ "id": "tone-rewrite",
3
+ "name": "Brand Tone Rewrite",
4
+ "description": "Re-voice existing content to a specific brand tone while preserving every fact and the original structure: it first codifies the target voice into a concrete style guide — adjectives, do's and don'ts, banned and preferred words, sentence-length feel, point of view — then rewrites the content line by line to that voice without changing what it says. Covers tone of voice rewrite, rebranding copy, voice and tone, brand voice, re-voice content, and style adaptation. Codifying the voice into checkable rules before rewriting is the point: a small model that has explicit do/don't rules applies the tone consistently, instead of a vague 'make it friendlier' that drifts paragraph to paragraph.\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. Voice scope (planner) — codify the target tone into a concrete, checkable style guide → gated on artifact `{{workPath}}/voice-scope.md` (markdown-notes)\n2. Rewrite to voice (copywriter) — re-voice the content to the style guide, preserving meaning → gated on `tone-rewrite.md` (markdown-doc)\n\nThe gates never advance with an unmet criterion, and loop back to the\nowning phase to fix named gaps.\n",
5
+ "entryStepId": "voice-scope",
6
+ "triggers": [
7
+ "rewrite in our brand tone",
8
+ "change the voice",
9
+ "re-voice this content",
10
+ "match brand voice",
11
+ "tone of voice"
12
+ ],
13
+ "steps": [
14
+ {
15
+ "id": "voice-scope",
16
+ "name": "Voice scope",
17
+ "description": "codify the target tone into a concrete, checkable style guide",
18
+ "prompt": "1) Define the target voice in 3-5 adjectives (e.g. 'confident, warm, plain-spoken'). 2) Translate each adjective into 1-2 concrete rules (e.g. 'confident → no hedging words like maybe/perhaps'; 'plain-spoken → grade-8 reading level, no jargon'). 3) List banned words/phrases and preferred replacements. 4) Set point of view (first/second person), contraction policy, sentence-length feel, and how to handle CTAs. 5) Write or pick one before/after example sentence showing the transformation. Crucially, note what must NOT change: facts, claims, structure, and meaning. Write an acceptance-criteria checklist (e.g. 'every banned word removed'; 'POV/contractions consistent'; 'reading level on target'; 'no fact or section changed'; 'reads as one consistent voice'). Use write_task_note for the style guide + checklist, and write the same to the produces path. No rewrite yet.\n\nThe deliverable `{{workPath}}/voice-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": "{{workPath}}/voice-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": "{{workPath}}/voice-scope.md",
32
+ "bytes": 120,
33
+ "artifact": true
34
+ },
35
+ {
36
+ "kind": "sniff",
37
+ "file": "{{workPath}}/voice-scope.md",
38
+ "sniff": "nonempty",
39
+ "artifact": true
40
+ }
41
+ ],
42
+ "onReject": "voice-scope",
43
+ "maxAttempts": 3
44
+ },
45
+ "next": "rewrite"
46
+ },
47
+ {
48
+ "id": "rewrite",
49
+ "name": "Rewrite to voice",
50
+ "description": "re-voice the content to the style guide, preserving meaning",
51
+ "prompt": "Rewrite the content to the locked style guide. 1) Go section by section, preserving the original structure and headings exactly. 2) Apply every voice rule: remove banned words, use the specified POV and contraction policy, hit the target sentence feel and reading level. 3) Change HOW it reads, never WHAT it says — every fact, number, claim, and instruction must survive unchanged. 4) Keep the voice identical across the whole piece; no drift. 5) Output the rewritten content in the same format/markdown as the source. Save to the produces path and note which style rules you applied and confirm no facts changed.",
52
+ "suggestedRole": "copywriter",
53
+ "advanceWhen": {
54
+ "file": "tone-rewrite.md",
55
+ "minBytes": 1,
56
+ "sniff": "nonempty"
57
+ },
58
+ "gate": {
59
+ "at": "completion",
60
+ "checks": [
61
+ {
62
+ "kind": "minBytes",
63
+ "file": "tone-rewrite.md",
64
+ "bytes": 500
65
+ }
66
+ ],
67
+ "scripts": [
68
+ {
69
+ "name": "checkContains",
70
+ "scope": "standard",
71
+ "inputs": {
72
+ "file": "tone-rewrite.md",
73
+ "pattern": "(?:^|\\n)#{1,3}\\s+\\S",
74
+ "flags": "i"
75
+ }
76
+ }
77
+ ],
78
+ "onReject": "rewrite",
79
+ "maxAttempts": 4
80
+ },
81
+ "next": "evaluate"
82
+ },
83
+ {
84
+ "id": "evaluate",
85
+ "name": "Evaluate",
86
+ "description": "Grade the deliverable against every acceptance criterion. All pass → finish; any fail → loop back and fix the gap.",
87
+ "prompt": "Compare tone-rewrite.md to the source and the style guide. Check EACH criterion and write PASS/FAIL: (a) every banned word/phrase is gone and preferred terms used; (b) POV, contraction policy, and reading level match the guide; (c) NO fact, number, claim, or section was changed or dropped (diff the meaning carefully — this is critical); (d) structure/headings preserved; (e) reads as one consistent voice with no drift. A rewrite that nails the tone but altered a fact FAILS — loop back to rewrite.\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: \"rewrite\" })` 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.",
88
+ "suggestedRole": "reviewer",
89
+ "consumes": [
90
+ {
91
+ "file": "tone-rewrite.md"
92
+ }
93
+ ],
94
+ "next": "rewrite"
95
+ },
96
+ {
97
+ "id": "finish",
98
+ "name": "Finish",
99
+ "description": "All acceptance criteria met. Stamp a short summary and report DONE.",
100
+ "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.",
101
+ "suggestedRole": "developer",
102
+ "terminal": true
103
+ }
104
+ ],
105
+ "version": "1.0.2",
106
+ "releasedAt": "2026-08-21T00:00:00Z",
107
+ "paramSchema": {
108
+ "type": "object",
109
+ "properties": {
110
+ "workPath": {
111
+ "type": "string",
112
+ "title": "Working folder",
113
+ "description": "Per-task working folder in the artifacts drawer. Defaults to this task's own folder so runs never collide; override with a stable name when you deliberately want runs to share files.",
114
+ "default": "{{task.dir}}"
115
+ }
116
+ }
117
+ },
118
+ "minGezelVersion": "1.26233"
119
+ }
@@ -0,0 +1,113 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "title": "Brand Tone Rewrite smoke eval",
4
+ "objective": "Self-contained smoke eval for the Brand Tone Rewrite craftbook using the corpus generic harness.",
5
+ "tags": [
6
+ "corpus"
7
+ ],
8
+ "prompt": "We need a brand tone rewrite for the returns-desk work. The backgound info is in source/brief.md — have a look and write it up in report.md.",
9
+ "setup": {
10
+ "projectName": "Brand Tone Rewrite Eval",
11
+ "about": "Self-contained eval project for tone-rewrite. Seeded inputs are under workspace/source or workspace/fixtures; final deliverable is workspace/report.md.",
12
+ "missionObjectives": "Use the Brand Tone Rewrite craftbook/template, read the seeded local fixtures, and write report.md without network calls, real credentials, or live services.",
13
+ "files": [
14
+ {
15
+ "path": "source/brief.md",
16
+ "content": "# Brand Tone Rewrite 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: tone-rewrite - Brand Tone Rewrite.\n"
17
+ }
18
+ ],
19
+ "worker": {
20
+ "name": "Jules",
21
+ "role": "Writer"
22
+ },
23
+ "craftbookParams": {
24
+ "workPath": "tasks/eval"
25
+ }
26
+ },
27
+ "mocks": [],
28
+ "success": {
29
+ "summary": "report.md is a source-grounded markdown artifact with required facts and actions.",
30
+ "deliverables": [
31
+ {
32
+ "path": "report.md",
33
+ "kind": "markdown-report",
34
+ "minBytes": 1000,
35
+ "checks": [
36
+ {
37
+ "kind": "contains",
38
+ "file": "report.md",
39
+ "pattern": "(?:^|\\n)#{1,3}\\s+\\S",
40
+ "flags": "i"
41
+ },
42
+ {
43
+ "kind": "contains",
44
+ "file": "report.md",
45
+ "pattern": "source/brief\\.md|Brief",
46
+ "flags": "i",
47
+ "label": "cite or name the seeded source"
48
+ },
49
+ {
50
+ "kind": "contains",
51
+ "file": "report.md",
52
+ "pattern": "18\\b[\\s\\S]{0,30}\\bSKUs",
53
+ "flags": "i",
54
+ "label": "include the 18-SKU pilot scope"
55
+ },
56
+ {
57
+ "kind": "contains",
58
+ "file": "report.md",
59
+ "pattern": "18\\s*hours|6\\s*hours",
60
+ "flags": "i"
61
+ },
62
+ {
63
+ "kind": "contains",
64
+ "file": "report.md",
65
+ "pattern": "14\\.2%|8\\.9%",
66
+ "flags": "i"
67
+ },
68
+ {
69
+ "kind": "contains",
70
+ "file": "report.md",
71
+ "pattern": "status silence|photo submission",
72
+ "flags": "i"
73
+ },
74
+ {
75
+ "kind": "contains",
76
+ "file": "report.md",
77
+ "pattern": "automated status emails|barcode|Finance",
78
+ "flags": "i"
79
+ }
80
+ ]
81
+ }
82
+ ]
83
+ },
84
+ "rubric": {
85
+ "artifact": {
86
+ "path": "report.md",
87
+ "kind": "markdown"
88
+ },
89
+ "axes": [
90
+ {
91
+ "name": "grounding",
92
+ "description": "Seeded facts appear faithfully and the source is cited."
93
+ },
94
+ {
95
+ "name": "structure",
96
+ "description": "Sections progress logically for the artifact class."
97
+ },
98
+ {
99
+ "name": "completeness",
100
+ "description": "Required elements (risks, next actions, scope) are all present."
101
+ },
102
+ {
103
+ "name": "tone",
104
+ "description": "The register fits the audience and artifact class."
105
+ }
106
+ ]
107
+ },
108
+ "qualityFocus": [
109
+ "source-grounded prose",
110
+ "section structure",
111
+ "next-action clarity"
112
+ ]
113
+ }