@bendyline/gilde 0.1.49 → 0.1.51

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 (244) hide show
  1. package/data/craftbook-templates/ac/accessibility-retrofit/versions/2.0.0/test.json +14 -17
  2. package/data/craftbook-templates/ad/ad-variations/versions/1.0.2/test.json +0 -3
  3. package/data/craftbook-templates/al/album-curate/versions/1.0.2/test.json +0 -3
  4. package/data/craftbook-templates/al/alert-rules/versions/1.0.2/test.json +0 -3
  5. package/data/craftbook-templates/an/anniversary-cut/versions/1.0.4/test.json +0 -3
  6. package/data/craftbook-templates/an/annotated-bibliography/versions/1.0.2/test.json +0 -3
  7. package/data/craftbook-templates/ap/api-contract-review/versions/1.1.2/test.json +82 -8
  8. package/data/craftbook-templates/ap/apply-review-findings/versions/1.0.0/test.json +21 -22
  9. package/data/craftbook-templates/au/audio-ad-spot/versions/1.0.2/test.json +0 -3
  10. package/data/craftbook-templates/au/audio-highlight-reel/versions/1.0.2/test.json +0 -3
  11. package/data/craftbook-templates/au/audiobook-master-pack/versions/1.0.4/test.json +0 -3
  12. package/data/craftbook-templates/au/automation-recipe/versions/1.0.2/test.json +0 -3
  13. package/data/craftbook-templates/ba/backup-routine/versions/1.0.2/test.json +0 -3
  14. package/data/craftbook-templates/bl/blog-post/versions/1.0.2/test.json +0 -3
  15. package/data/craftbook-templates/bo/board-deck/versions/1.0.2/test.json +0 -3
  16. package/data/craftbook-templates/bo/board-game-web/versions/1.0.2/test.json +0 -3
  17. package/data/craftbook-templates/bo/booking-automation/versions/1.0.2/test.json +0 -3
  18. package/data/craftbook-templates/br/broadcast-announcement/versions/1.0.2/test.json +0 -3
  19. package/data/craftbook-templates/br/browser-qa-audit/versions/2.0.5/test.json +1 -4
  20. package/data/craftbook-templates/bu/bug-fix-tdd/versions/2.0.0/test.json +14 -15
  21. package/data/craftbook-templates/ca/calendar-brief/versions/1.0.2/test.json +0 -3
  22. package/data/craftbook-templates/ca/canvas-generative-art/versions/1.0.2/test.json +0 -3
  23. package/data/craftbook-templates/ca/case-study/versions/1.0.2/test.json +0 -3
  24. package/data/craftbook-templates/ca/case-study-writeup/versions/1.0.2/test.json +0 -3
  25. package/data/craftbook-templates/ch/chapter-narration-run/versions/1.0.3/test.json +0 -3
  26. package/data/craftbook-templates/ch/chapter-weave/versions/1.0.2/test.json +0 -3
  27. package/data/craftbook-templates/ch/character-sheet/versions/1.0.2/test.json +0 -3
  28. package/data/craftbook-templates/ch/character-turnaround/versions/1.0.2/test.json +0 -3
  29. package/data/craftbook-templates/ch/chart-pack/versions/1.0.2/test.json +0 -3
  30. package/data/craftbook-templates/ch/chrome-extension/versions/1.0.2/test.json +0 -3
  31. package/data/craftbook-templates/ci/ci-pipeline/versions/2.0.0/test.json +14 -17
  32. package/data/craftbook-templates/cl/cli-tool/versions/1.1.2/test.json +0 -3
  33. package/data/craftbook-templates/co/code-review/versions/1.0.0/test.json +175 -53
  34. package/data/craftbook-templates/co/codemod-sweep/versions/1.0.0/test.json +12 -13
  35. package/data/craftbook-templates/co/company-research-brief/versions/1.0.2/test.json +0 -3
  36. package/data/craftbook-templates/co/comparison-matrix/versions/1.0.2/test.json +0 -3
  37. package/data/craftbook-templates/co/config-scaffold/versions/1.0.2/test.json +0 -3
  38. package/data/craftbook-templates/co/content-deck/versions/1.2.2/craftbook.json +217 -0
  39. package/data/craftbook-templates/co/content-deck/versions/1.2.2/test.json +169 -0
  40. package/data/craftbook-templates/co/contract-template/versions/1.0.2/test.json +0 -3
  41. package/data/craftbook-templates/co/cookbook-layout/versions/1.0.2/test.json +0 -3
  42. package/data/craftbook-templates/co/corpus-email-digest/versions/1.2.2/craftbook.json +221 -0
  43. package/data/craftbook-templates/co/corpus-email-digest/versions/1.2.2/test.json +187 -0
  44. package/data/craftbook-templates/co/cover-letter/versions/1.0.2/test.json +0 -3
  45. package/data/craftbook-templates/cr/crm-update-batch/versions/1.0.2/test.json +0 -3
  46. package/data/craftbook-templates/cr/cron-job/versions/1.0.2/test.json +0 -3
  47. package/data/craftbook-templates/cs/csv-transformer/versions/1.2.3/test.json +0 -3
  48. package/data/craftbook-templates/da/dashboard-spec/versions/1.0.2/test.json +0 -3
  49. package/data/craftbook-templates/da/data-dictionary/versions/1.0.2/test.json +0 -3
  50. package/data/craftbook-templates/da/data-export-migrate/versions/1.0.2/test.json +0 -3
  51. package/data/craftbook-templates/da/data-join-merge/versions/1.0.2/test.json +0 -3
  52. package/data/craftbook-templates/da/data-pipeline-etl/versions/1.0.3/test.json +0 -3
  53. package/data/craftbook-templates/da/data-viz-page/versions/1.0.2/test.json +0 -3
  54. package/data/craftbook-templates/da/dataset-clean/versions/1.2.3/test.json +0 -3
  55. package/data/craftbook-templates/db/db-index-tuning/versions/1.0.2/test.json +0 -3
  56. package/data/craftbook-templates/de/deep-security-review/versions/1.1.2/test.json +28 -4
  57. package/data/craftbook-templates/de/dependency-upgrade/versions/1.0.0/test.json +12 -13
  58. package/data/craftbook-templates/de/deploy-checklist/versions/1.0.2/test.json +0 -3
  59. package/data/craftbook-templates/de/design-system-consultation/versions/2.0.4/test.json +1 -4
  60. package/data/craftbook-templates/di/diagram-from-text/versions/1.0.2/test.json +0 -3
  61. package/data/craftbook-templates/di/digest-from-feeds/versions/1.0.2/test.json +0 -3
  62. package/data/craftbook-templates/do/doc-intake-pipeline/versions/1.0.2/test.json +0 -3
  63. package/data/craftbook-templates/do/doc-rewrite/versions/1.0.2/test.json +0 -3
  64. package/data/craftbook-templates/do/dockerize-app/versions/1.0.2/test.json +0 -3
  65. package/data/craftbook-templates/do/docs-site/versions/1.0.2/test.json +0 -3
  66. package/data/craftbook-templates/dr/drive-wrap-up/versions/1.0.2/test.json +0 -3
  67. package/data/craftbook-templates/du/due-diligence-brief/versions/1.0.2/test.json +0 -3
  68. package/data/craftbook-templates/eb/ebook-compile/versions/1.0.2/test.json +0 -3
  69. package/data/craftbook-templates/ed/edit-notes/versions/1.0.2/test.json +0 -3
  70. package/data/craftbook-templates/em/email-sequence/versions/1.0.2/test.json +0 -3
  71. package/data/craftbook-templates/em/email-template/versions/1.0.2/test.json +0 -3
  72. package/data/craftbook-templates/en/engineering-retrospective/versions/2.0.4/test.json +1 -4
  73. package/data/craftbook-templates/es/escalation-playbook/versions/1.0.2/test.json +0 -3
  74. package/data/craftbook-templates/ev/evidence-brief/versions/1.0.2/test.json +0 -3
  75. package/data/craftbook-templates/ex/expense-categorize/versions/1.0.2/test.json +0 -3
  76. package/data/craftbook-templates/fa/fact-check/versions/1.0.2/test.json +0 -3
  77. package/data/craftbook-templates/fa/faq-from-docs/versions/1.0.2/test.json +0 -3
  78. package/data/craftbook-templates/fa/favicon-set/versions/1.0.2/test.json +0 -3
  79. package/data/craftbook-templates/fe/feature-flag-rollout/versions/1.1.0/test.json +0 -3
  80. package/data/craftbook-templates/fe/feedback-widget/versions/1.0.2/test.json +0 -3
  81. package/data/craftbook-templates/fl/flaky-test-fix/versions/1.0.0/test.json +15 -16
  82. package/data/craftbook-templates/fo/folder-to-audio/versions/1.0.2/test.json +0 -3
  83. package/data/craftbook-templates/fo/forecast-model/versions/1.0.2/test.json +0 -3
  84. package/data/craftbook-templates/fo/form-fill-batch/versions/1.0.2/test.json +0 -3
  85. package/data/craftbook-templates/fo/form-wizard/versions/1.0.2/test.json +0 -3
  86. package/data/craftbook-templates/ga/game-with-screens/versions/1.0.2/test.json +0 -3
  87. package/data/craftbook-templates/gl/glossary-build/versions/1.0.2/test.json +0 -3
  88. package/data/craftbook-templates/gr/graphql-api/versions/1.0.3/test.json +0 -3
  89. package/data/craftbook-templates/gr/grpc-service/versions/1.0.2/test.json +0 -3
  90. package/data/craftbook-templates/ha/handbook-section/versions/1.0.2/test.json +0 -3
  91. package/data/craftbook-templates/he/hero-image/versions/1.0.2/test.json +0 -3
  92. package/data/craftbook-templates/ho/holiday-card-run/versions/1.0.2/test.json +0 -3
  93. package/data/craftbook-templates/ho/hotfix-flow/versions/2.0.0/test.json +12 -13
  94. package/data/craftbook-templates/ht/html-puzzle-game/versions/1.0.2/test.json +0 -3
  95. package/data/craftbook-templates/ic/icon-pack/versions/1.0.2/test.json +0 -3
  96. package/data/craftbook-templates/id/idea-office-hours/versions/2.0.4/test.json +1 -4
  97. package/data/craftbook-templates/id/idle-clicker-game/versions/1.0.2/test.json +0 -3
  98. package/data/craftbook-templates/im/image-batch-edit/versions/1.0.2/test.json +0 -3
  99. package/data/craftbook-templates/im/image-dedup-cluster/versions/1.0.2/test.json +0 -3
  100. package/data/craftbook-templates/im/image-palette-extract/versions/1.0.2/test.json +0 -3
  101. package/data/craftbook-templates/im/image-seo-rename/versions/1.0.2/test.json +0 -3
  102. package/data/craftbook-templates/in/inbox-triage/versions/1.0.2/test.json +0 -3
  103. package/data/craftbook-templates/in/incident-comms-templates/versions/1.0.2/test.json +0 -3
  104. package/data/craftbook-templates/in/incident-postmortem/versions/1.0.2/test.json +0 -3
  105. package/data/craftbook-templates/in/insurance-inventory/versions/1.0.2/test.json +0 -3
  106. package/data/craftbook-templates/in/interactive-quiz/versions/1.0.2/test.json +0 -3
  107. package/data/craftbook-templates/in/invitation-design/versions/1.0.2/test.json +0 -3
  108. package/data/craftbook-templates/in/invoice-generator/versions/1.0.2/test.json +0 -3
  109. package/data/craftbook-templates/in/invoice-run/versions/1.1.2/test.json +0 -3
  110. package/data/craftbook-templates/index.json +1 -1
  111. package/data/craftbook-templates/it/item-intake/versions/1.0.2/test.json +0 -3
  112. package/data/craftbook-templates/ju/juice-pass/versions/1.0.2/test.json +0 -3
  113. package/data/craftbook-templates/kn/knowledge-base-article/versions/1.0.2/test.json +0 -3
  114. package/data/craftbook-templates/kp/kpi-scorecard/versions/1.0.2/test.json +0 -3
  115. package/data/craftbook-templates/la/landing-copy/versions/1.0.2/test.json +0 -3
  116. package/data/craftbook-templates/la/landing-page/versions/1.0.2/test.json +0 -3
  117. package/data/craftbook-templates/le/lead-enrichment/versions/1.0.2/test.json +0 -3
  118. package/data/craftbook-templates/li/library-package/versions/1.0.2/test.json +0 -3
  119. package/data/craftbook-templates/li/literature-review/versions/1.0.2/test.json +0 -3
  120. package/data/craftbook-templates/lo/localize-content/versions/1.0.2/test.json +0 -3
  121. package/data/craftbook-templates/lo/logo-set/versions/1.0.2/test.json +0 -3
  122. package/data/craftbook-templates/me/meeting-minutes/versions/1.0.2/test.json +0 -3
  123. package/data/craftbook-templates/me/meeting-notes-to-actions/versions/1.0.2/test.json +0 -3
  124. package/data/craftbook-templates/me/meeting-summary-audio/versions/1.0.2/test.json +0 -3
  125. package/data/craftbook-templates/me/memory-prompt-session/versions/1.0.2/test.json +0 -3
  126. package/data/craftbook-templates/me/message-queue-consumer/versions/1.0.2/test.json +0 -3
  127. package/data/craftbook-templates/mi/micro-game-jam/versions/1.0.2/test.json +0 -3
  128. package/data/craftbook-templates/mo/mock-interview/versions/1.0.2/test.json +0 -3
  129. package/data/craftbook-templates/mo/monitor-and-alert/versions/1.0.2/test.json +0 -3
  130. package/data/craftbook-templates/mo/month-close/versions/1.0.2/test.json +0 -3
  131. package/data/craftbook-templates/mo/moodboard/versions/1.0.2/test.json +0 -3
  132. package/data/craftbook-templates/mo/morning-brief/versions/1.0.2/test.json +0 -3
  133. package/data/craftbook-templates/mo/morning-report/versions/1.0.2/test.json +0 -3
  134. package/data/craftbook-templates/mu/music-metadata-tag/versions/1.0.2/test.json +0 -3
  135. package/data/craftbook-templates/na/narrated-slideshow/versions/1.1.2/test.json +0 -3
  136. package/data/craftbook-templates/ne/newsletter-issue/versions/1.0.2/test.json +0 -3
  137. package/data/craftbook-templates/ni/nightly-fix-sweep/versions/1.0.0/test.json +3 -4
  138. package/data/craftbook-templates/no/notification-router/versions/1.0.2/test.json +0 -3
  139. package/data/craftbook-templates/oc/ocr-extract/versions/1.0.2/test.json +0 -3
  140. package/data/craftbook-templates/of/offer-compare/versions/1.0.2/test.json +0 -3
  141. package/data/craftbook-templates/on/onboarding-checklist/versions/1.0.2/test.json +0 -3
  142. package/data/craftbook-templates/on/onboarding-flow/versions/1.0.2/test.json +0 -3
  143. package/data/craftbook-templates/on/oncall-handoff/versions/1.0.2/test.json +0 -3
  144. package/data/craftbook-templates/on/one-pager/versions/1.0.2/test.json +0 -3
  145. package/data/craftbook-templates/op/ops-runbook/versions/1.0.2/test.json +0 -3
  146. package/data/craftbook-templates/pa/page-spread/versions/1.0.2/test.json +0 -3
  147. package/data/craftbook-templates/pa/parser-grammar/versions/1.0.2/test.json +0 -3
  148. package/data/craftbook-templates/pe/perf-audit/versions/1.1.0/test.json +0 -3
  149. package/data/craftbook-templates/pe/perf-optimization/versions/2.0.0/test.json +16 -17
  150. package/data/craftbook-templates/pe/pest-diagnosis/versions/1.0.2/test.json +0 -3
  151. package/data/craftbook-templates/ph/photo-cull/versions/1.0.2/test.json +0 -3
  152. package/data/craftbook-templates/ph/physics-toy/versions/1.0.2/test.json +0 -3
  153. package/data/craftbook-templates/pi/pitch-deck/versions/1.0.2/test.json +0 -3
  154. package/data/craftbook-templates/pl/playtest-report/versions/1.0.2/test.json +0 -3
  155. package/data/craftbook-templates/po/podcast-chaptering/versions/1.0.2/test.json +0 -3
  156. package/data/craftbook-templates/po/portfolio-site/versions/1.0.2/test.json +0 -3
  157. package/data/craftbook-templates/po/powerpoint-deck/versions/1.7.8/craftbook.json +404 -0
  158. package/data/craftbook-templates/po/powerpoint-deck/versions/1.7.8/test.json +240 -0
  159. package/data/craftbook-templates/pr/pr-security-review/versions/1.0.2/test.json +0 -3
  160. package/data/craftbook-templates/pr/practice-exam/versions/1.0.2/test.json +0 -3
  161. package/data/craftbook-templates/pr/practice-session/versions/1.0.2/test.json +0 -3
  162. package/data/craftbook-templates/pr/pre-departure-countdown/versions/1.0.2/test.json +0 -3
  163. package/data/craftbook-templates/pr/press-release/versions/1.0.2/test.json +0 -3
  164. package/data/craftbook-templates/pr/price-tracker/versions/1.0.2/test.json +0 -3
  165. package/data/craftbook-templates/pr/pricing-page/versions/1.0.2/test.json +0 -3
  166. package/data/craftbook-templates/pr/product-descriptions/versions/1.0.2/test.json +0 -3
  167. package/data/craftbook-templates/pr/proposal-sow/versions/1.0.2/test.json +0 -3
  168. package/data/craftbook-templates/pu/pull-request-review/versions/1.9.0/test.json +0 -3
  169. package/data/craftbook-templates/pu/puzzle-pack-layout/versions/1.0.2/test.json +0 -3
  170. package/data/craftbook-templates/pw/pwa-offline/versions/1.0.2/test.json +0 -3
  171. package/data/craftbook-templates/re/reading-list/versions/1.0.2/test.json +0 -3
  172. package/data/craftbook-templates/re/receipt-intake/versions/1.0.2/test.json +0 -3
  173. package/data/craftbook-templates/re/receipt-ocr-ledger/versions/1.0.2/test.json +0 -3
  174. package/data/craftbook-templates/re/reception-report/versions/1.0.1/test.json +8 -9
  175. package/data/craftbook-templates/re/recipe-capture/versions/1.0.2/test.json +0 -3
  176. package/data/craftbook-templates/re/record-a-relative/versions/1.0.2/test.json +0 -3
  177. package/data/craftbook-templates/re/recurring-invoice-run/versions/1.0.2/test.json +0 -3
  178. package/data/craftbook-templates/re/refactor-module/versions/2.0.0/test.json +15 -16
  179. package/data/craftbook-templates/re/regex-builder/versions/1.0.2/test.json +0 -3
  180. package/data/craftbook-templates/re/release-announcement/versions/1.0.2/test.json +0 -3
  181. package/data/craftbook-templates/re/release-artifact-sanity-check/versions/1.0.2/test.json +0 -3
  182. package/data/craftbook-templates/re/release-notes/versions/1.0.3/test.json +0 -3
  183. package/data/craftbook-templates/re/release-readiness-review/versions/1.1.0/test.json +0 -3
  184. package/data/craftbook-templates/re/report-pdf/versions/1.1.2/test.json +0 -3
  185. package/data/craftbook-templates/re/rest-api/versions/1.0.3/test.json +0 -3
  186. package/data/craftbook-templates/re/resume-cv/versions/1.0.2/test.json +0 -3
  187. package/data/craftbook-templates/ro/rollback-plan/versions/1.0.2/test.json +0 -3
  188. package/data/craftbook-templates/ro/rough-cut-assembly/versions/1.0.3/test.json +0 -3
  189. package/data/craftbook-templates/ru/runbook/versions/1.0.2/test.json +0 -3
  190. package/data/craftbook-templates/sc/schema-migration/versions/2.0.0/test.json +12 -13
  191. package/data/craftbook-templates/sc/scrape-to-structured/versions/1.0.3/test.json +0 -3
  192. package/data/craftbook-templates/sc/script-automation/versions/1.0.2/test.json +0 -3
  193. package/data/craftbook-templates/sd/sdk-wrapper/versions/1.0.3/test.json +0 -3
  194. package/data/craftbook-templates/se/seasonal-maintenance-sweep/versions/1.0.2/test.json +0 -3
  195. package/data/craftbook-templates/se/seo-meta-pack/versions/1.0.2/test.json +0 -3
  196. package/data/craftbook-templates/so/social-digest/versions/1.0.1/test.json +7 -8
  197. package/data/craftbook-templates/so/social-thread/versions/1.0.2/test.json +0 -3
  198. package/data/craftbook-templates/so/source-quality-audit/versions/1.0.2/test.json +0 -3
  199. package/data/craftbook-templates/sp/spa-dashboard/versions/1.0.2/test.json +0 -3
  200. package/data/craftbook-templates/sp/spec-authoring/versions/2.0.4/test.json +1 -4
  201. package/data/craftbook-templates/sp/spec-doc/versions/1.0.2/test.json +0 -3
  202. package/data/craftbook-templates/sp/spreadsheet-model/versions/1.0.2/test.json +0 -3
  203. package/data/craftbook-templates/sp/sprite-sheet/versions/1.0.2/test.json +0 -3
  204. package/data/craftbook-templates/sq/sql-analysis/versions/1.0.2/test.json +0 -3
  205. package/data/craftbook-templates/st/standup-summary/versions/1.0.2/test.json +0 -3
  206. package/data/craftbook-templates/st/state-machine/versions/1.0.2/test.json +0 -3
  207. package/data/craftbook-templates/st/status-report/versions/1.0.2/test.json +0 -3
  208. package/data/craftbook-templates/su/subscription-audit/versions/1.0.2/test.json +0 -3
  209. package/data/craftbook-templates/su/subtitle-generator/versions/1.0.2/test.json +0 -3
  210. package/data/craftbook-templates/su/summarize-long/versions/1.0.2/test.json +0 -3
  211. package/data/craftbook-templates/su/survey-analysis/versions/1.0.2/test.json +0 -3
  212. package/data/craftbook-templates/sv/svg-animation/versions/1.0.2/test.json +0 -3
  213. package/data/craftbook-templates/ta/tailor-resume/versions/1.0.2/test.json +0 -3
  214. package/data/craftbook-templates/te/technical-documentation/versions/2.0.4/test.json +1 -4
  215. package/data/craftbook-templates/te/test-suite-backfill/versions/2.0.0/test.json +13 -16
  216. package/data/craftbook-templates/th/thank-you-sweep/versions/1.0.2/test.json +0 -3
  217. package/data/craftbook-templates/th/threat-model/versions/1.0.2/test.json +0 -3
  218. package/data/craftbook-templates/th/thumbnail-generator/versions/1.0.2/test.json +0 -3
  219. package/data/craftbook-templates/ti/tileset-batch/versions/1.0.2/test.json +0 -3
  220. package/data/craftbook-templates/to/tone-rewrite/versions/1.0.2/test.json +0 -3
  221. package/data/craftbook-templates/to/topic-explainer/versions/1.0.2/test.json +0 -3
  222. package/data/craftbook-templates/tr/transcribe-audio/versions/1.0.2/test.json +0 -3
  223. package/data/craftbook-templates/tr/translate-content/versions/1.1.1/craftbook.json +90 -0
  224. package/data/craftbook-templates/tr/translate-content/versions/1.1.1/test.json +141 -0
  225. package/data/craftbook-templates/ty/type-safety-pass/versions/2.0.0/test.json +13 -14
  226. package/data/craftbook-templates/ux/ux-update/versions/1.0.0/test.json +12 -13
  227. package/data/craftbook-templates/ve/version-bump/versions/1.1.0/test.json +0 -3
  228. package/data/craftbook-templates/vi/video-storyboard/versions/1.0.2/test.json +0 -3
  229. package/data/craftbook-templates/vi/visit-prep/versions/1.0.2/test.json +0 -3
  230. package/data/craftbook-templates/vo/voiceover-script/versions/1.0.2/test.json +0 -3
  231. package/data/craftbook-templates/we/weak-spot-drill/versions/1.0.2/test.json +0 -3
  232. package/data/craftbook-templates/we/web-app-crud/versions/1.0.2/test.json +0 -3
  233. package/data/craftbook-templates/we/web-component/versions/1.0.2/test.json +0 -3
  234. package/data/craftbook-templates/we/webhook-handler/versions/1.0.2/test.json +0 -3
  235. package/data/craftbook-templates/we/weekly-menu-plan/versions/1.0.2/test.json +0 -3
  236. package/data/craftbook-templates/we/weekly-pipeline-review/versions/1.0.2/test.json +0 -3
  237. package/data/craftbook-templates/we/weekly-review/versions/1.0.2/test.json +0 -3
  238. package/data/craftbook-templates/we/weekly-walkthrough/versions/1.0.2/test.json +0 -3
  239. package/data/craftbook-templates/ye/year-in-review/versions/1.0.2/test.json +0 -3
  240. package/data/craftbook-templates/yo/youtube-chapters-seo/versions/1.0.2/test.json +0 -3
  241. package/package.json +1 -1
  242. package/schemas/craftbook-doc.schema.json +12 -0
  243. package/schemas/craftbook-template-version.schema.json +12 -0
  244. package/schemas/craftbook-test.schema.json +12 -0
