Changes
What's Changed
- Fixed 4 GitHub issues: batch update confirm button stuck disabled, server credentials wiped on edit, installed-script records stuck "in_progress", uninformative script download error messages
- Fixed PVE-type PocketBase scripts (e.g. "PVE LXC Execute") never being detected as downloaded despite the download itself succeeding
- Batch "Update All" now runs minimized in the background and auto-advances on real script completion instead of requiring the user to manually close each container's terminal window
- Batch update completion summary showing which containers succeeded/failed
- Security hardening: WebSocket start-message validation (containerId/storage/hostname/containerType), path traversal guard on script execution, credential redaction on previously-unredacted server endpoints (
servers.getAllServers/getServerById/installed-scripts list), secret values no longer written to logs, env-var key sanitization before shell interpolation - Fixed installed-script records getting stuck at "in_progress" forever after manual stop or a null-process race during WebSocket disconnect cleanup
- Update executions (local + SSH) now persist their final status/output to the database — previously silent
- Root-caused and fixed whiptail/dialog centering: real terminal cols/rows are now threaded through every execution path instead of hardcoded small defaults (80x24/120x30), which caused dialogs to render off-center
- Higher-contrast NEWT_COLORS color scheme for whiptail/dialog UIs
- Removed overbroad regex fallbacks for container ID / web UI IP detection that could misdetect unrelated numbers/IPs in script output
- Added a reusable toast notification system; wired into server add/edit/delete
- Consistent Esc-to-close and z-index handling across all modals
- Fixed a TypeScript 7 regression that broke the production build (reverted to
^6.0.3) - Fixed PostCSS XSS advisory (Dependabot #68) by pinning
postcssviaoverrides - chore: bump version to 1.1.7 (VERSION + package.json)