Skip to content

feat(workflow): implement diverge-converge workflow with commits and milestones#1

Merged
0niket merged 6 commits into
mainfrom
001-commit-based-tasks
Dec 11, 2025
Merged

feat(workflow): implement diverge-converge workflow with commits and milestones#1
0niket merged 6 commits into
mainfrom
001-commit-based-tasks

Conversation

@0niket
Copy link
Copy Markdown
Owner

@0niket 0niket commented Dec 11, 2025

Summary

  • Add /speckit.commits command - Groups tasks into logical commits with constitution-driven repetitive tasks (TDD-RED, TDD-GREEN, TDD-REFACTOR, LINT, VERIFY)
  • Add /speckit.milestones command - Creates verification checkpoints by grouping commits into milestones with acceptance criteria from spec.md
  • Enhance /speckit.implement - Now supports commit-by-commit execution, milestone pause points for human verification, and ASCII progress visualization
  • Add parse-constitution.sh - Extracts quality requirements (TDD, linting, verification) from constitution.md as JSON
  • Add commits/milestones flags - Both bash and PowerShell check-prerequisites scripts now support --require-commits, --include-commits, --require-milestones, --include-milestones
  • Update all documentation - spec-driven.md, docs/quickstart.md, README.md, CONTRIBUTING.md all reflect the new 8-step workflow

Test plan

  • Run make check - All 78 bash tests and 31 Python tests pass
  • Verify markdown linting passes (62 files, 0 errors)
  • Verify shell linting passes (shellcheck)
  • New test files cover:
    • Constitution parsing (8 tests)
    • Check prerequisites flags (6 tests)
    • Commit grouping infrastructure (7 tests)
    • Repetitive task injection (9 tests)
    • Milestone generation (9 tests)
    • Enhanced implement command (15 tests)

🤖 Generated with Claude Code

- Correct conceptual model: tasks accumulate INTO commits (not the reverse)
- Add convergent phases: /speckit.commits and /speckit.milestones
- Milestones are verification checkpoints requiring human review
- Update README with ASCII diagram showing diverge-converge flow
- Clarify repetitive vs non-repetitive tasks within commits
- Add Principle VII: Test-Driven Development (TDD) with Red-Green-Refactor workflow
- Add Commit Authorship Policy: AI assistants must not be added as co-authors
- Enhanced CI/CD Enforcement: make check MUST pass before any commit
- Document TDD workflow by language (Python/pytest, Bash/bats, PowerShell/Pester)
- Updated Code Review Checklist to verify TDD was followed
- Fix markdown linting errors in README and spec
…gent docs

- FR-009: /speckit.implement MUST load tasks.md, commits.md, and milestones.md
- FR-013: Validation that all three documents exist before starting
- Updated User Story 4 with 7 acceptance scenarios including doc loading
- Added edge cases for missing docs and orphaned tasks
…e-converge workflow

- plan.md: Technical context, constitution check, project structure
- research.md: Design decisions for task grouping, constitution parsing, milestones
- data-model.md: Entity definitions (Task, Commit, Milestone, RepetitiveTask)
- contracts/: File format specifications for commits.md and milestones.md
- quickstart.md: Integration test scenarios for new commands
- tasks.md: 47 tasks organized by 5 user stories (TDD approach)
- CLAUDE.md: Agent context with development commands

Feature: 001-commit-based-tasks
…milestones

Add complete implementation of the diverge-converge workflow:

- Add /speckit.commits command to group tasks into logical commits with
  constitution-driven repetitive tasks (TDD, linting, verification)
- Add /speckit.milestones command to create verification checkpoints
  with acceptance criteria extracted from spec.md
- Enhance /speckit.implement with commit-by-commit execution,
  milestone pause points, and progress visualization
- Add parse-constitution.sh to extract quality requirements from constitution
- Add commits/milestones flags to check-prerequisites.sh (bash + PowerShell)
- Create command and output templates for new workflow
- Add comprehensive bats tests (78 tests total)
- Update all documentation to reflect 8-step workflow
- Fix CI test stability by setting SPECIFY_FEATURE env var
@0niket 0niket force-pushed the 001-commit-based-tasks branch from ec8fbde to c67bcab Compare December 11, 2025 09:28
@0niket 0niket merged commit a7d9afd into main Dec 11, 2025
8 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.

1 participant