@@ -0,0 +1,187 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "title": "Corpus-grounded email-digest workflow",
4
+ "objective": "Run the Daily Email Digest from a Corpus craftbook and verify scoped citation rules and a source-grounded draft precede the final email-ready HTML.",
5
+ "tags": [
6
+ "html-page",
7
+ "corpus",
8
+ "workflow"
9
+ ],
10
+ "prompt": "Use the Daily Email Digest from a Corpus craftbook. Read every file under workspace `corpus/` and build workspace `digest.html` for a Friday leadership update. Include a visible subject line, three sections (Wins, Watchouts, Next Actions), one tight line per item, and an adjacent source filename for every item. Scope the digest and write a cited draft before rendering it. Use inline or embedded email-safe CSS only, with no scripts or external assets.",
11
+ "setup": {
12
+ "projectName": "Corpus Email Digest Eval",
13
+ "about": "Self-contained workflow eval for the Daily Email Digest from a Corpus craftbook. Source files are in the workspace, scope/draft deliverables belong in artifacts, and the final email belongs at workspace/digest.html.",
14
+ "missionObjectives": "Produce an accurate, scannable HTML email digest from all seeded corpus files with a subject line, three sections, adjacent source citations, and no invented items.",
15
+ "files": [
16
+ {
17
+ "path": "corpus/win-fulfillment.md",
18
+ "content": "# Fulfillment Note\nDate: 2026-06-24\nSource: win-fulfillment.md\n\nThe packing cell cleared a two-day backlog after introducing color-coded shelf labels. Error reships dropped from 19 last week to 7 this week.\n"
19
+ },
20
+ {
21
+ "path": "corpus/watchout-carrier.md",
22
+ "content": "# Carrier Watchout\nDate: 2026-06-25\nSource: watchout-carrier.md\n\nNorthline carrier scans are arriving up to 14 hours late for Zone 5 parcels. Customer support is seeing duplicate status tickets from premium subscribers.\n"
23
+ },
24
+ {
25
+ "path": "corpus/action-finance.md",
26
+ "content": "# Finance Action\nDate: 2026-06-26\nSource: action-finance.md\n\nFinance needs the exception export by Tuesday noon so it can approve the pilot automation budget before the July planning meeting.\n"
27
+ }
28
+ ],
29
+ "worker": {
30
+ "name": "Jules",
31
+ "role": "Developer"
32
+ }
33
+ },
34
+ "mocks": [],
35
+ "success": {
36
+ "summary": "A craftbook task produces scoped citation rules, a source-grounded artifact draft, and a complete email-ready workspace/digest.html.",
37
+ "deliverables": [
38
+ {
39
+ "path": "digest.html",
40
+ "kind": "html-page",
41
+ "minBytes": 2200,
42
+ "checks": [
43
+ {
44
+ "kind": "cssMinBytes",
45
+ "bytes": 350,
46
+ "file": "digest.html"
47
+ },
48
+ {
49
+ "kind": "contains",
50
+ "file": "digest.html",
51
+ "pattern": "Subject:",
52
+ "flags": "i"
53
+ },
54
+ {
55
+ "kind": "contains",
56
+ "file": "digest.html",
57
+ "pattern": "Wins[\\s\\S]*Watchouts[\\s\\S]*(?:Next Actions|Actions)",
58
+ "flags": "i"
59
+ },
60
+ {
61
+ "kind": "contains",
62
+ "file": "digest.html",
63
+ "pattern": "win-fulfillment\\.md"
64
+ },
65
+ {
66
+ "kind": "contains",
67
+ "file": "digest.html",
68
+ "pattern": "watchout-carrier\\.md"
69
+ },
70
+ {
71
+ "kind": "contains",
72
+ "file": "digest.html",
73
+ "pattern": "action-finance\\.md"
74
+ },
75
+ {
76
+ "kind": "contains",
77
+ "file": "digest.html",
78
+ "pattern": "19[\\s\\S]*7|7[\\s\\S]*19"
79
+ },
80
+ {
81
+ "kind": "contains",
82
+ "file": "digest.html",
83
+ "pattern": "14 hours|Tuesday noon",
84
+ "flags": "i"
85
+ },
86
+ {
87
+ "kind": "notContains",
88
+ "file": "digest.html",
89
+ "pattern": "<script\\b|https?://",
90
+ "flags": "i"
91
+ }
92
+ ]
93
+ }
94
+ ],
95
+ "checks": [
96
+ {
97
+ "kind": "minBytes",
98
+ "file": "digest/scope.md",
99
+ "bytes": 500,
100
+ "artifact": true
101
+ },
102
+ {
103
+ "kind": "contains",
104
+ "file": "digest/scope.md",
105
+ "pattern": "(?:citation|source)[\\s\\S]*(?:window|fresh|date)",
106
+ "flags": "i",
107
+ "artifact": true
108
+ },
109
+ {
110
+ "kind": "minBytes",
111
+ "file": "digest/draft.md",
112
+ "bytes": 700,
113
+ "artifact": true
114
+ },
115
+ {
116
+ "kind": "contains",
117
+ "file": "digest/draft.md",
118
+ "pattern": "subject\\s*:[\\s\\S]*win-fulfillment\\.md[\\s\\S]*watchout-carrier\\.md[\\s\\S]*action-finance\\.md",
119
+ "flags": "i",
120
+ "artifact": true
121
+ }
122
+ ],
123
+ "taskNotes": {
124
+ "minBytes": 160,
125
+ "checks": [
126
+ {
127
+ "kind": "contains",
128
+ "file": "task-notes.md",
129
+ "pattern": "scope\\.md",
130
+ "flags": "i"
131
+ },
132
+ {
133
+ "kind": "contains",
134
+ "file": "task-notes.md",
135
+ "pattern": "draft\\.md",
136
+ "flags": "i"
137
+ },
138
+ {
139
+ "kind": "contains",
140
+ "file": "task-notes.md",
141
+ "pattern": "digest\\.html",
142
+ "flags": "i"
143
+ }
144
+ ],
145
+ "requireCraftbookTask": true
146
+ },
147
+ "taskGraph": {
148
+ "requireCraftbookTask": true,
149
+ "requireTerminalStep": true
150
+ },
151
+ "unchangedFixtures": [
152
+ "corpus/win-fulfillment.md",
153
+ "corpus/watchout-carrier.md",
154
+ "corpus/action-finance.md"
155
+ ]
156
+ },
157
+ "rubric": {
158
+ "artifact": {
159
+ "path": "digest.html",
160
+ "kind": "html"
161
+ },
162
+ "axes": [
163
+ {
164
+ "name": "grounding",
165
+ "description": "Every digest item preserves a source fact and names the adjacent source without invented operational detail."
166
+ },
167
+ {
168
+ "name": "scannability",
169
+ "description": "The subject, sections, hierarchy, and one-line items can be understood in under a minute."
170
+ },
171
+ {
172
+ "name": "email readiness",
173
+ "description": "The HTML is self-contained, conservatively styled, and readable in an email-client-shaped viewport."
174
+ },
175
+ {
176
+ "name": "workflow evidence",
177
+ "description": "Scope and draft artifacts are substantive and align with the final email."
178
+ }
179
+ ]
180
+ },
181
+ "qualityFocus": [
182
+ "craftbook attribution",
183
+ "source-read enforcement",
184
+ "adjacent citations",
185
+ "artifact-to-workspace handoff"
186
+ ]
187
+ }
@@ -23,9 +23,6 @@
23
23
  "worker": {
24
24
  "name": "Eva",
25
25
  "role": "Writer"
26
- },
27
- "craftbookParams": {
28
- "workPath": "tasks/eval"
29
26
  }
