fix(capture): four silent drops, and a --resolution flag that did nothing - #14
Merged
Conversation
…of stranding it for 90s
…true original size
# Conflicts: # src/export/pdf.rs
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Five fixes, all found by desk-checking
capture.rsafter the user reported that some events performed during a capture never made it into the recording and had to be re-added by hand afterwards.Four of the five are silent drops: the capture reports success and the event is simply absent. That is the shape of the original complaint.
8246ea1).last_secret_promptwas compared but never reset, so any later prompt with the same text was swallowed — capture twosudocalls and only the first becomes a step. Worse in combination with theis_secret_promptsubstring heuristic: on a second false positive with the same text, the typed command disappears with nothing in its place.--afterarmed on the wrong command and was dropped at shutdown (c77701c). The CLI help and the wizard promised "when the current command finishes"; the only thing that armed the queue was a new command line being submitted, so the command you meant was already running and nothing fired. And neitherafter_opensnorpending_openswas drained when the capture ended.focus/openstranded a mute span for 90 s (30f487a). The span is opened by the capture when it sees the meta-command typed, and could only be closed by arevealline the other process sends on success. A mistyped source id or Esc at the wizard sent nothing, so up to 90 seconds of output and keystrokes were dropped and later excised.7751814). The watchdog checked the exit conditions beforeread_control, so ademo focusissued right before Ctrl-D was lost — exactly the "reveal the result, then stop recording" gesture.--resolutionchanged nothing on a terminal demo (34e71d8).rescale_layoutscaled the pane rectangle but neverfont_size, and a terminal pane's rendered size iscols × cell_w, derived fromfont_size. Measured on the canopy demo:--quality hd,--resolution 1280x720and no flag all produced the same 1440×1026, 35.1 MB gif. The note was wrong too — it read the score after mutating it, so it reported the new size as the old one.906 tests, fmt and clippy clean. There was no test naming
afteranywhere incapture.rsbefore this, which is why that one survived.🤖 Generated with Claude Code
https://claude.ai/code/session_01JeZdT4Zae1BxeLEoKd6kEs