- Removed all modal HTML elements completely
- Disabled buttons that triggered modals (API keys, webhooks, payment, delete account)
- Added 'Coming soon' tooltips to disabled buttons
- Removed modal-related CSS and JavaScript
- This eliminates the popup issue entirely
- Renamed 'modal' class to 'settings-modal' to avoid conflict with components.css
- components.css has .modal { display: flex } which was overriding display: none
- Added !important to ensure settings-modal styles take precedence
- Updated all modal references in HTML and JavaScript
- Converted all dialog elements to regular divs
- Using CSS class 'open' instead of native dialog open attribute
- Added openModal() and closeModal() functions
- Simplified modal CSS and JavaScript
- Modals now fully controlled via class toggle
- Added immediate modal close on script load
- Force close all modals on DOMContentLoaded
- Remove open attribute from all modals during initialization
- Added HTMX afterRequest handler to prevent multiple modals from staying open
- Fixed script syntax issue
- Added closeAllModals() function to close all open modals before opening a new one
- Added event.stopPropagation() to modal trigger buttons
- Added click-outside-to-close behavior for modals
- Added Escape key handler to close modals
- Prevented click events inside modal-content from bubbling up
- Changed apps-dropdown right position from 60px to 0 in app.css
- Wrapped apps button and dropdown in a container with position:relative
- Moved dropdown to be a sibling of the button inside the container
- Removed duplicate dropdown from header-right section
- Changed tasks-main from grid to flexbox for proper panel sizing
- Fixed splitter drag to work with flexbox (set width directly)
- Task cards: reduced padding, proper min-height
- Fixed task-detail-panel to flex and fill available space
- Fixed terminal stats showing 'calculating...' for completed tasks
- Fixed child status not updating when all item_groups complete
- Improved taskmd header alignment and text overflow
- Fixed media queries for responsive layout
- Added bell icon in header toolbar with badge counter
- Created GBAlerts global API for notifications from any app
- App-specific shortcuts: taskCompleted, newEmail, newChat, driveSync, calendarReminder
- Integrated task completion with bell notifications
- Added CSS for notifications panel and items
- Documented in PROMPT.md Design System section
- Updated PROMPT.md with comprehensive Design System documentation
- Added missing CSS variables to ALL themes (border-light, border-hover, text-tertiary)
- Added global component classes: scrollable, card-status, dot-status, badge-step, tree patterns
- Updated tasks.css: no global scroll, task list scrollable, fixed layout
- All patterns from sentient theme now available to all themes
- Normalize task ID comparison in retry logic for consistent lookups
- Use normalized keys in pendingManifestUpdates Map
- Skip manifest_update in ProgressPanel (already handled by tasks.js)
- Clean up existing handler before registering new one in ProgressPanel.init
- Add name-based fallback lookups for sections/children/items when IDs change
- Detect structure changes (section count, children, items, names) and rebuild tree
- Clear progress-empty placeholder before rendering tree
- Add detailed BUILD_TREE logging for debugging
- Add cache-busting version to tasks.js script tag
- 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
- Always rebuild progress tree HTML instead of incremental updates (simpler, more reliable)
- Add console.log for debugging manifest updates
- Fix status normalization (backend sends 'Running', 'Completed' etc)
- Fix updateStatusSection to handle different manifest structures
- Log section and child details for debugging
- 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
- Remove floating progress panel completely
- Update terminal in detail panel with real-time WebSocket data
- Progress bar updates in detail panel
- Auto-select task when created to show progress
- Show prominent app URL notification when task completes
- Play completion sound using Web Audio API
- Extract app_url from task completion details
- Add slideInRight/slideOutRight animations
- Make toast clickable to open app URL
- Refresh task details on completion
- Add prominent input box at top of tasks page
- Gradient header with clean design
- HTMX integration for /api/autotask/create
- Show progress indicator during processing
- Display result with app link when done
- Enter key triggers submit
- Auto-refresh task list after creation
- Delete alpinejs.min.js from ui/suite/js/vendor/
- Delete alpinejs.min.js from ui/minimal/js/vendor/
- Remove script tag from default.gbui
- Remove [x-cloak] CSS rule from global.css
- Update PROMPT.md to remove Alpine.js documentation
- Add organizations.html with org selector and bot hierarchy tree
- Add bot configuration form with enabled tabs
- Update PROMPT.md with weekly maintenance checklist
- Added Repositories tab with GitHub/GitLab/Bitbucket support
- Added Apps tab for previously created HTMX apps
- @mention autocomplete in chat for repos (@botserver) and apps (@myapp)
- Task context storage for autonomous task execution
- CSS for repo and app cards with connection status
- Mention suggestions dropdown with keyboard navigation