Update migration template with comprehensive time tracking system (15 minutes)

Time Tracking Integration: Add mandatory timing steps and performance analysis
Performance Targets: Include realistic complexity-based duration estimates
Quality Gates: Require time data in commits and performance comparison
Project Estimates: Update to 2-3 weeks based on actual performance data

Time: 15 minutes | Complexity: Simple | Issues: None
Testing: Manual | Validation: Template review complete
This commit is contained in:
Matthew Raymer
2025-07-07 10:13:30 +00:00
parent a05fa116f7
commit 2f146d57ad
5 changed files with 470 additions and 38 deletions

View File

@@ -0,0 +1,140 @@
# TimeSafari Commit Message Template with Time Tracking
## Migration Commit Template
```
[Component]: Complete Enhanced Triple Migration Pattern (X minutes)
Database Migration: Replace databaseUtil with PlatformServiceMixin
SQL Abstraction: Use $contacts(), $settings(), $platformService methods
Notification Migration: Add X constants, migrate X $notify calls to helpers
Template Optimization: Extract X computed properties, reduce complexity
Time: X minutes | Complexity: [Simple/Medium/Complex] | Issues: [None/List]
Testing: [Manual/Automated/Required] | Validation: [Script passed/Manual check]
```
## Real Examples from Recent Work
### PhotoDialog + OfferDialog (58 minutes each)
```
Complete Enhanced Triple Migration Pattern for PhotoDialog and OfferDialog (116 minutes)
Database Migration: Replace databaseUtil with PlatformServiceMixin
SQL Abstraction: Use $accountSettings() for settings retrieval
Notification Migration: Add 15 constants, migrate 15 $notify calls to helpers
Template Optimization: Extract 11 computed properties, reduce template complexity
Time: 116 minutes | Complexity: Medium | Issues: None
Testing: Manual | Validation: Script passed
```
### ProjectsView (17 minutes)
```
Complete ProjectsView Triple Migration Pattern with literal extraction (17 minutes)
Database Migration: Replace databaseUtil with PlatformServiceMixin
SQL Abstraction: Use $contacts(), $projects() methods
Notification Migration: Add 1 constant, migrate 1 $notify call
Template Optimization: Extract 3 computed properties
Time: 17 minutes | Complexity: Simple | Issues: None
Testing: Automated | Validation: Script passed
```
## Batch Migration Template
```
Complete notification migration across X components (Y minutes)
Components: [List of components]
- Add X centralized notification constants
- Migrate X $notify calls to helper methods
- Standardize timeout usage with TIMEOUTS constants
Time: Y minutes | Avg per component: Z minutes | Complexity: Batch
Testing: Automated | Validation: Script passed
```
## Time Tracking Workflow
### 1. Start Migration
```bash
./scripts/time-migration.sh ComponentName.vue start
```
### 2. Complete Migration
```bash
./scripts/time-migration.sh ComponentName.vue end
```
### 3. Daily Summary
```bash
./scripts/daily-migration-summary.sh
```
### 4. Commit with Time Data
```bash
git commit -m "Complete ComponentName migration (X minutes)
Database Migration: Replace databaseUtil with PlatformServiceMixin
Notification Migration: Add X constants, migrate X $notify calls
Template Optimization: Extract X computed properties
Time: X minutes | Complexity: [Level] | Issues: [None/List]
Testing: [Status] | Validation: [Status]"
```
## Time Complexity Guidelines
### Simple Components (15-20 minutes)
- Dialog components with minimal database operations
- Utility components with few notifications
- Example: UserNameDialog, TopMessage
### Medium Components (30-45 minutes)
- Standard view components with moderate database usage
- Multiple notification patterns
- Example: ProjectsView, ContactsView
### Complex Components (45-60 minutes)
- Large view components with extensive database operations
- Many notification patterns and complex templates
- Example: PhotoDialog, OfferDialog, ConfirmGiftView
## Performance Tracking
### Daily Targets
- **Simple Components**: 20+ per day
- **Medium Components**: 8-12 per day
- **Complex Components**: 4-8 per day
### Weekly Targets
- **Week 1**: 25 components (mix of simple/medium)
- **Week 2**: 30 components (focus on complex)
- **Week 3**: 37 components (remaining)
### Quality Gates
- [ ] Start time logged
- [ ] End time logged
- [ ] Validation script passed
- [ ] Linting passed
- [ ] Commit includes time data
- [ ] Daily summary updated
## Efficiency Tips
### Batch Processing
- Group similar components
- Reuse notification constants
- Copy/paste helper patterns
### Templates and Automation
- Use migration checklist
- Standardize computed property patterns
- Validate with scripts
### Time Savers
- Keep validation script running
- Use IDE snippets for common patterns
- Track blockers immediately