Rationale: This is a mature, well-tested plugin that does its narrow job well and is already partly ahead of the SOTA curve. Its hardest path — the monorepo roadmap — already implements the exact ‘deterministic-skeleton + LLM-island’ structured-generation pattern the frontier endorses: sync-roadmap-json.sh deterministically renders all tables/counts/bead-lists/dependency-chains from bd --json, the interleave companion’s template-roadmap-md.sh emits a markdown skeleton with only three <!-- LLM:SECTION_NAME --> placeholders (NEXT_GROUPINGS, MODULE_HIGHLIGHTS, RESEARCH_AGENDA), and it even does plan/execute model routing per island (Sonnet for semantic grouping, Haiku for cheaper summarization), saving ~13K tokens vs full regeneration. That is genuinely best-in-class for a doc generator. The verdict is ‘improve’ rather than ‘keep’ because the same pattern is NOT applied to the single-project artifacts (PRD, vision, changelog, status, CUJ, single-project roadmap): those still do free-text LLM generation against a prose template, which is precisely the brittle, token-heavy, non-machine-parseable approach the deterministic-skeleton work was built to replace. The fix is incremental and the companion (interleave) already exists, so this is an extend-the-good-pattern task, not a rebuild or a modernize.
Per its actual code: a pure product-artifact generator with 1 skill (artifact-gen), 8 commands, 0 agents/hooks/MCP servers. It synthesizes roadmaps, PRDs, vision docs, changelogs, CUJs, and status reports from real project state — beads (bd stats/list/blocked), brainstorms (docs/brainstorms/), plans, flux-drive summaries, git log/tags, and plugin manifests. The single skill is phase-routed: a shared discover.md gathers sources, then per-type phase files synthesize against templates in references/output-templates.md. Engineering is mature: canonical-witness output rule (one canonical path per type, overwrite-in-place, orphan dated files archived, hand-curated docs protected), a roadmap-to-beads consistency check (verify every iv-* ID has a bead, flag unreferenced open beads), monorepo auto-detection, graceful source degradation, structural pytest suite, and a SKILL-compact.md for progressive disclosure.
Deterministic-skeleton + LLM-island generation (grammar-constrained / structured generation — Pre3, IterGen, draft-conditioned decoding; and the interleave ‘deterministic skeleton + token-efficient docs’ line) is applied ONLY to the monorepo roadmap. The single-project artifacts (PRD, vision, changelog, status, CUJ, single-project roadmap) generate the entire document as free-text LLM output with no deterministic skeleton and no machine-readable companion (only the monorepo path emits roadmap.json). Changelog in particular is almost fully deterministic — its categorization is already a rules table (bead type/title -> Added/Changed/Fixed/Removed) — yet it is hand-generated by the LLM each run instead of templated, wasting tokens and risking format drift. Secondary gap: no StructuredOutput-style contract for downstream consumers (interwatch reads these for drift detection but they remain prose-only for PRD/vision/CUJ/status).
No problematic redundancy. Overlaps are intentional companion delegation, not duplication: interleave (deterministic skeleton + LLM islands) is the engine interpath already calls for monorepo roadmaps; interwatch owns drift detection and dispatches interpath for generation (the interpath<->interwatch cycle is documented and intentional — a sensor/generator pattern via the .interwatch/drift.json file contract); interdoc generates AGENTS.md (code docs) vs interpath’s product docs — clean boundary. interpath:status delegates to /clavain status. The /interpath:all command reading interwatch drift state is the only back-edge and is by design.
[“Extend the deterministic-skeleton + LLM-island pattern (already proven for monorepo roadmaps via interleave) to the single-project artifacts. Start with changelog (its category mapping is already a deterministic rules table — render Added/Changed/Fixed/Removed sections from bd --json closed beads grouped by git tag, leaving only prose descriptions as LLM islands) and the single-project roadmap (reuse sync-roadmap-json.sh single-project output to render Now/Next/Later tables deterministically).”, “Emit a machine-readable companion for each artifact type the way monorepo roadmap emits roadmap.json (e.g., a small frontmatter/JSON block for PRD/vision/CUJ/status capturing structured fields), so interwatch drift detection and other downstream consumers parse structure rather than re-reading prose — aligns with the structured-output-reliability trend.”, “Generalize the per-island model routing currently hard-coded in roadmap-monorepo.md (Sonnet/Haiku) into the shared synthesis flow so PRD/vision/status islands also route cheap-vs-strong per section instead of one full-model pass — captures the plan/execute token-economics win across all types.”, “Add a structural test asserting that each single-project phase, once templated, produces a parseable skeleton (mirror the existing roadmap-bead consistency check) so the deterministic sections cannot silently regress to free-text.”]