- chapter_polish: remove sections:deliverables — chapter text already in
{chapter_text}; this caused 150KB+ prompts for late chapters (40MB logs)
- chapter_roundtable: require structured CONSENSUS REACHED block so
key_changes is always formatted as an extractable string; change
key_changes schema from list to string to match
- book_chapter: remove sections:history to reduce context; restructure
Pass 0 to plan-only (no prose output) so the chapter is only written
once in Pass 1 instead of twice; add explicit instruction in package
hint to copy full chapter_text into spawn context
- short_story: remove sections:history and sections:deliverables (standalone
task, needs neither); restructure Pass 0 to plan-only, Pass 1 to write;
add note to handle literal {genre_name} placeholders gracefully
- recipe_develop, ai_article_write, blog_write: remove sections:history
(these standalone tasks do not need full project conversation history;
deliverables kept so they can read the research/plan file)
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- pass_threshold: 65→60 (reviews scoring 58-64 are high quality but barely
missing the bar; editorial reviews are inherently subjective)
- deliverable_type: coordination→editorial_review (correct semantic type)
- Improved criteria descriptions to clearly signal this is an editorial
feedback document, not a task completion report
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
With 3 agents and max_iterations=3, effective_max=max(3,3)=3, meaning
each agent speaks exactly once per roundtable — no back-and-forth.
Adjudicator correctly rejected these as incomplete (score=0-58 on
completeness/consensus_clarity/actionability).
9 iterations = 3 full rounds for 3 agents, allowing genuine debate:
Round 1: Initial assessments | Round 2: Responses | Round 3: Consensus
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Replace agent_name: Devon with agents: [Devon, Lane, Cora] so the
chapter_roundtable task has all three editors rotating in the debate.
Addresses user feedback that roundtable should not be a specific
agent - everyone in the editorial team should be drafted.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Double-brace {{agent_slug}} left outer braces in filename even after
substitution, causing all 3 reviewers (Devon/Lane/Cora) to write to
the same file review-ch-XX-{agent-slug}.md overwriting each other.
Single-brace now correctly produces review-ch-XX-devon.md etc.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- BOARDROOM RULE: when request is a strategic debate/deliberation, create
ONE task_type: boardroom for Selene, NOT content pipeline tasks
- NO-RE-PIPELINE RULE: if project already has book_research/outline/chapters
in history, do NOT restart the pipeline mid-flight
Fixes Issue where planning incorrectly spawned a full research pipeline
when asked for a boardroom session, creating a 3rd set of Hollow Crown chapters.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Root cause: AR retries book_outline when score < 60; each retry's package step
creates a new batch of chapters. InProgress chapters can't be deleted on rejection
so multiple sets accumulate. The boardroom deliberation (4 rounds) is the quality
gate — no retry needed at the outline level.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- book_chapter.yml: spawn Roundtable task with agent_name: Devon
(dispatcher requires at least one agent; Devon chairs the roundtable
while rotate_participants still drafts all available editors)
- chapter_roundtable.yml: spawn Polish task with agent_name: Iris
(Iris is the designated chapter polish author)
Previously: dispatch_create_task_skipped reason=no_agent for both tasks.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
CLP's chapter_roundtable doesn't extract individual editor finals
(it's roster-driven, not hardcoded to Devon/Lane/Cora).
Removed the three empty context references from the polish step hint.
consensus_critique already summarizes all editorial positions.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
LLM was creating 20 tasks (2x outlines worth) because the hint said
'minimum {chapter_count|10} chapters'. Changed to explicit 'count the
chapters in the outline and create that exact number of actions'.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- book_research.yml: add inference hint when genre_name/genre_audience/research_focus are empty
- book_outline.yml: add inference hint for genre/audience; change package schema to ask LLM
to FILL genre_name/genre_audience/prose_style/chapter_target_words from the outline text
(was using {template_vars} which stay empty unless planning sets them)
- devon/agent.yml: add chapter_roundtable to supported_templates
- lane/agent.yml: add chapter_roundtable to supported_templates
(all three editors now participate in roundtable — roster-driven, not hardcoded)
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
IntakeResponse packet type is for intake routing only, not child task creation.
Replace with type: spawn (same pattern as book_research.yml) to correctly
spawn the ai_article_plan task after research completes.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Templates spawned from genesis only receive a description, not pre-set
context variables. Removing requires: prevents step-0 failures when the
story brief is rich enough for Iris to infer genre/audience/prose style.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
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>
Genesis must spawn exactly ONE task (book_research, short_story,
recipe_collection_plan, ai_article_research, blog_research, or planning).
The cascade templates handle everything downstream automatically.
This prevents Nova from skipping the book_research→book_outline pipeline
and spawning chapters/editorial tasks without proper context.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- templates/genesis.yml: copied from global seed, fixed to use
roster-driven task types (no hardcoded generic type list)
- agents/nova/agent.yml: added genesis to supported_templates
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>