New Features: 1. Auto-Complete Parent Tasks - When all child tasks are marked as "done", parent automatically becomes "done" - Works recursively up the task hierarchy - Implemented in backend crud.py with check_and_update_parent_status() - Prevents manual status management for completed branches 2. Strikethrough for Done Tasks - Time estimates crossed out when task status is "done" - Visual indicator that work is completed - Applied in both TreeView and KanbanView 3. Updated Version - Bumped to v0.1.4 in App.jsx header 4. Documentation - Added comprehensive CHANGELOG.md - Updated README.md with v0.1.4 features - Documented all versions from v0.1.0 to v0.1.4 - Added usage examples, architecture diagrams, troubleshooting Technical Changes: - backend/app/crud.py: Added check_and_update_parent_status() recursive function - frontend/src/components/TreeView.jsx: Added line-through styling for done tasks - frontend/src/components/KanbanView.jsx: Added line-through styling for done tasks - frontend/src/App.jsx: Version updated to v0.1.4 This release completes the intelligent time tracking and auto-completion features, making TESSERACT a fully-featured hierarchical task management system.
5.5 KiB
5.5 KiB
Changelog
All notable changes to TESSERACT will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
[0.1.4] - 2025-01-XX
Added
- Strikethrough styling for time estimates when tasks are marked as "done"
- Auto-complete parent tasks when all child tasks are marked as "done"
- Works recursively up the task hierarchy
- Parents automatically transition to "done" status when all children complete
Changed
- Time estimates on completed tasks now display with strikethrough decoration
- Parent task status automatically updates based on children completion state
[0.1.3] - 2025-01-XX
Added
- Enhanced task creation forms with metadata fields
- Title field (required)
- Tags field (comma-separated input)
- Time estimate fields (hours and minutes)
- Flag color selector with 8 color options
- TaskForm component for consistent task creation across views
- Status change dropdown in TaskMenu (no longer requires Kanban view)
- Leaf-based time calculation system
- Parent tasks show sum of descendant leaf task estimates
- Prevents double-counting when both parents and children have estimates
- Excludes "done" tasks from time calculations
- Time format changed from decimal hours to hours + minutes (e.g., "1h 30m" instead of "1.5h")
- CHANGELOG.md and README.md documentation
Changed
- Task creation now includes all metadata fields upfront
- Time estimates display remaining work (excludes completed tasks)
- Time input uses separate hours/minutes fields instead of single minutes field
- Parent task estimates calculated from leaf descendants only
Fixed
- Time calculation now accurately represents remaining work
- Time format more human-readable with hours and minutes
[0.1.2] - 2025-01-XX
Added
- Metadata fields for tasks:
estimated_minutes(Integer) - Time estimate stored in minutestags(JSON Array) - Categorization tagsflag_color(String) - Priority flag with 7 color options
- TaskMenu component with three-dot dropdown
- Edit time estimates
- Edit tags (comma-separated)
- Set flag colors
- Edit task title
- Delete tasks
- SearchBar component in header
- Real-time search with 300ms debounce
- Optional project filtering
- Click results to navigate to project
- Displays metadata in results
- Time and tag display in TreeView and KanbanView
- Flag color indicators on tasks
- Backend search endpoint
/api/searchwith project filtering
Changed
- TreeView and KanbanView now display task metadata
- Enhanced visual design with metadata badges
[0.1.1] - 2025-01-XX
Fixed
- Tree view indentation now scales properly with nesting depth
- Changed from fixed
ml-6to calculatedmarginLeft: ${level * 1.5}rem - Each nesting level adds 1.5rem (24px) of indentation
- Changed from fixed
- Kanban view subtask handling
- All tasks (including subtasks) now appear as individual draggable cards
- Subtasks show parent context: "↳ subtask of: [parent name]"
- Removed nested subtask list display
Changed
- Improved visual hierarchy in tree view
- Better subtask representation in Kanban board
[0.1.0] - 2025-01-XX
Added
- Initial MVP release
- Core Features:
- Arbitrary-depth nested task hierarchies
- Two view modes: Tree View and Kanban Board
- Self-hosted architecture with Docker deployment
- JSON import for LLM-generated task trees
- Technology Stack:
- Backend: Python FastAPI with SQLAlchemy ORM
- Database: SQLite with self-referencing Task model
- Frontend: React + Tailwind CSS
- Deployment: Docker with nginx reverse proxy
- Project Management:
- Create/read/update/delete projects
- Project-specific task trees
- Task Management:
- Create tasks with title, description, status
- Four status types: Backlog, In Progress, Blocked, Done
- Hierarchical task nesting (task → subtask → sub-subtask → ...)
- Add subtasks to any task
- Delete tasks (cascading to all subtasks)
- Tree View:
- Collapsible hierarchical display
- Expand/collapse subtasks
- Visual nesting indentation
- Inline editing
- Status display
- Kanban Board:
- Four columns: Backlog, In Progress, Blocked, Done
- Drag-and-drop to change status
- All tasks shown as cards (including subtasks)
- JSON Import:
- Bulk import task trees from JSON files
- Supports arbitrary nesting depth
- Example import file included
- UI/UX:
- Dark cyberpunk theme
- Orange (#ff6b35) accent color
- Responsive design
- Real-time updates
Technical Details
- Backend API endpoints:
/api/projects- Project CRUD/api/tasks- Task CRUD/api/projects/{id}/tree- Hierarchical task tree/api/projects/{id}/tasks- Flat task list/api/projects/{id}/import- JSON import
- Database Schema:
projectstable with id, name, descriptiontaskstable with self-referencingparent_task_id
- Frontend Routing:
/- Project list/project/:id- Project view with Tree/Kanban toggle
- Docker Setup:
- Multi-stage builds for optimization
- Nginx reverse proxy configuration
- Named volumes for database persistence
- Development and production configurations
Project Information
TESSERACT - Task Decomposition Engine A self-hosted web application for managing deeply nested todo trees with advanced time tracking and project planning capabilities.
Repository: https://github.com/serversdwn/tesseract License: MIT Author: serversdwn