30
27
  },
31
28
  "mocks": [],
@@ -23,9 +23,6 @@
23
23
  "worker": {
24
24
  "name": "Niels",
25
25
  "role": "Operations Analyst"
26
- },
27
- "craftbookParams": {
28
- "workPath": "tasks/eval"
29
26
  }
30
27
  },
31
28
  "mocks": [],
@@ -23,9 +23,6 @@
23
23
  "worker": {
24
24
  "name": "Jules",
25
25
  "role": "Data Analyst"
26
- },
27
- "craftbookParams": {
28
- "workPath": "tasks/eval"
29
26
  }
30
27
  },
31
28
  "mocks": [],
@@ -19,9 +19,6 @@
19
19
  "worker": {
20
20
  "name": "Nora",
21
21
  "role": "Data Analyst"
22
- },
23
- "craftbookParams": {
24
- "workPath": "tasks/eval"
25
22
  }
26
23
  },
27
24
  "mocks": [],
@@ -19,9 +19,6 @@
19
19
  "worker": {
20
20
  "name": "Lotte",
21
21
  "role": "Planner"
22
- },
23
- "craftbookParams": {
24
- "workPath": "tasks/eval"
25
22
  }
26
23
  },
27
24
  "mocks": [],
@@ -19,9 +19,6 @@
19
19
  "worker": {
20
20
  "name": "Iris",
21
21
  "role": "Data Analyst"
22
- },
23
- "craftbookParams": {
24
- "workPath": "tasks/eval"
25
22
  }
