# Todofile

This is a "to do next" file, particularly useful to keep the human and a coding assistant in sync.

The format is based on [Keep a Todofile V0.0.1](https://coulomb.social/open/KeepaTodofile).

The structure organizes **future tasks** by their impact, just as a changelog organizes past changes by their impact.

***

## [Unreleased] - *Active Vibe-Coding State* 💡

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:**
    * **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

* **To Refactor:**
    * None currently identified

* **To Remove:**
    * None currently identified

***

## 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 ✅**:
- ✅ Added missing version entries for 0.1.0, 0.2.0, and 0.3.0
- ✅ Added standard Keep a Changelog header with proper format
- ✅ Included Unreleased section
- ✅ Research completed for all historical versions using git log analysis
- ✅ All entries follow Keep a Changelog categories (Added, Changed, Fixed)
- ✅ Chronological order maintained with latest versions first
- ✅ Appropriate release dates included based on git commit timestamps

**Version Details Added**:
- v0.1.0 (2025-10-15): Development infrastructure, TDD workspace, issue management
- v0.2.0 (2025-10-20): Advanced Markdown Engine with GraphQL, search, plugins
- v0.3.0 (2025-10-25): Architectural improvements with kaizen-agentic integration