@bendyline/gilde 0.1.27 → 0.1.28
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/authoring/gstack/evals/investigate.json +1 -0
- package/authoring/gstack/evals/plan-ceo-review.json +1 -0
- package/authoring/gstack/wave.json +2 -2
- package/data/craftbook-templates/a1/a11y-audit/versions/1.1.1/craftbook.json +141 -0
- package/data/craftbook-templates/a1/a11y-audit/versions/1.1.1/test.json +115 -0
- package/data/craftbook-templates/ab/ab-test-readout/versions/1.0.1/craftbook.json +141 -0
- package/data/craftbook-templates/ab/ab-test-readout/versions/1.0.1/test.json +186 -0
- package/data/craftbook-templates/ac/accessibility-retrofit/versions/1.0.1/craftbook.json +110 -0
- package/data/craftbook-templates/ac/accessibility-retrofit/versions/1.0.1/test.json +97 -0
- package/data/craftbook-templates/ad/ad-variations/versions/1.0.1/craftbook.json +105 -0
- package/data/craftbook-templates/ad/ad-variations/versions/1.0.1/test.json +108 -0
- package/data/craftbook-templates/al/album-curate/versions/1.0.1/craftbook.json +115 -0
- package/data/craftbook-templates/al/album-curate/versions/1.0.1/test.json +147 -0
- package/data/craftbook-templates/al/alert-rules/versions/1.0.1/craftbook.json +101 -0
- package/data/craftbook-templates/al/alert-rules/versions/1.0.1/test.json +145 -0
- package/data/craftbook-templates/al/alt-text-pass/versions/1.0.1/craftbook.json +142 -0
- package/data/craftbook-templates/al/alt-text-pass/versions/1.0.1/test.json +97 -0
- package/data/craftbook-templates/an/anniversary-cut/versions/1.0.3/craftbook.json +226 -0
- package/data/craftbook-templates/an/anniversary-cut/versions/1.0.3/test.json +157 -0
- package/data/craftbook-templates/an/annotated-bibliography/versions/1.0.1/craftbook.json +146 -0
- package/data/craftbook-templates/an/annotated-bibliography/versions/1.0.1/test.json +102 -0
- package/data/craftbook-templates/an/annual-document-review/versions/1.0.1/craftbook.json +140 -0
- package/data/craftbook-templates/an/annual-document-review/versions/1.0.1/test.json +110 -0
- package/data/craftbook-templates/an/anomaly-scan/versions/1.0.1/craftbook.json +141 -0
- package/data/craftbook-templates/an/anomaly-scan/versions/1.0.1/test.json +120 -0
- package/data/craftbook-templates/ap/api-contract-review/versions/1.1.1/craftbook.json +141 -0
- package/data/craftbook-templates/ap/api-contract-review/versions/1.1.1/test.json +115 -0
- package/data/craftbook-templates/ar/artifact-integrity-review/versions/1.0.1/craftbook.json +158 -0
- package/data/craftbook-templates/ar/artifact-integrity-review/versions/1.0.1/test.json +136 -0
- package/data/craftbook-templates/au/audio-ad-spot/versions/1.0.1/craftbook.json +129 -0
- package/data/craftbook-templates/au/audio-ad-spot/versions/1.0.1/test.json +103 -0
- package/data/craftbook-templates/au/audio-highlight-reel/versions/1.0.1/craftbook.json +123 -0
- package/data/craftbook-templates/au/audio-highlight-reel/versions/1.0.1/test.json +103 -0
- package/data/craftbook-templates/au/audiobook-master-pack/versions/1.0.3/craftbook.json +210 -0
- package/data/craftbook-templates/au/audiobook-master-pack/versions/1.0.3/test.json +221 -0
- package/data/craftbook-templates/au/auth-flow/versions/1.0.1/craftbook.json +148 -0
- package/data/craftbook-templates/au/auth-flow/versions/1.0.1/test.json +140 -0
- package/data/craftbook-templates/au/automation-recipe/versions/1.0.1/craftbook.json +164 -0
- package/data/craftbook-templates/au/automation-recipe/versions/1.0.1/test.json +296 -0
- package/data/craftbook-templates/ba/backup-routine/versions/1.0.1/craftbook.json +148 -0
- package/data/craftbook-templates/ba/backup-routine/versions/1.0.1/test.json +108 -0
- package/data/craftbook-templates/bl/blog-post/versions/1.0.1/craftbook.json +143 -0
- package/data/craftbook-templates/bl/blog-post/versions/1.0.1/test.json +118 -0
- package/data/craftbook-templates/bo/board-deck/versions/1.0.1/craftbook.json +141 -0
- package/data/craftbook-templates/bo/board-deck/versions/1.0.1/test.json +100 -0
- package/data/craftbook-templates/bo/board-game-web/versions/1.0.1/craftbook.json +150 -0
- package/data/craftbook-templates/bo/board-game-web/versions/1.0.1/test.json +99 -0
- package/data/craftbook-templates/bo/booking-automation/versions/1.0.1/craftbook.json +158 -0
- package/data/craftbook-templates/bo/booking-automation/versions/1.0.1/test.json +162 -0
- package/data/craftbook-templates/br/branding-website/versions/1.1.1/craftbook.json +211 -0
- package/data/craftbook-templates/br/branding-website/versions/1.1.1/test.json +164 -0
- package/data/craftbook-templates/br/broadcast-announcement/versions/1.0.1/craftbook.json +107 -0
- package/data/craftbook-templates/br/broadcast-announcement/versions/1.0.1/test.json +103 -0
- package/data/craftbook-templates/br/browser-qa-audit/versions/2.0.3/craftbook.json +417 -0
- package/data/craftbook-templates/br/browser-qa-audit/versions/2.0.3/test.json +376 -0
- package/data/craftbook-templates/bu/bug-fix-tdd/versions/1.0.2/craftbook.json +164 -0
- package/data/craftbook-templates/bu/bug-fix-tdd/versions/1.0.2/test.json +92 -0
- package/data/craftbook-templates/ca/calendar-brief/versions/1.0.1/craftbook.json +107 -0
- package/data/craftbook-templates/ca/calendar-brief/versions/1.0.1/test.json +102 -0
- package/data/craftbook-templates/ca/canvas-generative-art/versions/1.0.1/craftbook.json +110 -0
- package/data/craftbook-templates/ca/canvas-generative-art/versions/1.0.1/test.json +106 -0
- package/data/craftbook-templates/ca/case-study/versions/1.0.1/craftbook.json +143 -0
- package/data/craftbook-templates/ca/case-study/versions/1.0.1/test.json +112 -0
- package/data/craftbook-templates/ca/case-study-writeup/versions/1.0.1/craftbook.json +151 -0
- package/data/craftbook-templates/ca/case-study-writeup/versions/1.0.1/test.json +105 -0
- package/data/craftbook-templates/ch/changelog-cut/versions/1.0.1/craftbook.json +113 -0
- package/data/craftbook-templates/ch/changelog-cut/versions/1.0.1/test.json +106 -0
- package/data/craftbook-templates/ch/changelog-writeup/versions/1.0.1/craftbook.json +107 -0
- package/data/craftbook-templates/ch/changelog-writeup/versions/1.0.1/test.json +129 -0
- package/data/craftbook-templates/ch/chapter-narration-run/versions/1.0.2/craftbook.json +123 -0
- package/data/craftbook-templates/ch/chapter-narration-run/versions/1.0.2/test.json +155 -0
- package/data/craftbook-templates/ch/chapter-weave/versions/1.0.1/craftbook.json +74 -0
- package/data/craftbook-templates/ch/chapter-weave/versions/1.0.1/test.json +98 -0
- package/data/craftbook-templates/ch/character-sheet/versions/1.0.1/craftbook.json +82 -0
- package/data/craftbook-templates/ch/character-sheet/versions/1.0.1/test.json +143 -0
- package/data/craftbook-templates/ch/character-turnaround/versions/1.0.1/craftbook.json +121 -0
- package/data/craftbook-templates/ch/character-turnaround/versions/1.0.1/test.json +178 -0
- package/data/craftbook-templates/ch/chart-pack/versions/1.0.1/craftbook.json +148 -0
- package/data/craftbook-templates/ch/chart-pack/versions/1.0.1/test.json +104 -0
- package/data/craftbook-templates/ch/chrome-extension/versions/1.0.1/craftbook.json +148 -0
- package/data/craftbook-templates/ch/chrome-extension/versions/1.0.1/test.json +97 -0
- package/data/craftbook-templates/ci/ci-pipeline/versions/1.0.1/craftbook.json +132 -0
- package/data/craftbook-templates/ci/ci-pipeline/versions/1.0.1/test.json +162 -0
- package/data/craftbook-templates/ci/citation-audit/versions/1.0.1/craftbook.json +146 -0
- package/data/craftbook-templates/ci/citation-audit/versions/1.0.1/test.json +149 -0
- package/data/craftbook-templates/cl/cli-tool/versions/1.1.1/craftbook.json +147 -0
- package/data/craftbook-templates/cl/cli-tool/versions/1.1.1/test.json +128 -0
- package/data/craftbook-templates/co/codebase-refactoring-review/versions/1.0.1/craftbook.json +153 -0
- package/data/craftbook-templates/co/codebase-refactoring-review/versions/1.0.1/test.json +116 -0
- package/data/craftbook-templates/co/codebase-ux-review/versions/1.0.1/craftbook.json +153 -0
- package/data/craftbook-templates/co/codebase-ux-review/versions/1.0.1/test.json +119 -0
- package/data/craftbook-templates/co/cohort-analysis/versions/1.0.1/craftbook.json +141 -0
- package/data/craftbook-templates/co/cohort-analysis/versions/1.0.1/test.json +226 -0
- package/data/craftbook-templates/co/company-research-brief/versions/1.0.1/craftbook.json +139 -0
- package/data/craftbook-templates/co/company-research-brief/versions/1.0.1/test.json +97 -0
- package/data/craftbook-templates/co/comparison-matrix/versions/1.0.1/craftbook.json +153 -0
- package/data/craftbook-templates/co/comparison-matrix/versions/1.0.1/test.json +109 -0
- package/data/craftbook-templates/co/compat-check/versions/1.0.1/craftbook.json +146 -0
- package/data/craftbook-templates/co/compat-check/versions/1.0.1/test.json +145 -0
- package/data/craftbook-templates/co/competitive-analysis/versions/1.0.1/craftbook.json +140 -0
- package/data/craftbook-templates/co/competitive-analysis/versions/1.0.1/test.json +116 -0
- package/data/craftbook-templates/co/config-scaffold/versions/1.0.1/craftbook.json +105 -0
- package/data/craftbook-templates/co/config-scaffold/versions/1.0.1/test.json +120 -0
- package/data/craftbook-templates/co/content-accuracy-review/versions/1.0.1/craftbook.json +141 -0
- package/data/craftbook-templates/co/content-accuracy-review/versions/1.0.1/test.json +149 -0
- package/data/craftbook-templates/co/content-deck/versions/1.2.1/craftbook.json +206 -0
- package/data/craftbook-templates/co/content-deck/versions/1.2.1/test.json +169 -0
- package/data/craftbook-templates/co/contract-template/versions/1.0.1/craftbook.json +145 -0
- package/data/craftbook-templates/co/contract-template/versions/1.0.1/test.json +102 -0
- package/data/craftbook-templates/co/cookbook-layout/versions/1.0.1/craftbook.json +121 -0
- package/data/craftbook-templates/co/cookbook-layout/versions/1.0.1/test.json +159 -0
- package/data/craftbook-templates/co/copy-review/versions/1.0.1/craftbook.json +141 -0
- package/data/craftbook-templates/co/copy-review/versions/1.0.1/test.json +102 -0
- package/data/craftbook-templates/co/corpus-email-digest/versions/1.2.1/craftbook.json +210 -0
- package/data/craftbook-templates/co/corpus-email-digest/versions/1.2.1/test.json +187 -0
- package/data/craftbook-templates/co/corpus-synthesis/versions/1.0.1/craftbook.json +146 -0
- package/data/craftbook-templates/co/corpus-synthesis/versions/1.0.1/test.json +156 -0
- package/data/craftbook-templates/co/cover-letter/versions/1.0.1/craftbook.json +107 -0
- package/data/craftbook-templates/co/cover-letter/versions/1.0.1/test.json +100 -0
- package/data/craftbook-templates/cr/crm-update-batch/versions/1.0.1/craftbook.json +101 -0
- package/data/craftbook-templates/cr/crm-update-batch/versions/1.0.1/test.json +207 -0
- package/data/craftbook-templates/cr/cron-job/versions/1.0.1/craftbook.json +147 -0
- package/data/craftbook-templates/cr/cron-job/versions/1.0.1/test.json +104 -0
- package/data/craftbook-templates/cr/crossword-forge/versions/1.0.1/craftbook.json +164 -0
- package/data/craftbook-templates/cr/crossword-forge/versions/1.0.1/test.json +135 -0
- package/data/craftbook-templates/cs/csv-transformer/versions/1.2.2/craftbook.json +101 -0
- package/data/craftbook-templates/cs/csv-transformer/versions/1.2.2/test.json +102 -0
- package/data/craftbook-templates/da/dashboard-spec/versions/1.0.1/craftbook.json +107 -0
- package/data/craftbook-templates/da/dashboard-spec/versions/1.0.1/test.json +114 -0
- package/data/craftbook-templates/da/data-dictionary/versions/1.0.1/craftbook.json +107 -0
- package/data/craftbook-templates/da/data-dictionary/versions/1.0.1/test.json +101 -0
- package/data/craftbook-templates/da/data-export-migrate/versions/1.0.1/craftbook.json +148 -0
- package/data/craftbook-templates/da/data-export-migrate/versions/1.0.1/test.json +104 -0
- package/data/craftbook-templates/da/data-join-merge/versions/1.0.1/craftbook.json +101 -0
- package/data/craftbook-templates/da/data-join-merge/versions/1.0.1/test.json +104 -0
- package/data/craftbook-templates/da/data-pipeline-etl/versions/1.0.2/craftbook.json +148 -0
- package/data/craftbook-templates/da/data-pipeline-etl/versions/1.0.2/test.json +162 -0
- package/data/craftbook-templates/da/data-quality-audit/versions/1.0.1/craftbook.json +141 -0
- package/data/craftbook-templates/da/data-quality-audit/versions/1.0.1/test.json +326 -0
- package/data/craftbook-templates/da/data-to-report/versions/1.0.1/craftbook.json +140 -0
- package/data/craftbook-templates/da/data-to-report/versions/1.0.1/test.json +95 -0
- package/data/craftbook-templates/da/data-viz-page/versions/1.0.1/craftbook.json +143 -0
- package/data/craftbook-templates/da/data-viz-page/versions/1.0.1/test.json +117 -0
- package/data/craftbook-templates/da/dataset-clean/versions/1.2.2/craftbook.json +101 -0
- package/data/craftbook-templates/da/dataset-clean/versions/1.2.2/test.json +95 -0
- package/data/craftbook-templates/db/db-index-tuning/versions/1.0.1/craftbook.json +148 -0
- package/data/craftbook-templates/db/db-index-tuning/versions/1.0.1/test.json +104 -0
- package/data/craftbook-templates/de/deep-security-review/versions/1.1.1/craftbook.json +211 -0
- package/data/craftbook-templates/de/deep-security-review/versions/1.1.1/test.json +157 -0
- package/data/craftbook-templates/de/dependency-audit/versions/1.1.1/craftbook.json +141 -0
- package/data/craftbook-templates/de/dependency-audit/versions/1.1.1/test.json +108 -0
- package/data/craftbook-templates/de/deploy-checklist/versions/1.0.1/craftbook.json +159 -0
- package/data/craftbook-templates/de/deploy-checklist/versions/1.0.1/test.json +165 -0
- package/data/craftbook-templates/de/design-review/versions/1.0.1/craftbook.json +141 -0
- package/data/craftbook-templates/de/design-review/versions/1.0.1/test.json +118 -0
- package/data/craftbook-templates/de/design-system-consultation/versions/2.0.3/craftbook.json +431 -0
- package/data/craftbook-templates/de/design-system-consultation/versions/2.0.3/test.json +201 -0
- package/data/craftbook-templates/di/diagram-from-text/versions/1.0.1/craftbook.json +109 -0
- package/data/craftbook-templates/di/diagram-from-text/versions/1.0.1/test.json +97 -0
- package/data/craftbook-templates/di/digest-from-feeds/versions/1.0.1/craftbook.json +146 -0
- package/data/craftbook-templates/di/digest-from-feeds/versions/1.0.1/test.json +162 -0
- package/data/craftbook-templates/do/doc-intake-pipeline/versions/1.0.1/craftbook.json +148 -0
- package/data/craftbook-templates/do/doc-intake-pipeline/versions/1.0.1/test.json +104 -0
- package/data/craftbook-templates/do/doc-rewrite/versions/1.0.1/craftbook.json +107 -0
- package/data/craftbook-templates/do/doc-rewrite/versions/1.0.1/test.json +110 -0
- package/data/craftbook-templates/do/dockerize-app/versions/1.0.1/craftbook.json +148 -0
- package/data/craftbook-templates/do/dockerize-app/versions/1.0.1/test.json +92 -0
- package/data/craftbook-templates/do/docs-site/versions/1.0.1/craftbook.json +143 -0
- package/data/craftbook-templates/do/docs-site/versions/1.0.1/test.json +97 -0
- package/data/craftbook-templates/do/documentation-drift-review/versions/1.0.1/craftbook.json +153 -0
- package/data/craftbook-templates/do/documentation-drift-review/versions/1.0.1/test.json +132 -0
- package/data/craftbook-templates/dr/drive-wrap-up/versions/1.0.1/craftbook.json +140 -0
- package/data/craftbook-templates/dr/drive-wrap-up/versions/1.0.1/test.json +104 -0
- package/data/craftbook-templates/du/due-diligence-brief/versions/1.0.1/craftbook.json +146 -0
- package/data/craftbook-templates/du/due-diligence-brief/versions/1.0.1/test.json +110 -0
- package/data/craftbook-templates/eb/ebook-compile/versions/1.0.1/craftbook.json +143 -0
- package/data/craftbook-templates/eb/ebook-compile/versions/1.0.1/test.json +97 -0
- package/data/craftbook-templates/ed/edit-notes/versions/1.0.1/craftbook.json +176 -0
- package/data/craftbook-templates/ed/edit-notes/versions/1.0.1/test.json +146 -0
- package/data/craftbook-templates/em/email-sequence/versions/1.0.1/craftbook.json +142 -0
- package/data/craftbook-templates/em/email-sequence/versions/1.0.1/test.json +97 -0
- package/data/craftbook-templates/em/email-template/versions/1.0.1/craftbook.json +143 -0
- package/data/craftbook-templates/em/email-template/versions/1.0.1/test.json +97 -0
- package/data/craftbook-templates/en/engineering-retrospective/versions/2.0.3/craftbook.json +403 -0
- package/data/craftbook-templates/en/engineering-retrospective/versions/2.0.3/test.json +191 -0
- package/data/craftbook-templates/ep/episode-plan/versions/1.0.1/craftbook.json +140 -0
- package/data/craftbook-templates/ep/episode-plan/versions/1.0.1/test.json +97 -0
- package/data/craftbook-templates/es/escalation-playbook/versions/1.0.1/craftbook.json +107 -0
- package/data/craftbook-templates/es/escalation-playbook/versions/1.0.1/test.json +110 -0
- package/data/craftbook-templates/ev/evidence-brief/versions/1.0.1/craftbook.json +146 -0
- package/data/craftbook-templates/ev/evidence-brief/versions/1.0.1/test.json +110 -0
- package/data/craftbook-templates/ex/executive-level-review/versions/2.0.3/craftbook.json +433 -0
- package/data/craftbook-templates/ex/executive-level-review/versions/2.0.3/test.json +136 -0
- package/data/craftbook-templates/ex/expense-categorize/versions/1.0.1/craftbook.json +140 -0
- package/data/craftbook-templates/ex/expense-categorize/versions/1.0.1/test.json +104 -0
- package/data/craftbook-templates/fa/fact-check/versions/1.0.1/craftbook.json +146 -0
- package/data/craftbook-templates/fa/fact-check/versions/1.0.1/test.json +110 -0
- package/data/craftbook-templates/fa/family-story-chapter/versions/1.0.1/craftbook.json +74 -0
- package/data/craftbook-templates/fa/family-story-chapter/versions/1.0.1/test.json +108 -0
- package/data/craftbook-templates/fa/faq-from-docs/versions/1.0.1/craftbook.json +107 -0
- package/data/craftbook-templates/fa/faq-from-docs/versions/1.0.1/test.json +110 -0
- package/data/craftbook-templates/fa/favicon-set/versions/1.0.1/craftbook.json +146 -0
- package/data/craftbook-templates/fa/favicon-set/versions/1.0.1/test.json +103 -0
- package/data/craftbook-templates/fe/feature-flag-release/versions/1.0.1/craftbook.json +159 -0
- package/data/craftbook-templates/fe/feature-flag-release/versions/1.0.1/test.json +162 -0
- package/data/craftbook-templates/fe/feature-flag-rollout/versions/1.0.1/craftbook.json +148 -0
- package/data/craftbook-templates/fe/feature-flag-rollout/versions/1.0.1/test.json +162 -0
- package/data/craftbook-templates/fe/feedback-widget/versions/1.0.1/craftbook.json +143 -0
- package/data/craftbook-templates/fe/feedback-widget/versions/1.0.1/test.json +97 -0
- package/data/craftbook-templates/fo/folder-to-audio/versions/1.0.1/craftbook.json +103 -0
- package/data/craftbook-templates/fo/folder-to-audio/versions/1.0.1/test.json +103 -0
- package/data/craftbook-templates/fo/forecast-model/versions/1.0.1/craftbook.json +105 -0
- package/data/craftbook-templates/fo/forecast-model/versions/1.0.1/test.json +104 -0
- package/data/craftbook-templates/fo/form-fill-batch/versions/1.0.1/craftbook.json +148 -0
- package/data/craftbook-templates/fo/form-fill-batch/versions/1.0.1/test.json +162 -0
- package/data/craftbook-templates/fo/form-wizard/versions/1.0.1/craftbook.json +110 -0
- package/data/craftbook-templates/fo/form-wizard/versions/1.0.1/test.json +110 -0
- package/data/craftbook-templates/ga/game-with-screens/versions/1.0.1/craftbook.json +168 -0
- package/data/craftbook-templates/ga/game-with-screens/versions/1.0.1/test.json +99 -0
- package/data/craftbook-templates/gl/glossary-build/versions/1.0.1/craftbook.json +140 -0
- package/data/craftbook-templates/gl/glossary-build/versions/1.0.1/test.json +110 -0
- package/data/craftbook-templates/gr/graphql-api/versions/1.0.2/craftbook.json +146 -0
- package/data/craftbook-templates/gr/graphql-api/versions/1.0.2/test.json +92 -0
- package/data/craftbook-templates/gr/grpc-service/versions/1.0.1/craftbook.json +147 -0
- package/data/craftbook-templates/gr/grpc-service/versions/1.0.1/test.json +92 -0
- package/data/craftbook-templates/ha/handbook-section/versions/1.0.1/craftbook.json +145 -0
- package/data/craftbook-templates/ha/handbook-section/versions/1.0.1/test.json +110 -0
- package/data/craftbook-templates/he/hero-image/versions/1.0.1/craftbook.json +154 -0
- package/data/craftbook-templates/he/hero-image/versions/1.0.1/test.json +103 -0
- package/data/craftbook-templates/ho/holiday-card-run/versions/1.0.1/craftbook.json +202 -0
- package/data/craftbook-templates/ho/holiday-card-run/versions/1.0.1/test.json +128 -0
- package/data/craftbook-templates/ho/hotfix-flow/versions/1.0.1/craftbook.json +182 -0
- package/data/craftbook-templates/ho/hotfix-flow/versions/1.0.1/test.json +92 -0
- package/data/craftbook-templates/ht/html-arcade-game/versions/1.2.1/craftbook.json +218 -0
- package/data/craftbook-templates/ht/html-arcade-game/versions/1.2.1/test.json +176 -0
- package/data/craftbook-templates/ht/html-puzzle-game/versions/1.0.1/craftbook.json +150 -0
- package/data/craftbook-templates/ht/html-puzzle-game/versions/1.0.1/test.json +99 -0
- package/data/craftbook-templates/ic/icon-pack/versions/1.0.1/craftbook.json +146 -0
- package/data/craftbook-templates/ic/icon-pack/versions/1.0.1/test.json +103 -0
- package/data/craftbook-templates/id/idea-office-hours/versions/2.0.3/craftbook.json +397 -0
- package/data/craftbook-templates/id/idea-office-hours/versions/2.0.3/test.json +141 -0
- package/data/craftbook-templates/id/idle-clicker-game/versions/1.0.1/craftbook.json +150 -0
- package/data/craftbook-templates/id/idle-clicker-game/versions/1.0.1/test.json +99 -0
- package/data/craftbook-templates/im/image-batch-edit/versions/1.0.1/craftbook.json +141 -0
- package/data/craftbook-templates/im/image-batch-edit/versions/1.0.1/test.json +103 -0
- package/data/craftbook-templates/im/image-dedup-cluster/versions/1.0.1/craftbook.json +140 -0
- package/data/craftbook-templates/im/image-dedup-cluster/versions/1.0.1/test.json +103 -0
- package/data/craftbook-templates/im/image-palette-extract/versions/1.0.1/craftbook.json +109 -0
- package/data/craftbook-templates/im/image-palette-extract/versions/1.0.1/test.json +97 -0
- package/data/craftbook-templates/im/image-seo-rename/versions/1.0.1/craftbook.json +105 -0
- package/data/craftbook-templates/im/image-seo-rename/versions/1.0.1/test.json +103 -0
- package/data/craftbook-templates/im/image-set-index/versions/1.2.1/craftbook.json +179 -0
- package/data/craftbook-templates/im/image-set-index/versions/1.2.1/test.json +180 -0
- package/data/craftbook-templates/in/inbox-triage/versions/1.0.1/craftbook.json +140 -0
- package/data/craftbook-templates/in/inbox-triage/versions/1.0.1/test.json +104 -0
- package/data/craftbook-templates/in/incident-comms-templates/versions/1.0.1/craftbook.json +107 -0
- package/data/craftbook-templates/in/incident-comms-templates/versions/1.0.1/test.json +110 -0
- package/data/craftbook-templates/in/incident-postmortem/versions/1.0.1/craftbook.json +158 -0
- package/data/craftbook-templates/in/incident-postmortem/versions/1.0.1/test.json +109 -0
- package/data/craftbook-templates/in/insurance-inventory/versions/1.0.1/craftbook.json +153 -0
- package/data/craftbook-templates/in/insurance-inventory/versions/1.0.1/test.json +121 -0
- package/data/craftbook-templates/in/interactive-quiz/versions/1.0.1/craftbook.json +143 -0
- package/data/craftbook-templates/in/interactive-quiz/versions/1.0.1/test.json +99 -0
- package/data/craftbook-templates/in/investigate-root-cause/versions/1.0.1/craftbook.json +141 -0
- package/data/craftbook-templates/in/investigate-root-cause/versions/1.0.1/test.json +110 -0
- package/data/craftbook-templates/in/invitation-design/versions/1.0.1/craftbook.json +128 -0
- package/data/craftbook-templates/in/invitation-design/versions/1.0.1/test.json +121 -0
- package/data/craftbook-templates/in/invoice-generator/versions/1.0.1/craftbook.json +110 -0
- package/data/craftbook-templates/in/invoice-generator/versions/1.0.1/test.json +97 -0
- package/data/craftbook-templates/in/invoice-run/versions/1.1.1/craftbook.json +199 -0
- package/data/craftbook-templates/in/invoice-run/versions/1.1.1/test.json +140 -0
- package/data/craftbook-templates/index.json +1 -1
- package/data/craftbook-templates/it/item-intake/versions/1.0.1/craftbook.json +140 -0
- package/data/craftbook-templates/it/item-intake/versions/1.0.1/test.json +145 -0
- package/data/craftbook-templates/ju/juice-pass/versions/1.0.1/craftbook.json +116 -0
- package/data/craftbook-templates/ju/juice-pass/versions/1.0.1/test.json +116 -0
- package/data/craftbook-templates/kn/knowledge-base-article/versions/1.0.1/craftbook.json +143 -0
- package/data/craftbook-templates/kn/knowledge-base-article/versions/1.0.1/test.json +110 -0
- package/data/craftbook-templates/kp/kpi-scorecard/versions/1.0.1/craftbook.json +148 -0
- package/data/craftbook-templates/kp/kpi-scorecard/versions/1.0.1/test.json +97 -0
- package/data/craftbook-templates/la/landing-copy/versions/1.0.1/craftbook.json +143 -0
- package/data/craftbook-templates/la/landing-copy/versions/1.0.1/test.json +110 -0
- package/data/craftbook-templates/la/landing-page/versions/1.0.1/craftbook.json +184 -0
- package/data/craftbook-templates/la/landing-page/versions/1.0.1/test.json +97 -0
- package/data/craftbook-templates/le/lead-enrichment/versions/1.0.1/craftbook.json +140 -0
- package/data/craftbook-templates/le/lead-enrichment/versions/1.0.1/test.json +104 -0
- package/data/craftbook-templates/li/library-package/versions/1.0.1/craftbook.json +147 -0
- package/data/craftbook-templates/li/library-package/versions/1.0.1/test.json +92 -0
- package/data/craftbook-templates/li/literature-review/versions/1.0.1/craftbook.json +146 -0
- package/data/craftbook-templates/li/literature-review/versions/1.0.1/test.json +110 -0
- package/data/craftbook-templates/li/live-browser-qa/versions/1.0.1/craftbook.json +141 -0
- package/data/craftbook-templates/li/live-browser-qa/versions/1.0.1/test.json +162 -0
- package/data/craftbook-templates/lo/localize-content/versions/1.0.1/craftbook.json +143 -0
- package/data/craftbook-templates/lo/localize-content/versions/1.0.1/test.json +110 -0
- package/data/craftbook-templates/lo/logo-set/versions/1.0.1/craftbook.json +146 -0
- package/data/craftbook-templates/lo/logo-set/versions/1.0.1/test.json +103 -0
- package/data/craftbook-templates/ma/market-scan/versions/1.0.1/craftbook.json +146 -0
- package/data/craftbook-templates/ma/market-scan/versions/1.0.1/test.json +210 -0
- package/data/craftbook-templates/me/meeting-minutes/versions/1.0.1/craftbook.json +108 -0
- package/data/craftbook-templates/me/meeting-minutes/versions/1.0.1/test.json +110 -0
- package/data/craftbook-templates/me/meeting-notes-to-actions/versions/1.0.1/craftbook.json +107 -0
- package/data/craftbook-templates/me/meeting-notes-to-actions/versions/1.0.1/test.json +110 -0
- package/data/craftbook-templates/me/meeting-prep-brief/versions/1.0.1/craftbook.json +107 -0
- package/data/craftbook-templates/me/meeting-prep-brief/versions/1.0.1/test.json +184 -0
- package/data/craftbook-templates/me/meeting-summary-audio/versions/1.0.1/craftbook.json +109 -0
- package/data/craftbook-templates/me/meeting-summary-audio/versions/1.0.1/test.json +103 -0
- package/data/craftbook-templates/me/memory-prompt-session/versions/1.0.1/craftbook.json +115 -0
- package/data/craftbook-templates/me/memory-prompt-session/versions/1.0.1/test.json +112 -0
- package/data/craftbook-templates/me/message-queue-consumer/versions/1.0.1/craftbook.json +147 -0
- package/data/craftbook-templates/me/message-queue-consumer/versions/1.0.1/test.json +92 -0
- package/data/craftbook-templates/mi/micro-game-jam/versions/1.0.1/craftbook.json +117 -0
- package/data/craftbook-templates/mi/micro-game-jam/versions/1.0.1/test.json +99 -0
- package/data/craftbook-templates/mo/mock-interview/versions/1.0.1/craftbook.json +139 -0
- package/data/craftbook-templates/mo/mock-interview/versions/1.0.1/test.json +110 -0
- package/data/craftbook-templates/mo/mod-scaffold/versions/1.0.1/craftbook.json +156 -0
- package/data/craftbook-templates/mo/mod-scaffold/versions/1.0.1/test.json +133 -0
- package/data/craftbook-templates/mo/monitor-and-alert/versions/1.0.1/craftbook.json +158 -0
- package/data/craftbook-templates/mo/monitor-and-alert/versions/1.0.1/test.json +197 -0
- package/data/craftbook-templates/mo/month-close/versions/1.0.1/craftbook.json +140 -0
- package/data/craftbook-templates/mo/month-close/versions/1.0.1/test.json +97 -0
- package/data/craftbook-templates/mo/monthly-recording-review/versions/1.0.1/craftbook.json +140 -0
- package/data/craftbook-templates/mo/monthly-recording-review/versions/1.0.1/test.json +117 -0
- package/data/craftbook-templates/mo/moodboard/versions/1.0.1/craftbook.json +109 -0
- package/data/craftbook-templates/mo/moodboard/versions/1.0.1/test.json +103 -0
- package/data/craftbook-templates/mo/morning-brief/versions/1.0.1/craftbook.json +107 -0
- package/data/craftbook-templates/mo/morning-brief/versions/1.0.1/test.json +225 -0
- package/data/craftbook-templates/mo/morning-report/versions/1.0.1/craftbook.json +152 -0
- package/data/craftbook-templates/mo/morning-report/versions/1.0.1/test.json +250 -0
- package/data/craftbook-templates/mu/music-metadata-tag/versions/1.0.1/craftbook.json +101 -0
- package/data/craftbook-templates/mu/music-metadata-tag/versions/1.0.1/test.json +103 -0
- package/data/craftbook-templates/na/narrated-slideshow/versions/1.1.1/craftbook.json +181 -0
- package/data/craftbook-templates/na/narrated-slideshow/versions/1.1.1/test.json +86 -0
- package/data/craftbook-templates/ne/newsletter-issue/versions/1.0.1/craftbook.json +143 -0
- package/data/craftbook-templates/ne/newsletter-issue/versions/1.0.1/test.json +110 -0
- package/data/craftbook-templates/no/notification-router/versions/1.0.1/craftbook.json +158 -0
- package/data/craftbook-templates/no/notification-router/versions/1.0.1/test.json +162 -0
- package/data/craftbook-templates/oc/ocr-extract/versions/1.0.1/craftbook.json +137 -0
- package/data/craftbook-templates/oc/ocr-extract/versions/1.0.1/test.json +103 -0
- package/data/craftbook-templates/of/offer-compare/versions/1.0.1/craftbook.json +106 -0
- package/data/craftbook-templates/of/offer-compare/versions/1.0.1/test.json +110 -0
- package/data/craftbook-templates/on/onboarding-checklist/versions/1.0.1/craftbook.json +107 -0
- package/data/craftbook-templates/on/onboarding-checklist/versions/1.0.1/test.json +110 -0
- package/data/craftbook-templates/on/onboarding-flow/versions/1.0.1/craftbook.json +143 -0
- package/data/craftbook-templates/on/onboarding-flow/versions/1.0.1/test.json +97 -0
- package/data/craftbook-templates/on/oncall-handoff/versions/1.0.1/craftbook.json +107 -0
- package/data/craftbook-templates/on/oncall-handoff/versions/1.0.1/test.json +110 -0
- package/data/craftbook-templates/on/one-pager/versions/1.0.1/craftbook.json +143 -0
- package/data/craftbook-templates/on/one-pager/versions/1.0.1/test.json +110 -0
- package/data/craftbook-templates/op/ops-runbook/versions/1.0.1/craftbook.json +112 -0
- package/data/craftbook-templates/op/ops-runbook/versions/1.0.1/test.json +104 -0
- package/data/craftbook-templates/pa/page-spread/versions/1.0.1/craftbook.json +82 -0
- package/data/craftbook-templates/pa/page-spread/versions/1.0.1/test.json +132 -0
- package/data/craftbook-templates/pa/parser-grammar/versions/1.0.1/craftbook.json +147 -0
- package/data/craftbook-templates/pa/parser-grammar/versions/1.0.1/test.json +92 -0
- package/data/craftbook-templates/pe/perf-audit/versions/1.0.1/craftbook.json +141 -0
- package/data/craftbook-templates/pe/perf-audit/versions/1.0.1/test.json +162 -0
- package/data/craftbook-templates/pe/perf-optimization/versions/1.0.1/craftbook.json +148 -0
- package/data/craftbook-templates/pe/perf-optimization/versions/1.0.1/test.json +92 -0
- package/data/craftbook-templates/pe/pest-diagnosis/versions/1.0.1/craftbook.json +140 -0
- package/data/craftbook-templates/pe/pest-diagnosis/versions/1.0.1/test.json +122 -0
- package/data/craftbook-templates/ph/photo-cull/versions/1.0.1/craftbook.json +140 -0
- package/data/craftbook-templates/ph/photo-cull/versions/1.0.1/test.json +103 -0
- package/data/craftbook-templates/ph/physics-toy/versions/1.0.1/craftbook.json +110 -0
- package/data/craftbook-templates/ph/physics-toy/versions/1.0.1/test.json +99 -0
- package/data/craftbook-templates/pi/pitch-deck/versions/1.0.1/craftbook.json +141 -0
- package/data/craftbook-templates/pi/pitch-deck/versions/1.0.1/test.json +97 -0
- package/data/craftbook-templates/pl/playtest-report/versions/1.0.1/craftbook.json +140 -0
- package/data/craftbook-templates/pl/playtest-report/versions/1.0.1/test.json +111 -0
- package/data/craftbook-templates/po/podcast-chaptering/versions/1.0.1/craftbook.json +140 -0
- package/data/craftbook-templates/po/podcast-chaptering/versions/1.0.1/test.json +103 -0
- package/data/craftbook-templates/po/portfolio-site/versions/1.0.1/craftbook.json +151 -0
- package/data/craftbook-templates/po/portfolio-site/versions/1.0.1/test.json +97 -0
- package/data/craftbook-templates/po/powerpoint-deck/versions/1.7.0/craftbook.json +257 -0
- package/data/craftbook-templates/po/powerpoint-deck/versions/1.7.0/test.json +228 -0
- package/data/craftbook-templates/po/powerpoint-deck/versions/1.7.1/craftbook.json +347 -0
- package/data/craftbook-templates/po/powerpoint-deck/versions/1.7.1/test.json +228 -0
- package/data/craftbook-templates/pr/pr-security-review/versions/1.0.1/craftbook.json +141 -0
- package/data/craftbook-templates/pr/pr-security-review/versions/1.0.1/test.json +110 -0
- package/data/craftbook-templates/pr/practice-exam/versions/1.0.1/craftbook.json +159 -0
- package/data/craftbook-templates/pr/practice-exam/versions/1.0.1/test.json +117 -0
- package/data/craftbook-templates/pr/practice-session/versions/1.0.1/craftbook.json +115 -0
- package/data/craftbook-templates/pr/practice-session/versions/1.0.1/test.json +114 -0
- package/data/craftbook-templates/pr/pre-departure-countdown/versions/1.0.1/craftbook.json +140 -0
- package/data/craftbook-templates/pr/pre-departure-countdown/versions/1.0.1/test.json +97 -0
- package/data/craftbook-templates/pr/press-release/versions/1.0.1/craftbook.json +143 -0
- package/data/craftbook-templates/pr/press-release/versions/1.0.1/test.json +356 -0
- package/data/craftbook-templates/pr/price-tracker/versions/1.0.1/craftbook.json +109 -0
- package/data/craftbook-templates/pr/price-tracker/versions/1.0.1/test.json +150 -0
- package/data/craftbook-templates/pr/pricing-page/versions/1.0.1/craftbook.json +184 -0
- package/data/craftbook-templates/pr/pricing-page/versions/1.0.1/test.json +97 -0
- package/data/craftbook-templates/pr/product-descriptions/versions/1.0.1/craftbook.json +105 -0
- package/data/craftbook-templates/pr/product-descriptions/versions/1.0.1/test.json +110 -0
- package/data/craftbook-templates/pr/proposal-sow/versions/1.0.1/craftbook.json +143 -0
- package/data/craftbook-templates/pr/proposal-sow/versions/1.0.1/test.json +110 -0
- package/data/craftbook-templates/pu/pull-request-review/manifest.json +3 -1
- package/data/craftbook-templates/pu/pull-request-review/versions/1.4.1/craftbook.json +180 -0
- package/data/craftbook-templates/pu/pull-request-review/versions/1.4.1/test.json +123 -0
- package/data/craftbook-templates/pu/puzzle-pack-layout/versions/1.0.1/craftbook.json +121 -0
- package/data/craftbook-templates/pu/puzzle-pack-layout/versions/1.0.1/test.json +123 -0
- package/data/craftbook-templates/pw/pwa-offline/versions/1.0.1/craftbook.json +155 -0
- package/data/craftbook-templates/pw/pwa-offline/versions/1.0.1/test.json +97 -0
- package/data/craftbook-templates/qu/quarterly-summary/versions/1.0.1/craftbook.json +140 -0
- package/data/craftbook-templates/qu/quarterly-summary/versions/1.0.1/test.json +113 -0
- package/data/craftbook-templates/re/reading-list/versions/1.0.1/craftbook.json +107 -0
- package/data/craftbook-templates/re/reading-list/versions/1.0.1/test.json +110 -0
- package/data/craftbook-templates/re/receipt-intake/versions/1.0.1/craftbook.json +140 -0
- package/data/craftbook-templates/re/receipt-intake/versions/1.0.1/test.json +149 -0
- package/data/craftbook-templates/re/receipt-ocr-ledger/versions/1.0.1/craftbook.json +140 -0
- package/data/craftbook-templates/re/receipt-ocr-ledger/versions/1.0.1/test.json +104 -0
- package/data/craftbook-templates/re/recipe-capture/versions/1.0.1/craftbook.json +140 -0
- package/data/craftbook-templates/re/recipe-capture/versions/1.0.1/test.json +128 -0
- package/data/craftbook-templates/re/record-a-relative/versions/1.0.1/craftbook.json +115 -0
- package/data/craftbook-templates/re/record-a-relative/versions/1.0.1/test.json +110 -0
- package/data/craftbook-templates/re/recurring-invoice-run/versions/1.0.1/craftbook.json +148 -0
- package/data/craftbook-templates/re/recurring-invoice-run/versions/1.0.1/test.json +104 -0
- package/data/craftbook-templates/re/refactor-module/versions/1.0.2/craftbook.json +148 -0
- package/data/craftbook-templates/re/refactor-module/versions/1.0.2/test.json +92 -0
- package/data/craftbook-templates/re/regex-builder/versions/1.0.1/craftbook.json +147 -0
- package/data/craftbook-templates/re/regex-builder/versions/1.0.1/test.json +92 -0
- package/data/craftbook-templates/re/release-announcement/versions/1.0.1/craftbook.json +159 -0
- package/data/craftbook-templates/re/release-announcement/versions/1.0.1/test.json +202 -0
- package/data/craftbook-templates/re/release-artifact-sanity-check/versions/1.0.1/craftbook.json +214 -0
- package/data/craftbook-templates/re/release-artifact-sanity-check/versions/1.0.1/test.json +138 -0
- package/data/craftbook-templates/re/release-notes/versions/1.0.1/craftbook.json +159 -0
- package/data/craftbook-templates/re/release-notes/versions/1.0.1/test.json +111 -0
- package/data/craftbook-templates/re/release-pipeline-ci/versions/1.0.1/craftbook.json +147 -0
- package/data/craftbook-templates/re/release-pipeline-ci/versions/1.0.1/test.json +162 -0
- package/data/craftbook-templates/re/release-readiness-review/versions/1.0.1/craftbook.json +141 -0
- package/data/craftbook-templates/re/release-readiness-review/versions/1.0.1/test.json +110 -0
- package/data/craftbook-templates/re/reliability-review/versions/1.0.1/craftbook.json +153 -0
- package/data/craftbook-templates/re/reliability-review/versions/1.0.1/test.json +112 -0
- package/data/craftbook-templates/re/report-pdf/versions/1.1.1/craftbook.json +173 -0
- package/data/craftbook-templates/re/report-pdf/versions/1.1.1/test.json +98 -0
- package/data/craftbook-templates/re/research-report/versions/1.0.1/craftbook.json +146 -0
- package/data/craftbook-templates/re/research-report/versions/1.0.1/test.json +110 -0
- package/data/craftbook-templates/re/research-to-document/versions/1.2.1/craftbook.json +216 -0
- package/data/craftbook-templates/re/research-to-document/versions/1.2.1/test.json +240 -0
- package/data/craftbook-templates/re/rest-api/versions/1.0.2/craftbook.json +147 -0
- package/data/craftbook-templates/re/rest-api/versions/1.0.2/test.json +387 -0
- package/data/craftbook-templates/re/resume-cv/versions/1.0.1/craftbook.json +143 -0
- package/data/craftbook-templates/re/resume-cv/versions/1.0.1/test.json +97 -0
- package/data/craftbook-templates/ro/rollback-plan/versions/1.0.1/craftbook.json +159 -0
- package/data/craftbook-templates/ro/rollback-plan/versions/1.0.1/test.json +162 -0
- package/data/craftbook-templates/ro/root-cause-investigation/versions/2.0.3/craftbook.json +413 -0
- package/data/craftbook-templates/ro/root-cause-investigation/versions/2.0.3/test.json +154 -0
- package/data/craftbook-templates/ro/rough-cut-assembly/versions/1.0.2/craftbook.json +167 -0
- package/data/craftbook-templates/ro/rough-cut-assembly/versions/1.0.2/test.json +137 -0
- package/data/craftbook-templates/ru/runbook/versions/1.0.1/craftbook.json +145 -0
- package/data/craftbook-templates/ru/runbook/versions/1.0.1/test.json +118 -0
- package/data/craftbook-templates/sc/schema-migration/versions/1.0.1/craftbook.json +144 -0
- package/data/craftbook-templates/sc/schema-migration/versions/1.0.1/test.json +103 -0
- package/data/craftbook-templates/sc/scrape-to-structured/versions/1.0.2/craftbook.json +140 -0
- package/data/craftbook-templates/sc/scrape-to-structured/versions/1.0.2/test.json +162 -0
- package/data/craftbook-templates/sc/script-automation/versions/1.0.1/craftbook.json +148 -0
- package/data/craftbook-templates/sc/script-automation/versions/1.0.1/test.json +162 -0
- package/data/craftbook-templates/sd/sdk-wrapper/versions/1.0.2/craftbook.json +147 -0
- package/data/craftbook-templates/sd/sdk-wrapper/versions/1.0.2/test.json +90 -0
- package/data/craftbook-templates/se/seasonal-maintenance-sweep/versions/1.0.1/craftbook.json +140 -0
- package/data/craftbook-templates/se/seasonal-maintenance-sweep/versions/1.0.1/test.json +110 -0
- package/data/craftbook-templates/se/security-architecture-review/versions/2.0.3/craftbook.json +440 -0
- package/data/craftbook-templates/se/security-architecture-review/versions/2.0.3/test.json +154 -0
- package/data/craftbook-templates/se/seo-meta-pack/versions/1.0.1/craftbook.json +105 -0
- package/data/craftbook-templates/se/seo-meta-pack/versions/1.0.1/test.json +97 -0
- package/data/craftbook-templates/so/social-thread/versions/1.0.1/craftbook.json +107 -0
- package/data/craftbook-templates/so/social-thread/versions/1.0.1/test.json +110 -0
- package/data/craftbook-templates/so/source-quality-audit/versions/1.0.1/craftbook.json +140 -0
- package/data/craftbook-templates/so/source-quality-audit/versions/1.0.1/test.json +158 -0
- package/data/craftbook-templates/sp/spa-dashboard/versions/1.0.1/craftbook.json +143 -0
- package/data/craftbook-templates/sp/spa-dashboard/versions/1.0.1/test.json +97 -0
- package/data/craftbook-templates/sp/spec-authoring/versions/2.0.3/craftbook.json +436 -0
- package/data/craftbook-templates/sp/spec-authoring/versions/2.0.3/test.json +162 -0
- package/data/craftbook-templates/sp/spec-doc/versions/1.0.1/craftbook.json +143 -0
- package/data/craftbook-templates/sp/spec-doc/versions/1.0.1/test.json +104 -0
- package/data/craftbook-templates/sp/spreadsheet-model/versions/1.0.1/craftbook.json +109 -0
- package/data/craftbook-templates/sp/spreadsheet-model/versions/1.0.1/test.json +160 -0
- package/data/craftbook-templates/sp/sprite-sheet/versions/1.0.1/craftbook.json +137 -0
- package/data/craftbook-templates/sp/sprite-sheet/versions/1.0.1/test.json +103 -0
- package/data/craftbook-templates/sq/sql-analysis/versions/1.0.1/craftbook.json +109 -0
- package/data/craftbook-templates/sq/sql-analysis/versions/1.0.1/test.json +104 -0
- package/data/craftbook-templates/st/standup-summary/versions/1.0.1/craftbook.json +107 -0
- package/data/craftbook-templates/st/standup-summary/versions/1.0.1/test.json +110 -0
- package/data/craftbook-templates/st/state-machine/versions/1.0.1/craftbook.json +147 -0
- package/data/craftbook-templates/st/state-machine/versions/1.0.1/test.json +92 -0
- package/data/craftbook-templates/st/status-report/versions/1.0.1/craftbook.json +146 -0
- package/data/craftbook-templates/st/status-report/versions/1.0.1/test.json +110 -0
- package/data/craftbook-templates/su/subscription-audit/versions/1.0.1/craftbook.json +140 -0
- package/data/craftbook-templates/su/subscription-audit/versions/1.0.1/test.json +104 -0
- package/data/craftbook-templates/su/subtitle-generator/versions/1.0.1/craftbook.json +128 -0
- package/data/craftbook-templates/su/subtitle-generator/versions/1.0.1/test.json +103 -0
- package/data/craftbook-templates/su/summarize-long/versions/1.0.1/craftbook.json +107 -0
- package/data/craftbook-templates/su/summarize-long/versions/1.0.1/test.json +110 -0
- package/data/craftbook-templates/su/survey-analysis/versions/1.0.1/craftbook.json +141 -0
- package/data/craftbook-templates/su/survey-analysis/versions/1.0.1/test.json +104 -0
- package/data/craftbook-templates/sv/svg-animation/versions/1.0.1/craftbook.json +110 -0
- package/data/craftbook-templates/sv/svg-animation/versions/1.0.1/test.json +97 -0
- package/data/craftbook-templates/ta/tailor-resume/versions/1.0.1/craftbook.json +114 -0
- package/data/craftbook-templates/ta/tailor-resume/versions/1.0.1/test.json +97 -0
- package/data/craftbook-templates/te/technical-documentation/versions/2.0.3/craftbook.json +408 -0
- package/data/craftbook-templates/te/technical-documentation/versions/2.0.3/test.json +174 -0
- package/data/craftbook-templates/te/test-coverage-review/versions/1.1.1/craftbook.json +141 -0
- package/data/craftbook-templates/te/test-coverage-review/versions/1.1.1/test.json +113 -0
- package/data/craftbook-templates/te/test-suite-backfill/versions/1.0.1/craftbook.json +120 -0
- package/data/craftbook-templates/te/test-suite-backfill/versions/1.0.1/test.json +92 -0
- package/data/craftbook-templates/th/thank-you-batch/versions/1.0.1/craftbook.json +143 -0
- package/data/craftbook-templates/th/thank-you-batch/versions/1.0.1/test.json +141 -0
- package/data/craftbook-templates/th/thank-you-sweep/versions/1.0.1/craftbook.json +143 -0
- package/data/craftbook-templates/th/thank-you-sweep/versions/1.0.1/test.json +142 -0
- package/data/craftbook-templates/th/threat-model/versions/1.0.1/craftbook.json +141 -0
- package/data/craftbook-templates/th/threat-model/versions/1.0.1/test.json +110 -0
- package/data/craftbook-templates/th/thumbnail-generator/versions/1.0.1/craftbook.json +103 -0
- package/data/craftbook-templates/th/thumbnail-generator/versions/1.0.1/test.json +103 -0
- package/data/craftbook-templates/ti/tileset-batch/versions/1.0.1/craftbook.json +160 -0
- package/data/craftbook-templates/ti/tileset-batch/versions/1.0.1/test.json +159 -0
- package/data/craftbook-templates/to/tone-rewrite/versions/1.0.1/craftbook.json +107 -0
- package/data/craftbook-templates/to/tone-rewrite/versions/1.0.1/test.json +110 -0
- package/data/craftbook-templates/to/topic-explainer/versions/1.0.1/craftbook.json +140 -0
- package/data/craftbook-templates/to/topic-explainer/versions/1.0.1/test.json +110 -0
- package/data/craftbook-templates/tr/transcribe-and-shownotes/versions/1.0.1/craftbook.json +115 -0
- package/data/craftbook-templates/tr/transcribe-and-shownotes/versions/1.0.1/test.json +98 -0
- package/data/craftbook-templates/tr/transcribe-audio/versions/1.0.1/craftbook.json +107 -0
- package/data/craftbook-templates/tr/transcribe-audio/versions/1.0.1/test.json +103 -0
- package/data/craftbook-templates/tr/transcribe-index/versions/1.0.1/craftbook.json +171 -0
- package/data/craftbook-templates/tr/transcribe-index/versions/1.0.1/test.json +151 -0
- package/data/craftbook-templates/ty/type-safety-pass/versions/1.0.1/craftbook.json +148 -0
- package/data/craftbook-templates/ty/type-safety-pass/versions/1.0.1/test.json +92 -0
- package/data/craftbook-templates/ve/version-bump/versions/1.0.1/craftbook.json +155 -0
- package/data/craftbook-templates/ve/version-bump/versions/1.0.1/test.json +92 -0
- package/data/craftbook-templates/vi/video-storyboard/versions/1.0.1/craftbook.json +109 -0
- package/data/craftbook-templates/vi/video-storyboard/versions/1.0.1/test.json +103 -0
- package/data/craftbook-templates/vi/visit-prep/versions/1.0.1/craftbook.json +140 -0
- package/data/craftbook-templates/vi/visit-prep/versions/1.0.1/test.json +97 -0
- package/data/craftbook-templates/vo/voiceover-script/versions/1.0.1/craftbook.json +107 -0
- package/data/craftbook-templates/vo/voiceover-script/versions/1.0.1/test.json +103 -0
- package/data/craftbook-templates/we/weak-spot-drill/versions/1.0.1/craftbook.json +154 -0
- package/data/craftbook-templates/we/weak-spot-drill/versions/1.0.1/test.json +124 -0
- package/data/craftbook-templates/we/web-app-crud/versions/1.0.1/craftbook.json +143 -0
- package/data/craftbook-templates/we/web-app-crud/versions/1.0.1/test.json +97 -0
- package/data/craftbook-templates/we/web-component/versions/1.0.1/craftbook.json +110 -0
- package/data/craftbook-templates/we/web-component/versions/1.0.1/test.json +97 -0
- package/data/craftbook-templates/we/webhook-handler/versions/1.0.1/craftbook.json +147 -0
- package/data/craftbook-templates/we/webhook-handler/versions/1.0.1/test.json +162 -0
- package/data/craftbook-templates/we/week-plan/versions/1.0.1/craftbook.json +140 -0
- package/data/craftbook-templates/we/week-plan/versions/1.0.1/test.json +255 -0
- package/data/craftbook-templates/we/weekly-menu-plan/versions/1.0.1/craftbook.json +140 -0
- package/data/craftbook-templates/we/weekly-menu-plan/versions/1.0.1/test.json +97 -0
- package/data/craftbook-templates/we/weekly-pipeline-review/versions/1.0.1/craftbook.json +106 -0
- package/data/craftbook-templates/we/weekly-pipeline-review/versions/1.0.1/test.json +104 -0
- package/data/craftbook-templates/we/weekly-review/versions/1.0.1/craftbook.json +107 -0
- package/data/craftbook-templates/we/weekly-review/versions/1.0.1/test.json +110 -0
- package/data/craftbook-templates/we/weekly-walkthrough/versions/1.0.1/craftbook.json +140 -0
- package/data/craftbook-templates/we/weekly-walkthrough/versions/1.0.1/test.json +138 -0
- package/data/craftbook-templates/wh/whitepaper/versions/1.0.1/craftbook.json +141 -0
- package/data/craftbook-templates/wh/whitepaper/versions/1.0.1/test.json +110 -0
- package/data/craftbook-templates/ye/year-in-review/versions/1.0.1/craftbook.json +115 -0
- package/data/craftbook-templates/ye/year-in-review/versions/1.0.1/test.json +145 -0
- package/data/craftbook-templates/yo/youtube-chapters-seo/versions/1.0.1/craftbook.json +134 -0
- package/data/craftbook-templates/yo/youtube-chapters-seo/versions/1.0.1/test.json +103 -0
- package/package.json +1 -1
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
{
|
|
2
|
+
"id": "copy-review",
|
|
3
|
+
"name": "Editorial & Tone Review",
|
|
4
|
+
"description": "Run an editorial review on a piece of content for clarity, correctness, and brand voice, then produce a line-edit report and a clean revised version. First scopes the audience, purpose, and voice/style rules and locks an editorial checklist (grammar and spelling, clarity and concision, consistent terminology, active voice, reading level, tone match, scannability, and CTA strength), then reviews the copy line-by-line against those rules marking every issue with a suggested rewrite, then writes a report of categorized edits plus a clean revised draft. Use this for a copy review, editorial pass, proofreading, line edit, tone/voice review, or tightening writing — it returns specific tracked edits with rewrites and a polished final draft rather than 'tighten this up'.\n\nA gallery craftbook generated from an archetype spec. It runs\n`phase → (per-phase gate) → … → evaluate → (loop) → finish`. Each build\nphase that produces a checkable artifact is followed by a **runtime\ngate-checkpoint** — the runtime verifies the artifact and routes with no\nmodel turn, looping back to redo the phase on a miss. The final `evaluate`\nstep holds a static deliverable gate plus a reviewer QA pass. What it adds\nover the generic `build-loop`: a specialist role per phase, a\ndomain-correct ordering, and a concrete per-phase quality bar.\n\nDeliverables marked \"artifact\" land in the project's artifacts drawer (`write_artifact` / `read_artifact`), not the shipped workspace — review output is not product source.\n\nPhases:\n\n1. Scope the editorial review (reviewer) — lock audience, purpose, voice, and an edit checklist → gated on artifact `notes/scope.md` (markdown-notes)\n2. Line-edit the copy (copywriter) — mark every issue with a concrete rewrite → gated on artifact `notes/review.md` (markdown-notes)\n3. Write the edit report + clean draft (copywriter) — categorized edits plus a revised draft → gated on artifact `copy-review.md` (markdown-report)\n\nThe gates never advance with an unmet criterion, and loop back to the\nowning phase to fix named gaps.\n",
|
|
5
|
+
"entryStepId": "scope",
|
|
6
|
+
"triggers": [
|
|
7
|
+
"copy review",
|
|
8
|
+
"editorial review",
|
|
9
|
+
"proofread this",
|
|
10
|
+
"line edit this",
|
|
11
|
+
"review the tone",
|
|
12
|
+
"tighten this writing"
|
|
13
|
+
],
|
|
14
|
+
"steps": [
|
|
15
|
+
{
|
|
16
|
+
"id": "scope",
|
|
17
|
+
"name": "Scope the editorial review",
|
|
18
|
+
"description": "lock audience, purpose, voice, and an edit checklist",
|
|
19
|
+
"prompt": "Step 1: Read the content and identify the audience, the purpose (inform / persuade / convert / instruct), and the desired voice/tone (e.g. friendly-expert, formal, playful) — infer from any style guide or sample if none is given. Step 2: Write an editorial acceptance-criteria checklist covering: grammar/spelling/punctuation correctness, clarity (no ambiguous or convoluted sentences), concision (cut filler, redundancy, hedging), consistent terminology and capitalization, active voice and strong verbs, an appropriate reading level for the audience, tone matching the target voice, scannability (headings, short paragraphs, lists where helpful), and CTA/heading strength where applicable. Step 3: For each item state the pass condition for THIS piece (e.g. 'reading level ~grade 8', 'product name always rendered as <X>'). Step 4: Note the target word-count direction if length matters. Write the audience/purpose/voice + checklist to `write_task_note` AND `notes/scope.md`. No edits yet.\n\nThe deliverable `notes/scope.md` lands in the project's artifacts drawer — write it with `write_artifact` and read it back with `read_artifact`; the shipped workspace stays untouched.",
|
|
20
|
+
"suggestedRole": "reviewer",
|
|
21
|
+
"advanceWhen": {
|
|
22
|
+
"file": "notes/scope.md",
|
|
23
|
+
"minBytes": 1,
|
|
24
|
+
"sniff": "nonempty",
|
|
25
|
+
"artifact": true
|
|
26
|
+
},
|
|
27
|
+
"gate": {
|
|
28
|
+
"at": "completion",
|
|
29
|
+
"checks": [
|
|
30
|
+
{
|
|
31
|
+
"kind": "minBytes",
|
|
32
|
+
"file": "notes/scope.md",
|
|
33
|
+
"bytes": 120,
|
|
34
|
+
"artifact": true
|
|
35
|
+
},
|
|
36
|
+
{
|
|
37
|
+
"kind": "sniff",
|
|
38
|
+
"file": "notes/scope.md",
|
|
39
|
+
"sniff": "nonempty",
|
|
40
|
+
"artifact": true
|
|
41
|
+
}
|
|
42
|
+
],
|
|
43
|
+
"onReject": "scope",
|
|
44
|
+
"maxAttempts": 3
|
|
45
|
+
},
|
|
46
|
+
"next": "review"
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
"id": "review",
|
|
50
|
+
"name": "Line-edit the copy",
|
|
51
|
+
"description": "mark every issue with a concrete rewrite",
|
|
52
|
+
"prompt": "Step 1: Read the copy line-by-line. Step 2: For EACH checklist dimension, flag specific issues quoting the offending text and giving a concrete REWRITE, not just a note — e.g. 'ORIGINAL: \"We are committed to leveraging synergies\" → SUGGESTED: \"We connect your tools so they work together\"'. Step 3: Categorize each edit: Correctness (grammar/spelling/fact), Clarity, Concision, Consistency, Voice/Tone, or Structure/Scannability. Step 4: Check global consistency: terminology, capitalization, oxford-comma and number style, heading parallelism. Step 5: Assess the overall tone against the target and note where it drifts. Step 6: Track the substantive vs trivial edits so the report can prioritize. Good looks like: every flagged line has a ready-to-paste rewrite. Stage the edit list to `write_task_note`. Do not write the final report/draft yet.\n\nThe deliverable `notes/review.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.",
|
|
53
|
+
"suggestedRole": "copywriter",
|
|
54
|
+
"advanceWhen": {
|
|
55
|
+
"file": "notes/review.md",
|
|
56
|
+
"minBytes": 1,
|
|
57
|
+
"sniff": "nonempty",
|
|
58
|
+
"artifact": true
|
|
59
|
+
},
|
|
60
|
+
"gate": {
|
|
61
|
+
"at": "completion",
|
|
62
|
+
"checks": [
|
|
63
|
+
{
|
|
64
|
+
"kind": "minBytes",
|
|
65
|
+
"file": "notes/review.md",
|
|
66
|
+
"bytes": 120,
|
|
67
|
+
"artifact": true
|
|
68
|
+
},
|
|
69
|
+
{
|
|
70
|
+
"kind": "sniff",
|
|
71
|
+
"file": "notes/review.md",
|
|
72
|
+
"sniff": "nonempty",
|
|
73
|
+
"artifact": true
|
|
74
|
+
}
|
|
75
|
+
],
|
|
76
|
+
"onReject": "review",
|
|
77
|
+
"maxAttempts": 3
|
|
78
|
+
},
|
|
79
|
+
"next": "report"
|
|
80
|
+
},
|
|
81
|
+
{
|
|
82
|
+
"id": "report",
|
|
83
|
+
"name": "Write the edit report + clean draft",
|
|
84
|
+
"description": "categorized edits plus a revised draft",
|
|
85
|
+
"prompt": "Step 1: Open `copy-review.md` and write a 2-3 sentence editorial summary: overall clarity/voice verdict and the top theme to fix. Step 2: Add an '## Edits' section grouped by category (Correctness, Clarity, Concision, Consistency, Voice, Structure); each entry shows the ORIGINAL and the SUGGESTED rewrite. Step 3: Add a '## Revised draft' section containing the FULL clean copy with every accepted edit applied — this is the shippable version. Step 4: Note any factual claims you could not verify. The revised draft must read smoothly end-to-end and match the target voice; every edit must include a concrete rewrite — no 'reword this'. On a loop-back, fix only the named gaps without losing good edits. `write_task_note` the report path and the count of edits by category.\n\nThe deliverable `copy-review.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.",
|
|
86
|
+
"suggestedRole": "copywriter",
|
|
87
|
+
"advanceWhen": {
|
|
88
|
+
"file": "copy-review.md",
|
|
89
|
+
"minBytes": 1,
|
|
90
|
+
"sniff": "nonempty",
|
|
91
|
+
"artifact": true
|
|
92
|
+
},
|
|
93
|
+
"gate": {
|
|
94
|
+
"at": "completion",
|
|
95
|
+
"checks": [
|
|
96
|
+
{
|
|
97
|
+
"kind": "minBytes",
|
|
98
|
+
"file": "copy-review.md",
|
|
99
|
+
"bytes": 1500,
|
|
100
|
+
"artifact": true
|
|
101
|
+
},
|
|
102
|
+
{
|
|
103
|
+
"kind": "contains",
|
|
104
|
+
"file": "copy-review.md",
|
|
105
|
+
"pattern": "(?:^|\\n)#{1,3}\\s+\\S",
|
|
106
|
+
"flags": "i",
|
|
107
|
+
"label": "at least one markdown heading",
|
|
108
|
+
"artifact": true
|
|
109
|
+
}
|
|
110
|
+
],
|
|
111
|
+
"onReject": "report",
|
|
112
|
+
"maxAttempts": 4
|
|
113
|
+
},
|
|
114
|
+
"next": "evaluate"
|
|
115
|
+
},
|
|
116
|
+
{
|
|
117
|
+
"id": "evaluate",
|
|
118
|
+
"name": "Evaluate",
|
|
119
|
+
"description": "Grade the deliverable against every acceptance criterion. All pass → finish; any fail → loop back and fix the gap.",
|
|
120
|
+
"prompt": "Open `copy-review.md` and grade it against the scope checklist. Check EACH criterion and write PASS/FAIL with a one-line reason: (1) every editorial dimension was assessed; (2) each edit includes the original AND a concrete rewrite; (3) edits are categorized; (4) a full revised draft is present and reads cleanly end-to-end; (5) the revised draft matches the target voice and reading level; (6) terminology/consistency was checked globally; (7) no vague 'tighten this' filler. Read the revised draft straight through to confirm it is shippable. If any criterion fails, name the exact gap and loop back.\n\nThe deliverable lives in the project's artifacts drawer — open `copy-review.md` with `read_artifact`, not `read_file`.\n\nThen route — this is the whole point of the loop:\n\n- **Every criterion PASSES →** call `advance_task_step({ ref, stepId: \"evaluate\", next: \"finish\" })`.\n- **Any criterion FAILS →** write the specific gaps to notes, then call `advance_task_step({ ref, stepId: \"evaluate\", next: \"report\" })` to loop back. The builder fixes exactly those gaps.\n\nNever route to `finish` while any criterion is unmet. The build phase's completion gate already blocked a grossly-incomplete deliverable; your job is the judgment an automated check cannot make (does it actually work, read well, look right). After ~3 unproductive loops, stop and report DONE_WITH_CONCERNS so the user can step in.",
|
|
121
|
+
"suggestedRole": "reviewer",
|
|
122
|
+
"consumes": [
|
|
123
|
+
{
|
|
124
|
+
"file": "copy-review.md",
|
|
125
|
+
"artifact": true
|
|
126
|
+
}
|
|
127
|
+
],
|
|
128
|
+
"next": "report"
|
|
129
|
+
},
|
|
130
|
+
{
|
|
131
|
+
"id": "finish",
|
|
132
|
+
"name": "Finish",
|
|
133
|
+
"description": "All acceptance criteria met. Stamp a short summary and report DONE.",
|
|
134
|
+
"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.",
|
|
135
|
+
"suggestedRole": "developer",
|
|
136
|
+
"terminal": true
|
|
137
|
+
}
|
|
138
|
+
],
|
|
139
|
+
"version": "1.0.1",
|
|
140
|
+
"releasedAt": "2026-08-14T00:00:00Z"
|
|
141
|
+
}
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schemaVersion": 1,
|
|
3
|
+
"title": "Line-edit report and clean revised copy",
|
|
4
|
+
"objective": "Measure whether the copy-review craftbook scopes voice rules, identifies line-level issues, and produces both an edit report and revised draft.",
|
|
5
|
+
"tags": [
|
|
6
|
+
"corpus"
|
|
7
|
+
],
|
|
8
|
+
"prompt": "In the `Copy Review Eval` project, review `source/signup-copy.md` for a calm professional operations SaaS voice. Write `copy-review.md` with categorized issues, concrete rewrites, and a clean revised draft. The final draft must keep the same product facts but remove hype, vague claims, and confusing CTA language.",
|
|
9
|
+
"setup": {
|
|
10
|
+
"projectName": "Copy Review Eval",
|
|
11
|
+
"about": "Self-contained eval project for the copy-review craftbook. Source copy is in workspace/source/signup-copy.md.",
|
|
12
|
+
"missionObjectives": "Produce a line-edit report plus clean revised copy, preserving facts while improving clarity, tone, CTA, and specificity.",
|
|
13
|
+
"files": [
|
|
14
|
+
{
|
|
15
|
+
"path": "source/signup-copy.md",
|
|
16
|
+
"content": "# Signup Copy Draft\n\nTransform your support chaos instantly with the most powerful queue magic on earth. Our dashboard kind of helps managers see stuff faster and maybe make better decisions. Click here to experience effortless operational enlightenment. Teams can track ticket volume, SLA breaches, reopen rate, and carrier scan delays. The pilot setup takes two weeks and uses existing ticket exports.\n"
|
|
17
|
+
}
|
|
18
|
+
],
|
|
19
|
+
"worker": {
|
|
20
|
+
"name": "Sofie",
|
|
21
|
+
"role": "Writer"
|
|
22
|
+
}
|
|
23
|
+
},
|
|
24
|
+
"mocks": [],
|
|
25
|
+
"success": {
|
|
26
|
+
"summary": "workspace/copy-review.md contains categorized issues, specific rewrites, and a clean revised draft preserving seeded facts.",
|
|
27
|
+
"deliverables": [
|
|
28
|
+
{
|
|
29
|
+
"path": "copy-review.md",
|
|
30
|
+
"kind": "markdown-report",
|
|
31
|
+
"minBytes": 1700,
|
|
32
|
+
"checks": [
|
|
33
|
+
{
|
|
34
|
+
"kind": "contains",
|
|
35
|
+
"file": "copy-review.md",
|
|
36
|
+
"pattern": "Issues|Findings|Line edits",
|
|
37
|
+
"flags": "i"
|
|
38
|
+
},
|
|
39
|
+
{
|
|
40
|
+
"kind": "contains",
|
|
41
|
+
"file": "copy-review.md",
|
|
42
|
+
"pattern": "Rewrite|Suggested rewrite|Before|After",
|
|
43
|
+
"flags": "i"
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
"kind": "contains",
|
|
47
|
+
"file": "copy-review.md",
|
|
48
|
+
"pattern": "Clean revised draft|Revised copy",
|
|
49
|
+
"flags": "i"
|
|
50
|
+
},
|
|
51
|
+
{
|
|
52
|
+
"kind": "contains",
|
|
53
|
+
"file": "copy-review.md",
|
|
54
|
+
"pattern": "ticket volume|SLA breaches|reopen rate|carrier scan delays",
|
|
55
|
+
"flags": "i"
|
|
56
|
+
},
|
|
57
|
+
{
|
|
58
|
+
"kind": "contains",
|
|
59
|
+
"file": "copy-review.md",
|
|
60
|
+
"pattern": "two weeks|existing ticket exports",
|
|
61
|
+
"flags": "i"
|
|
62
|
+
},
|
|
63
|
+
{
|
|
64
|
+
"kind": "contains",
|
|
65
|
+
"file": "copy-review.md",
|
|
66
|
+
"pattern": "calm|professional|specific|CTA|voice",
|
|
67
|
+
"flags": "i"
|
|
68
|
+
}
|
|
69
|
+
]
|
|
70
|
+
}
|
|
71
|
+
]
|
|
72
|
+
},
|
|
73
|
+
"rubric": {
|
|
74
|
+
"artifact": {
|
|
75
|
+
"path": "copy-review.md",
|
|
76
|
+
"kind": "markdown"
|
|
77
|
+
},
|
|
78
|
+
"axes": [
|
|
79
|
+
{
|
|
80
|
+
"name": "grounding",
|
|
81
|
+
"description": "Seeded facts appear faithfully and the source is cited."
|
|
82
|
+
},
|
|
83
|
+
{
|
|
84
|
+
"name": "structure",
|
|
85
|
+
"description": "Sections progress logically for the artifact class."
|
|
86
|
+
},
|
|
87
|
+
{
|
|
88
|
+
"name": "completeness",
|
|
89
|
+
"description": "Required elements (risks, next actions, scope) are all present."
|
|
90
|
+
},
|
|
91
|
+
{
|
|
92
|
+
"name": "tone",
|
|
93
|
+
"description": "The register fits the audience and artifact class."
|
|
94
|
+
}
|
|
95
|
+
]
|
|
96
|
+
},
|
|
97
|
+
"qualityFocus": [
|
|
98
|
+
"line edits",
|
|
99
|
+
"voice/tone scope",
|
|
100
|
+
"clean revised draft"
|
|
101
|
+
]
|
|
102
|
+
}
|
|
@@ -0,0 +1,210 @@
|
|
|
1
|
+
{
|
|
2
|
+
"id": "corpus-email-digest",
|
|
3
|
+
"name": "Daily Email Digest from a Corpus",
|
|
4
|
+
"description": "Produce an email-ready digest that summarizes a corpus of content (docs, feeds, notes) for a recurring send. Scopes what matters and the format first, drafts the digest in a consistent voice, then builds the email-ready output and evaluates for accuracy and scannability.\n\nA gallery craftbook generated from an archetype spec. It runs\n`phase → (per-phase gate) → … → evaluate → (loop) → finish`. Each build\nphase that produces a checkable artifact is followed by a **runtime\ngate-checkpoint** — the runtime verifies the artifact and routes with no\nmodel turn, looping back to redo the phase on a miss. The final `evaluate`\nstep holds a static deliverable gate plus a reviewer QA pass. What it adds\nover the generic `build-loop`: a specialist role per phase, a\ndomain-correct ordering, and a concrete per-phase quality bar.\n\nDeliverables marked \"artifact\" land in the project's artifacts drawer (`write_artifact` / `read_artifact`), not the shipped workspace — review output is not product source.\n\nPhases:\n\n1. Scope the digest (planner) — what to include, sections, format, length → gated on artifact `digest/scope.md` (markdown-notes)\n2. Draft the digest (copywriter) — write the digest from the corpus, with citations → gated on artifact `digest/draft.md` (markdown-doc)\n3. Build the email output (developer) — render to an email-ready format → gated on `digest.html` (html-page)\n\nThe gates never advance with an unmet criterion, and loop back to the\nowning phase to fix named gaps.\n",
|
|
5
|
+
"entryStepId": "scope",
|
|
6
|
+
"triggers": [
|
|
7
|
+
"daily summary",
|
|
8
|
+
"email digest",
|
|
9
|
+
"summarize this corpus",
|
|
10
|
+
"briefing"
|
|
11
|
+
],
|
|
12
|
+
"steps": [
|
|
13
|
+
{
|
|
14
|
+
"id": "scope",
|
|
15
|
+
"name": "Scope the digest",
|
|
16
|
+
"description": "what to include, sections, format, length",
|
|
17
|
+
"prompt": "List and read every supplied corpus file with workspace tools before scoping. Decide the digest window, included sources, section structure (headline, top items, one line each), target length, tone, citation format, and subject-line convention. Write an **acceptance-criteria checklist** (\"≤ N items per section\", \"every item cites its source\", \"scannable in under a minute\", \"no item outside the window\", \"no invented facts\"). Save the scope + checklist to artifact `digest/scope.md` with `write_artifact`; note the path in task notes.",
|
|
18
|
+
"suggestedRole": "planner",
|
|
19
|
+
"advanceWhen": {
|
|
20
|
+
"file": "digest/scope.md",
|
|
21
|
+
"minBytes": 1,
|
|
22
|
+
"sniff": "nonempty",
|
|
23
|
+
"artifact": true
|
|
24
|
+
},
|
|
25
|
+
"gate": {
|
|
26
|
+
"at": "completion",
|
|
27
|
+
"checks": [
|
|
28
|
+
{
|
|
29
|
+
"kind": "minBytes",
|
|
30
|
+
"file": "digest/scope.md",
|
|
31
|
+
"bytes": 500,
|
|
32
|
+
"artifact": true
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
"kind": "sniff",
|
|
36
|
+
"file": "digest/scope.md",
|
|
37
|
+
"sniff": "nonempty",
|
|
38
|
+
"artifact": true
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
"kind": "contains",
|
|
42
|
+
"file": "digest/scope.md",
|
|
43
|
+
"pattern": "citation|source",
|
|
44
|
+
"flags": "i",
|
|
45
|
+
"label": "citation policy",
|
|
46
|
+
"artifact": true
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
"kind": "contains",
|
|
50
|
+
"file": "digest/scope.md",
|
|
51
|
+
"pattern": "window|fresh|date",
|
|
52
|
+
"flags": "i",
|
|
53
|
+
"label": "freshness window",
|
|
54
|
+
"artifact": true
|
|
55
|
+
}
|
|
56
|
+
],
|
|
57
|
+
"onReject": "scope",
|
|
58
|
+
"maxAttempts": 3
|
|
59
|
+
},
|
|
60
|
+
"next": "draft"
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
"id": "draft",
|
|
64
|
+
"name": "Draft the digest",
|
|
65
|
+
"description": "write the digest from the corpus, with citations",
|
|
66
|
+
"prompt": "Read artifact `digest/scope.md` with `read_artifact`, then re-read every included corpus source with workspace `read_file`. Write the digest to the scoped structure: a subject line, one tight line per item, and an adjacent source filename/citation for every item. Lead with what matters, keep a consistent voice, and do not invent or merge unsupported facts. Save the complete draft to artifact `digest/draft.md` with `write_artifact`; note the path in task notes.",
|
|
67
|
+
"suggestedRole": "copywriter",
|
|
68
|
+
"consumes": [
|
|
69
|
+
{
|
|
70
|
+
"file": "digest/scope.md",
|
|
71
|
+
"artifact": true
|
|
72
|
+
}
|
|
73
|
+
],
|
|
74
|
+
"advanceWhen": {
|
|
75
|
+
"file": "digest/draft.md",
|
|
76
|
+
"minBytes": 1,
|
|
77
|
+
"sniff": "nonempty",
|
|
78
|
+
"artifact": true
|
|
79
|
+
},
|
|
80
|
+
"gate": {
|
|
81
|
+
"at": "completion",
|
|
82
|
+
"checks": [
|
|
83
|
+
{
|
|
84
|
+
"kind": "minBytes",
|
|
85
|
+
"file": "digest/draft.md",
|
|
86
|
+
"bytes": 700,
|
|
87
|
+
"artifact": true
|
|
88
|
+
},
|
|
89
|
+
{
|
|
90
|
+
"kind": "contains",
|
|
91
|
+
"file": "digest/draft.md",
|
|
92
|
+
"pattern": "subject\\s*:",
|
|
93
|
+
"flags": "i",
|
|
94
|
+
"label": "subject line",
|
|
95
|
+
"artifact": true
|
|
96
|
+
},
|
|
97
|
+
{
|
|
98
|
+
"kind": "contains",
|
|
99
|
+
"file": "digest/draft.md",
|
|
100
|
+
"pattern": "\\.md\\b|source\\s*:",
|
|
101
|
+
"flags": "i",
|
|
102
|
+
"label": "source citations",
|
|
103
|
+
"artifact": true
|
|
104
|
+
},
|
|
105
|
+
{
|
|
106
|
+
"kind": "contains",
|
|
107
|
+
"file": "digest/draft.md",
|
|
108
|
+
"pattern": "(?:^|\\n)#{1,3}\\s+\\S",
|
|
109
|
+
"flags": "i",
|
|
110
|
+
"label": "at least one markdown heading",
|
|
111
|
+
"artifact": true
|
|
112
|
+
}
|
|
113
|
+
],
|
|
114
|
+
"onReject": "draft",
|
|
115
|
+
"maxAttempts": 3
|
|
116
|
+
},
|
|
117
|
+
"next": "build"
|
|
118
|
+
},
|
|
119
|
+
{
|
|
120
|
+
"id": "build",
|
|
121
|
+
"name": "Build the email output",
|
|
122
|
+
"description": "render to an email-ready format",
|
|
123
|
+
"prompt": "Read artifacts `digest/scope.md` and `digest/draft.md` with `read_artifact`. Render the approved draft to workspace `digest.html` with `write_file`. Include the subject line in visible/preheader content, preserve every adjacent source citation, use semantic email-safe tables or blocks, and keep styles inline or in a small embedded style block with no external CSS, scripts, or network assets. On a loop-back, fix only the named gaps. `write_task_note` the workspace output path and item/source counts.",
|
|
124
|
+
"suggestedRole": "developer",
|
|
125
|
+
"consumes": [
|
|
126
|
+
{
|
|
127
|
+
"file": "digest/scope.md",
|
|
128
|
+
"artifact": true
|
|
129
|
+
},
|
|
130
|
+
{
|
|
131
|
+
"file": "digest/draft.md",
|
|
132
|
+
"artifact": true
|
|
133
|
+
}
|
|
134
|
+
],
|
|
135
|
+
"advanceWhen": {
|
|
136
|
+
"file": "digest.html",
|
|
137
|
+
"minBytes": 1,
|
|
138
|
+
"sniff": "html-complete"
|
|
139
|
+
},
|
|
140
|
+
"gate": {
|
|
141
|
+
"at": "completion",
|
|
142
|
+
"checks": [
|
|
143
|
+
{
|
|
144
|
+
"kind": "minBytes",
|
|
145
|
+
"file": "digest.html",
|
|
146
|
+
"bytes": 2200
|
|
147
|
+
},
|
|
148
|
+
{
|
|
149
|
+
"kind": "htmlLint",
|
|
150
|
+
"file": "digest.html"
|
|
151
|
+
},
|
|
152
|
+
{
|
|
153
|
+
"kind": "cssMinBytes",
|
|
154
|
+
"bytes": 350,
|
|
155
|
+
"file": "digest.html"
|
|
156
|
+
},
|
|
157
|
+
{
|
|
158
|
+
"kind": "contains",
|
|
159
|
+
"file": "digest.html",
|
|
160
|
+
"pattern": "subject\\s*:",
|
|
161
|
+
"flags": "i",
|
|
162
|
+
"label": "subject line"
|
|
163
|
+
},
|
|
164
|
+
{
|
|
165
|
+
"kind": "contains",
|
|
166
|
+
"file": "digest.html",
|
|
167
|
+
"pattern": "\\.md\\b|source\\s*:",
|
|
168
|
+
"flags": "i",
|
|
169
|
+
"label": "source citations"
|
|
170
|
+
}
|
|
171
|
+
],
|
|
172
|
+
"scripts": [
|
|
173
|
+
{
|
|
174
|
+
"name": "checkHtmlComplete",
|
|
175
|
+
"scope": "standard",
|
|
176
|
+
"inputs": {
|
|
177
|
+
"file": "digest.html"
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
],
|
|
181
|
+
"onReject": "build",
|
|
182
|
+
"maxAttempts": 4
|
|
183
|
+
},
|
|
184
|
+
"next": "evaluate"
|
|
185
|
+
},
|
|
186
|
+
{
|
|
187
|
+
"id": "evaluate",
|
|
188
|
+
"name": "Evaluate",
|
|
189
|
+
"description": "Grade the deliverable against every acceptance criterion. All pass → finish; any fail → loop back and fix the gap.",
|
|
190
|
+
"prompt": "Read workspace `digest.html` with `read_file`, artifacts `digest/scope.md` and `digest/draft.md` with `read_artifact`, and the original corpus files with workspace tools. Check accuracy (every item traces to a corpus fact, nothing invented), citations (each item names its source), scannability, section/item limits, and freshness window. Confirm the HTML preserves the approved draft and has no external dependencies. Write PASS/FAIL per criterion.\n\nThen route — this is the whole point of the loop:\n\n- **Every criterion PASSES →** call `advance_task_step({ ref, stepId: \"evaluate\", next: \"finish\" })`.\n- **Any criterion FAILS →** write the specific gaps to notes, then call `advance_task_step({ ref, stepId: \"evaluate\", next: \"build\" })` to loop back. The builder fixes exactly those gaps.\n\nNever route to `finish` while any criterion is unmet. The build phase's completion gate already blocked a grossly-incomplete deliverable; your job is the judgment an automated check cannot make (does it actually work, read well, look right). After ~3 unproductive loops, stop and report DONE_WITH_CONCERNS so the user can step in.",
|
|
191
|
+
"suggestedRole": "reviewer",
|
|
192
|
+
"consumes": [
|
|
193
|
+
{
|
|
194
|
+
"file": "digest.html"
|
|
195
|
+
}
|
|
196
|
+
],
|
|
197
|
+
"next": "build"
|
|
198
|
+
},
|
|
199
|
+
{
|
|
200
|
+
"id": "finish",
|
|
201
|
+
"name": "Finish",
|
|
202
|
+
"description": "All acceptance criteria met. Stamp a short summary and report DONE.",
|
|
203
|
+
"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.",
|
|
204
|
+
"suggestedRole": "developer",
|
|
205
|
+
"terminal": true
|
|
206
|
+
}
|
|
207
|
+
],
|
|
208
|
+
"version": "1.2.1",
|
|
209
|
+
"releasedAt": "2026-08-14T00:00:00Z"
|
|
210
|
+
}
|
|
@@ -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
|
+
}
|