26
23
  },
27
24
  "mocks": [],
@@ -23,9 +23,6 @@
23
23
  "worker": {
24
24
  "name": "Jules",
25
25
  "role": "Data Analyst"
26
- },
27
- "craftbookParams": {
28
- "workPath": "tasks/eval"
29
26
  }
30
27
  },
31
28
  "mocks": [],
@@ -23,9 +23,6 @@
23
23
  "worker": {
24
24
  "name": "Jules",
25
25
  "role": "Data Analyst"
26
- },
27
- "craftbookParams": {
28
- "workPath": "tasks/eval"
29
26
  }
30
27
  },
31
28
  "mocks": [],
@@ -19,9 +19,6 @@
19
19
  "worker": {
20
20
  "name": "Jules",
21
21
  "role": "Developer"
22
- },
23
- "craftbookParams": {
24
- "workPath": "tasks/eval"
25
22
  }
26
23
  },
27
24
  "mocks": [
@@ -19,9 +19,6 @@
19
19
  "worker": {
20
20
  "name": "Daan",
21
21
  "role": "Developer"
22
- },
23
- "craftbookParams": {
24
- "workPath": "tasks/eval"
25
22
  }
26
23
  },
27
24
  "mocks": [],
@@ -21,9 +21,6 @@
21
21
  "worker": {
22
22
  "name": "Jules",
23
23
  "role": "Developer"
24
- },
25
- "craftbookParams": {
26
- "workPath": "tasks/eval"
27
24
  }
