Initial commit - ACME demo version
This commit is contained in:
437
frontend/CLEANUP_PLAN.md
Normal file
437
frontend/CLEANUP_PLAN.md
Normal file
@@ -0,0 +1,437 @@
|
||||
# CODE CLEANUP PLAN - BEYOND DIAGNOSTIC PROTOTYPE
|
||||
|
||||
**Date Created:** 2025-12-02
|
||||
**Status:** In Progress
|
||||
**Total Issues Identified:** 22+ items
|
||||
**Estimated Cleanup Time:** 2-3 hours
|
||||
**Risk Level:** LOW (removing dead code only, no functionality changes)
|
||||
|
||||
---
|
||||
|
||||
## EXECUTIVE SUMMARY
|
||||
|
||||
The Beyond Diagnostic codebase has accumulated significant technical debt through multiple iterations:
|
||||
- **6 backup files** (dead code)
|
||||
- **8 completely unused components**
|
||||
- **4 duplicate data request variants**
|
||||
- **2 unused imports**
|
||||
- **Debug logging statements** scattered throughout
|
||||
|
||||
This cleanup removes all dead code while maintaining 100% functionality.
|
||||
|
||||
---
|
||||
|
||||
## DETAILED CLEANUP PLAN
|
||||
|
||||
### PHASE 1: DELETE BACKUP FILES (6 files) 🗑️
|
||||
|
||||
**Priority:** CRITICAL
|
||||
**Risk:** NONE (these are backups, not used anywhere)
|
||||
**Impact:** -285 KB disk space, cleaner filesystem
|
||||
|
||||
#### Files to Delete:
|
||||
|
||||
```
|
||||
1. components/BenchmarkReportPro.tsx.backup
|
||||
└─ Size: ~113 KB
|
||||
└─ Status: NOT imported anywhere
|
||||
└─ Keep: BenchmarkReportPro.tsx (active)
|
||||
|
||||
2. components/EconomicModelPro.tsx.backup
|
||||
└─ Size: ~50 KB
|
||||
└─ Status: NOT imported anywhere
|
||||
└─ Keep: EconomicModelPro.tsx (active)
|
||||
|
||||
3. components/OpportunityMatrixPro.tsx.backup
|
||||
└─ Size: ~40 KB
|
||||
└─ Status: NOT imported anywhere
|
||||
└─ Keep: OpportunityMatrixPro.tsx (active)
|
||||
|
||||
4. components/RoadmapPro.tsx.backup
|
||||
└─ Size: ~35 KB
|
||||
└─ Status: NOT imported anywhere
|
||||
└─ Keep: RoadmapPro.tsx (active)
|
||||
|
||||
5. components/VariabilityHeatmap.tsx.backup
|
||||
└─ Size: ~25 KB
|
||||
└─ Status: NOT imported anywhere
|
||||
└─ Keep: VariabilityHeatmap.tsx (active)
|
||||
|
||||
6. utils/realDataAnalysis.backup.ts
|
||||
└─ Size: ~535 lines
|
||||
└─ Status: NOT imported anywhere
|
||||
└─ Keep: utils/realDataAnalysis.ts (active)
|
||||
```
|
||||
|
||||
**Command to Execute:**
|
||||
```bash
|
||||
rm components/BenchmarkReportPro.tsx.backup
|
||||
rm components/EconomicModelPro.tsx.backup
|
||||
rm components/OpportunityMatrixPro.tsx.backup
|
||||
rm components/RoadmapPro.tsx.backup
|
||||
rm components/VariabilityHeatmap.tsx.backup
|
||||
rm utils/realDataAnalysis.backup.ts
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### PHASE 2: DELETE COMPLETELY UNUSED COMPONENTS (8 files) 🗑️
|
||||
|
||||
**Priority:** HIGH
|
||||
**Risk:** NONE (verified not imported in any active component)
|
||||
**Impact:** -500 KB, improved maintainability
|
||||
|
||||
#### Components to Delete:
|
||||
|
||||
##### Dashboard Variants (superseded)
|
||||
```
|
||||
1. components/Dashboard.tsx
|
||||
└─ Reason: Completely unused, superseded by DashboardEnhanced
|
||||
└─ Imports: None (verified)
|
||||
└─ Keep: DashboardEnhanced.tsx, DashboardReorganized.tsx
|
||||
|
||||
2. components/DashboardSimple.tsx
|
||||
└─ Reason: Debug-only component, contains console.log statements
|
||||
└─ Imports: Only in SinglePageDataRequestV2 (also unused)
|
||||
└─ Keep: DashboardReorganized.tsx (production version)
|
||||
```
|
||||
|
||||
##### Heatmap Variants (superseded)
|
||||
```
|
||||
3. components/Heatmap.tsx
|
||||
└─ Reason: Basic version, completely superseded by HeatmapEnhanced/HeatmapPro
|
||||
└─ Imports: None (verified)
|
||||
└─ Keep: HeatmapPro.tsx (active in DashboardReorganized)
|
||||
```
|
||||
|
||||
##### Economic/Health/Opportunity/Roadmap Basic Versions
|
||||
```
|
||||
4. components/EconomicModel.tsx
|
||||
└─ Reason: Basic version, superseded by EconomicModelPro
|
||||
└─ Imports: None (verified)
|
||||
└─ Keep: EconomicModelPro.tsx (active)
|
||||
|
||||
5. components/HealthScoreGauge.tsx
|
||||
└─ Reason: Basic version, superseded by HealthScoreGaugeEnhanced
|
||||
└─ Imports: None (verified)
|
||||
└─ Keep: HealthScoreGaugeEnhanced.tsx (active)
|
||||
|
||||
6. components/OpportunityMatrix.tsx
|
||||
└─ Reason: Basic version, superseded by OpportunityMatrixPro
|
||||
└─ Imports: None (verified)
|
||||
└─ Keep: OpportunityMatrixPro.tsx (active)
|
||||
|
||||
7. components/DashboardNav.tsx
|
||||
└─ Reason: Accordion navigation, completely superseded
|
||||
└─ Imports: None (verified)
|
||||
└─ Keep: DashboardNavigation.tsx (active)
|
||||
```
|
||||
|
||||
##### UI Component (incomplete/unused)
|
||||
```
|
||||
8. components/StrategicVisualsView.tsx
|
||||
└─ Reason: Incomplete component, not integrated
|
||||
└─ Imports: None (verified)
|
||||
└─ Analysis: Stub file, never completed
|
||||
```
|
||||
|
||||
**Command to Execute:**
|
||||
```bash
|
||||
rm components/Dashboard.tsx
|
||||
rm components/DashboardSimple.tsx
|
||||
rm components/Heatmap.tsx
|
||||
rm components/EconomicModel.tsx
|
||||
rm components/HealthScoreGauge.tsx
|
||||
rm components/OpportunityMatrix.tsx
|
||||
rm components/DashboardNav.tsx
|
||||
rm components/StrategicVisualsView.tsx
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### PHASE 3: DELETE UNUSED DATA REQUEST VARIANTS (4 files) 🗑️
|
||||
|
||||
**Priority:** HIGH
|
||||
**Risk:** NONE (verified only SinglePageDataRequestIntegrated is used in App.tsx)
|
||||
**Impact:** -200 KB, cleaner data flow
|
||||
|
||||
#### Files to Delete:
|
||||
|
||||
```
|
||||
1. components/DataRequestTool.tsx
|
||||
└─ Reason: Superseded by SinglePageDataRequestIntegrated
|
||||
└─ Imports: None in active code (verified)
|
||||
└─ Keep: SinglePageDataRequestIntegrated.tsx (active in App.tsx)
|
||||
|
||||
2. components/DataRequestToolEnhanced.tsx
|
||||
└─ Reason: Duplicate variant of DataRequestTool
|
||||
└─ Imports: None in active code (verified)
|
||||
└─ Keep: SinglePageDataRequestIntegrated.tsx (active)
|
||||
|
||||
3. components/SinglePageDataRequest.tsx
|
||||
└─ Reason: Older version, superseded by SinglePageDataRequestIntegrated
|
||||
└─ Imports: None in active code (verified)
|
||||
└─ Keep: SinglePageDataRequestIntegrated.tsx (active)
|
||||
|
||||
4. components/SinglePageDataRequestV2.tsx
|
||||
└─ Reason: V2 variant with debug code
|
||||
└─ Imports: None in active code (verified)
|
||||
└─ Keep: SinglePageDataRequestIntegrated.tsx (active)
|
||||
```
|
||||
|
||||
**Command to Execute:**
|
||||
```bash
|
||||
rm components/DataRequestTool.tsx
|
||||
rm components/DataRequestToolEnhanced.tsx
|
||||
rm components/SinglePageDataRequest.tsx
|
||||
rm components/SinglePageDataRequestV2.tsx
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### PHASE 4: REMOVE UNUSED IMPORTS (2 files) ✏️
|
||||
|
||||
**Priority:** MEDIUM
|
||||
**Risk:** NONE (only removing unused imports, no logic changes)
|
||||
**Impact:** Cleaner imports, reduced confusion
|
||||
|
||||
#### File 1: `components/EconomicModel.tsx`
|
||||
|
||||
**Current (Line 3):**
|
||||
```typescript
|
||||
import { TrendingDown, TrendingUp, PiggyBank, Briefcase, Zap, Calendar } from 'lucide-react';
|
||||
```
|
||||
|
||||
**Issue:** `TrendingDown` is imported but NEVER used in the component
|
||||
- Line 38: Only `TrendingUp` is rendered
|
||||
- `TrendingDown` never appears in JSX
|
||||
|
||||
**Fixed (Line 3):**
|
||||
```typescript
|
||||
import { TrendingUp, PiggyBank, Briefcase, Zap, Calendar } from 'lucide-react';
|
||||
```
|
||||
|
||||
#### File 2: `components/OpportunityMatrix.tsx`
|
||||
|
||||
**Current (Line 3):**
|
||||
```typescript
|
||||
import { HelpCircle, TrendingUp, Zap, DollarSign } from 'lucide-react';
|
||||
```
|
||||
|
||||
**Issue:** `TrendingUp` is imported but NEVER used in the component
|
||||
- Only `HelpCircle`, `Zap`, `DollarSign` appear in JSX
|
||||
- `TrendingUp` not found in render logic
|
||||
|
||||
**Fixed (Line 3):**
|
||||
```typescript
|
||||
import { HelpCircle, Zap, DollarSign } from 'lucide-react';
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### PHASE 5: CLEAN UP DEBUG LOGGING (3 files) ✏️
|
||||
|
||||
**Priority:** MEDIUM
|
||||
**Risk:** NONE (removing debug statements only)
|
||||
**Impact:** Cleaner console output, production-ready code
|
||||
|
||||
#### File 1: `components/DashboardReorganized.tsx`
|
||||
|
||||
**Issues Found:**
|
||||
- Lines 66-74: Multiple console.log statements for debugging
|
||||
- Lines with: `console.log('🎨 DashboardReorganized...', data);`
|
||||
|
||||
**Action:** Remove all console.log statements while keeping logic intact
|
||||
|
||||
#### File 2: `components/DashboardEnhanced.tsx`
|
||||
|
||||
**Issues Found:**
|
||||
- Debug logging scattered throughout
|
||||
- Console logs for data inspection
|
||||
|
||||
**Action:** Remove all console.log statements
|
||||
|
||||
#### File 3: `utils/analysisGenerator.ts`
|
||||
|
||||
**Issues Found:**
|
||||
- Potential debug logging in data transformation
|
||||
|
||||
**Action:** Remove any console.log statements
|
||||
|
||||
---
|
||||
|
||||
## IMPLEMENTATION DETAILS
|
||||
|
||||
### Step-by-Step Execution Plan
|
||||
|
||||
#### STEP 1: Backup Current State (SAFE)
|
||||
```bash
|
||||
# Create a backup before making changes
|
||||
git add -A
|
||||
git commit -m "Pre-cleanup backup"
|
||||
```
|
||||
|
||||
#### STEP 2: Execute Phase 1 (Backup Files)
|
||||
```bash
|
||||
# Delete all .backup files
|
||||
rm components/*.backup components/*.backup.tsx utils/*.backup.ts
|
||||
```
|
||||
|
||||
#### STEP 3: Execute Phase 2 (Unused Components)
|
||||
- Delete Dashboard variants
|
||||
- Delete Heatmap.tsx
|
||||
- Delete basic versions of Economic/Health/Opportunity/Roadmap
|
||||
- Delete StrategicVisualsView.tsx
|
||||
|
||||
#### STEP 4: Execute Phase 3 (Data Request Variants)
|
||||
- Delete DataRequestTool variants
|
||||
- Delete SinglePageDataRequest variants
|
||||
|
||||
#### STEP 5: Execute Phase 4 (Remove Unused Imports)
|
||||
- Edit EconomicModel.tsx: Remove `TrendingDown`
|
||||
- Edit OpportunityMatrix.tsx: Remove `TrendingUp`
|
||||
|
||||
#### STEP 6: Execute Phase 5 (Clean Debug Logs)
|
||||
- Edit DashboardReorganized.tsx: Remove console.log
|
||||
- Edit DashboardEnhanced.tsx: Remove console.log
|
||||
- Edit analysisGenerator.ts: Remove console.log
|
||||
|
||||
#### STEP 7: Verify & Build
|
||||
```bash
|
||||
npm run build
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## FILES TO KEEP (ACTIVE COMPONENTS)
|
||||
|
||||
After cleanup, active components will be:
|
||||
|
||||
```
|
||||
components/
|
||||
├── AgenticReadinessBreakdown.tsx [KEEP] - Screen 2
|
||||
├── BadgePill.tsx [KEEP] - Status indicator
|
||||
├── BenchmarkReportPro.tsx [KEEP] - Benchmarking
|
||||
├── BenchmarkReport.tsx [KEEP] - Basic benchmark
|
||||
├── DashboardEnhanced.tsx [KEEP] - Alternative dashboard
|
||||
├── DashboardNavigation.tsx [KEEP] - Navigation (active)
|
||||
├── DashboardReorganized.tsx [KEEP] - Main dashboard (active)
|
||||
├── DataInputRedesigned.tsx [KEEP] - Data input UI
|
||||
├── DataUploader.tsx [KEEP] - File uploader
|
||||
├── DataUploaderEnhanced.tsx [KEEP] - Enhanced uploader
|
||||
├── DimensionCard.tsx [KEEP] - Screen 2
|
||||
├── DimensionDetailView.tsx [KEEP] - Detail view
|
||||
├── EconomicModelPro.tsx [KEEP] - Advanced economics
|
||||
├── EconomicModelEnhanced.tsx [KEEP] - Enhanced version
|
||||
├── ErrorBoundary.tsx [KEEP] - Error handling
|
||||
├── HealthScoreGaugeEnhanced.tsx [KEEP] - Score display
|
||||
├── HeatmapEnhanced.tsx [KEEP] - Enhanced heatmap
|
||||
├── HeatmapPro.tsx [KEEP] - Advanced heatmap (active)
|
||||
├── HourlyDistributionChart.tsx [KEEP] - Charts
|
||||
├── MethodologyFooter.tsx [KEEP] - Footer
|
||||
├── OpportunityMatrixEnhanced.tsx [KEEP] - Enhanced matrix
|
||||
├── OpportunityMatrixPro.tsx [KEEP] - Advanced matrix (active)
|
||||
├── ProgressStepper.tsx [KEEP] - Stepper UI
|
||||
├── RoadmapPro.tsx [KEEP] - Advanced roadmap (active)
|
||||
├── SinglePageDataRequestIntegrated.tsx [KEEP] - Main data input (active)
|
||||
├── TierSelectorEnhanced.tsx [KEEP] - Tier selection
|
||||
├── TopOpportunitiesCard.tsx [KEEP] - Screen 3 component
|
||||
└── VariabilityHeatmap.tsx [KEEP] - Screen 4 (active)
|
||||
```
|
||||
|
||||
**Result: 41 files → ~25 files (39% reduction)**
|
||||
|
||||
---
|
||||
|
||||
## VERIFICATION CHECKLIST
|
||||
|
||||
Before finalizing cleanup:
|
||||
|
||||
- [ ] All .backup files deleted
|
||||
- [ ] All unused components deleted
|
||||
- [ ] All unused imports removed
|
||||
- [ ] All console.log statements removed
|
||||
- [ ] App.tsx still imports correct active components
|
||||
- [ ] types.ts unchanged
|
||||
- [ ] utils/*.ts unchanged (except removed console.log)
|
||||
- [ ] config/*.ts unchanged
|
||||
- [ ] styles/*.ts unchanged
|
||||
- [ ] `npm run build` succeeds
|
||||
- [ ] No TypeScript errors
|
||||
- [ ] Bundle size not increased
|
||||
- [ ] No import errors
|
||||
|
||||
---
|
||||
|
||||
## ROLLBACK PLAN
|
||||
|
||||
If anything breaks:
|
||||
|
||||
```bash
|
||||
# Restore to previous state
|
||||
git checkout HEAD~1
|
||||
|
||||
# Or restore specific files
|
||||
git restore components/Dashboard.tsx
|
||||
git restore utils/realDataAnalysis.ts
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## EXPECTED OUTCOMES
|
||||
|
||||
### Before Cleanup
|
||||
- Components: 41 files
|
||||
- Backup files: 6
|
||||
- Unused components: 8
|
||||
- Total: ~3.5 MB
|
||||
|
||||
### After Cleanup
|
||||
- Components: 25 files
|
||||
- Backup files: 0
|
||||
- Unused components: 0
|
||||
- Total: ~2.8 MB (20% reduction)
|
||||
|
||||
### Benefits
|
||||
- ✅ Improved code maintainability
|
||||
- ✅ Cleaner component structure
|
||||
- ✅ Faster IDE performance
|
||||
- ✅ Easier onboarding for new developers
|
||||
- ✅ Reduced confusion about which components to use
|
||||
- ✅ Production-ready (no debug code)
|
||||
|
||||
---
|
||||
|
||||
## NOTES
|
||||
|
||||
### Why Keep These "Enhanced" Versions?
|
||||
- Some projects use multiple variants for A/B testing or gradual rollout
|
||||
- However, in this case, only the "Pro" or latest versions are active
|
||||
- The "Enhanced" versions exist for backwards compatibility
|
||||
- They can be removed in future cleanup if not used
|
||||
|
||||
### What About DashboardEnhanced?
|
||||
- Currently not used in App.tsx
|
||||
- Could be deleted in Phase 2 cleanup
|
||||
- Kept for now as it might be referenced externally
|
||||
- Recommend deleting in next cycle if truly unused
|
||||
|
||||
### Console.log Removal
|
||||
- Being conservative: only removing obvious debug statements
|
||||
- Keeping any logs that serve a purpose
|
||||
- Moving development-only logs to a logging utility in future
|
||||
|
||||
---
|
||||
|
||||
## STATUS
|
||||
|
||||
**Current Phase:** Planning Complete
|
||||
**Next Step:** Execute cleanup (Phases 1-5)
|
||||
**Estimated Time:** 2-3 hours
|
||||
**Risk Assessment:** LOW (dead code removal only)
|
||||
|
||||
---
|
||||
|
||||
*Plan Created: 2025-12-02*
|
||||
*Last Updated: 2025-12-02*
|
||||
*Status: Ready for Execution*
|
||||
Reference in New Issue
Block a user