@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,113 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "title": "Standup / Team Update Summary smoke eval",
4
+ "objective": "Self-contained smoke eval for the Standup / Team Update Summary craftbook using the corpus generic harness.",
5
+ "tags": [
6
+ "corpus"
7
+ ],
8
+ "prompt": "We need a standup / team update summary 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": "Standup / Team Update Summary Eval",
11
+ "about": "Self-contained eval project for standup-summary. Seeded inputs are under workspace/source or workspace/fixtures; final deliverable is workspace/report.md.",
12
+ "missionObjectives": "Use the Standup / Team Update Summary 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": "# Standup / Team Update Summary 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: standup-summary - Standup / Team Update Summary.\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
+ }
@@ -0,0 +1,159 @@
1
+ {
2
+ "id": "state-machine",
3
+ "name": "Model a Flow as a State Machine",
4
+ "description": "Model a stateful flow (checkout, order lifecycle, connection, wizard) as an explicit finite state machine with named states, guarded transitions, and rejected illegal moves — making impossible states impossible. Models the machine FIRST — the full state set, the events, the legal transition table, guards, and entry/exit effects — then implements a transition function that rejects illegal events, then tests every legal path and that illegal transitions are refused. Covers states/events/transitions, transition tables, guards, side-effects on entry, illegal-transition rejection, and exhaustive path testing.\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. Model the machine (planner) — lock states, events, transition table, guards → gated on artifact `{{workPath}}/model.md` (markdown-notes)\n2. Build the machine (developer) — implement a guarded transition function → gated on `src/machine.js` (code-module)\n3. Test every path (developer) — test legal paths and illegal-transition rejection → gated on `src/machine.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": "model",
6
+ "triggers": [
7
+ "model a state machine",
8
+ "build a finite state machine",
9
+ "order lifecycle states",
10
+ "implement a workflow as states",
11
+ "state transitions"
12
+ ],
13
+ "steps": [
14
+ {
15
+ "id": "model",
16
+ "name": "Model the machine",
17
+ "description": "lock states, events, transition table, guards",
18
+ "prompt": "Model the state machine before coding — making illegal states unrepresentable is the whole value. Step 1: Enumerate the complete, finite set of STATES (including initial and terminal states). Step 2: Enumerate the EVENTS/inputs that can occur. Step 3: Write the full TRANSITION TABLE: for each (state, event) pair, the next state — and explicitly mark the pairs that are ILLEGAL (no transition). Step 4: Note any guards (conditions that must hold for a transition) and entry/exit side-effects per state. Step 5: Write a numbered acceptance-criteria checklist of 5-9 items (e.g. 'the machine starts in the initial state', 'every legal transition produces the table's next state', 'an illegal (state,event) pair is rejected, not silently ignored', 'terminal states accept no further transitions'). `write_task_note` the state diagram/table + checklist and write the same to the produces path.\n\nThe deliverable `{{workPath}}/model.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}}/model.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}}/model.md",
32
+ "bytes": 120,
33
+ "artifact": true
34
+ },
35
+ {
36
+ "kind": "sniff",
37
+ "file": "{{workPath}}/model.md",
38
+ "sniff": "nonempty",
39
+ "artifact": true
40
+ }
41
+ ],
42
+ "onReject": "model",
43
+ "maxAttempts": 3
44
+ },
45
+ "next": "build"
46
+ },
47
+ {
48
+ "id": "build",
49
+ "name": "Build the machine",
50
+ "description": "implement a guarded transition function",
51
+ "prompt": "Implement the state machine to the model. Step 1: Represent states and events as a closed set (enum/union) so only modeled values are usable. Step 2: Encode the transition table directly and write a `transition(state, event)` function that returns the next state for legal pairs. Step 3: For illegal (state, event) pairs, REJECT explicitly (throw a typed error or return an explicit rejection) — never silently stay or fall through. Step 4: Evaluate guards before transitioning and run entry/exit effects on the relevant transitions. Step 5: Make the current state observable and start in the initial state. Write the machine to the produces path. On a loop-back, fix only the named gaps. `write_task_note` the file path and which criteria now pass.",
52
+ "suggestedRole": "developer",
53
+ "advanceWhen": {
54
+ "file": "src/machine.js",
55
+ "minBytes": 1,
56
+ "sniff": "nonempty"
57
+ },
58
+ "gate": {
59
+ "at": "completion",
60
+ "checks": [
61
+ {
62
+ "kind": "minBytes",
63
+ "file": "src/machine.js",
64
+ "bytes": 200
65
+ },
66
+ {
67
+ "kind": "sniff",
68
+ "file": "src/machine.js",
69
+ "sniff": "nonempty"
70
+ },
71
+ {
72
+ "kind": "esmImports",
73
+ "file": "src/machine.js"
74
+ },
75
+ {
76
+ "kind": "sourceParses",
77
+ "file": "src/machine.js"
78
+ }
79
+ ],
80
+ "onReject": "build",
81
+ "maxAttempts": 3
82
+ },
83
+ "next": "test"
84
+ },
85
+ {
86
+ "id": "test",
87
+ "name": "Test every path",
88
+ "description": "test legal paths and illegal-transition rejection",
89
+ "prompt": "Write tests covering the transition table exhaustively. Step 1: Assert the machine starts in the initial state. Step 2: For every LEGAL (state, event) pair in the table, drive the machine to that state and assert the event produces the table's next state. Step 3: For representative ILLEGAL pairs, assert the machine rejects the event (throws/returns rejection) and does NOT change state. Step 4: Assert terminal states reject all further events, and that guarded transitions are blocked when the guard fails. `write_task_note` the test file path and pass/fail count.",
90
+ "suggestedRole": "developer",
91
+ "advanceWhen": {
92
+ "file": "src/machine.test.js",
93
+ "minBytes": 1,
94
+ "sniff": "nonempty"
95
+ },
96
+ "gate": {
97
+ "at": "completion",
98
+ "checks": [
99
+ {
100
+ "kind": "minBytes",
101
+ "file": "src/machine.js",
102
+ "bytes": 200
103
+ },
104
+ {
105
+ "kind": "sniff",
106
+ "file": "src/machine.js",
107
+ "sniff": "nonempty"
108
+ },
109
+ {
110
+ "kind": "esmImports",
111
+ "file": "src/machine.js"
112
+ },
113
+ {
114
+ "kind": "sourceParses",
115
+ "file": "src/machine.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 exercise the machine. For EACH acceptance criterion: confirm it starts in the initial state, confirm every legal transition matches the table, confirm illegal (state,event) pairs are explicitly rejected without changing state, and confirm terminal states and guards behave. Write PASS/FAIL per criterion; an illegal transition that is silently ignored is a FAIL.\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/machine.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.0.2",
146
+ "releasedAt": "2026-08-21T00:00:00Z",
147
+ "paramSchema": {
148
+ "type": "object",
149
+ "properties": {
150
+ "workPath": {
151
+ "type": "string",
152
+ "title": "Working folder",
153
+ "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.",
154
+ "default": "{{task.dir}}"
155
+ }
156
+ }
157
+ },
158
+ "minGezelVersion": "1.26233"
159
+ }
@@ -0,0 +1,95 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "title": "Model a Flow as a State Machine smoke eval",
4
+ "objective": "Self-contained smoke eval for the Model a Flow as a State Machine craftbook using the code generic harness.",
5
+ "tags": [
6
+ "code"
7
+ ],
8
+ "prompt": "We need a small Node helper for this — the requirments are in source/requirements.md. Put it in src/solution.mjs.",
9
+ "setup": {
10
+ "projectName": "Model a Flow as a State Machine Eval",
11
+ "about": "Self-contained eval project for state-machine. Seeded inputs are under workspace/source or workspace/fixtures; final deliverable is workspace/src/solution.mjs.",
12
+ "missionObjectives": "Use the Model a Flow as a State Machine craftbook/template, read the seeded local fixtures, and write src/solution.mjs without network calls, real credentials, or live services.",
13
+ "files": [
14
+ {
15
+ "path": "source/brief.md",
16
+ "content": "# Model a Flow as a State Machine 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: state-machine - Model a Flow as a State Machine.\n"
17
+ },
18
+ {
19
+ "path": "source/requirements.md",
20
+ "content": "# Runner Requirements\n\nBuild a dependency-free Node ESM helper for Boreal Desk support operations. Export at least one function. Include a tiny self-test section using node:assert or an equivalent assertion helper. Use fixture values for 18 -> 6 hour response time and 14.2 -> 8.9 refund leakage.\n"
21
+ }
22
+ ],
23
+ "worker": {
24
+ "name": "Jules",
25
+ "role": "Developer"
26
+ },
27
+ "craftbookParams": {
28
+ "workPath": "tasks/eval"
29
+ }
30
+ },
31
+ "mocks": [],
32
+ "success": {
33
+ "summary": "src/solution.mjs is a local ESM module with basic self-test scaffolding.",
34
+ "deliverables": [
35
+ {
36
+ "path": "src/solution.mjs",
37
+ "kind": "code-with-tests",
38
+ "minBytes": 1500,
39
+ "checks": [
40
+ {
41
+ "kind": "esmImports",
42
+ "file": "src/solution.mjs"
43
+ },
44
+ {
45
+ "kind": "contains",
46
+ "file": "src/solution.mjs",
47
+ "pattern": "export\\s+(function|const|class)|export\\s*\\{",
48
+ "flags": "i"
49
+ },
50
+ {
51
+ "kind": "contains",
52
+ "file": "src/solution.mjs",
53
+ "pattern": "assert|test|describe|it|expect",
54
+ "flags": "i"
55
+ },
56
+ {
57
+ "kind": "contains",
58
+ "file": "src/solution.mjs",
59
+ "pattern": "18|6|14\\.2|8\\.9|Boreal",
60
+ "flags": "i"
61
+ }
62
+ ]
63
+ }
64
+ ]
65
+ },
66
+ "rubric": {
67
+ "artifact": {
68
+ "path": "src/solution.mjs",
69
+ "kind": "typescript"
70
+ },
71
+ "axes": [
72
+ {
73
+ "name": "correctness",
74
+ "description": "The module does what the requirements ask, with sensible edge handling."
75
+ },
76
+ {
77
+ "name": "verification",
78
+ "description": "Self-tests exercise real behavior, not trivial truths."
79
+ },
80
+ {
81
+ "name": "clarity",
82
+ "description": "Exports, naming, and structure make the module usable without reading every line."
83
+ },
84
+ {
85
+ "name": "robustness",
86
+ "description": "Invalid input and boundary cases fail loudly rather than silently."
87
+ }
88
+ ]
89
+ },
90
+ "qualityFocus": [
91
+ "runnable ESM",
92
+ "test scaffolding",
93
+ "local fixtures"
94
+ ]
95
+ }
@@ -0,0 +1,158 @@
1
+ {
2
+ "id": "status-report",
3
+ "name": "Recurring Status Report",
4
+ "description": "Produce a recurring (weekly/biweekly) status report by gathering signals from the team's tools and writing a tight, skimmable update for stakeholders. Scopes the report template and the exact data sources FIRST (sections, audience, reporting window, RAG/health convention), then a developer gathers the raw signals from issue trackers, PRs, metrics, and notes into a facts file, then a copywriter writes the polished report strictly from those gathered facts. Scoping the template before gathering is what keeps every recurring issue consistent and prevents the model from padding with prose. Use for weekly status updates, sprint reports, project health reports, stakeholder updates, and exec summaries.\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 report (planner) — lock the template, sources, window, and health convention → gated on artifact `{{workPath}}/scope.md` (markdown-notes)\n2. Gather signals (developer) — pull raw facts from each named source into a facts file → gated on artifact `{{workPath}}/gather.md` (markdown-notes)\n3. Write the report (copywriter) — compose the polished report from gathered facts → gated on `report.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": "scope",
6
+ "triggers": [
7
+ "weekly status report",
8
+ "project update",
9
+ "sprint report",
10
+ "status update",
11
+ "stakeholder report"
12
+ ],
13
+ "steps": [
14
+ {
15
+ "id": "scope",
16
+ "name": "Scope the report",
17
+ "description": "lock the template, sources, window, and health convention",
18
+ "prompt": "Define the report contract BEFORE gathering anything. (1) Lock the section template — e.g. Headline / Health (RAG: Green-Amber-Red with the rule for each color) / Shipped this period / In progress / Blockers & risks / Next period / Metrics. (2) Name the EXACT data sources for each section (which repo, which board, which metric dashboard, which notes file) so gathering is unambiguous. (3) Set the reporting window (the date range this issue covers) and the audience (exec vs team — drives length and jargon). (4) Set length targets per section (e.g. Blockers ≤ 3 bullets). Write an acceptance-criteria checklist ('every section from the template is present', 'health has a justifying one-liner', 'every claim traces to a gathered fact', 'covers only the reporting window', 'skimmable in under two minutes') plus the template + source map to {{workPath}}/scope.md via write_task_note AND the produces path.\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": "planner",
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": "gather"
46
+ },
47
+ {
48
+ "id": "gather",
49
+ "name": "Gather signals",
50
+ "description": "pull raw facts from each named source into a facts file",
51
+ "prompt": "Collect the raw material for each section from the sources named in scope. For each source pull the items inside the reporting window only: merged PRs / closed issues (shipped), open in-progress items, anything labelled blocked or at-risk, and the current value (and prior value if available) for each tracked metric. Record everything as a flat, attributed list in {{workPath}}/gather.md — one bullet per fact, each tagged with its source and the template section it feeds — NOT prose. Do not editorialize or summarize here; capturing accurate raw facts is the whole job. If a source is empty or unreachable, note that explicitly rather than guessing. Write the facts file via write_task_note and end with a per-section fact count.\n\nThe deliverable `{{workPath}}/gather.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": "developer",
53
+ "advanceWhen": {
54
+ "file": "{{workPath}}/gather.md",
55
+ "minBytes": 1,
56
+ "sniff": "nonempty",
57
+ "artifact": true
58
+ },
59
+ "gate": {
60
+ "at": "completion",
61
+ "checks": [
62
+ {
63
+ "kind": "minBytes",
64
+ "file": "{{workPath}}/gather.md",
65
+ "bytes": 120,
66
+ "artifact": true
67
+ },
68
+ {
69
+ "kind": "sniff",
70
+ "file": "{{workPath}}/gather.md",
71
+ "sniff": "nonempty",
72
+ "artifact": true
73
+ }
74
+ ],
75
+ "onReject": "gather",
76
+ "maxAttempts": 3
77
+ },
78
+ "next": "write"
79
+ },
80
+ {
81
+ "id": "write",
82
+ "name": "Write the report",
83
+ "description": "compose the polished report from gathered facts",
84
+ "prompt": "Write report.md following the locked template exactly, using ONLY facts from {{workPath}}/gather.md. Lead with a one-sentence headline and the health RAG plus its justifying one-liner. Turn the gathered bullets into tight, scannable prose — short bullets over paragraphs, numbers where they exist, and a stated next step for every blocker. Respect the per-section length caps; cut, don't pad. Every claim must trace to a gathered fact — invent nothing. End with the Next-period section as concrete intended outcomes. On a loop-back, fix only the sections the reviewer flagged. Write the report path and a confirmation that all template sections are present to notes via write_task_note.\n\nBefore working, open the artifact input `{{workPath}}/gather.md` with `read_artifact`; do not look for it in the workspace.",
85
+ "suggestedRole": "copywriter",
86
+ "consumes": [
87
+ {
88
+ "file": "{{workPath}}/gather.md",
89
+ "artifact": true
90
+ }
91
+ ],
92
+ "advanceWhen": {
93
+ "file": "report.md",
94
+ "minBytes": 1,
95
+ "sniff": "nonempty"
96
+ },
97
+ "gate": {
98
+ "at": "completion",
99
+ "checks": [
100
+ {
101
+ "kind": "minBytes",
102
+ "file": "report.md",
103
+ "bytes": 500
104
+ }
105
+ ],
106
+ "scripts": [
107
+ {
108
+ "name": "checkContains",
109
+ "scope": "standard",
110
+ "inputs": {
111
+ "file": "report.md",
112
+ "pattern": "(?:^|\\n)#{1,3}\\s+\\S",
113
+ "flags": "i"
114
+ }
115
+ }
116
+ ],
117
+ "onReject": "write",
118
+ "maxAttempts": 4
119
+ },
120
+ "next": "evaluate"
121
+ },
122
+ {
123
+ "id": "evaluate",
124
+ "name": "Evaluate",
125
+ "description": "Grade the deliverable against every acceptance criterion. All pass → finish; any fail → loop back and fix the gap.",
126
+ "prompt": "QA report.md against the locked criteria. (1) Confirm every template section from {{workPath}}/scope.md is present and in order; FAIL on any missing section. (2) Confirm the health RAG has a justifying one-liner consistent with the gathered blockers/metrics. (3) Trace 4-5 specific claims back to {{workPath}}/gather.md; FAIL any claim with no supporting fact. (4) Check the window: nothing reported outside the locked date range. (5) Check skimmability and length caps — short bullets, no padding, readable in under two minutes. Write PASS/FAIL per criterion with the specific offending lines.\n\nThen route — this is the whole point of the loop:\n\n- **Every criterion PASSES →** call `advance_task_step({ ref, stepId: \"evaluate\", next: \"finish\" })`.\n- **Any criterion FAILS →** write the specific gaps to notes, then call `advance_task_step({ ref, stepId: \"evaluate\", next: \"write\" })` to loop back. The builder fixes exactly those gaps.\n\nNever route to `finish` while any criterion is unmet. The build phase's completion gate already blocked a grossly-incomplete deliverable; your job is the judgment an automated check cannot make (does it actually work, read well, look right). After ~3 unproductive loops, stop and report DONE_WITH_CONCERNS so the user can step in.",
127
+ "suggestedRole": "reviewer",
128
+ "consumes": [
129
+ {
130
+ "file": "report.md"
131
+ }
132
+ ],
133
+ "next": "write"
134
+ },
135
+ {
136
+ "id": "finish",
137
+ "name": "Finish",
138
+ "description": "All acceptance criteria met. Stamp a short summary and report DONE.",
139
+ "prompt": "Every acceptance criterion passed. Write a one-paragraph DONE summary to task notes via `write_task_note`: what was built, the deliverable path(s), and a one-line confirmation that each criterion is met. Then report DONE.",
140
+ "suggestedRole": "developer",
141
+ "terminal": true
142
+ }
143
+ ],
144
+ "version": "1.0.2",
145
+ "releasedAt": "2026-08-21T00:00:00Z",
146
+ "paramSchema": {
147
+ "type": "object",
148
+ "properties": {
149
+ "workPath": {
150
+ "type": "string",
151
+ "title": "Working folder",
152
+ "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.",
153
+ "default": "{{task.dir}}"
154
+ }
155
+ }
156
+ },
157
+ "minGezelVersion": "1.26233"
158
+ }
@@ -0,0 +1,113 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "title": "Recurring Status Report smoke eval",
4
+ "objective": "Self-contained smoke eval for the Recurring Status Report craftbook using the corpus generic harness.",
5
+ "tags": [
6
+ "corpus"
7
+ ],
8
+ "prompt": "We need a recurring status report 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": "Recurring Status Report Eval",
11
+ "about": "Self-contained eval project for status-report. Seeded inputs are under workspace/source or workspace/fixtures; final deliverable is workspace/report.md.",
12
+ "missionObjectives": "Use the Recurring Status Report 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": "# Recurring Status Report 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: status-report - Recurring Status Report.\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
+ }