The v1.1.84 working-directory query exceeds Dropbear's 9000-byte request limit, causing an authenticated OpenWrt terminal and its entire SSH transport to close with `String too long`.
Remove explanatory comment lines before quoting the static probe. Preserve all directory discovery and lsof validation behavior. Cover request size with known and unknown shell PIDs, and run the lsof compatibility fixtures for both server identities.
Verified on real OpenWrt 24.10.5 / Dropbear 2024.86, including the exact 9000/9001-byte boundary, old-release comparison, full macOS Electron connection, terminal commands, and SFTP follow-directory. Full CI: 14036 passed, 47 skipped, zero failures. Two independent local reviewers and the current-head remote reviewer are clean.
Fixes#3731
* refactor(snippets): combine creation actions in a dropdown
* fix(snippets): support keyboard navigation in creation menu
* fix(snippets): retain focus when choosing a creation action
Keep renderer-only libraries available as development dependencies so Vite
bundles their runtime code without shipping their dependency trees again.
Exclude native compilation helpers from packaged resources, and prune
node-pty/serialport prebuilds for other platforms and architectures while
preserving matching universal binaries and rebuilt runtime files.
Validation:
- npm run lint; 33 packaging tests pass.
- npm run pack:dir, real packaged application UI, and 29 packaged runtime
smoke checks pass (SDK imports, PTY, serial port listing, SQLite query).
- All 999 UI files retain their code/content; differences are generated
asset references and the embedded dependency classification metadata.
- Dependency versions are unchanged.
- macOS arm64 app: 394,959,135 -> 360,740,625 bytes.
- macOS arm64 ZIP: 150,847,369 -> 143,151,622 bytes; ZIP integrity passes.
- Full suite: 14,035 pass, 36 skipped, 5 fail. The four FIDO helper failures
and transfer FileHandle-GC failure reproduce on unchanged main with Node 26.
Deliver PTY job interrupts as terminal data instead of sending SSH signal channel requests. This addresses the background-cancellation log noise reported in #3577 while preserving the existing cancellation retries and result semantics.
Add regression coverage asserting cancellation writes ETX without invoking the stream signal method.
Add explicit confirmation, on-disk cleanup and failure retry for local vault backup history, while preserving active and interrupted recovery snapshots.
* feat(ssh): restore FIDO2 security key support (#2308)
Consolidate the restored feature and its review fixes before rebasing onto current main. Original PR head: 5d0a0c6c9a550364d3ec5c2331395cedfc9ea7ae.
* fix(ssh): verify and repair FIDO authentication with simulated hardware
Preserve complete OpenSSH SK signature payloads, classify combined PIN/presence prompts correctly, expand IdentityFile tokens, retain certificate selectors, and route shared-agent signing prompts to their originating window. Dismiss prompts when notification helpers exit. Add a software SK provider and opt-in real OpenSSH integration coverage for both algorithms, certificates, SFTP, forwarding, and concurrent windows.
* refactor(ui): refine security key forms and authentication motion
Use shared Select and Switch controls, concise localized copy and compact token-based dialogs. Add scoped enter/exit, field transition and presence animations with reduced-motion support. Preserve raw prompt details and visible PIN errors.
* fix(ssh): align security key prompts with hardware presence and verify Docker logins
* fix(ui): keep security key dialog above its remounted overlay
* fix: address Codex review on PR #2823
* feat(ssh): guide security key recovery and explicit authentication fallback
* test(ssh): exercise security key authentication on native Windows
* test(ssh): verify Windows fixture signatures and explicit fallback
* test(ssh): configure Windows OpenSSH toolchain and document coverage
---------
Co-authored-by: netcatty-bot <308658023+netcatty-bot@users.noreply.github.com>
* Polish monitoring panels and preserve host icons
* Simplify monitoring layout and show every disk partition
* Simplify list rows and add resizable monitoring overlays
* feat(monitor): add modal drawers, sampled hover values and faster refresh
* feat(monitor): reset run history and support saved drag ordering
* perf(monitor): stream history deltas and keep fast samples lightweight
* fix(monitor): separate chart histories across connection identities
* refine(monitor): show disk capacity on hover and use inline sidebars
* fix(monitor): omit unchanged stats from polling deltas
* test(monitor): freeze time in full-history delta checks
* perf(monitor): bound chart paths and reuse unchanged histories
* Codex worktree snapshot: startup-cleanup
Co-authored-by: Codex
* fix(browser): close malformed proxy connections without a reply
* feat(browser): embed host browsing in terminal side panels
* style(browser): blend compact browser chrome into terminal panels
* feat(browser): open terminal links internally with a system browser preference
* fix(browser): retain the first terminal link during panel mount replay
* fix(browser): release contexts when their split pane closes
* style(browser): remove the downloads panel shadow
* fix(browser): ignore late downloads after panel closure
* fix(browser): mount browser content on terminal auto-open
* fix(browser): preserve empty-vault recovery with bookmarks
* fix(browser): expose actions for supported terminal types
* fix(browser): retain open requests before the panel mounts
* fix(browser): align vault actions with supported hosts
* fix(browser): share download controls across host contexts
* fix(browser): keep vault browser requests on visible sessions
* fix(browser): release contexts after workspace detach
* fix(browser): enforce WebRTC routing on page contents
* fix(browser): skip unsupported sessions in open requests
* style(browser): encode glyphs in ASCII-safe source
Make provider disconnect visible and explain the local credentials removed and the vault, backup history, shared sync password and cloud copies retained. Report failed disconnects and preserve a retry path instead of implying success.
Validation: focused sync and dialog checks, isolated Electron cancel/failure/retry/reload against WebDAV, two independent final full-diff reviews, exact-head Codex review and current GitHub checks; the main integration tree also passed focused checks.
Related to #3688. Device handover cleanup remains outside this patch and the issue remains open.
Deleting saved hosts now removes their jump references from surviving hosts and group defaults in all ordinary deletion flows. Host-only bulk deletion uses the existing vault mutation boundary, and explicit empty chains retain their original group-override meaning.
Validation: 282 focused checks, lint/build, two independent full-diff reviews, latest-head Codex review, current GitHub checks, and actual isolated Electron deletion/restart/native SSH reconnection.
Fixes#3691