v0.6.0 — factory milestone scope, reviewer loops, CLAUDE.md split
Highlights
/factory repositioned to single-milestone/phase scope
- Now requires a phase or milestone:
/factory <phase-name>or/factory --milestone <N> - Convention: roadmap phase file
docs/roadmap/<NNN>_<name>.md↔ GitHub milestone titled<NNN>_<name>(filed by/issues) - Source of work is open issues in the milestone (closed = done, excluded). Bare
/factoryis rejected — use/autopilotfor multi-phase runs - Adds file-overlap-aware batching (greedy bin-packer ported from
/autopilot): no two features in a writer batch may touch the same file, so 10 PRs from a milestone open as 2-3 conflict-free batches
Per-PR review loop (factory) + fresh-context reviewer (/feature)
- Writers no longer self-review. The previous in-context
code-reviewskill call violated writer/reviewer separation and has been removed from both skills - Fresh-context sonnet reviewer per PR (factory) or per implementation (
/feature), with bounded scope: diff + spec + ≤3 files - On
FIX_REQUIRED, the writer agent is resumed viaSendMessage(warm context — re-spawning a fresh fixer would re-pay the spec/files read cost) with action items only - Hard cap of 2 fix cycles, then escalates to PR comment as
NEEDS_HUMAN. Spec-ambiguity is auto-detected when the same finding survives a cycle - Final verdict posted to the PR via
gh pr review. No auto-merge — factory stops with PRs open and reviewed for human merge
CLAUDE.md split
- The repo-root
CLAUDE.mdwas serving two purposes (global defaults + ai-workflow-only project rules) — anything ai-workflow-specific leaked into every project - Now split:
dotfiles/CLAUDE.md— global defaults, symlinked to~/.claude/CLAUDE.mdbyinstall.shCLAUDE.md(repo root) — ai-workflow-only rules: edit sources not symlinks, re-runinstall.shon skill changes, always update relevant docs in the same change, versioning + release flow
install.sh,adapters/codex/install.sh, andadapters/cursor/install.shupdated to read fromdotfiles/CLAUDE.md
Token shape (review loops)
/feature: +10-15% common case, +25-40% worst case (2 cycles) for substantially higher quality before your eyes/factory: +20-30% common case, +60-80% worst case per PR — but reviewers run parallel across PRs, so wall-clock is barely affected
Full changelog
See CHANGELOG.md.