โโโโโโโโ โโโโโโโ โโโ โโโ โโโโโโ โโโโโโโ โโโโโโโ โโโ โโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโ โโโโโโ โโโโโโโโโโโโโโ โโโ โโโ โโโโโโ โโโโโโโโโ โโโโโโโโ โโโ
โโโโโโโโโโโโโ โโโโโโ โโโโโโโโโโโโโโ โโโ โโโโโ โโโโโโ โโโโโโโโโ โโโโโโโโ โโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โโโ
โโโโโโโโ โโโโโโโ โโโโโโโ โโโ โโโโโโโโโโ โโโโโโโ โโโโโโโ โโโโโโโโโโโโโโโโ โโโ
๐ก๏ธ ASSEMBLE YOUR PARTY ยท CONQUER THE QUEST ยท SHIP THE FEATURE ๐ก๏ธ
"A lone hero can slay goblins. But to defeat the dragon? You need a SQUAD."
โ Ancient DevOps Proverb
Welcome, brave developer, to the SQUAD-DRIVEN FEATURE DEVELOPMENT lab! In this epic quest, you'll harness the full power of your AI party to plan, implement, test, and ship a complete feature to a production-grade polyglot codebase.
Your mission: Build a Product Review & Recommendation System for ShopSmart, a bustling e-commerce platform running on TypeScript (Node.js) and Python (FastAPI). The platform already has products, users, and orders working perfectly โ but the reviews and recommendations modules are empty shells waiting for your SQUAD to breathe life into them.
This isn't a tutorial where you follow step-by-step instructions. This is open-world gameplay. You'll brief Brain ๐ง (the strategist), coordinate Hands ๐ (the builders) across languages, summon Eyes ๐๏ธ (the reviewer) to inspect quality, and deploy Mouth ๐ฌ (the documenter) to write the lore. Together, your party will deliver production-ready code.
๐ฏ QUEST OBJECTIVE: Ship a fully functional review + recommendation system using SQUAD.
By completing this lab, you'll master the full SQUAD development lifecycle:
| Skill | SQUAD Member | XP Earned |
|---|---|---|
| Feature decomposition & planning | Brain ๐ง | +300 XP |
| Polyglot coordination (TS + Py) | Brain + Hands | +500 XP |
| API implementation (TypeScript) | Hands ๐ | +400 XP |
| ML service development (Python) | Hands ๐ | +400 XP |
| Code review & quality assurance | Eyes ๐๏ธ | +350 XP |
| Documentation generation | Mouth ๐ฌ | +250 XP |
| End-to-end integration testing | Full SQUAD | +500 XP |
| TOTAL | ๐ | +2700 XP |
- Party Coordination: Direct multiple specialized agents toward a unified goal
- Cross-Language Strategy: Manage polyglot architecture decisions
- Iterative Development: Brief โ Build โ Review โ Fix โ Ship
- Production Mindset: Security, performance, testing, and documentation from day one
Before embarking on this quest, ensure your inventory contains:
- โจ Completed "Getting Started with SQUAD" lab โ you know how to summon your party
- ๐ง Docker Desktop โ running and ready (for containerized services)
- ๐ฆ Node.js 20+ โ installed and on your PATH
- ๐ Python 3.12+ โ installed and ready
- ๐ค GitHub Copilot CLI โ authenticated and configured
- ๐ป Git โ for version control
- TypeScript / Node.js experience (Express, REST APIs)
- Python experience (FastAPI, NumPy, basic ML concepts)
- Basic understanding of Docker Compose
- Familiarity with PostgreSQL
๐ก TIP: If you haven't completed the "Getting Started with SQUAD" lab yet, do that first! You need to know how to summon Brain, Hands, Eyes, and Mouth before taking on this boss fight.
# Clone the repository (if not already done)
git clone <repository-url>
cd appmodlab-squad-driven-feature-development/shopsmart
# Start all services with Docker Compose
docker-compose up -d
# Wait ~30 seconds for services to initialize...# Check API service (TypeScript)
curl http://localhost:3000/api/health
# Expected: {"status":"healthy","service":"shopsmart-api"}
# Check ML service (Python)
curl http://localhost:8000/health
# Expected: {"status":"healthy","service":"ml-recommender"}
# Test existing features
curl http://localhost:3000/api/products
curl http://localhost:3000/api/users
curl http://localhost:3000/api/ordersIf all endpoints respond correctly: ๐ PARTY ASSEMBLED! Ready to accept quest.
shopsmart/
โโโ api/ # ๐ท TypeScript API (Node.js + Express)
โ โโโ src/
โ โ โโโ routes/
โ โ โ โโโ products.ts # โ
Working
โ โ โ โโโ users.ts # โ
Working
โ โ โ โโโ orders.ts # โ
Working
โ โ โ โโโ reviews.ts # โ ๏ธ EMPTY - You'll build this!
โ โ โ โโโ recommendations.ts# โ ๏ธ EMPTY - You'll build this!
โ โ โโโ models/
โ โ โโโ middleware/
โ โ โโโ index.ts
โ โโโ tests/
โ โโโ Dockerfile
โ โโโ package.json
โ
โโโ ml-service/ # ๐ Python ML Service (FastAPI)
โ โโโ src/
โ โ โโโ api/
โ โ โ โโโ routes.py # โ ๏ธ Has placeholders
โ โ โโโ models/
โ โ โ โโโ sentiment.py # โ ๏ธ EMPTY - You'll build this!
โ โ โ โโโ recommender.py # โ ๏ธ EMPTY - You'll build this!
โ โ โโโ main.py
โ โโโ tests/
โ โโโ Dockerfile
โ โโโ pyproject.toml
โ
โโโ database/ # ๐๏ธ PostgreSQL schemas & migrations
โ โโโ init.sql
โ
โโโ docker-compose.yml # ๐ณ Orchestration config
๐ฏ YOUR TARGETS:
api/src/routes/reviews.tsโ Build from scratchapi/src/routes/recommendations.tsโ Build from scratchml-service/src/models/sentiment.pyโ Implement sentiment analysisml-service/src/models/recommender.pyโ Implement collaborative filtering
ShopSmart is a modern e-commerce platform with a microservices architecture:
| Feature | Technology | Status | Description |
|---|---|---|---|
| Product Catalog | TypeScript | โ Live | Browse products, search, filter |
| User Management | TypeScript | โ Live | Registration, auth, profiles |
| Order System | TypeScript | โ Live | Cart, checkout, order tracking |
| Database | PostgreSQL | โ Live | Relational data with migrations |
| API Gateway | Express | โ Live | RESTful API at localhost:3000 |
| ML Service | FastAPI | โ Live | Health endpoint only (waiting for models) |
The platform has skeleton code for reviews and recommendations, but they're not implemented. Customers can browse and buy products, but they can't:
- โ Submit product reviews
- โ See aggregated ratings
- โ Get personalized recommendations
- โ View "customers who liked this also liked..." suggestions
This is where your SQUAD comes in.
You'll implement a production-grade Product Review & Recommendation System with the following components:
- Review Submission API (TypeScript)
- POST
/api/reviewsโ Submit a review with rating (1-5) and text - GET
/api/reviews/:productIdโ Fetch reviews for a product - GET
/api/reviews/:reviewIdโ Get a specific review
- POST
- Review Moderation (Python)
- Sentiment analysis to detect toxic/spam reviews
- Auto-flag suspicious content for human review
- Review Aggregation
- Calculate average ratings per product
- Count total reviews
- Provide star distribution (5-star: 40%, 4-star: 30%, etc.)
- Collaborative Filtering (Python)
- "Customers who liked this also liked..." algorithm
- Matrix factorization or item-based similarity
- Recommendation API (TypeScript)
- GET
/api/recommendations/:userIdโ Personalized product suggestions - GET
/api/recommendations/similar/:productIdโ Similar products
- GET
- Real-time Integration
- TypeScript API calls Python ML service
- Caching layer for performance
- Fallback to trending products if no data
- Detect duplicate reviews from same user/IP
- Rate limiting on review submissions
- Velocity checks (too many reviews in short time)
- Security: Input validation, SQL injection protection, XSS prevention
- Performance: Response time <200ms (API), <500ms (ML)
- Testing: Unit tests + integration tests
- Documentation: OpenAPI/Swagger specs, README with examples
๐ฏ Objective: Get the platform running locally.
cd shopsmart
docker-compose up -dVerify all services are healthy:
# API health check
curl http://localhost:3000/api/health
# ML service health check
curl http://localhost:8000/health
# Test existing endpoints
curl http://localhost:3000/api/products | jq
curl http://localhost:3000/api/users | jq
curl http://localhost:3000/api/orders | jqโ Checkpoint: All services respond with 200 OK.
๐ +100 XP โ Environment Ready!
๐ฏ Objective: Get Brain to analyze the codebase and propose an architecture.
Summon Brain with the quest briefing:
gh copilot squad -a BrainExample Briefing:
"Brain, I need you to analyze the ShopSmart platform and design a Product Review & Recommendation System. The platform is polyglot: TypeScript API (Express) and Python ML service (FastAPI).
Requirements:
- Review submission API (POST /api/reviews)
- Review retrieval (GET /api/reviews/:productId)
- Sentiment analysis for moderation (Python)
- Collaborative filtering for recommendations (Python)
- API endpoints for recommendations (TypeScript)
- Anti-fraud detection (duplicate reviews, rate limiting)
- OpenAPI documentation
Explore the codebase in
api/andml-service/to understand the existing patterns. Then propose:
- Database schema changes (if needed)
- API endpoints specification
- ML model approach
- Integration strategy between TypeScript and Python
- Testing strategy
Give me a detailed implementation plan."
๐ QUEST ACCEPTED! Brain will explore the code and return a battle plan.
๐ +200 XP โ Strategy Formulated!
๐ฏ Objective: Review Brain's proposal and approve the approach.
Brain will present a plan that might look like:
Database Schema:
CREATE TABLE reviews (
id UUID PRIMARY KEY,
product_id UUID REFERENCES products(id),
user_id UUID REFERENCES users(id),
rating INTEGER CHECK (rating BETWEEN 1 AND 5),
review_text TEXT,
sentiment_score FLOAT,
is_flagged BOOLEAN DEFAULT FALSE,
created_at TIMESTAMP DEFAULT NOW()
);
CREATE INDEX idx_reviews_product ON reviews(product_id);
CREATE INDEX idx_reviews_user ON reviews(user_id);API Endpoints:
- POST
/api/reviews - GET
/api/reviews/:productId - GET
/api/reviews/:reviewId - GET
/api/recommendations/:userId - GET
/api/recommendations/similar/:productId
ML Services:
- Sentiment analysis using transformers (Hugging Face)
- Item-based collaborative filtering using cosine similarity
Your job: Review, ask follow-up questions, approve or request changes.
๐ +100 XP โ Architecture Approved!
๐ฏ Objective: Have Hands build the TypeScript review endpoints.
Summon Hands:
gh copilot squad -a HandsExample Directive:
"Hands, implement the Review API in TypeScript following the architecture Brain designed.
Tasks:
- Create database migration in
database/migrations/for reviews table- Implement
api/src/routes/reviews.tswith:
- POST /api/reviews (validation, auth required)
- GET /api/reviews/:productId (with pagination)
- GET /api/reviews/:reviewId
- Create model in
api/src/models/review.ts- Add input validation middleware
- Implement anti-fraud checks (duplicate detection, rate limiting)
- Add unit tests in
api/tests/reviews.test.tsFollow the existing code style in products.ts and users.ts. Use the same error handling patterns."
โณ Hands will code the implementation...
๐ +400 XP โ TypeScript Module Complete!
๐ฏ Objective: Have Hands build the Python sentiment analysis and recommendation engine.
Brief Hands again (or continue the conversation):
"Hands, now implement the ML service components in Python.
Tasks:
- Implement
ml-service/src/models/sentiment.py:
- Use transformers library for sentiment analysis
- Return sentiment score (-1 to 1)
- Flag toxic content
- Implement
ml-service/src/models/recommender.py:
- Collaborative filtering using item-based similarity
- Cosine similarity on user-product interaction matrix
- Return top 10 recommendations
- Update
ml-service/src/api/routes.py:
- POST /analyze-sentiment
- POST /recommend/:userId
- POST /similar/:productId
- Add tests in
ml-service/tests/- Update
pyproject.tomlwith dependencies (transformers, scikit-learn, numpy)Make sure it integrates with the TypeScript API via HTTP calls."
โณ Hands will build the Python components...
๐ +400 XP โ Python Module Complete!
๐ฏ Objective: Have Eyes review all implementations for quality, security, and bugs.
Summon Eyes:
gh copilot squad -a EyesExample Directive:
"Eyes, perform a comprehensive code review of the new review and recommendation features.
Review:
api/src/routes/reviews.tsapi/src/routes/recommendations.tsapi/src/models/review.tsml-service/src/models/sentiment.pyml-service/src/models/recommender.pyml-service/src/api/routes.pyFocus on:
- Security vulnerabilities (SQL injection, XSS, auth bypass)
- Performance issues (N+1 queries, missing indexes)
- Error handling (edge cases, null checks)
- Code quality (TypeScript/Python best practices)
- Test coverage gaps
Provide specific line numbers and actionable feedback."
๐ Eyes will analyze the code...
Eyes might report issues like:
- โ Missing input sanitization on review_text
- โ No rate limiting on POST /api/reviews
- โ Sentiment model not cached (loads on every request)
- โ Missing error handling for ML service downtime
๐ +350 XP โ Code Reviewed!
๐ฏ Objective: Have Hands address all issues Eyes found.
Brief Hands:
"Hands, Eyes found several issues in the code review. Fix them all:
Issues to Fix:
- [Copy specific issues from Eyes' report]
- Add input sanitization for review_text
- Implement rate limiting middleware
- Cache sentiment model in memory
- Add circuit breaker for ML service calls
- Improve error messages
Run the tests after each fix to ensure nothing breaks."
โณ Hands will fix the issues...
Re-run Eyes if needed:
gh copilot squad -a Eyes
# "Eyes, re-review the files that were changed. Confirm all issues are resolved."๐ +300 XP โ All Bugs Squashed!
๐ฏ Objective: Have Mouth generate comprehensive API documentation.
Summon Mouth:
gh copilot squad -a MouthExample Directive:
"Mouth, generate complete documentation for the new review and recommendation features.
Tasks:
- Create OpenAPI/Swagger spec for:
- POST /api/reviews
- GET /api/reviews/:productId
- GET /api/reviews/:reviewId
- GET /api/recommendations/:userId
- GET /api/recommendations/similar/:productId
- Write
api/docs/REVIEWS_API.mdwith:
- Endpoint descriptions
- Request/response examples
- Error codes
- Authentication requirements
- Write
ml-service/docs/ML_SERVICES.mdwith:
- Model descriptions
- API contracts
- Performance characteristics
- Update main
README.mdwith feature overviewMake it clear and easy for developers to integrate with these APIs."
๐ Mouth will write the docs...
๐ +250 XP โ Documentation Complete!
๐ฏ Objective: Test the entire flow end-to-end.
Manual Testing:
# 1. Submit a review
curl -X POST http://localhost:3000/api/reviews \
-H "Content-Type: application/json" \
-H "Authorization: Bearer <token>" \
-d '{
"product_id": "550e8400-e29b-41d4-a716-446655440000",
"rating": 5,
"review_text": "Amazing product! Highly recommend."
}'
# 2. Get reviews for a product
curl http://localhost:3000/api/reviews/550e8400-e29b-41d4-a716-446655440000 | jq
# 3. Get recommendations for a user
curl http://localhost:3000/api/recommendations/123e4567-e89b-12d3-a456-426614174000 | jq
# 4. Get similar products
curl http://localhost:3000/api/recommendations/similar/550e8400-e29b-41d4-a716-446655440000 | jqAutomated Testing:
# Run API tests
cd api
npm test
# Run ML service tests
cd ../ml-service
python -m pytest
# Check test coverage
npm run test:coverage
pytest --covโ Success Criteria:
- All tests pass โ
- Review submission works โ
- Sentiment analysis flags toxic content โ
- Recommendations return relevant products โ
- Response times meet SLA (<200ms API, <500ms ML) โ
๐ +500 XP โ Integration Testing Complete!
๐ฏ Objective: Merge and deploy the feature.
# Ensure all tests pass
npm test
pytest
# Check linting
npm run lint
flake8 ml-service/src
# Commit your changes
git add .
git commit -m "feat: Add product review and recommendation system
- Implement review submission and retrieval API (TypeScript)
- Add sentiment analysis for review moderation (Python)
- Build collaborative filtering recommendation engine (Python)
- Add anti-fraud detection (rate limiting, duplicate checks)
- Generate OpenAPI documentation
- Add comprehensive test coverage
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>"
# Push to remote
git push origin feature/reviews-recommendations
# Create PR and deploy! ๐๐ BOSS DEFEATED! Feature Shipped to Production! ๐
๐ +1000 XP โ QUEST COMPLETE!
| Phase | Time | Difficulty |
|---|---|---|
| Environment Setup | 15 min | โญ Easy |
| Brief Brain & Planning | 30 min | โญโญ Medium |
| Implement TypeScript API | 60 min | โญโญโญ Hard |
| Implement Python ML | 60 min | โญโญโญ Hard |
| Code Review with Eyes | 30 min | โญโญ Medium |
| Fix Issues | 30 min | โญโญ Medium |
| Documentation | 20 min | โญ Easy |
| Integration Testing | 30 min | โญโญ Medium |
| TOTAL | 3-4 hrs | โญโญโญโญ Epic |
๐ก TIP: This is not a race! Take breaks between phases. The SQUAD doesn't get tired, but you do.
After completing this lab, you'll be able to:
โ
Decompose complex features into implementable tasks using Brain
โ
Coordinate polyglot development across TypeScript and Python
โ
Build production-grade APIs with proper validation, auth, and error handling
โ
Implement ML features with practical algorithms (sentiment analysis, collaborative filtering)
โ
Conduct thorough code reviews using Eyes to catch security and quality issues
โ
Generate comprehensive documentation with Mouth
โ
Test end-to-end flows in microservices architectures
โ
Ship features confidently with SQUAD-verified quality
- ๐ก๏ธ First Blood โ Completed environment setup
- ๐ง Master Strategist โ Used Brain to plan a complex feature
- ๐ Polyglot Warrior โ Built features in TypeScript AND Python
- ๐๏ธ Eagle Eye โ Used Eyes to prevent bugs from reaching production
- ๐ฌ Lorekeeper โ Generated complete documentation with Mouth
- ๐ฏ Full SQUAD Deploy โ Used all four SQUAD members in one quest
- ๐ Dragon Slayer โ Shipped a production-ready feature end-to-end
- ๐ Level Up! โ Gained 2700+ XP in SQUAD mastery
# Check Docker status
docker ps
# View logs
docker-compose logs api
docker-compose logs ml-service
# Restart services
docker-compose down
docker-compose up -dcd api
npm install # Reinstall dependencies
npm run build # Rebuild TypeScript
docker-compose restart apicd ml-service
pip install -e . # Reinstall dependencies
docker-compose restart ml-service# Check PostgreSQL logs
docker-compose logs db
# Reset database (โ ๏ธ deletes data!)
docker-compose down -v
docker-compose up -dWant to level up even more? Try these bonus challenges:
- ๐ฅ Hard Mode: Add real-time review notifications using WebSockets
- ๐ง Wizard Mode: Implement image upload for reviews (with ML-based moderation)
- ๐ฐ Raid Boss: Deploy to Kubernetes with auto-scaling
- ๐จ Cosmetic Upgrade: Build a React frontend to display reviews
- ๐ Analytics Dashboard: Add review sentiment trends over time
- โ Getting Started with SQUAD โ Learn the basics (prerequisite)
- ๐ SQUAD-Driven Debugging โ Fix bugs with your party
- ๐ SQUAD Security Hardening โ Use Eyes to find vulnerabilities
- ๐ SQUAD Documentation Overhaul โ Revamp docs with Mouth
This lab is part of the App Modernization Labs series.
ยฉ Microsoft Corporation. All rights reserved.
Quest Design: Marco Antonio Silva
Lore & Documentation: Dana (Technical Writer)
AI Party Members: Brain ๐ง , Hands ๐, Eyes ๐๏ธ, Mouth ๐ฌ
Platform: GitHub Copilot + SQUAD
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ โ
โ ๐ CONGRATULATIONS, HERO! โ
โ โ
โ You've mastered SQUAD-driven feature development. โ
โ Your party is ready for any quest the codebase โ
โ throws at you. โ
โ โ
โ ๐ก๏ธ May your builds be green and your deploys smooth. โ
โ โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
๐ฎ GAME OVER โ PRESS START TO SHIP MORE FEATURES ๐น๏ธ
The complete solution is on the
solution-finalbranch with tagged commits for each step.
git checkout solution-finalgh copilot -- -p "Analyze the ShopSmart e-commerce application codebase. Identify the tech stack, architecture, existing features, and areas for improvement." --allow-all-tools --yoloResult: Identified TypeScript/Fastify API + Python/FastAPI ML service, PostgreSQL + Redis, Docker Compose. Reviews module is empty stub (shopsmart/api/src/modules/reviews/.gitkeep).
npx @bradygaster/squad-cli initResult: Assembled SQUAD โ Brain ๐ง (strategist), Hands ๐ (builder), Eyes ๐๏ธ (reviewer), Mouth ๐ฌ (documenter).
gh copilot -- -p "As the Squad Lead, create a feature development plan for adding a product review and rating system to ShopSmart. Break it down into tasks for each agent." --allow-all-tools --yoloResult: Brain created 5-phase plan with 17 tasks: Backend API โ ML Recommendations โ Testing โ Code Review โ Documentation.
gh copilot -- -p "As the Squad Backend developer, implement the product review API endpoints: POST /api/reviews, GET /api/products/:id/reviews, PUT /api/reviews/:id, DELETE /api/reviews/:id. Include data models, validation, and database integration." --allow-all-tools --yoloResult: Created 4 files mirroring the Product module pattern:
review.types.tsโ Review, CreateReviewInput, UpdateReviewInput, ProductRatingreview.schema.tsโ Fastify JSON Schema validationreview.service.tsโ CRUD + rating aggregation with parameterized queriesreview.routes.tsโ 6 REST endpoints- Updated
server.tsto register review routes
gh copilot -- -p "As the Squad ML developer, implement the recommendation engine with collaborative filtering and similar products." --allow-all-tools --yoloResult: Built recommendation engine:
recommendation.pyโ Pydantic modelsengine.pyโ Collaborative filtering + popular products fallbackrouter.pyโ FastAPI endpoints for user recommendations and similar products- Updated
main.pywith router and lifecycle events
gh copilot -- -p "As the Squad Tester, write comprehensive tests for the review system and recommendation engine." --allow-all-tools --yolo
npx vitest run # 18 tests passed โ
Result: 16 TypeScript tests (ReviewService CRUD) + 11 Python tests (models, engine, endpoints). All passing.
gh copilot -- -p "As the Squad Reviewer, perform a multi-agent code review covering security, performance, and code quality." --allow-all-tools --yoloResult: APPROVED โ โ Parameterized queries (no SQL injection), proper indexing, consistent patterns, good error handling.
gh copilot -- -p "As the Squad Documenter, generate complete API documentation for the review and recommendation system." --allow-all-tools --yoloResult: Created docs/REVIEW-API.md โ Full API reference with request/response examples for all 8 endpoints.
gh copilot -- -p "Run a sprint retrospective for the SQUAD feature development." --allow-all-tools --yoloResult: 17/17 tasks completed. Action items: add JWT auth, Redis caching, integration tests, rate limiting.
All CLI outputs are captured in assets/outputs/:
| File | Description |
|---|---|
step-01-explore-app.txt |
Codebase analysis |
step-02-initialize-squad.txt |
Squad initialization |
step-03-feature-planning.txt |
Feature plan with 17 tasks |
step-04-backend-impl.txt |
Backend implementation log |
step-05-frontend-impl.txt |
ML service implementation log |
step-06-test-suite.txt |
Test results (18 passed) |
step-07-code-review.txt |
Security + performance review |
step-08-documentation.txt |
Documentation generation |
step-09-retrospective.txt |
Sprint retrospective |