28
25
  },
29
26
  "mocks": [],
@@ -23,9 +23,6 @@
23
23
  "worker": {
24
24
  "name": "Jules",
25
25
  "role": "Data Analyst"
26
- },
27
- "craftbookParams": {
28
- "workPath": "tasks/eval"
29
26
  }
30
27
  },
31
28
  "mocks": [],
@@ -19,17 +19,24 @@
19
19
  "path": "src/profile.ts",
20
20
  "content": "export function registerProfile(app, db, requireUser) {\n app.get('/profile', requireUser, async (req, res) => {\n const row = await db.query('SELECT * FROM users WHERE id = ?', [req.user.id]);\n res.json(row);\n });\n}\n"
21
21
  },
22
+ {
23
+ "path": "src/reports.ts",
24
+ "content": "import { exec } from 'node:child_process';\n\nconst ALLOWED_SORTS = { name: 'name', created: 'created_at', team: 'team' };\n\nexport function registerReports(app, db, requireUser) {\n app.get('/health', (_req, res) => res.json({ ok: true }));\n\n app.get('/reports/rotate', requireUser, (_req, res) => {\n exec('logrotate -f /etc/logrotate.conf', (_e, out) => res.send(out));\n });\n\n app.get('/reports/users', requireUser, async (req, res) => {\n const column = ALLOWED_SORTS[req.query.sort] ?? 'name';\n const rows = await db.query(`SELECT id, name FROM users ORDER BY ${column}`);\n res.json(rows);\n });\n}\n"
25
+ },
22
26
  {
23
27
  "path": "docs/security.md",
24
- "content": "# Security model\n\nAll /admin routes must require the requireAdmin middleware before business logic runs. SQL must use placeholders. Shell commands must not include request data.\n"
28
+ "content": "# Security model\n\nAll /admin routes must require the requireAdmin middleware before business logic runs. SQL must use placeholders. Shell commands must not include request data.\n\n## Deliberate exceptions\n\n- `/health` is unauthenticated by design. It returns a fixed literal and reads nothing.\n- A SQL identifier (a column or table name) cannot be a placeholder. Where one must vary,\n the only accepted pattern is mapping the request value through a fixed allow-list and\n interpolating the mapped constant. Code that already does this is correct as written.\n- A shell command whose argument list contains no request data is not command injection.\n"
29
+ },
30
+ {
31
+ "path": "tests/security-oracle.mjs",
32
+ "content": "// Precision/recall oracle for the deep security review.\n//\n// Run by the harness with the reviewed workspace as cwd. It grades the two\n// halves of a real review separately, because recall alone is passed by a\n// report that flags everything:\n//\n// RECALL — each of the three seeded defects in src/admin.ts is reported.\n// PRECISION — none of the three SAFE constructs is reported. Each is a\n// deliberate look-alike of a seeded defect and each is\n// documented as correct in docs/security.md.\n//\n// The classes are matched by their ordinary names, not by any wording this\n// fixture invented, so the bar is \"a real review of this class of defect\"\n// rather than this scenario's vocabulary.\nimport { readFileSync } from 'node:fs';\n\n/**\n * Fail with the message ALONE on stderr.\n *\n * A thrown Error would work, but the harness feeds this script's stderr\n * into the model's repair nudge verbatim, and an uncaught throw pads that\n * nudge with a Node stack trace and a version banner. The actionable\n * sentence is what the next attempt needs; the stack is noise that pushes\n * it out of view on a small model.\n */\nfunction fail(message) {\n console.error(message);\n process.exit(1);\n}\n\n\nconst FINDINGS = 'security-review/findings.json';\n\nlet raw;\ntry {\n raw = readFileSync(FINDINGS, 'utf8');\n} catch {\n fail(FINDINGS + ' does not exist - the machine-readable findings file is required');\n}\n\nlet findings;\ntry {\n findings = JSON.parse(raw.replace(/^\\uFEFF/, ''));\n} catch (err) {\n fail(FINDINGS + ' is not valid JSON: ' + err.message);\n}\nif (!Array.isArray(findings)) {\n const nested = findings && typeof findings === 'object'\n ? Object.values(findings).find((value) => Array.isArray(value))\n : null;\n if (!nested) fail(FINDINGS + ' must be an array of finding records');\n findings = nested;\n}\n\nconst text = (finding) =>\n Object.values(finding)\n .filter((value) => typeof value === 'string')\n .join(' ')\n .toLowerCase();\n\nconst fileOf = (finding) => String(finding.file ?? finding.path ?? '').replace(/\\\\/g, '/');\n\nconst REQUIRED = [\n {\n label: 'command injection in the /admin/export shell call',\n match: /command injection|shell injection|\\bexec\\b|child_process|os command/,\n },\n {\n label: 'SQL injection in the /admin/users query',\n match: /sql injection|sqli|parameteri[sz]|placeholder|string interpolation into (a )?quer/,\n },\n {\n label: 'missing authorization on the /admin routes',\n match: /authorization|authentication|requireadmin|access control|missing auth|broken auth/,\n },\n];\n\nconst adminFindings = findings.filter((finding) => /(^|\\/)src\\/admin\\.ts$/.test(fileOf(finding)));\nconst missing = REQUIRED.filter(\n (required) => !adminFindings.some((finding) => required.match.test(text(finding))),\n);\nif (missing.length > 0) {\n fail(\n 'RECALL FAILURE - src/admin.ts holds three separate defects and these were not reported: ' +\n missing.map((entry) => entry.label).join('; ') +\n '. Reported for src/admin.ts: ' +\n (adminFindings.map((finding) => String(finding.category ?? '?')).join(', ') || '(nothing)'),\n );\n}\n\nconst SAFE_FILES = [\n {\n file: 'src/profile.ts',\n why: 'its query uses a placeholder and its route is behind requireUser',\n },\n {\n file: 'src/reports.ts',\n why:\n 'its exec call contains no request data, its ORDER BY column comes from a fixed ' +\n 'allow-list, and /health is documented as deliberately unauthenticated',\n },\n];\n\nconst falsePositives = [];\nfor (const safe of SAFE_FILES) {\n const pattern = new RegExp('(^|/)' + safe.file.replace(/[.]/g, '\\\\.') + '$');\n for (const finding of findings) {\n if (pattern.test(fileOf(finding))) {\n falsePositives.push(\n safe.file + ' (' + String(finding.category ?? 'unnamed finding') + ') - ' + safe.why,\n );\n }\n }\n}\nif (falsePositives.length > 0) {\n fail(\n 'PRECISION FAILURE - these files are correct as written and must not be reported as ' +\n 'vulnerable: ' + falsePositives.join('; ') +\n '. A review that flags safe code is not usable; re-read docs/security.md, which states ' +\n 'which constructs are deliberate.',\n );\n}\n\nconsole.log(\n 'Security precision/recall oracle passed: all 3 seeded defects reported on src/admin.ts, ' +\n '0 false positives on the 2 safe files.',\n);\n",
33
+ "surface": "workspace",
34
+ "modelInput": false
25
35
  }
