Created a simple Calculator implementation story to test the TDD Developer Agent: - Story with 3 acceptance criteria (add, subtract, error handling) - Comprehensive Story Context JSON with test cases - Designed to validate RED-GREEN-REFACTOR workflow - Status set to 'Approved' for immediate testing Test story location: test-stories/story-tdd-agent-validation.md 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
128 lines
3.9 KiB
Markdown
128 lines
3.9 KiB
Markdown
# Story: TDD Agent Validation Test
|
|
|
|
**Story ID**: TEST-TDD-001
|
|
**Epic**: BMAD Method Testing
|
|
**Priority**: High
|
|
**Status**: Approved
|
|
**Sprint**: Current
|
|
**Story Points**: 3
|
|
**Assigned To**: TDD Developer Agent (Ted)
|
|
**Created By**: Scrum Master
|
|
**Date Created**: 2025-01-04
|
|
|
|
## Story Description
|
|
|
|
As a BMAD Method developer, I need to validate that the TDD Developer Agent (dev-tdd) works correctly with the RED-GREEN-REFACTOR workflow, so that we can ensure the agent properly enforces test-driven development practices.
|
|
|
|
This is a minimal test story designed to validate:
|
|
|
|
1. The agent can load and process stories correctly
|
|
2. The RED phase generates failing tests
|
|
3. The GREEN phase implements code to pass tests
|
|
4. The REFACTOR phase improves code quality
|
|
5. The workflow completes successfully
|
|
|
|
## Acceptance Criteria
|
|
|
|
### AC-001: Calculator Add Function
|
|
|
|
**Given** a Calculator class is needed
|
|
**When** the add method is called with two numbers
|
|
**Then** it should return the sum of those numbers
|
|
|
|
### AC-002: Calculator Subtract Function
|
|
|
|
**Given** a Calculator class exists
|
|
**When** the subtract method is called with two numbers
|
|
**Then** it should return the difference (first - second)
|
|
|
|
### AC-003: Error Handling
|
|
|
|
**Given** the Calculator class
|
|
**When** invalid input is provided (non-numeric)
|
|
**Then** it should raise an appropriate error with a clear message
|
|
|
|
## Tasks/Subtasks
|
|
|
|
- [ ] Task 1: Implement Calculator class with add method
|
|
- [ ] Generate failing tests for add method (RED)
|
|
- [ ] Implement add method to pass tests (GREEN)
|
|
- [ ] Refactor for code quality (REFACTOR)
|
|
|
|
- [ ] Task 2: Implement subtract method
|
|
- [ ] Generate failing tests for subtract method (RED)
|
|
- [ ] Implement subtract method to pass tests (GREEN)
|
|
- [ ] Refactor for code quality (REFACTOR)
|
|
|
|
- [ ] Task 3: Add error handling
|
|
- [ ] Generate failing tests for error cases (RED)
|
|
- [ ] Implement error handling (GREEN)
|
|
- [ ] Refactor and consolidate error handling (REFACTOR)
|
|
|
|
## Technical Notes
|
|
|
|
- Use Python for implementation
|
|
- Follow PEP 8 style guidelines
|
|
- Tests should use pytest or unittest
|
|
- Each method should have comprehensive test coverage
|
|
- Focus on clarity over complexity
|
|
|
|
## Definition of Done
|
|
|
|
- [ ] All acceptance criteria are met
|
|
- [ ] All tests are passing
|
|
- [ ] Code follows project conventions
|
|
- [ ] RED-GREEN-REFACTOR cycle documented for each task
|
|
- [ ] No linting errors
|
|
- [ ] Test coverage is 100% for the Calculator class
|
|
|
|
## Dev Agent Record
|
|
|
|
### Context Reference
|
|
|
|
- Story Context: `/home/bj/python/BMAD-METHOD/test-stories/story-context-tdd-validation.json`
|
|
|
|
### Debug Log
|
|
|
|
_Agent execution notes will be added here during development_
|
|
|
|
### Completion Notes
|
|
|
|
_Final summary will be added upon story completion_
|
|
|
|
## File List
|
|
|
|
_Files created/modified will be listed here_
|
|
|
|
## Change Log
|
|
|
|
_Changes will be documented here as work progresses_
|
|
|
|
---
|
|
|
|
## Notes for TDD Agent Testing
|
|
|
|
This story is intentionally simple to focus on testing the agent's workflow mechanics rather than complex implementation challenges. The Calculator class provides:
|
|
|
|
1. **Simple functionality** - Easy to test and implement
|
|
2. **Multiple methods** - Tests the agent's ability to handle multiple tasks
|
|
3. **Error handling** - Tests the agent's ability to implement defensive code
|
|
4. **Clear acceptance criteria** - Unambiguous requirements for testing
|
|
|
|
The agent should execute this story using the `*develop-tdd` workflow command after loading the story with `*load-story`.
|
|
|
|
## Expected Outcomes
|
|
|
|
When the TDD Developer Agent successfully completes this story:
|
|
|
|
1. A `calculator.py` file should be created with the Calculator class
|
|
2. A test file (e.g., `test_calculator.py`) should be created with comprehensive tests
|
|
3. All tests should pass
|
|
4. The implementation should be clean and well-refactored
|
|
5. Each task should show clear RED-GREEN-REFACTOR progression
|
|
6. The story status should be updated to "Ready for Review"
|
|
|
|
---
|
|
|
|
_This test story was created to validate the TDD Developer Agent functionality_
|