sead-method-core
Version:
Specification Enforced Agentic Agile Development - A hybrid methodology preventing AI agent drift through catalog-based constraints with comprehensive external asset integration
372 lines (303 loc) • 12 kB
Markdown
# SEAD Method Testing Strategy - 6 Core Agents
## Executive Summary
Based on analysis of the SEAD-METHOD repository, I've identified critical dependencies that prevent the 6 core agents from functioning properly. This strategy provides a step-by-step approach to test and validate these agents through incremental bootstrapping and real-world validation.
## Current State Analysis
### ✅ What Exists (Good Foundation)
- Complete agent definitions with embedded YAML configuration
- Comprehensive task library (50+ tasks in `sead-core/tasks/`)
- Template system (30+ templates in `sead-core/templates/`)
- Constitutional framework (`sead-core/constitutional-rules/`)
- Core configuration (`sead-core/core-config.yaml`)
- Catalog template structure (`sead-catalog/`)
- Documentation and checklists
### ❌ Critical Missing Dependencies
1. **No `sead.config.yaml`** - Required by ALL agents for project-specific configuration
2. **Empty catalog structure** - All catalog domains have only README.md files
3. **Missing project documents** - Referenced by agents but don't exist:
- `docs/sead-project-brief.md`
- `docs/sead-prd.md`
- `docs/sead-architecture.md`
- `docs/sead-front-end-spec.md`
4. **No story files** - Story location configured but no actual stories
5. **No QA artifacts** - Gate files and assessment directories missing
## Recommended Testing Approach
### Option 1: In-Place Testing (RECOMMENDED)
**Clone target repos into SEAD-METHOD workspace**
**Pros:**
- SEAD agents have immediate access to their dependencies
- Can test catalog generation from existing codebases
- Maintains clean SEAD-METHOD repository structure
- Enables iterative development of missing dependencies
**Structure:**
```
SEAD-METHOD/
├── sead-core/ (existing)
├── sead-catalog/ (existing)
├── test-projects/
│ ├── target-repo-1/
│ ├── target-repo-2/
│ └── target-repo-3/
├── sead.config.yaml (NEW - points to test projects)
└── docs/ (enhanced with missing project docs)
```
### Option 2: Copy SEAD to Target Repos
**Copy SEAD structure to each target repository**
**Pros:**
- Real-world deployment scenario
- Tests SEAD portability
**Cons:**
- Must bootstrap dependencies in each repo separately
- Harder to iterate on SEAD improvements
- Pollutes target repos during testing
## 6 Core Agents Testing Priority Order
### Phase 1: Foundation Agents (Weeks 1-2)
#### 1. **sead-catalog-architect** (HIGHEST PRIORITY)
**Why First:** Creates the foundation catalog that all other agents depend on
**Dependencies to Bootstrap:**
- ✅ Already exists: `sead-core/core-config.yaml`
- ❌ Missing: `sead.config.yaml` (project-specific config)
- ❌ Missing: Target codebase for brownfield analysis
**Test Plan:**
```yaml
test_case_1:
name: "Brownfield Catalog Generation"
setup:
- Clone a sample repo into test-projects/
- Create basic sead.config.yaml
- Activate sead-catalog-architect
execute:
- Run brownfield-catalog-generation task
- Extract patterns from existing codebase
- Generate catalog structure
validate:
- Catalog domains populated with real patterns
- Pattern quality meets standards
- Documentation generated correctly
```
#### 2. **sead-pattern-extraction** (SECOND)
**Why Second:** Works with catalog-architect to extract and classify patterns
**Dependencies:** Same as catalog-architect plus generated catalog structure
**Test Plan:**
```yaml
test_case_1:
name: "Pattern Classification Workflow"
setup:
- Use catalog created by sead-catalog-architect
- Activate sead-pattern-extraction
execute:
- Run pattern-identification-workflow task
- Run pattern-classification-workflow task
- Run pattern-quality-assessment task
validate:
- Patterns properly classified by domain
- Quality metrics calculated
- Integration recommendations generated
```
### Phase 2: Architecture & Planning (Weeks 2-3)
#### 3. **sead-architect** (THIRD)
**Why Third:** Needs catalog foundation to create architecture aligned with patterns
**Dependencies to Bootstrap:**
- ❌ Missing: `docs/sead-architecture.md` (referenced in tasks)
- ❌ Missing: Architecture sharding directory structure
**Test Plan:**
```yaml
test_case_1:
name: "Architecture Documentation Generation"
setup:
- Use populated catalog from Phase 1
- Create basic architecture template
- Activate sead-architect
execute:
- Run sead-document-project task for architecture
- Generate technical specifications
- Create implementation guidance
validate:
- Architecture aligns with catalog patterns
- Constitutional compliance validated
- Implementation guidance actionable
```
#### 4. **sead-product-owner** (FOURTH)
**Why Fourth:** Needs architectural foundation to create meaningful product requirements
**Dependencies to Bootstrap:**
- ❌ Missing: `docs/sead-prd.md`
- ❌ Missing: Epic/story directory structure
**Test Plan:**
```yaml
test_case_1:
name: "Brownfield PRD Creation"
setup:
- Use architecture from Phase 2
- Activate sead-product-owner
execute:
- Run sead-brownfield-create-epic task
- Generate product requirements
- Create user stories framework
validate:
- PRD aligns with technical architecture
- Epic structure supports development workflow
- Catalog integration points identified
```
### Phase 3: Development Workflow (Weeks 3-4)
#### 5. **sead-scrum-master** (FIFTH)
**Why Fifth:** Orchestrates development workflow using artifacts from previous phases
**Dependencies to Bootstrap:**
- ❌ Missing: Story files in configured location
- ❌ Missing: QA directory structure
**Test Plan:**
```yaml
test_case_1:
name: "Story Creation Workflow"
setup:
- Use PRD and epics from Phase 2
- Activate sead-scrum-master
execute:
- Run sead-create-next-story task
- Generate story with catalog integration
- Validate story completeness
validate:
- Story includes catalog component references
- Mode constraints properly configured
- Context preservation data complete
```
#### 6. **sead-developer** (SIXTH)
**Why Last:** Requires all previous artifacts to function properly
**Dependencies to Bootstrap:**
- ❌ Missing: Complete story with acceptance criteria
- ❌ Missing: Catalog pattern implementation examples
**Test Plan:**
```yaml
test_case_1:
name: "Story Implementation"
setup:
- Use story created by sead-scrum-master
- Ensure catalog patterns available
- Activate sead-developer
execute:
- Implement story using catalog patterns
- Apply constitutional constraints
- Run validation workflow
validate:
- Implementation follows catalog patterns
- Constitutional compliance achieved
- Code quality gates passed
```
## Bootstrapping Process
### Step 1: Create Essential Configuration Files
#### A. Create `sead.config.yaml`
```yaml
# Place in SEAD-METHOD root directory
project:
name: "SEAD Testing"
type: "brownfield-testing"
# Point to test projects
repositories:
- path: "./test-projects/target-repo-1"
type: "brownfield"
- path: "./test-projects/target-repo-2"
type: "brownfield"
# Use existing SEAD structure
sead_core_path: "./sead-core"
catalog_path: "./sead-catalog"
templates_path: "./sead-core/templates"
# Configure for testing
development:
mode: "development"
story_location: "./test-stories"
qa_location: "./test-qa"
docs_location: "./test-docs"
# Enable all features for testing
features:
catalog_generation: true
pattern_extraction: true
constitutional_validation: true
context_preservation: true
```
#### B. Create Test Directory Structure
```bash
mkdir -p test-projects test-stories test-qa test-docs
mkdir -p test-docs/prd-shards test-docs/arch-shards
```
### Step 2: Prepare Target Repositories
**Recommended Test Repos:**
1. **Simple Node.js API** - Tests API contract extraction
2. **React/Next.js Frontend** - Tests UI pattern extraction
3. **Full-Stack Application** - Tests end-to-end catalog generation
```bash
# Clone into test environment
cd SEAD-METHOD/test-projects/
git clone <target-repo-1> ./api-project
git clone <target-repo-2> ./frontend-project
git clone <target-repo-3> ./fullstack-project
```
### Step 3: Bootstrap Missing Documents
Create minimal versions of referenced documents:
#### A. Basic Project Brief
```bash
# test-docs/sead-project-brief.md
echo "# Test Project Brief\nTesting SEAD agent functionality" > test-docs/sead-project-brief.md
```
#### B. Placeholder Architecture
```bash
# Use template as starting point
cp sead-core/templates/sead-architecture-tmpl.yaml test-docs/sead-architecture.md
```
### Step 4: Incremental Agent Testing
#### Test Sequence:
1. **Start with sead-catalog-architect**
- Activate agent: Load agent file
- Run: `brownfield-catalog-generation` task on simple API project
- Validate: Catalog structure created with API patterns
2. **Add sead-pattern-extraction**
- Use catalog from step 1
- Run: Pattern identification and classification
- Validate: Patterns properly categorized
3. **Continue through remaining 4 agents**
- Each builds on artifacts from previous agents
- Validate end-to-end workflow
## Package vs Test-First Decision
### Recommendation: TEST FIRST, PACKAGE LATER
**Rationale:**
1. **Dependency Issues:** Packaging before testing would distribute broken agents
2. **Iterative Improvement:** Testing reveals gaps that need fixing before release
3. **Real-World Validation:** Testing against actual codebases validates approach
4. **Documentation:** Testing generates examples and documentation for package
**Packaging Timeline:**
- **Week 4:** Initial package creation after core agents working
- **Week 6:** Beta release with documentation and examples
- **Week 8:** Public release with tested workflows
## Success Criteria
### Phase 1 Success (Catalog Foundation):
- [ ] sead-catalog-architect can analyze existing codebases
- [ ] Catalog structure populated with real patterns
- [ ] sead-pattern-extraction can classify and quality-assess patterns
### Phase 2 Success (Architecture & Planning):
- [ ] sead-architect creates catalog-aligned architecture docs
- [ ] sead-product-owner creates meaningful brownfield PRDs
- [ ] Generated artifacts integrate with catalog patterns
### Phase 3 Success (Development Workflow):
- [ ] sead-scrum-master creates implementable stories with catalog integration
- [ ] sead-developer can implement stories using catalog patterns
- [ ] End-to-end workflow from analysis to implementation works
### Overall Success (Ready for Package):
- [ ] All 6 core agents functional with real codebases
- [ ] Constitutional framework enforced throughout
- [ ] Context preservation enables agent handoffs
- [ ] Documentation complete with working examples
## Risk Mitigation
### High Risk: Circular Dependencies
**Issue:** Agents reference files that need other agents to create
**Mitigation:** Bootstrap minimal versions manually, then let agents enhance them
### Medium Risk: Constitutional Constraint Conflicts
**Issue:** Strict constraints might prevent agents from working in test environment
**Mitigation:** Start in prototype mode, gradually increase constraint enforcement
### Low Risk: Catalog Pattern Quality
**Issue:** Generated patterns might not meet quality standards
**Mitigation:** Start with simple codebases, refine quality criteria iteratively
## Next Steps
1. **Create `sead.config.yaml`** with test project configuration
2. **Set up test repository structure** in `test-projects/`
3. **Clone 2-3 target repositories** of varying complexity
4. **Start Phase 1 testing** with sead-catalog-architect
5. **Document issues and fixes** as agents are tested
6. **Iterate on missing dependencies** based on test results
This approach ensures the 6 core agents work reliably before considering packaging or broader distribution.