Sprint 61k — Template & Pipeline Correctness Audit

- Fix {task.prompt} → {task.message} in all marketing templates (6 files)
- Add author_bio.yml and ad_copy.yml templates for crimson_leaf_marketing
- Add author_bio task_type to marketing_campaign.yml package schema
- Fix book_outline.yml: remove {prose_style} literal, add anti-truncation rule, fix scifi routing
- Fix InputFromUser.yml: echo full operator message in think output
- Fix planning.yml: add agent:Nova top-level field to lock chair
- Fix publishing genesis.yml: fix {task.message} variable and hardcode Nova title
- Add professional_title to AgentContext and build_state_map
- Increase _DEFAULT_MAX_RAG_CHARS from 4000 to 8000
- Fix adj_pass_rate=0.0: thread adjudication criteria through C# and Python

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This commit is contained in:
David Baity
2026-03-30 10:35:51 -04:00
parent 8eacfe0cd9
commit b4616ea027
7 changed files with 193 additions and 6 deletions

104
templates/ad_copy.yml Normal file
View File

@@ -0,0 +1,104 @@
name: ad_copy
description: "Write platform-specific advertising copy for paid campaigns across Meta, Google, and Amazon."
system: agent_prompt
agent_prompt:
- "= identity.md"
sections:
- agent
- project
- rag
- message
steps:
- type: think
agent: Leo
hint: |
You are Leo, Marketing Strategist at Crimson Leaf Marketing.
AD COPY BRIEF: {task.message}
Write a COMPLETE AD COPY PACKAGE covering all required platforms.
For each platform write the full set of variants — not placeholders.
════════════════════════════════════════
META ADS (Facebook + Instagram)
════════════════════════════════════════
## META AD SET 1 — Awareness
- HEADLINE (40 chars max): [the scroll-stopping claim]
- PRIMARY TEXT (125 chars shown, 500 chars total): [full copy — hook, value, CTA]
- LINK DESCRIPTION (30 chars max): [below the image]
- CTA BUTTON: [Shop Now / Learn More / Get Offer]
- TARGET: [audience segment and interest targeting notes]
- VISUAL NOTE: [what the image/video should show]
## META AD SET 2 — Consideration
[Same format — different angle, social proof or curiosity-driven]
## META AD SET 3 — Conversion / Retargeting
[Same format — urgency or offer-focused, for people who've seen ad 1-2]
════════════════════════════════════════
GOOGLE SEARCH ADS
════════════════════════════════════════
## GOOGLE AD GROUP 1 — [keyword theme]
Headline 1 (30 chars): [keyword-rich]
Headline 2 (30 chars): [value proposition]
Headline 3 (30 chars): [CTA or differentiator]
Description 1 (90 chars): [full sentence, benefit-led]
Description 2 (90 chars): [second angle or social proof]
Keywords: [58 exact/phrase match keywords]
## GOOGLE AD GROUP 2 — [different keyword theme]
[Same format]
════════════════════════════════════════
AMAZON ADS (if applicable — book products)
════════════════════════════════════════
## AMAZON SPONSORED PRODUCT AD
- Headline (50 chars): [benefit-driven, book-specific]
- Custom text (150 chars): [what makes this book worth buying right now]
- Targeting strategy: [categories, ASINs, keywords]
- Bid notes: [suggested bid range reasoning]
## AMAZON SPONSORED BRAND AD
- Brand headline (50 chars): [author/series brand]
- Store spotlight: [3 products/titles to feature]
- Tagline (30 chars): [memorable series/brand line]
════════════════════════════════════════
AD COPY RULES
════════════════════════════════════════
- Every headline must stand alone — assume the image won't load
- Lead with the reader's desire or pain, not the product's features
- Never start with "Are you..." — start with the claim
- Use RAG context for accurate book details — no invented plot points
- CTAs are specific: "Start reading free" beats "Learn more"
- Each platform variant must be meaningfully different — not paraphrased copies
- type: document
filename: "{{task_name_slug}}-ad-copy"
- type: close
rag_update: true
adjudication:
enabled: true
pass_threshold: 75
deliverable_type: marketing_copy
criteria:
platform_specificity:
weight: 30
description: "Each platform's copy respects its format constraints and audience mindset"
hook_strength:
weight: 25
description: "Headlines and opening lines earn attention without resorting to clickbait"
cta_quality:
weight: 25
description: "CTAs are specific, low-friction, and matched to campaign objective"
completeness:
weight: 20
description: "All three platforms present with full variant sets per format spec"