-
Notifications
You must be signed in to change notification settings - Fork 2
Closed
Description
ARCHITECTURAL FOUNDATION ISSUE
ROOT CAUSE: 957-line monolithic module blocks code comprehension and team effectiveness
CURRENT STATE:
- File:
src/fortplot_figure_core.f90
- Size: 957 lines (91% over 500-line target)
- Impact: Team cannot comprehend or maintain this massive module
ARCHITECTURAL STRATEGY:
Split along logical functionality boundaries, not arbitrary line counts:
-
Core Figure Management (~300 lines)
- Figure initialization, state management
- Basic properties and configuration
-
Plotting Operations (~300 lines)
- Plot methods, data handling
- Coordinate transformations
-
Rendering Pipeline (~300 lines)
- Backend coordination, output generation
- Format-specific rendering logic
SUCCESS CRITERIA:
- All resulting modules <500 lines each
- Logical separation of concerns maintained
- No functionality regression (full test suite passes)
- Clean module interfaces with minimal coupling
- API compatibility preserved for users
VERIFICATION METHOD:
find src/ -name "fortplot_figure_*.f90" -exec wc -l {} \; | awk '{if($1>500) print "VIOLATION: " $2 " has " $1 " lines"}'
ARCHITECTURAL COACHING PRIORITY:
This task teaches team to think in terms of module boundaries and logical separation rather than just completing individual tasks.
MANDATORY: Must maintain backward compatibility - this is refactoring, not rewriting.
Metadata
Metadata
Assignees
Labels
No labels