parallel-integrate
parallel-integrate
Category: Parallel Development
Usage
/parallel-integrate [--parallel-dir <dir>] [--tech django|typescript|go]
Arguments
--parallel-dir: Optional - Path to parallel directory (auto-detects if single directory inparallel/)--tech: Optional - Technology stack for specific checks (default: auto-detect)
Purpose
Verify integration after all parallel agents complete their work. Checks contract compliance, boundary violations, runs tests, and generates an integration report.
Prerequisites
- All parallel tasks completed
- All feature branches merged to main (or ready to merge)
- Run after
/parallel-decomposeexecution
Execution Instructions for Claude Code
0. Determine Parallel Directory
If --parallel-dir provided:
- Use specified directory (e.g.,
parallel/TS-0042-inventory-system)
If not provided:
- Scan
parallel/for subdirectories - If single directory found, use it
- If multiple, list and ask user to specify
- If none, error with guidance
Read manifest.json from parallel directory:
PARALLEL_DIR="parallel/TS-0042-inventory-system"
cat "$PARALLEL_DIR/manifest.json"
1. Verify Branch Status
Check all task branches are complete:
# List task branches
git branch -a | grep feature/task-
# Check for unmerged branches
git branch --no-merged main | grep feature/task-
2. Merge Remaining Branches
If unmerged branches exist:
git checkout main
for branch in $(git branch --no-merged main | grep feature/task-); do
echo "Merging $branch..."
git merge $branch --no-edit
done
3. Technology-Specific Integration
For Django Projects
Migration Merge:
# Check for migration conflicts
python manage.py showmigrations | grep "\[ \]"
# If conflicts, merge migrations
python manage.py makemigrations --merge
# Apply all migrations
python manage.py migrate
Verification:
# Django system check
python manage.py check
# Run all tests
pytest
# Type checking
mypy apps/
# Linting
ruff check .
For TypeScript Projects
Build Verification:
# Type check
npx tsc --noEmit
# Lint
npm run lint
# Run tests
npm test
# Build
npm run build
For Go Projects
# Build and vet
go build ./...
go vet ./...
# Run tests
go test ./...
# Check formatting
gofmt -d .
4. Contract Compliance Check
For each task in $PARALLEL_DIR/tasks/:
API Contract Check:
- Compare implemented endpoints against
$PARALLEL_DIR/contracts/api-schema.yaml - Verify request/response schemas match
- Check error formats
Type Contract Check:
- Verify types match
$PARALLEL_DIR/contracts/types.py(or.ts) - Check for missing fields
- Verify enum values
5. Boundary Violation Check
For each task, verify:
- Files modified are within declared scope
- No files touched that were in "BOUNDARY" list
- No unauthorized contract modifications
# Check git history for boundary violations
for task in $(ls $PARALLEL_DIR/tasks/); do
echo "Checking $task boundaries..."
# Compare committed files against task scope
done
6. Tech Spec Compliance Check
Read Tech Spec path from manifest:
TECH_SPEC=$(jq -r '.tech_spec.path' "$PARALLEL_DIR/manifest.json")
If Tech Spec exists, validate implementation:
Architecture Alignment:
- Compare implemented components against Tech Spec Design Overview
- Verify component boundaries match spec
- Check that data flow matches documented architecture
Data Model Compliance:
- Compare implemented models against Tech Spec Data Model section
- Verify all entities are implemented
- Check field types and constraints match
API Compliance:
- Compare implemented endpoints against Tech Spec API Specification
- Verify request/response formats match
- Check error handling matches spec
7. Generate Integration Report
Create $PARALLEL_DIR/integration-report.md:
# Integration Report
Generated: [date]
Parallel Dir: parallel/TS-0042-inventory-system
Source PRD: [from manifest.sources.prd]
Tech Spec: [from manifest.tech_spec.id]
Tasks Integrated: [count]
## Summary
| Check | Status | Details |
|-------|--------|---------|
| Branch Merge | ✅/❌ | X branches merged |
| Contract Compliance | ✅/⚠️/❌ | X/Y endpoints match |
| Tech Spec Compliance | ✅/⚠️/❌ | X deviations |
| Boundary Violations | ✅/❌ | X violations found |
| Tests | ✅/❌ | X passed, Y failed |
| Type Check | ✅/❌ | X errors |
| Lint | ✅/❌ | X warnings |
## Contract Compliance
### API Endpoints
| Endpoint | Status | Notes |
|----------|--------|-------|
| GET /api/users/ | ✅ | Matches spec |
| POST /api/users/ | ⚠️ | Missing validation field |
### Type Definitions
| Type | Status | Notes |
|------|--------|-------|
| UserDTO | ✅ | Matches contract |
| OrderDTO | ⚠️ | Extra field `updated_at` |
## Boundary Violations
| Task | File | Issue |
|------|------|-------|
| task-003 | apps/users/models.py | Modified (owned by task-001) |
## Tech Spec Compliance
| Section | Status | Deviations |
|---------|--------|------------|
| Architecture | ✅ | None |
| Data Model | ⚠️ | Added `updated_at` to User |
| API Spec | ✅ | None |
## Test Results
pytest results: Passed: 142 Failed: 2 Coverage: 84%
## Action Items
### Must Fix (Blocking)
1. ❌ Fix failing tests
### Should Fix (Non-Blocking)
1. ⚠️ Add missing validation field
## Next Steps
[If all checks pass]:
1. ✅ Integration complete
2. Create PR for review
8. Update manifest.json
Update integration status:
{
"integration": {
"status": "completed",
"report_path": "integration-report.md",
"completed_at": "2025-12-07T18:00:00Z",
"checks": {
"branch_merge": "passed",
"contract_compliance": "warning",
"boundary_violations": "passed",
"tests": "passed"
}
}
}
9. Report Results
Output to console:
Integration Verification Complete
Parallel Dir: parallel/TS-0042-inventory-system
Tech Spec: TS-0042-inventory-system
┌────────────────────┬────────┬─────────────────────────┐
│ Check │ Status │ Details │
├────────────────────┼────────┼─────────────────────────┤
│ Branch Merge │ ✅ │ 9 branches merged │
│ Contract Compliance│ ⚠️ │ 18/20 endpoints match │
│ Boundary Violations│ ✅ │ 0 violations │
│ Tests │ ✅ │ 142 passed │
│ Type Check │ ✅ │ 0 errors │
│ Lint │ ✅ │ 0 warnings │
└────────────────────┴────────┴─────────────────────────┘
Full report: parallel/TS-0042-inventory-system/integration-report.md
[If clean]:
✅ Integration successful!
Next steps:
1. Review report
2. Create pull request
3. Deploy to staging
Example
# Auto-detect parallel directory
/parallel-integrate
# Specify parallel directory
/parallel-integrate --parallel-dir parallel/TS-0042-inventory-system
# With Django-specific checks
/parallel-integrate --parallel-dir parallel/TS-0042-inventory-system --tech django
# After fixing issues, re-run
/parallel-integrate
# View report
cat parallel/TS-0042-inventory-system/integration-report.md
Integration Checklist
- All feature branches merged
- No merge conflicts
- Migrations applied (Django)
- All tests pass
- Type checks pass
- Lint passes
- No boundary violations
- Contract compliance verified
- Tech Spec compliance verified
- Integration report generated
- manifest.json updated
Related Commands
/parallel-setup- One-time project initialization/parallel-decompose- Create tasks and prompts