26
36
  ],
27
37
  "worker": {
28
38
  "name": "Rae",
29
39
  "role": "Reviewer"
30
- },
31
- "craftbookParams": {
32
- "workPath": "tasks/eval"
33
40
  }
34
41
  },
35
42
  "mocks": [],
@@ -125,6 +132,23 @@
125
132
  "name": "theme",
126
133
  "type": "nonempty",
127
134
  "required": true
135
+ },
136
+ {
137
+ "name": "title",
138
+ "type": "nonempty",
139
+ "required": true
140
+ }
141
+ ],
142
+ "allowExtraFields": true
143
+ },
144
+ {
145
+ "kind": "nodeScriptPasses",
146
+ "script": "tests/security-oracle.mjs",
147
+ "timeoutMs": 30000,
148
+ "requiredOutput": [
149
+ {
150
+ "pattern": "Security precision/recall oracle passed",
151
+ "label": "every seeded defect reported, and no safe construct reported"
128
152
  }
129
153
  ]
130
154
  }
@@ -55,7 +55,6 @@
55
55
  }
56
56
  ],
57
57
  "craftbookParams": {
58
- "workPath": "tasks/eval",
59
58
  "scope": "Upgrade the vendored markdownlite from 1.4.2 to the staged 2.0.0 copy per VENDORING.md; rendering behavior must not change."
60
59
  }
