@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,101 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "title": "Formatted PDF Report Markdown-source smoke eval",
4
+ "objective": "Verify that the report workflow produces a complete, source-grounded Markdown report before DocBlocks conversion; catalog contract tests cover the PDF toolset, artifact gate, and no-HTML routing.",
5
+ "tags": [
6
+ "corpus"
7
+ ],
8
+ "prompt": "Read source/brief.md and write the complete report source to report.md. Use Markdown headings and a compact metrics table. Include an executive summary and explicit recommendations. Do not create HTML.",
9
+ "setup": {
10
+ "projectName": "Formatted PDF Report Eval",
11
+ "about": "The report source is Markdown and will be converted to PDF by the DocBlocks production step.",
12
+ "missionObjectives": "Create a source-grounded report.md that is ready for direct PDF conversion without HTML or CSS.",
13
+ "files": [
14
+ {
15
+ "path": "source/brief.md",
16
+ "content": "# Boreal Desk Returns Pilot\n\nAudience: operations leaders.\n\nFacts:\n- The 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: automated status emails, barcode-exception training, and a weekly Finance exception export.\n\nDo not invent other metrics."
17
+ }
18
+ ],
19
+ "worker": {
20
+ "name": "Jules",
21
+ "role": "Copywriter"
22
+ },
23
+ "craftbookParams": {
24
+ "workPath": "tasks/eval"
25
+ }
26
+ },
27
+ "mocks": [],
28
+ "success": {
29
+ "summary": "report.md is a complete Markdown source grounded in every supplied fact and ready for DocBlocks PDF conversion.",
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)#\\s+.+",
40
+ "flags": "m"
41
+ },
42
+ {
43
+ "kind": "contains",
44
+ "file": "report.md",
45
+ "pattern": "executive summary",
46
+ "flags": "i"
47
+ },
48
+ {
49
+ "kind": "contains",
50
+ "file": "report.md",
51
+ "pattern": "18\\s+SKUs|18\\s+hours|6\\s+hours|14\\.2%|8\\.9%",
52
+ "flags": "i"
53
+ },
54
+ {
55
+ "kind": "contains",
56
+ "file": "report.md",
57
+ "pattern": "automated status emails|barcode-exception training|weekly Finance exception export",
58
+ "flags": "i"
59
+ },
60
+ {
61
+ "kind": "contains",
62
+ "file": "report.md",
63
+ "pattern": "recommend",
64
+ "flags": "i"
65
+ },
66
+ {
67
+ "kind": "notContains",
68
+ "file": "report.md",
69
+ "pattern": "<html|<style|@page",
70
+ "flags": "i"
71
+ }
72
+ ]
73
+ }
74
+ ]
75
+ },
76
+ "rubric": {
77
+ "artifact": {
78
+ "path": "report.md",
79
+ "kind": "markdown"
80
+ },
81
+ "axes": [
82
+ {
83
+ "name": "grounding",
84
+ "description": "Every metric and required action comes from the seeded brief."
85
+ },
86
+ {
87
+ "name": "structure",
88
+ "description": "The Markdown has a clear title, executive summary, body sections, and recommendations."
89
+ },
90
+ {
91
+ "name": "readiness",
92
+ "description": "The source is complete enough for direct DocBlocks conversion without an HTML intermediary."
93
+ }
94
+ ]
95
+ },
96
+ "qualityFocus": [
97
+ "Markdown source quality",
98
+ "source grounding",
99
+ "no HTML intermediary"
100
+ ]
101
+ }
@@ -0,0 +1,158 @@
1
+ {
2
+ "id": "research-report",
3
+ "name": "Cited Research Report",
4
+ "description": "Produce a rigorously cited research report that answers a specific question end to end: a planner first decomposes the question into sub-questions and locks the scope, then a researcher gathers and logs primary and secondary sources with inline citations, then a copywriter writes a structured markdown report (executive summary, findings, evidence, limitations, references). The ordering matters because a small model that writes before scoping rambles and a model that writes without a source log fabricates citations; locking sub-questions and a source table first turns the report into a fill-in-the-evidence exercise. Use this for literature-backed analysis, deep dives, investigative write-ups, background research, and any 'find out and write it up with sources' task where every claim must trace to a citation.\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. Question scope (planner) — decompose the question into sub-questions + lock scope → gated on artifact `{{workPath}}/question-scope.md` (markdown-notes)\n2. Research & source log (researcher) — gather sources, log each with a citation key + key facts → gated on artifact `{{workPath}}/sources.md` (markdown-notes)\n3. Write the report (copywriter) — write the cited markdown report to the locked structure → 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": "question-scope",
6
+ "triggers": [
7
+ "write a research report",
8
+ "research this question with sources",
9
+ "cited report",
10
+ "deep dive on a topic",
11
+ "investigate and write it up"
12
+ ],
13
+ "steps": [
14
+ {
15
+ "id": "question-scope",
16
+ "name": "Question scope",
17
+ "description": "decompose the question into sub-questions + lock scope",
18
+ "prompt": "1. Restate the research question in one precise sentence; if it is vague, narrow it to something answerable (define the entity, timeframe, geography, and metric). 2. Decompose it into 3-6 sub-questions that, answered together, fully answer the main question. 3. Decide the report structure: executive summary, one section per sub-question, a limitations section, and a references list. 4. Decide source standards: how many independent sources minimum (aim 5+), what counts as authoritative for this topic, and the recency window. 5. Write an acceptance-criteria checklist (e.g. 'every sub-question has a dedicated section', 'every factual claim has an inline citation [n]', 'at least 5 distinct sources in references', 'an explicit limitations/uncertainty section exists', 'executive summary is <=150 words and states the bottom line'). Good looks like a checklist a grader could mechanically apply. 6. Record key decisions (the narrowed question, the sub-questions, the recency window). Call write_task_note with the sub-questions + checklist + decisions, and also write the same content to {{workPath}}/question-scope.md.\n\nThe deliverable `{{workPath}}/question-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}}/question-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}}/question-scope.md",
32
+ "bytes": 120,
33
+ "artifact": true
34
+ },
35
+ {
36
+ "kind": "sniff",
37
+ "file": "{{workPath}}/question-scope.md",
38
+ "sniff": "nonempty",
39
+ "artifact": true
40
+ }
41
+ ],
42
+ "onReject": "question-scope",
43
+ "maxAttempts": 3
44
+ },
45
+ "next": "research"
46
+ },
47
+ {
48
+ "id": "research",
49
+ "name": "Research & source log",
50
+ "description": "gather sources, log each with a citation key + key facts",
51
+ "prompt": "1. For each sub-question from the scope, find authoritative sources (prefer primary sources, official data, and reputable secondary sources within the recency window). 2. For every source, append an entry to {{workPath}}/sources.md with: a citation key [n], title, author/publisher, date, URL or locator, and 1-3 bullet facts you extracted with the exact figure or quote. 3. Cross-check any surprising or load-bearing fact against a second independent source and note the agreement or conflict. 4. Flag every claim you could NOT verify as UNVERIFIED so the writer does not state it as fact. 5. Aim to exceed the minimum source count and cover every sub-question; do not pad with low-quality sources. Good looks like a source log dense enough that the writer never needs to invent a fact. Keep {{workPath}}/sources.md as the single source of truth; do not write prose yet.\n\nThe deliverable `{{workPath}}/sources.md` lands in the project's artifacts drawer — write it with `write_artifact` and read it back with `read_artifact`; the shipped workspace stays untouched.",
52
+ "suggestedRole": "researcher",
53
+ "advanceWhen": {
54
+ "file": "{{workPath}}/sources.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}}/sources.md",
65
+ "bytes": 120,
66
+ "artifact": true
67
+ },
68
+ {
69
+ "kind": "sniff",
70
+ "file": "{{workPath}}/sources.md",
71
+ "sniff": "nonempty",
72
+ "artifact": true
73
+ }
74
+ ],
75
+ "onReject": "research",
76
+ "maxAttempts": 3
77
+ },
78
+ "next": "write"
79
+ },
80
+ {
81
+ "id": "write",
82
+ "name": "Write the report",
83
+ "description": "write the cited markdown report to the locked structure",
84
+ "prompt": "1. Write {{workPath}}/report.md following the locked structure exactly: title, an executive summary <=150 words that states the bottom-line answer, one section per sub-question, a limitations section, and a numbered References list. 2. Every factual claim gets an inline citation [n] keyed to the references; do NOT state any UNVERIFIED claim as fact (hedge it or drop it). 3. Build the References list directly from {{workPath}}/sources.md so every [n] resolves and no citation is invented. 4. Lead each section with the answer, then the evidence; keep prose tight and skimmable with subheadings. 5. On a loop-back, fix only the gaps the reviewer named and do not regress sections that already passed. 6. Call write_task_note with the report path and which criteria now pass.\n\nBefore working, open the artifact input `{{workPath}}/sources.md` with `read_artifact`; do not look for it in the workspace.\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.",
85
+ "suggestedRole": "copywriter",
86
+ "consumes": [
87
+ {
88
+ "file": "{{workPath}}/sources.md",
89
+ "artifact": true
90
+ }
91
+ ],
92
+ "advanceWhen": {
93
+ "file": "{{workPath}}/report.md",
94
+ "minBytes": 1,
95
+ "sniff": "nonempty",
96
+ "artifact": true
97
+ },
98
+ "gate": {
99
+ "at": "completion",
100
+ "checks": [
101
+ {
102
+ "kind": "minBytes",
103
+ "file": "{{workPath}}/report.md",
104
+ "bytes": 1500,
105
+ "artifact": true
106
+ },
107
+ {
108
+ "kind": "contains",
109
+ "file": "{{workPath}}/report.md",
110
+ "pattern": "(?:^|\\n)#{1,3}\\s+\\S",
111
+ "flags": "i",
112
+ "label": "at least one markdown heading",
113
+ "artifact": true
114
+ }
115
+ ],
116
+ "onReject": "write",
117
+ "maxAttempts": 4
118
+ },
119
+ "next": "evaluate"
120
+ },
121
+ {
122
+ "id": "evaluate",
123
+ "name": "Evaluate",
124
+ "description": "Grade the deliverable against every acceptance criterion. All pass → finish; any fail → loop back and fix the gap.",
125
+ "prompt": "Open {{workPath}}/report.md and check EACH acceptance criterion, writing PASS/FAIL per criterion: (1) every sub-question from {{workPath}}/question-scope.md has a dedicated section; (2) every factual claim carries an inline citation [n] and every [n] resolves to a References entry; (3) there are at least the minimum distinct sources and they meet the authority/recency bar; (4) an explicit limitations/uncertainty section exists; (5) the executive summary is <=150 words and states the bottom line; (6) spot-check 3 citations against {{workPath}}/sources.md to confirm the claim matches the logged fact and nothing was fabricated. A report that reads well but invents or mismatches a citation FAILS.\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: \"write\" })` to loop back. The builder fixes exactly those gaps.\n\nNever route to `finish` while any criterion is unmet. The build phase's completion gate already blocked a grossly-incomplete deliverable; your job is the judgment an automated check cannot make (does it actually work, read well, look right). After ~3 unproductive loops, stop and report DONE_WITH_CONCERNS so the user can step in.",
126
+ "suggestedRole": "reviewer",
127
+ "consumes": [
128
+ {
129
+ "file": "{{workPath}}/report.md",
130
+ "artifact": true
131
+ }
132
+ ],
133
+ "next": "write"
134
+ },
135
+ {
136
+ "id": "finish",
137
+ "name": "Finish",
138
+ "description": "All acceptance criteria met. Stamp a short summary and report DONE.",
139
+ "prompt": "Every acceptance criterion passed. Write a one-paragraph DONE summary to task notes via `write_task_note`: what was built, the deliverable path(s), and a one-line confirmation that each criterion is met. Then report DONE.",
140
+ "suggestedRole": "developer",
141
+ "terminal": true
142
+ }
143
+ ],
144
+ "version": "1.0.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": "Cited Research Report smoke eval",
4
+ "objective": "Self-contained smoke eval for the Cited Research Report craftbook using the corpus generic harness.",
5
+ "tags": [
6
+ "corpus"
7
+ ],
8
+ "prompt": "We need a cited research report for the returns-desk work. The backgound info is in source/brief.md — have a look and write it up in tasks/eval/report.md.",
9
+ "setup": {
10
+ "projectName": "Cited Research Report Eval",
11
+ "about": "Self-contained eval project for research-report. Seeded inputs are under workspace/source or workspace/fixtures; final deliverable is workspace/report.md.",
12
+ "missionObjectives": "Use the Cited Research Report craftbook/template, read the seeded local fixtures, and write tasks/eval/report.md without network calls, real credentials, or live services.",
13
+ "files": [
14
+ {
15
+ "path": "source/brief.md",
16
+ "content": "# Cited Research 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: research-report - Cited Research 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": "tasks/eval/report.md is a source-grounded markdown artifact with required facts and actions.",
30
+ "deliverables": [
31
+ {
32
+ "path": "tasks/eval/report.md",
33
+ "kind": "markdown-report",
34
+ "minBytes": 1000,
35
+ "checks": [
36
+ {
37
+ "kind": "contains",
38
+ "file": "tasks/eval/report.md",
39
+ "pattern": "(?:^|\\n)#{1,3}\\s+\\S",
40
+ "flags": "i"
41
+ },
42
+ {
43
+ "kind": "contains",
44
+ "file": "tasks/eval/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": "tasks/eval/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": "tasks/eval/report.md",
59
+ "pattern": "18\\s*hours|6\\s*hours",
60
+ "flags": "i"
61
+ },
62
+ {
63
+ "kind": "contains",
64
+ "file": "tasks/eval/report.md",
65
+ "pattern": "14\\.2%|8\\.9%",
66
+ "flags": "i"
67
+ },
68
+ {
69
+ "kind": "contains",
70
+ "file": "tasks/eval/report.md",
71
+ "pattern": "status silence|photo submission",
72
+ "flags": "i"
73
+ },
74
+ {
75
+ "kind": "contains",
76
+ "file": "tasks/eval/report.md",
77
+ "pattern": "automated status emails|barcode|Finance",
78
+ "flags": "i"
79
+ }
80
+ ]
81
+ }
82
+ ]
83
+ },
84
+ "rubric": {
85
+ "artifact": {
86
+ "path": "tasks/eval/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,228 @@
1
+ {
2
+ "id": "research-to-document",
3
+ "name": "Word Document from Content or Research",
4
+ "description": "Produce a real Word document from supplied notes, existing workspace content, or a research question. The workflow locks the audience and document structure, inventories the provided evidence (and researches only when the user actually asked for new research), writes the complete source as report.md, then uses the pre-authorized DocBlocks toolset to convert directly to DOCX, preview the pages, and save {{workPath}}/report.docx in the artifacts drawer. PDF can be emitted in the same conversion call when requested.\n\nPlain Markdown is the source of truth. DocBlocks 2.3.x needs no validation preflight: convert_document reports diagnostics and preview_document supplies visual evidence. Never call the removed validate_document tool, hand-assemble OOXML, or substitute HTML for a requested DOCX.\n\nWorking files under {{workPath}}/, reviews/, and reports/ live in the project artifacts drawer and must be read and written with the artifact tools. User-facing source files remain in the workspace.",
5
+ "entryStepId": "scope",
6
+ "triggers": [
7
+ "create a word document",
8
+ "make a docx",
9
+ "export this as docx",
10
+ "turn this content into a word document",
11
+ "research and write a document",
12
+ "research this and put it in word",
13
+ "write a cited briefing document"
14
+ ],
15
+ "toolsets": [
16
+ {
17
+ "toolsetId": "docblocks",
18
+ "sourceId": "bundled",
19
+ "autoAllow": true,
20
+ "reason": "convert report.md directly to DOCX or PDF, preview pages, and save the finished document without a prompt per call"
21
+ }
22
+ ],
23
+ "steps": [
24
+ {
25
+ "id": "scope",
26
+ "name": "Scope the document",
27
+ "description": "Lock audience, source boundary, structure, requested formats, and acceptance criteria.",
28
+ "prompt": "Scope the document before writing. 1. State the audience, purpose, and decision/takeaway. 2. Inventory the supplied content and named workspace files. Decide whether the user asked for new research; if not, explicitly prohibit adding outside facts. 3. Lock the section order, citation style when relevant, and whether the durable output is DOCX only or DOCX plus PDF. 4. Identify tables, figures, and existing media assets that must survive conversion. 5. Write acceptance criteria covering source fidelity, section coverage, citations when needed, readable page layout, and real saved binary files in artifacts. Write {{workPath}}/scope.md and call write_task_note with the source boundary, section count, and target formats.\n\nStore `{{workPath}}/scope.md` in the artifacts drawer with `write_artifact`, then verify it with `read_artifact`; do not write this working file to the workspace.",
29
+ "suggestedRole": "planner",
30
+ "advanceWhen": {
31
+ "file": "{{workPath}}/scope.md",
32
+ "minBytes": 1,
33
+ "sniff": "nonempty",
34
+ "artifact": true
35
+ },
36
+ "gate": {
37
+ "at": "completion",
38
+ "checks": [
39
+ {
40
+ "kind": "minBytes",
41
+ "file": "{{workPath}}/scope.md",
42
+ "bytes": 180,
43
+ "artifact": true
44
+ },
45
+ {
46
+ "kind": "sniff",
47
+ "file": "{{workPath}}/scope.md",
48
+ "sniff": "nonempty",
49
+ "artifact": true
50
+ }
51
+ ],
52
+ "onReject": "scope",
53
+ "maxAttempts": 3
54
+ },
55
+ "next": "sources"
56
+ },
57
+ {
58
+ "id": "sources",
59
+ "name": "Prepare the source log",
60
+ "description": "Record supplied sources and gather new evidence only when research was requested.",
61
+ "prompt": "Prepare {{workPath}}/sources.md to the boundary in {{workPath}}/scope.md. If the user supplied the content and did not ask for research, list each supplied file or message section and the facts it contributes; do not browse or add outside claims. If new research was requested, gather credible sources, record title/publisher/date/URL or workspace path, extract only the facts relevant to the outline, and cross-check consequential claims. Assign stable citation keys when citations are required. Mark unsupported gaps rather than guessing. Call write_task_note with the source count and unresolved gaps.\n\nOpen `{{workPath}}/scope.md` from the artifacts drawer with `read_artifact` before working. Store `{{workPath}}/sources.md` in the artifacts drawer with `write_artifact`, then verify it with `read_artifact`; do not write this working file to the workspace.",
62
+ "suggestedRole": "researcher",
63
+ "advanceWhen": {
64
+ "file": "{{workPath}}/sources.md",
65
+ "minBytes": 1,
66
+ "sniff": "nonempty",
67
+ "artifact": true
68
+ },
69
+ "gate": {
70
+ "at": "completion",
71
+ "checks": [
72
+ {
73
+ "kind": "minBytes",
74
+ "file": "{{workPath}}/sources.md",
75
+ "bytes": 160,
76
+ "artifact": true
77
+ },
78
+ {
79
+ "kind": "sniff",
80
+ "file": "{{workPath}}/sources.md",
81
+ "sniff": "nonempty",
82
+ "artifact": true
83
+ }
84
+ ],
85
+ "onReject": "sources",
86
+ "maxAttempts": 3
87
+ },
88
+ "next": "write",
89
+ "consumes": [
90
+ {
91
+ "file": "{{workPath}}/scope.md",
92
+ "artifact": true
93
+ }
94
+ ]
95
+ },
96
+ {
97
+ "id": "write",
98
+ "name": "Write the Markdown document",
99
+ "description": "Write the complete report.md source from the locked outline and source log.",
100
+ "prompt": "Write report.md as the complete document source. 1. Follow {{workPath}}/scope.md section order exactly, starting with one H1 title and a concise opening summary. 2. Use clear H2/H3 sections and real prose grounded only in {{workPath}}/sources.md. 3. Use Markdown tables for structured comparisons and existing workspace images only when the scope calls for them; add meaningful alt text, captions, and in-prose references. 4. Cite claims with the locked style and include references when research was requested. 5. End with the requested conclusion, recommendation, or next steps. 6. Check every content criterion before advancing. Do not create DOCX XML, HTML, or base64. Call write_task_note with the path, word count, and section count.\n\nOpen `{{workPath}}/scope.md`, `{{workPath}}/sources.md` from the artifacts drawer with `read_artifact` before working.",
101
+ "suggestedRole": "copywriter",
102
+ "advanceWhen": {
103
+ "file": "report.md",
104
+ "minBytes": 1,
105
+ "sniff": "nonempty"
106
+ },
107
+ "gate": {
108
+ "at": "completion",
109
+ "checks": [
110
+ {
111
+ "kind": "minBytes",
112
+ "file": "report.md",
113
+ "bytes": 1000
114
+ },
115
+ {
116
+ "kind": "contains",
117
+ "file": "report.md",
118
+ "pattern": "(?:^|\\n)#\\s+\\S",
119
+ "label": "an H1 document title"
120
+ },
121
+ {
122
+ "kind": "contains",
123
+ "file": "report.md",
124
+ "pattern": "(?:^|\\n)##\\s+\\S",
125
+ "label": "at least one document section"
126
+ }
127
+ ],
128
+ "onReject": "write",
129
+ "maxAttempts": 4
130
+ },
131
+ "next": "publish",
132
+ "consumes": [
133
+ {
134
+ "file": "{{workPath}}/scope.md",
135
+ "artifact": true
136
+ },
137
+ {
138
+ "file": "{{workPath}}/sources.md",
139
+ "artifact": true
140
+ }
141
+ ]
142
+ },
143
+ {
144
+ "id": "publish",
145
+ "name": "Publish the Word document",
146
+ "description": "Convert report.md with DocBlocks, preview every page, and save {{workPath}}/report.docx plus optional PDF.",
147
+ "prompt": "Publish report.md with the pre-authorized DocBlocks tools. 1. Call list_roots first and identify the read-enabled workspace root and write-enabled artifacts root. If no write root exists, report the blocker instead of substituting Markdown or HTML as the finished file. 2. Optionally call get_authoring_context with targetFormat \"docx\" and goal \"content-first\" when target details or templates would help; no preflight is required. 3. Call convert_document once with source `{ \"kind\": \"file\", \"rootId\": <workspace root id>, \"path\": \"report.md\" }`, a DOCX target using editable-native fidelity and the document title, plus a PDF target in the SAME call only when {{workPath}}/scope.md requests PDF. Use a restrained theme when appropriate and `autoTemplates: true`. 4. Call preview_document on the DOCX artifact URI and inspect all pages (paginate after 20): title and headings present, tables intact, images/captions placed, citations/references readable, no clipped or accidental blank pages. Repair report.md and reconvert on failure. 5. Call save_artifact for the DOCX artifact URI with destination `{ \"rootId\": <artifacts root id>, \"path\": \"{{workPath}}/report.docx\", \"ifExists\": \"error\" }`; call save_artifact for report.pdf when requested. On loop-back, replace only with the current expectedSha256. 6. Call write_task_note with target paths, page count, theme, and preview result. Do not call validate_document; it is not part of the current DocBlocks MCP.\n\nOpen `{{workPath}}/scope.md` from the artifacts drawer with `read_artifact` before working.",
148
+ "suggestedRole": "copywriter",
149
+ "advanceWhen": {
150
+ "file": "{{workPath}}/report.docx",
151
+ "minBytes": 1,
152
+ "artifact": true
153
+ },
154
+ "gate": {
155
+ "at": "completion",
156
+ "checks": [
157
+ {
158
+ "kind": "minBytes",
159
+ "file": "{{workPath}}/report.docx",
160
+ "bytes": 1000,
161
+ "artifact": true
162
+ }
163
+ ],
164
+ "onReject": "publish",
165
+ "maxAttempts": 4
166
+ },
167
+ "next": "evaluate",
168
+ "consumes": [
169
+ {
170
+ "file": "{{workPath}}/scope.md",
171
+ "artifact": true
172
+ },
173
+ {
174
+ "file": "report.md"
175
+ }
176
+ ]
177
+ },
178
+ {
179
+ "id": "evaluate",
180
+ "name": "Evaluate",
181
+ "description": "Review the saved Word document against every content and layout criterion.",
182
+ "prompt": "Review artifacts/report.docx against every criterion in {{workPath}}/scope.md. Use list_roots to identify the artifacts root and preview_document with source `{ \"kind\": \"file\", \"rootId\": <artifacts root id>, \"path\": \"{{workPath}}/report.docx\" }`; inspect all pages. Confirm the file is a real DOCX, supplied content is preserved without invention, every section appears in order, citations and references resolve when required, tables/images/captions remain legible, and no content is clipped or stranded on accidental blank pages. Confirm report.pdf exists too when requested. Write PASS/FAIL per criterion and name the page/section for any failure.\n\nThen route:\n\n- Every criterion PASSES → call `advance_task_step({ ref, stepId: \"evaluate\", next: \"finish\" })`.\n- Any criterion FAILS → write the exact gaps to task notes, then call `advance_task_step({ ref, stepId: \"evaluate\", next: \"write\" })`.\n\nNever route to finish while any criterion is unmet. After about three unproductive loops, stop with DONE_WITH_CONCERNS.\n\nOpen `{{workPath}}/scope.md`, `{{workPath}}/report.docx` from the artifacts drawer with `read_artifact` before working.",
183
+ "suggestedRole": "reviewer",
184
+ "next": "write",
185
+ "consumes": [
186
+ {
187
+ "file": "{{workPath}}/scope.md",
188
+ "artifact": true
189
+ },
190
+ {
191
+ "file": "{{workPath}}/report.docx",
192
+ "artifact": true
193
+ }
194
+ ]
195
+ },
196
+ {
197
+ "id": "finish",
198
+ "name": "Finish",
199
+ "description": "All source, content, and Word-document checks passed.",
200
+ "prompt": "Every acceptance criterion passed. Call write_task_note with a short DONE summary naming report.md as the source and artifacts/report.docx (plus report.pdf when requested) as the finished deliverable, plus the page count and confirmation that visual preview passed. Then report DONE.\n\nOpen `{{workPath}}/report.docx` from the artifacts drawer with `read_artifact` before working.",
201
+ "suggestedRole": "copywriter",
202
+ "terminal": true,
203
+ "consumes": [
204
+ {
205
+ "file": "report.md"
206
+ },
207
+ {
208
+ "file": "{{workPath}}/report.docx",
209
+ "artifact": true
210
+ }
211
+ ]
212
+ }
213
+ ],
214
+ "version": "1.2.2",
215
+ "releasedAt": "2026-08-21T00:00:00Z",
216
+ "paramSchema": {
217
+ "type": "object",
218
+ "properties": {
219
+ "workPath": {
220
+ "type": "string",
221
+ "title": "Working folder",
222
+ "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.",
223
+ "default": "{{task.dir}}"
224
+ }
225
+ }
226
+ },
227
+ "minGezelVersion": "1.26233"
228
+ }