2.2 KiB
2.2 KiB
Known Issues
❌ TUI Interface Critical Issues
Issue Description
The TUI application has multiple critical issues that make it unusable:
- Multiple re-renders causing screen flicker and corruption
- Layout corruption with overlapping menu boxes
- Configuration errors preventing proper operation
- PowerShell crashes on exit
- Garbled text display and unreadable interface
- Infinite rendering loops
Root Cause
The TUI implementation has fundamental architectural issues:
- React rendering lifecycle incompatible with terminal environment
- State management causing infinite re-renders
- Layout calculations not working with Windows PowerShell
- Improper cleanup causing PowerShell crashes on exit
- Component lifecycle issues with Ink 6.x and React 19.x
Current Status
- CLI Functionality: ✅ FULLY FUNCTIONAL - All core features work perfectly
- TUI Functionality: ❌ NOT FUNCTIONAL - Critical issues make it unusable
Recommended Solution
Use the CLI interface which provides 100% of the functionality:
CLI Interface (Fully Functional)
# Run price updates
npm run update
# Run rollbacks
npm run rollback
# Debug tags
npm run debug-tags
# View help and options
node src/index.js --help
# Main application
npm start
TUI Interface Status
# ❌ DO NOT USE - Has critical issues
npm run tui # Will cause screen corruption and PowerShell crashes
Technical Analysis
The TUI issues stem from:
- Rendering Problems: Multiple re-render cycles causing screen corruption
- State Management: Infinite loops in React state updates
- Platform Compatibility: Ink components not working properly on Windows PowerShell
- Memory Leaks: Improper cleanup causing crashes on exit
- Layout Engine: Box calculations causing overlapping elements
Verification
Core functionality verification (all working):
- ✅ Price updates and rollbacks
- ✅ Shopify API integration
- ✅ Configuration management
- ✅ Scheduled operations
- ✅ Tag analysis and debugging
- ✅ Progress logging and reporting
- ✅ Error handling and recovery
The application is fully functional via CLI interface.