Just a whole lot of crap
This commit is contained in:
179
.kiro/specs/tui-missing-screens/tasks.md
Normal file
179
.kiro/specs/tui-missing-screens/tasks.md
Normal file
@@ -0,0 +1,179 @@
|
||||
# Implementation Plan
|
||||
|
||||
- [x] 1. Create core service classes for data management
|
||||
|
||||
- Create ScheduleService class for managing scheduled operations with JSON persistence
|
||||
- Create LogService class for reading and parsing Progress.md files
|
||||
- Create TagAnalysisService class for fetching and analyzing Shopify product tags
|
||||
- _Requirements: 5.1, 5.2, 5.3_
|
||||
|
||||
- [x] 2. Implement ScheduleService with JSON persistence
|
||||
|
||||
- Write loadSchedules() method to read from schedules.json file
|
||||
- Write saveSchedules() method to persist schedules to JSON file
|
||||
- Write addSchedule(), updateSchedule(), deleteSchedule() CRUD methods
|
||||
- Write validateSchedule() method for schedule data validation
|
||||
- Create unit tests for all ScheduleService methods
|
||||
- _Requirements: 1.6, 5.1_
|
||||
|
||||
- [x] 3. Implement LogService for Progress.md parsing
|
||||
|
||||
- Write getLogFiles() method to discover available log files
|
||||
- Write readLogFile() method to read Progress.md content
|
||||
- Write parseLogContent() method to extract structured log entries
|
||||
- Write filterLogs() method for date range, operation type, and status filtering
|
||||
- Write paginateLogs() method for handling large log files
|
||||
- Create unit tests for all LogService methods
|
||||
- _Requirements: 2.1, 2.3, 2.4, 2.5_
|
||||
|
||||
- [x] 4. Implement TagAnalysisService with Shopify API integration
|
||||
|
||||
- Write fetchAllTags() method using existing ShopifyService
|
||||
- Write getTagDetails() method to analyze products for a specific tag
|
||||
- Write calculateTagStatistics() method for product counts, values, and price ranges
|
||||
- Write searchTags() method for filtering tags by search query
|
||||
- Create unit tests for all TagAnalysisService methods
|
||||
- _Requirements: 3.1, 3.2, 3.3, 3.4, 3.6_
|
||||
|
||||
- [x] 5. Create reusable TUI components
|
||||
|
||||
- Create ErrorDisplay component for consistent error messaging
|
||||
- Create LoadingIndicator component for progress indication
|
||||
- Create Pagination component for navigating large datasets
|
||||
- Create FormInput component for text input fields
|
||||
- Write unit tests for all reusable components
|
||||
- _Requirements: 4.1, 4.3, 4.5_
|
||||
|
||||
- [x] 6. Implement basic Scheduling screen structure
|
||||
|
||||
- Create SchedulingScreen component with main schedule list view
|
||||
- Implement keyboard navigation (↑/↓ arrows, Enter, Esc)
|
||||
- Add state management for schedules list and selected index
|
||||
- Integrate with ScheduleService to load and display existing schedules
|
||||
- Add basic schedule status indicators (pending, completed, failed)
|
||||
- _Requirements: 1.1, 1.7, 4.1, 4.2_
|
||||
|
||||
- [x] 7. Add schedule creation functionality to Scheduling screen
|
||||
|
||||
- Create "Add New Schedule" form interface
|
||||
- Implement form fields for operation type, date/time, and recurrence
|
||||
- Add form validation for required fields and valid date/time values
|
||||
- Integrate with ScheduleService to save new schedules
|
||||
- Add success/error feedback for schedule creation
|
||||
- _Requirements: 1.2, 1.3, 1.4, 1.5, 1.6_
|
||||
|
||||
- [x] 8. Add schedule management features to Scheduling screen
|
||||
|
||||
- Implement edit functionality for existing schedules
|
||||
- Add delete confirmation and schedule removal
|
||||
- Add schedule enable/disable toggle functionality
|
||||
- Display schedule execution instructions and status
|
||||
- Add error handling for schedule operations
|
||||
- _Requirements: 1.8, 1.9, 4.5_
|
||||
|
||||
- [x] 9. Implement basic View Logs screen structure
|
||||
|
||||
- Create ViewLogsScreen component with log file list view
|
||||
- Implement keyboard navigation for log file selection
|
||||
- Add state management for log files, selected file, and content
|
||||
- Integrate with LogService to discover and list available log files
|
||||
- Display log file metadata (size, creation date, operation count)
|
||||
- _Requirements: 2.1, 2.8, 4.1, 4.2_
|
||||
|
||||
- [ ] 10. Add log content viewing functionality
|
||||
|
||||
- Implement log content display with syntax highlighting
|
||||
- Add pagination for large log files using Pagination component
|
||||
- Implement scrolling through log content with keyboard controls
|
||||
- Add log entry type highlighting (errors, warnings, success messages)
|
||||
- Handle empty log files with helpful messaging
|
||||
- _Requirements: 2.2, 2.4, 2.6, 2.7_
|
||||
|
||||
- [ ] 11. Add log filtering and search capabilities
|
||||
|
||||
- Implement filter interface for date range, operation type, and status
|
||||
- Add search functionality within log content
|
||||
- Integrate filtering with LogService filterLogs() method
|
||||
- Update pagination to work with filtered results
|
||||
- Add filter status indicators and clear filter options
|
||||
- _Requirements: 2.3, 2.5_
|
||||
|
||||
- [ ] 12. Implement basic Tag Analysis screen structure
|
||||
|
||||
- Create TagAnalysisScreen component with tag list view
|
||||
- Implement keyboard navigation for tag selection
|
||||
- Add state management for tags, selected tag, and analysis status
|
||||
- Integrate with TagAnalysisService to fetch store tags
|
||||
- Display loading indicators during tag fetching
|
||||
- _Requirements: 3.1, 3.9, 4.1, 4.2_
|
||||
|
||||
- [ ] 13. Add tag statistics and analysis features
|
||||
|
||||
- Display tag statistics (product count, variant count, total value)
|
||||
- Implement tag details view showing products and prices
|
||||
- Add price range calculations and average price display
|
||||
- Show detailed product information for selected tags
|
||||
- Add error handling for API connection failures
|
||||
- _Requirements: 3.2, 3.3, 3.4, 3.6, 3.9_
|
||||
|
||||
- [ ] 14. Add tag search and configuration integration
|
||||
|
||||
- Implement search/filter functionality for tag list
|
||||
- Add tag selection for immediate use in configuration
|
||||
- Integrate with existing configuration system to update target tag
|
||||
- Add confirmation dialogs for configuration updates
|
||||
- Handle tag selection workflow and navigation
|
||||
- _Requirements: 3.7, 3.8, 5.5_
|
||||
|
||||
- [ ] 15. Update main TUI entry point with new screens
|
||||
|
||||
- Modify tui-entry.js to include new screen navigation options
|
||||
- Update main menu to remove "coming soon" placeholders
|
||||
- Add screen routing logic for Scheduling, View Logs, and Tag Analysis
|
||||
- Ensure consistent navigation patterns across all screens
|
||||
- Update help text and keyboard shortcuts documentation
|
||||
- _Requirements: 4.1, 4.2, 4.6_
|
||||
|
||||
- [ ] 16. Implement comprehensive error handling
|
||||
|
||||
- Add error boundaries for each new screen
|
||||
- Implement retry logic for API failures in Tag Analysis
|
||||
- Add graceful handling of missing files (schedules.json, Progress.md)
|
||||
- Create consistent error messaging across all screens
|
||||
- Add troubleshooting guidance for common issues
|
||||
- _Requirements: 4.5, 3.9, 2.7_
|
||||
|
||||
- [ ] 17. Add data persistence and state management
|
||||
|
||||
- Ensure schedules persist correctly to schedules.json file
|
||||
- Implement proper state cleanup when switching screens
|
||||
- Add data validation for all user inputs
|
||||
- Handle concurrent access to shared files safely
|
||||
- Implement proper error recovery for file operations
|
||||
- _Requirements: 5.1, 5.2, 5.4, 5.6_
|
||||
|
||||
- [ ] 18. Create integration tests for new screens
|
||||
|
||||
- Write integration tests for Scheduling screen workflow
|
||||
- Write integration tests for View Logs screen functionality
|
||||
- Write integration tests for Tag Analysis screen operations
|
||||
- Test navigation between screens and state preservation
|
||||
- Test error handling and recovery scenarios
|
||||
- _Requirements: 4.1, 4.2, 4.3, 4.4, 4.5_
|
||||
|
||||
- [ ] 19. Add performance optimizations
|
||||
|
||||
- Implement lazy loading for large tag lists in Tag Analysis
|
||||
- Add efficient pagination for log content viewing
|
||||
- Optimize memory usage for large datasets
|
||||
- Add caching for frequently accessed tag data
|
||||
- Implement proper cleanup of resources and event listeners
|
||||
- _Requirements: 2.4, 3.1, 3.2_
|
||||
|
||||
- [ ] 20. Final testing and polish
|
||||
- Conduct end-to-end testing of all new screens
|
||||
- Test keyboard navigation consistency across all screens
|
||||
- Verify consistent styling and color schemes
|
||||
- Test integration with existing Configuration and Operations screens
|
||||
- Add final documentation and help text updates
|
||||
- _Requirements: 4.1, 4.2, 4.3, 4.4, 4.5, 4.6_
|
||||
Reference in New Issue
Block a user