61
60
  },
@@ -64,62 +63,62 @@
64
63
  "summary": "The vendored library runs at v2 through both call sites (either moved into place or repointed), every adaptation preserves the exact v1 rendering behavior, the suite is green, and every fleet artifact exists with honest receipts.",
65
64
  "deliverables": [
66
65
  {
67
- "path": "tasks/eval/survey.md",
66
+ "path": "{{task.dir}}/survey.md",
68
67
  "kind": "markdown-notes",
69
68
  "artifact": true,
70
69
  "minBytes": 600,
71
70
  "checks": [
72
71
  {
73
72
  "kind": "contains",
74
- "file": "tasks/eval/survey.md",
73
+ "file": "{{task.dir}}/survey.md",
75
74
  "pattern": "^##\\s+Current state[\\s\\S]*^##\\s+Candidates[\\s\\S]*^##\\s+Breaking-change notes[\\s\\S]*^##\\s+Stage plan",
76
75
  "flags": "im",
77
76
  "label": "survey sections in order"
78
77
  },
79
78
  {
80
79
  "kind": "contains",
81
- "file": "tasks/eval/survey.md",
80
+ "file": "{{task.dir}}/survey.md",
82
81
  "pattern": "parseDoc",
83
82
  "label": "names the real v2 API change from the local changelog"
84
83
  },
85
84
  {
86
85
  "kind": "citationsResolve",
87
- "file": "tasks/eval/survey.md",
86
+ "file": "{{task.dir}}/survey.md",
88
87
  "minCitations": 2,
89
88
  "artifact": true
90
89
  }
91
90
  ]
92
91
  },
93
92
  {
94
- "path": "tasks/eval/change-notes.md",
93
+ "path": "{{task.dir}}/change-notes.md",
95
94
  "kind": "markdown-notes",
96
95
  "artifact": true,
97
96
  "minBytes": 700,
98
97
  "checks": [
99
98
  {
100
99
  "kind": "contains",
101
- "file": "tasks/eval/change-notes.md",
100
+ "file": "{{task.dir}}/change-notes.md",
102
101
  "pattern": "^##\\s+Stages executed[\\s\\S]*^##\\s+Files touched[\\s\\S]*^##\\s+Adaptations[\\s\\S]*^##\\s+Reverted stages",
103
102
  "flags": "im",
104
103
  "label": "change-notes sections in order"
105
104
  },
106
105
  {
107
106
  "kind": "citationsResolve",
108
- "file": "tasks/eval/change-notes.md",
107
+ "file": "{{task.dir}}/change-notes.md",
109
108
  "minCitations": 2,
110
109
  "artifact": true
111
110
  }
112
111
  ]
113
112
  },
114
113
  {
115
- "path": "tasks/eval/verification.md",
114
+ "path": "{{task.dir}}/verification.md",
116
115
  "kind": "markdown-notes",
117
116
  "artifact": true,
118
117
  "minBytes": 450,
119
118
  "checks": [
120
119
  {
121
120
  "kind": "contains",
122
- "file": "tasks/eval/verification.md",
121
+ "file": "{{task.dir}}/verification.md",
123
122
  "pattern": "^##\\s+Suite[\\s\\S]*^##\\s+Adaptations verified[\\s\\S]*^##\\s+Rollback[\\s\\S]*^##\\s+Result",
124
123
  "flags": "im",
125
124
  "label": "verification sections in order"
@@ -127,14 +126,14 @@
127
126
  ]
128
127
  },
129
128
  {
130
- "path": "tasks/eval/review.md",
129
+ "path": "{{task.dir}}/review.md",
131
130
  "kind": "markdown-report",
132
131
  "artifact": true,
133
132
  "minBytes": 400,
134
133
  "checks": [
135
134
  {
136
135
  "kind": "contains",
137
- "file": "tasks/eval/review.md",
136
+ "file": "{{task.dir}}/review.md",
138
137
  "pattern": "Verdict:\\s*(?:PASS|REVISE)",
139
138
  "flags": "i",
140
139
  "label": "explicit reviewer verdict"
@@ -210,7 +209,7 @@
210
209
  },
211
210
  "rubric": {
212
211
  "artifact": {
213
- "path": "tasks/eval/change-notes.md",
212
+ "path": "{{task.dir}}/change-notes.md",
214
213
  "kind": "markdown"
215
214
  },
216
215
  "axes": [
@@ -23,9 +23,6 @@
23
23
  "worker": {
24
24
  "name": "Kai",
25
25
  "role": "Developer"
26
- },
27
- "craftbookParams": {
28
- "workPath": "tasks/eval"
29
26
  }
30
27
  },
31
28
  "mocks": [
@@ -30,10 +30,7 @@
30
30
  "path": "src/styles.css",
31
31
  "content": ":root{--navy:#10233f;--amber:#d97706}body{margin:0;font:14px Arial;background:#f7f5ef;color:#27364a}header{background:var(--navy);color:white;padding:13px 18px}header small{color:#7e8aa0}main{display:flex}aside{width:190px;padding:12px}section{flex:1;padding:19px}button{border:0;padding:7px;margin:3px}.primary{background:var(--amber);color:white}.status{color:#d97706}table{width:100%;border-collapse:collapse}td,th{text-align:left;border-bottom:1px solid #ddd;padding:9px}button:focus{outline:none}\n"
32
32
  }
33
- ],
34
- "craftbookParams": {
35
- "workPath": "tasks/eval"
36
- }
33
+ ]
37
34
  },
38
35
  "mocks": [],
39
36
  "success": {
@@ -23,9 +23,6 @@
23
23
  "worker": {
24
24
  "name": "Jules",
25
25
  "role": "Developer"
26
- },
27
- "craftbookParams": {
28
- "workPath": "tasks/eval"
29
26
  }
30
27
  },
31
28
  "mocks": [],
@@ -19,9 +19,6 @@
19
19
  "worker": {
20
20
  "name": "Jules",
21
21
  "role": "Developer"
22
- },
23
- "craftbookParams": {
24
- "workPath": "tasks/eval"
25
22
  }
26
23
  },
27
24
  "mocks": [
@@ -23,9 +23,6 @@
23
23
  "worker": {
24
24
  "name": "Jules",
25
25
  "role": "Data Analyst"
26
- },
27
- "craftbookParams": {
28
- "workPath": "tasks/eval"
29
26
  }
30
27
  },
31
28
  "mocks": [],
@@ -23,9 +23,6 @@
23
23
  "worker": {
24
24
  "name": "Jules",
25
25
  "role": "Developer"
26
- },
27
- "craftbookParams": {
28
- "workPath": "tasks/eval"
29
26
  }
30
27
  },
