diff --git a/TODO.md b/TODO.md index 2c4ed266..285283b5 100644 --- a/TODO.md +++ b/TODO.md @@ -13,7 +13,30 @@ The structure organizes **future tasks** by their impact, just as a changelog or This section is for tasks currently being discussed with or worked on by the coding assistant. These are the ephemeral, flow-of-thought tasks. * **To Add:** - * None currently identified + * **Complete Theme System Refactor - Layered Theme Architecture**: Major refactor to replace simple template selection with sophisticated layered theme system (currently stashed) + * **Phase 1 - Restore and Assess**: + * Restore stashed changes with `git stash pop` + * Run tests to identify current failures and validation issues + * Assess remaining work by checking all files that still use `--template` + * **Phase 2 - Complete CLI Parameter Migration**: + * Update remaining CLI commands in asset_commands.py, cli.py, and other files + * Fix parameter validation - add proper theme validation for the new string-based parameter + * Update help text and documentation to reflect new layered theme capabilities + * **Phase 3 - Fix Integration Issues**: + * Fix function signature mismatches where functions expect `template` but receive `theme` + * Add proper error handling for invalid themes (replace print statements with logging) + * Test layered theme functionality - ensure `dark,academic` type combinations work + * Verify legacy theme mapping works correctly + * **Phase 4 - Quality Assurance**: + * Run full test suite to ensure no regressions + * Test all CLI commands with new theme parameter + * Verify backward compatibility with existing templates + * Update any remaining documentation + * **Phase 5 - Clean Up and Commit**: + * Remove dead code and legacy functions if no longer needed + * Ensure consistent terminology throughout codebase + * Write comprehensive commit message documenting the major theme system improvement + * Update CHANGELOG.md with new theme layering capabilities * **To Fix:** * None currently identified @@ -26,6 +49,31 @@ This section is for tasks currently being discussed with or worked on by the cod *** +## Theme System Refactor Context + +**Current State**: Work-in-progress theme system refactor is stashed and partially complete. + +**Completed Parts ✅**: +- New Layered Theme Architecture: Complete LAYERED_THEMES system with UI, document, and branding scopes +- Theme Parsing Functions: `parse_theme_string()` and `combine_theme_properties()` +- CSS Generation Refactor: New `_get_template_css()` and `_generate_layered_css()` methods +- CLI Parameter Change: Changed from `--template` to `--theme` throughout test files +- Legacy Compatibility: LEGACY_THEME_MAPPING for backward compatibility + +**Missing/Incomplete Parts ❌**: +- CLI Parameter Validation: The new `--theme` parameter needs validation for invalid themes +- Function Signature Inconsistencies: Some functions still accept `template` parameter but call it with `theme` +- Additional Files: Other files in the codebase still use old `template` parameter +- Error Handling: The warning system for unknown themes needs proper logging + +**New Capabilities When Complete**: +- Single themes: `basic`, `github`, `dark`, `academic`, `light`, `corporate`, `startup` +- Layered themes: `dark,academic` combines dark UI with academic typography +- Complex combinations: `light,github,corporate` for branded GitHub-style documents +- Legacy compatibility: Existing `--template` usage continues to work + +*** + ## Completed Tasks **CHANGELOG.md Enhancement - COMPLETED ✅**: