fix(planning): replace hardcoded generic task types with roster-driven selection

The serialization think step (step 2) had a hardcoded list of generic task types
(research_plus, draft, review, polish, etc.) — these NEVER matched CLP templates.
This is the root cause of auto-hired agents and quick-task fallbacks for all
book/story/article pipelines.

Replaced with:
- Instruction to use ONLY task types from TEAM ROSTER supported_templates
- Explicit sequencing rules for book, article, blog, recipe, short story pipelines
- Book pipeline: book_research first, cascade handles the rest
- Article pipeline: ai_article_research first
- Blog: blog_research per post
- Recipe: recipe_collection_plan
- Short story: short_story

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This commit is contained in:
David Baity
2026-03-12 01:54:28 -04:00
parent 440b70d3d8
commit c43e931bdb

View File

@@ -50,36 +50,41 @@ steps:
- task_name: short, specific - task_name: short, specific
- description: full detail — enough that the assigned agent can execute without asking - description: full detail — enough that the assigned agent can execute without asking
- agents: EXACT name(s) from TEAM ROSTER - agents: EXACT name(s) from TEAM ROSTER
- task_type: one of the valid task types listed below - task_type: MUST be an EXACT template name from the agent's supported_templates in the TEAM ROSTER
- priority: 1 (critical) to 5 (nice-to-have) - priority: 1 (critical) to 5 (nice-to-have)
Order tasks correctly — blockers before dependents. Order tasks correctly — blockers before dependents.
No ambiguous assignments. No placeholder names. No ambiguous assignments. No placeholder names.
Do NOT invent task type names. Each task_type MUST appear verbatim in the TEAM ROSTER.
VALID TASK TYPES (use ONLY these exact strings): BOOK/FICTION SEQUENCING RULE:
research_plus — deep research on a topic - For novels and books, the pipeline is: book_research → book_outline → book_chapter (×N) →
outline — structure or plan for a piece of content chapter_review (×3 per chapter) → chapter_roundtable → chapter_polish → book_editorial → project_index
draft — write a complete draft of content - Do NOT spawn book_chapter tasks until book_outline has run and provided chapter context.
review — critique and give feedback on content - Start with ONE book_research task only. The cascade templates handle everything after that.
roundtable — multi-voice deliberation for consensus
polish — final editing and refinement ARTICLE SERIES SEQUENCING RULE:
quick — short single-step response - For article series: ai_article_research → ai_article_plan → ai_article_write (×N)
writing — general writing task - Start with ONE ai_article_research task only.
planning — sub-planning session
analysis — data or situation analysis BLOG SEQUENCING RULE:
brainstorm — open ideation session - For a blog post: blog_research → blog_write (one per post)
code — software development task
RECIPE SEQUENCING RULE:
- For a recipe collection: ONE recipe_collection_plan task only.
SHORT STORY RULE:
- For a short story (under 20k words): ONE short_story task only.
CANONICAL SELECTION RULE: If the plan produces multiple competing drafts of the CANONICAL SELECTION RULE: If the plan produces multiple competing drafts of the
same artifact (e.g. three mission statement drafts, two roadmap versions), the plan same artifact (e.g. three mission statement drafts, two roadmap versions), the plan
MUST include a final "Select Canonical: [artifact]" polish task assigned to Iris or MUST include a final "Select Canonical: [artifact]" task assigned to the most
Atlas that explicitly picks one version, merges the best elements, and archives the relevant specialist that explicitly picks one version, merges the best elements, and
rest. Do NOT leave competing versions unresolved. archives the rest. Do NOT leave competing versions unresolved.
DECOMPOSITION RULE: When the deliverable is a batch of similar items (e.g. 10 podcast DECOMPOSITION RULE: When the deliverable is a batch of similar items (e.g. 10 podcast
scripts, 5 chapters, 8 articles), create ONE individual draft task per item — NOT a scripts, 5 chapters, 8 articles), create ONE individual task per item — NOT a
single "write all 10" batch task. A single LLM call cannot produce 10 full-length single "write all 10" batch task. Each item must be its own task with its own specific
scripts. Each episode/chapter/article must be its own task with its own specific description. Review and polish tasks can be batched at the end.
description. The review and polish tasks can still be batched at the end.
- type: package - type: package
packet_type: PlanningResponsePacket packet_type: PlanningResponsePacket