This repository was archived by the owner on Apr 8, 2026. It is now read-only.
v4.0.0 — UI Redesign & Full Codebase Review
What's New
UI Redesign
- Deep Moss + Amber palette with Triggarr-style layout
- Settings page: Flat card sections, two-column layout, labels above inputs
- Dashboard: Unified multi-select bar with bulk actions (Queue, Stop, Extract, Delete Local, Delete Remote)
- AutoQueue merged into Settings page with inline pattern CRUD
- Toast notifications: Triggarr-style with type icons (✓✕⚠ℹ) and slide-in animation
- Navigation: Streamlined to 4 items (Dashboard, Settings, Logs, About)
Security
- LFTP
escape()rejects newline/CR/null characters (command injection fix) - Shell commands use
shlex.quote()for path interpolation - Credentials redacted from debug log output
Bug Fixes
- Model read in command processing now protected by lock
- Auto-delete timer dict has dedicated threading lock
- SSE subscription properly torn down on reconnect
- View file indices updated correctly on file-add
- pexpect TIMEOUT decode crash handled safely
- Inner Observable subscriptions connected to teardown
Code Quality
- 55 issues from full-codebase deep review addressed
- Narrowed exception handlers, correct log levels, concrete types
- BFS traversals use
collections.dequefor O(1) popleft - Version synced across package.json and debian/changelog
Technical
- Angular 21, Bootstrap 5.3, system font stack
- 401 Angular unit tests, 1134 Python unit tests passing