--- allowed-tools: Read, Glob, Grep, Write, MultiEdit, TodoWrite, Bash description: Update tech stack documentation based on dependency changes and technical evolution --- # Update Tech Stack Documentation **User Request:** $ARGUMENTS ## Context - Project root: !`pwd` - Package.json: @package.json - Current tech doc: @.claude/rules/2-tech-stack.mdc - Last modified: !`stat -f "%Sm" .claude/rules/2-tech-stack.mdc 2>/dev/null || echo "No existing document"` - Recent package changes: !`git diff HEAD~10 HEAD -- package.json 2>/dev/null | grep -E "^[+-]" | head -20 || echo "No recent changes"` ## Goal Update the existing Tech Stack Documentation to reflect current technical state, dependency changes, new tools adoption, and infrastructure evolution. Maintain technical accuracy while documenting all changes. ## Process ### 1. Document Analysis - Read existing 2-tech-stack.mdc thoroughly - Note documented versions and configurations - Understand current technical baseline - Identify sections that may need updates ### 2. Technical Change Detection **Think deeply about technical evolution in the codebase.** Analyze for: - **Dependency Changes:** New packages, version updates, removals - **Framework Evolution:** Major version upgrades, breaking changes - **Tool Adoption:** New dev tools, linters, formatters, testing frameworks - **Infrastructure Shifts:** Deployment, hosting, monitoring changes - **Database Evolution:** Schema changes, new ORMs, migrations - **Integration Updates:** New APIs, services, authentication providers _Extended thinking helps identify cascading dependency updates, understand version compatibility issues, and recognize architectural implications of technical changes._ ### 3. Automated Comparison ```bash # Compare current vs documented dependencies # Check for version mismatches # Identify new configuration files # Detect new tool configurations ``` ### 4. Interactive Technical Q&A Ask targeted questions about: - Non-discoverable infrastructure changes - Deployment and hosting updates - New external service integrations - Workflow and process changes ### 5. Update Documentation Update incrementally: - Preserve accurate technical information - Update version numbers precisely - Add new sections for major additions - Mark deprecated technologies ### 6. Save and Verify - Suggest backup for major changes - Verify all versions are accurate ## Technical Questions Template ### 🔄 Version Updates & Dependencies **1. Which major dependencies have been updated?** Review your recent dependency changes: a) **Framework upgrades** (Next.js, React, etc.) with breaking changes b) **Tool updates** (TypeScript, ESLint, etc.) requiring config changes c) **New dependencies** added for features or development d) **Removed packages** that are no longer needed e) **All of the above** - Major technical overhaul **2. Have you changed your package manager or Node version?** a) **Same setup** - No changes to tooling b) **Node upgrade** - Updated Node.js version c) **Package manager switch** - Changed from npm/yarn/pnpm d) **Monorepo adoption** - Moved to workspace setup ### 🏗️ Infrastructure Evolution **3. Have your deployment or hosting arrangements changed?** Current deployment is documented as: [show from existing doc] a) **Same platform** - Just configuration updates b) **Platform migration** - Moved to different provider c) **Architecture change** - Serverless, containers, etc. d) **Multi-region** - Expanded geographic deployment **4. Database or storage changes?** a) **Version upgrade** - Same DB, newer version b) **Migration** - Switched database systems c) **New caching** - Added Redis, Memcached, etc. d) **Storage addition** - New file storage, CDN e) **No changes** - Same setup as before ### 🛠️ Development Workflow Updates **5. New development tools or practices?** Select all that apply: - [ ] New testing framework or strategy - [ ] Added code quality tools (linters, formatters) - [ ] CI/CD pipeline changes - [ ] Docker/containerization adoption - [ ] New build tools or bundlers - [ ] Performance monitoring tools **6. External service integrations?** Have you added or changed: a) **Payment processing** - New or updated provider b) **Authentication** - Different auth service c) **Email/SMS** - Communication service changes d) **Monitoring** - New error tracking or analytics e) **APIs** - Additional third-party integrations f) **None** - Same external services ### 🔐 Security & Compliance **7. Security tool adoption?** - [ ] Vulnerability scanning (Snyk, etc.) - [ ] Secret management changes - [ ] New authentication methods - [ ] Compliance tools (GDPR, etc.) - [ ] Security headers/policies - [ ] None of the above ## Update Strategy ### Version Precision ```typescript // ❌ Outdated "next": "^13.0.0" // ✅ Current and precise "next": "14.2.5" ``` ### Configuration Updates - Update all config examples to match current files - Include new configuration options - Remove deprecated settings - Add migration notes for breaking changes ### New Technology Sections When adding major new tools: ```markdown ### [New Tool Category] **Tool:** [Name] [Version] **Purpose:** [Why it was adopted] **Configuration:** [Key settings] **Integration:** [How it connects with other tools] ``` ## Document Update Areas ### Always Check: 1. **package.json changes** ```bash # Compare all dependencies # Note version changes # Identify new packages ``` 2. **Configuration files** - tsconfig.json updates - New .config files - Build tool configurations - Linting rule changes 3. **Development scripts** - New npm/pnpm scripts - Changed command purposes - Removed scripts 4. **Infrastructure files** - Dockerfile changes - CI/CD workflows - Deployment configs - Environment examples ### Conditional Updates: - **Architecture:** Only if fundamental changes - **Conventions:** Only if standards changed ## Execution Steps ### 1. Start with Analysis ```bash # Check current dependencies vs documented diff <(jq -r '.dependencies | keys[]' package.json | sort) \ <(grep -E '^\*\*.*:' .claude/rules/2-tech-stack.mdc | cut -d: -f1 | sed 's/\*//g' | sort) # Review recent dependency commits git log --oneline --grep="dep" --since="30 days ago" # Check for new config files find . -name "*.config.*" -newer .claude/rules/2-tech-stack.mdc 2>/dev/null ``` **Think deeply about:** "What technical decisions drove these changes? How do version updates affect the overall architecture? What new capabilities do these tools enable?" ### 2. Interactive Q&A - Present technical questions clearly - Include current state from documentation - Wait for detailed responses ### 3. Update Documentation Follow incremental approach: ```markdown **Before:** React 18.2.0 **After:** React 18.3.1 - Includes new compiler optimizations ### Code Quality Tools **New Addition:** - **Biome:** 1.8.3 - Replaced ESLint and Prettier - Faster performance (10x) - Single configuration file - Built-in formatting ``` ### 4. Save and Backup ```bash # Optional backup cp .claude/rules/2-tech-stack.mdc .claude/rules/2-tech-stack.backup.md # Save updated document # Overwrite .claude/rules/2-tech-stack.mdc ``` ## Key Principles ### DO: - **Exact Versions:** Use precise version numbers from lock files - **Config Accuracy:** Match actual configuration files - **Change Rationale:** Explain why tools were adopted/changed - **Migration Notes:** Document breaking changes and updates - **Performance Impact:** Note improvements or concerns ### DON'T: - **Generic Updates:** Avoid vague version ranges - **Assumption:** Verify every technical detail - **Old Information:** Remove outdated configurations - **Wishful Documentation:** Only document what exists - **Sensitive Data:** Never include secrets or keys ## Output - **Format:** Markdown (`.mdc`) - **Location:** `.claude/rules/` - **Filename:** `2-tech-stack.mdc` (overwrites) - **Backup:** Suggest for major changes ## Final Checklist 1. ✅ Read existing 2-tech-stack.mdc completely 2. ✅ Analyze all dependency changes 3. ✅ Check configuration file updates 4. ✅ Review infrastructure changes 5. ✅ Ask targeted technical questions 6. ✅ Update with exact versions 7. ✅ Include configuration examples 8. ✅ Suggest backup if major changes 9. ✅ Verify technical accuracy