Namespace Conflict Resolution Plan
Generated: 2025-09-01T05:25:00Z
Session: SESSION9-CLEANER
Problem Statement​
1,793 "duplicate names" was misleading - mostly build artifacts.
Real Issue: 10 meaningful duplicates causing potential namespace conflicts.
File Analysis​
6 types.rs Files (High Risk)​
Current Location → Proposed Rename → Rationale
────────────────────────────────────────────────────────────
./components/api/src/api/handlers/audit/types.rs → audit_types.rs → Clear module association
./components/api/src/api/auth/types.rs → auth_types.rs → Prevents auth import confusion
./components/api/src/services/compliance_checks/types.rs → compliance_types.rs → Service-specific types
./components/api/src/services/system_monitor/types.rs → monitor_types.rs → System monitoring types
./components/api/src/services/event_capture/types.rs → event_types.rs → Event system types
./components/api/src/services/file_monitor/types.rs → file_monitor_types.rs → File monitoring types
4 session.rs Files (Medium Risk)​
Current Location → Resolution → Rationale
───────────────────────────────────────────────────────────
./components/api/src/models/session.rs → Keep as primary → Core data model
./components/api/src/api/handlers/session.rs → session_handler.rs → HTTP handler logic
./components/api/src/gateway/terminal_bridge/session.rs → terminal_session.rs → Terminal-specific session
./components/codi/src/utils/session.rs → codi_session.rs → CODI utility functions
Why This Matters for Build​
Rust Import Resolution​
// CURRENT PROBLEM:
use crate::types::*; // Which types.rs? Ambiguous!
use session::Session; // Which session.rs? Compiler confused!
// AFTER RESOLUTION:
use crate::auth_types::*; // Clear!
use crate::terminal_session::*; // No confusion!
Build Failure Prevention​
- Namespace conflicts → Compilation errors
- Ambiguous imports → "Multiple items with name X" errors
- Module resolution → "Cannot find module" errors
Implementation Plan​
Phase 1: Assessment (5 minutes)​
- Check each file for dependencies
- Identify import statements that reference these files
- Map out affected modules
Phase 2: Rename Files (10 minutes)​
- Create backup snapshots
- Rename files using
git mv(preserves history) - Update mod.rs declarations
Phase 3: Fix Imports (15 minutes)​
- Update all
usestatements referencing renamed files - Fix
moddeclarations in parent modules - Update any documentation references
Phase 4: Validation (5 minutes)​
- Run
cargo checkto verify no compile errors - Run tests if available
- Generate new tree snapshot for comparison
Risk Assessment​
Low Risk Renames​
audit_types.rs,auth_types.rs→ Self-contained modulescodi_session.rs→ Isolated utility
Medium Risk Renames​
compliance_types.rs,monitor_types.rs→ May have cross-dependenciesterminal_session.rs→ WebSocket integration points
High Risk (Requires Careful Testing)​
- Core
session.rsmodel → Referenced throughout application
Approval Required Actions​
# 1. REQUEST APPROVAL for Phase 1 assessment
codi-log "[SESSION9-CLEANER] APPROVAL_REQUEST Phase 1: Assess dependencies for 10 duplicate files before renaming" "APPROVAL_REQUEST"
# 2. If approved, execute assessment
# 3. Report findings
# 4. REQUEST APPROVAL for actual renames
# 5. Execute with git mv to preserve history
Expected Outcome​
Before: 10 namespace conflict risks
After: 0 namespace conflicts, clear module boundaries
Build Impact: Eliminates compilation ambiguity
Maintenance: Easier to understand codebase structure