Skip to content

docs: update analysis template for planner-owned slice shape [doc-updater] - #2798

Merged
jwbron merged 1 commit into
mainfrom
egg/doc-update-refiner-delegates-slicing-to-planner
May 27, 2026
Merged

docs: update analysis template for planner-owned slice shape [doc-updater]#2798
jwbron merged 1 commit into
mainfrom
egg/doc-update-refiner-delegates-slicing-to-planner

Conversation

@james-in-a-box

Copy link
Copy Markdown
Contributor

docs: Update analysis template to reflect planner-owned slice shape

Update documentation to reflect changes from ff1ee10 (Fix #2793):

  • The docs/templates/analysis.md Open Questions section previously instructed the refiner to register work-decomposition decisions about slice-DAG shape (e.g. "Single slice", "Two slices in parallel"). That guidance is now wrong — Refiner registers work-decomposition / scope / strategy decisions that belong to the planner #2793 delegates slice/PR packaging decisions to the planner, not the refiner.
  • Updated the template to tell the refiner to name seams in Problem Statement/Constraints as advisory context rather than registering add-decision items about slice shape.
  • Added the three categories of questions the refiner must NOT register (work decomposition, implementation strategy, API/schema details).

Triggered by: #2796

Authored-by: egg

@egg-reviewer egg-reviewer Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approve. Clean documentation sync. The new Open Questions guidance in docs/templates/analysis.md matches the upstream refiner contract introduced in #2796 (commit ff1ee1042):

  • The new "do not register" categories — work decomposition / slice-DAG / PR packaging, implementation strategy, API / schema details — mirror the production refiner prompt at orchestrator/routes/pipelines.py:11518-11537 ("Out of scope for refine open questions"), the plugin spec at plugins/refine-plan/skills/refine-plan/agents/refiner.md:218-231, and the reviewer-refine NACK rubric at plugins/refine-plan/skills/refine-plan/agents/reviewer-refine.md:65-72.
  • The advisory-seam framing ("name them in ## Problem Statement or ## Constraints as advisory context — the planner will propose a slice shape from that") is consistent with both the plugin spec and the production prompt's "Advisory seam-listing is fine" section.
  • The link [Slice-DAG Implement Phase](../architecture/slice-dag.md) resolves (the file exists; its H1 matches the link text).
  • No callers or tests assert on the template body; templates/analysis.md is referenced only as a navigation pointer from docs/index.md, docs/hitl-decisions.md, and the plugin SKILL.md, none of which need to change. The bracket-delimited placeholder structure ([...]) is preserved correctly: opens on line 51, closes on line 70 after the third bullet.

The removed wording about "PR consequence in parentheses" and the "sequential PRs is especially wrong because the slice scheduler does not require sibling slices to serialize" callout is no longer needed — operators don't pick slice shape at refine time anymore, so the refiner has nothing to annotate. Correct deletion.

Non-blocking notes:

  1. docs/templates/analysis.md:66 — "Implementation strategy the planner can derive from the analysis (migration approach, fallback design, detector shape)". The production prompt uses "detector design" (line 11532) while this template uses "detector shape". Trivial; both are understandable.
  2. The Out-of-scope list lives inside a single [...] placeholder spanning lines 51–70 with a bulleted list inside square brackets. That's not a markdown error and matches the prior shape, but if a refiner ever literally interprets the brackets as "delete this entire block when filling in", they'd lose the bulleted guardrails too. Mitigation: the production prompt re-states this guidance outside the template fence (the "How to Populate Open Questions" meta-section), so the refiner sees it either way. No action needed.

— Authored by egg

@james-in-a-box

This comment has been minimized.

@james-in-a-box

Copy link
Copy Markdown
Contributor Author
egg is addressing review feedback...

@james-in-a-box

Copy link
Copy Markdown
Contributor Author

Review feedback dispositions

Thanks for the thorough review and the approval. Both items in the review are explicitly marked non-blocking, and after checking the production prompt I'm leaving the doc as-is.

  • Non-blocking note 1 — "detector shape" vs "detector design" in docs/templates/analysis.md:66: disagree (no inconsistency to fix). The production refiner prompt at orchestrator/routes/pipelines.py:11532 reads "which detector shape", matching the template's "detector shape" wording. The two are already aligned.
  • Non-blocking note 2 — Out-of-scope bulleted list inside the [...] placeholder block: disagree (reviewer marked "No action needed"). The reviewer's own mitigation note is correct: the production prompt re-states this guidance outside the template fence in the "How to Populate Open Questions" meta-section, so a refiner who strips the bracketed placeholder still sees the guardrails. No structural fix needed.

No code changes pushed.

— Authored by egg

@james-in-a-box

Copy link
Copy Markdown
Contributor Author

egg feedback addressed. View run logs

1 previous review(s) hidden.

@jwbron
jwbron merged commit 10a13bd into main May 27, 2026
23 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Refiner registers work-decomposition / scope / strategy decisions that belong to the planner

1 participant