@agility/cli
Version:
Agility CLI for working with your content. (Public Beta)
116 lines (83 loc) ⢠4.12 kB
Markdown
# Internal Method Dependencies Analysis - Phase 19.1.2
## š **CORRECTED REMOVAL ANALYSIS**
### **IMPORTANT DISCOVERY:**
Some methods I initially marked as "unused" are actually called **internally** by other methods in the same service!
---
## š **Service-by-Service Internal Dependencies**
### 1. **PageChainAnalyzer** - No Internal Dependencies Found
```
ā
isPageBroken() - truly unused (no internal calls)
ā
showPageDependencyHierarchy() - truly unused (no internal calls)
SAFE TO REMOVE:
šļø isPageBroken() - confirmed unused
šļø showPageDependencyHierarchy() - confirmed unused (replaced by hierarchical display)
```
### 2. **ModelChainAnalyzer** - Internal Dependency Found! ā ļø
```
ā modelHasModelDependencies() - WAIT! Called internally by showModelToModelChains()
Line 170: const hasModelDependencies = this.modelHasModelDependencies(model);
CORRECTED ANALYSIS:
ā modelHasModelDependencies() - CANNOT REMOVE (used internally)
```
### 3. **ContainerReferenceExtractor** - No Internal Dependencies
```
ā
getContainerIdsFromPageZones() - no internal calls found
ā
findMissingContainerDependencies() - no internal calls found
SAFE TO REMOVE:
šļø getContainerIdsFromPageZones() - confirmed unused
šļø findMissingContainerDependencies() - confirmed unused
```
### 4. **DependencyFinder** - Internal Dependencies Found! ā ļø
```
ā findMissingDependenciesForContent() - WAIT! Called internally by validateDependencies() AND findAllBrokenItems()
Line 45: missing = this.findMissingDependenciesForContent(entity, sourceEntities);
Line 236: const missing = this.findMissingDependenciesForContent(content, sourceEntities);
CORRECTED ANALYSIS:
ā findMissingDependenciesForContent() - CANNOT REMOVE (used internally)
```
### 5. **SourceDataLoader** - No Internal Dependencies
```
ā
loadSourceData() - no internal calls found
ā
hasNoContent() - no internal calls found
ā
validateRequiredEntities() - no internal calls found
SAFE TO REMOVE:
šļø All 3 methods can be safely removed
```
---
## šÆ **CORRECTED REMOVAL TARGETS**
### **Definitely Safe to Remove (Verified No Internal Dependencies):**
1. **PageChainAnalyzer:**
- ā
`isPageBroken()` - never called externally or internally
- ā
`showPageDependencyHierarchy()` - never called (replaced by hierarchical display)
2. **ContainerReferenceExtractor:**
- ā
`getContainerIdsFromPageZones()` - never called externally or internally
- ā
`findMissingContainerDependencies()` - never called externally or internally
3. **SourceDataLoader (entire service might be removable):**
- ā
`loadSourceData()` - never called (different loading pattern used)
- ā
`hasNoContent()` - never called
- ā
`validateRequiredEntities()` - never called
### **Previously Misidentified (Actually Needed):**
1. **ModelChainAnalyzer:**
- ā `modelHasModelDependencies()` - KEEP (called by showModelToModelChains)
2. **DependencyFinder:**
- ā `findMissingDependenciesForContent()` - KEEP (called by validateDependencies and findAllBrokenItems)
---
## š **REVISED CLEANUP IMPACT**
### **Confirmed Safe Removals:**
- **7 methods** can be safely removed (down from 9)
- **SourceDataLoader**: Entire service can likely be removed (153 lines)
- **Other services**: 4 methods across PageChainAnalyzer and ContainerReferenceExtractor
- **Estimated line reduction**: 200-300 lines
### **Methods Preserved Due to Internal Dependencies:**
- `ModelChainAnalyzer.modelHasModelDependencies()` - needed by showModelToModelChains()
- `DependencyFinder.findMissingDependenciesForContent()` - needed by validateDependencies() and findAllBrokenItems()
---
## šÆ **FINAL SAFE REMOVAL LIST:**
1. `PageChainAnalyzer.isPageBroken()`
2. `PageChainAnalyzer.showPageDependencyHierarchy()`
3. `ContainerReferenceExtractor.getContainerIdsFromPageZones()`
4. `ContainerReferenceExtractor.findMissingContainerDependencies()`
5. `SourceDataLoader.loadSourceData()`
6. `SourceDataLoader.hasNoContent()`
7. `SourceDataLoader.validateRequiredEntities()`
**Total: 7 methods confirmed safe for removal**