31
28
  "mocks": [],
@@ -23,9 +23,6 @@
23
23
  "worker": {
24
24
  "name": "Jules",
25
25
  "role": "Developer"
26
- },
27
- "craftbookParams": {
28
- "workPath": "tasks/eval"
29
26
  }
30
27
  },
31
28
  "mocks": [],
@@ -23,9 +23,6 @@
23
23
  "worker": {
24
24
  "name": "Jules",
25
25
  "role": "Developer"
26
- },
27
- "craftbookParams": {
28
- "workPath": "tasks/eval"
29
26
  }
30
27
  },
31
28
  "mocks": [],
@@ -23,9 +23,6 @@
23
23
  "worker": {
24
24
  "name": "Jules",
25
25
  "role": "Data Analyst"
26
- },
27
- "craftbookParams": {
28
- "workPath": "tasks/eval"
29
26
  }
30
27
  },
31
28
  "mocks": [],
@@ -19,9 +19,6 @@
19
19
  "worker": {
20
20
  "name": "Jules",
21
21
  "role": "Writer"
22
- },
23
- "craftbookParams": {
24
- "workPath": "tasks/eval"
25
22
  }
26
23
  },
27
24
  "mocks": [],
@@ -23,9 +23,6 @@
23
23
  "worker": {
24
24
  "name": "Jules",
25
25
  "role": "Developer"
26
- },
27
- "craftbookParams": {
28
- "workPath": "tasks/eval"
29
26
  }
30
27
  },
31
28
  "mocks": [],
@@ -27,9 +27,6 @@
27
27
  "worker": {
28
28
  "name": "Teun",
29
29
  "role": "Editor"
30
- },
31
- "craftbookParams": {
32
- "workPath": "tasks/eval"
33
30
  }
34
31
  },
35
32
  "mocks": [],
@@ -23,9 +23,6 @@
23
23
  "worker": {
24
24
  "name": "Jules",
25
25
  "role": "Developer"
26
- },
27
- "craftbookParams": {
28
- "workPath": "tasks/eval"
29
26
  }
30
27
  },
31
28
  "mocks": [],
@@ -23,9 +23,6 @@
23
23
  "worker": {
24
24
  "name": "Jules",
25
25
  "role": "Developer"
26
- },
27
- "craftbookParams": {
28
- "workPath": "tasks/eval"
29
26
  }
30
27
  },
31
28
  "mocks": [],