- updateProgressTreeInPlace: only updates changed text/classes, no innerHTML rebuild
- updateChildInPlace, updateItemsInPlace: granular element updates
- Check if value changed before updating (prevents unnecessary DOM writes)
- CSS transitions on all tree elements (0.2s ease-out)
- Status dot now yellow/pulsing by default (was missing)
- Running step badges get accent color
- dot-pulse animation with scale effect
- Remove View Details links completely
- Add tree-section-dot on right side of section rows
- Child rows use tree-item-dot on left
- Duration aligned to right with margin-left: auto
- Proper padding and spacing to match design
- Update both taskmd.css and theme-sentient.css
- Rewrite renderManifestProgress to update existing DOM elements
- Only rebuild HTML on first render, then update incrementally
- Add updateStatusSection, updateProgressTree, updateItems functions
- Fix scroll: only task list scrolls, detail panel is fixed
- Add status-indicator, status-gear CSS styles
- Progress content has max-height with scroll, terminal is fixed size
Frontend JS:
- Replace text checkboxes with dot indicators
- Add 'View Details' links to tree sections
- Add HTMX afterSwap listener for pending manifest updates
- Retry system for manifest updates when elements not yet loaded
Frontend CSS:
- taskmd.css uses CSS variables for theme compatibility
- Dot indicators with pulse animation for running items
- Progress bar under running sections
- Pixel-perfect tree structure matching design mockup
Theme:
- Add complete TASKMD Progress Tree styles to theme-sentient.css
- Dot pulse animation with accent glow
- All components use theme variables