# ποΈ DAM Butler MCP - Versioning Strategy
## π **File Versioning Convention**
### **Active Files (No Suffix):**
```
api/find-brand-assets.js β Current production version
api/mcp.js β Current MCP endpoint
config/openai-prompts.js β Current prompts
```
### **Archived Versions:**
```
api/find-brand-assets-v1-old.js β Phase 1: Basic pattern matching
api/find-brand-assets-v2-old.js β Phase 2: Enhanced intelligence
api/find-brand-assets-v3-old.js β Phase 3: When upgrading current
```
### **Phase-Based Organization:**
```
api/legacy/
βββ phase1/
β βββ find-brand-assets-basic.js
β βββ mcp-simple.js
βββ phase2/
β βββ find-brand-assets-enhanced.js
β βββ openai-prompts-v1.js
βββ phase3/
βββ find-brand-assets-intelligence.js
βββ advanced-features.js
```
## π **Version Management Workflow**
### **When Creating New Version:**
```bash
# 1. Archive current version
mv api/find-brand-assets.js api/find-brand-assets-v2-old.js
# 2. Deploy new version
cp api/find-brand-assets-new.js api/find-brand-assets.js
# 3. Update imports if needed
# 4. Test thoroughly
# 5. Commit with version tag
git tag v3.0.0
```
### **Import Management:**
```javascript
// β
Always import from canonical names
import findBrandAssets from './find-brand-assets.js'; // Current
import { analytics } from './analytics.js'; // Current
// β Never import versioned files directly
import oldAssets from './find-brand-assets-v1-old.js'; // NO
```
## π¦ **Package.json Version Tracking**
```json
{
"version": "3.0.0",
"phases": {
"phase1": "1.0.0 - Basic pattern matching",
"phase2": "2.0.0 - OpenAI intelligence integration",
"phase3": "3.0.0 - Enterprise platform with analytics + advanced AI"
}
}
```
## π **Deployment Safety**
### **Blue-Green Deployment:**
```javascript
// config/deployment.js
export const ACTIVE_ENDPOINTS = {
asset_search: 'find-brand-assets.js', // Current
mcp_server: 'mcp.js', // Current
analytics: 'analytics.js', // Phase 3A
brandfolder: 'brandfolder-enhanced.js', // Phase 3B
advanced_ai: 'advanced-intelligence.js' // Phase 3C
};
// For rollback capability
export const FALLBACK_ENDPOINTS = {
asset_search: 'find-brand-assets-v2-old.js',
mcp_server: 'mcp-simple-v1.js'
};
```
## π·οΈ **Git Tagging Strategy**
```bash
# Phase releases
git tag v1.0.0 -m "Phase 1: Basic DAM Butler"
git tag v2.0.0 -m "Phase 2: OpenAI Intelligence"
git tag v3.0.0 -m "Phase 3: Enterprise Platform"
# Feature releases
git tag v3.1.0 -m "Phase 3A: Analytics Dashboard"
git tag v3.2.0 -m "Phase 3B: Live Brandfolder Integration"
git tag v3.3.0 -m "Phase 3C: Advanced AI Features"
```
## π **Recommended File Organization**
```
dam-butler-mcp/
βββ api/
β βββ find-brand-assets.js β CURRENT (Phase 3)
β βββ analytics.js β CURRENT (Phase 3A)
β βββ brandfolder-enhanced.js β CURRENT (Phase 3B)
β βββ legacy/
β βββ find-brand-assets-v1-old.js
β βββ find-brand-assets-v2-old.js
βββ config/
β βββ openai-prompts.js β CURRENT (Phase 2+)
β βββ advanced-intelligence.js β CURRENT (Phase 3C)
β βββ legacy/
β βββ basic-config-v1.js
βββ docs/
βββ VERSIONING_STRATEGY.md
βββ PHASE_HISTORY.md
βββ MIGRATION_GUIDES.md
```
---
*Generated for DAM Butler MCP Phase 3 - Enterprise Platform*