xterm and keydown can both emit carriage return for one keypress; skip duplicate Enter frames on the client and collapse identical audits within 450ms on the server.
Co-authored-by: Cursor <cursoragent@cursor.com>
Do not reuse the previous command when the operator presses Enter on a blank prompt; validate prompt-only rows on both frontend and backend.
Co-authored-by: Cursor <cursoragent@cursor.com>
PTY stdout/stdin carry backspace and edit noise during typing; record only the final row the operator sees when pressing Enter.
Co-authored-by: Cursor <cursoragent@cursor.com>
ZTE tab redraws the input line via carriage return; parse the last prompt line from PTY stdout on Enter instead of stdin keystrokes. Also remove remaining ?? in AuditPage.
Co-authored-by: Cursor <cursoragent@cursor.com>
On Enter, send audit_line from the terminal row so tab completion and edits match what the operator executed; keep the device prompt prefix in audit logs.
Co-authored-by: Cursor <cursoragent@cursor.com>
Make session lifecycle and typed CLI lines searchable in audit_log with password redaction, and surface summaries plus device filters in the ops UI.
Co-authored-by: Cursor <cursoragent@cursor.com>
Skip Huawei special_login_handler under interactive WebCRT, harden stelnet host-key auth, and echo hop/login progress into the terminal during connect.
Co-authored-by: Cursor <cursoragent@cursor.com>