fix: party log --stop closes only the pipes it opened

Start already skipped panes the host had piped for other purposes,
but --stop swept every pane, killing pipes party log never owned.
Record the pane ids we pipe in .log-panes inside the per-party dir
and close exactly those on --stop; the file dies with the dir.
This commit is contained in:
veg 2026-07-11 16:54:57 +00:00
parent fbe8317fee
commit 6c48777553
2 changed files with 24 additions and 6 deletions

View file

@ -79,6 +79,16 @@ poll_for() {
grep -q marker-KEEP "$saved"
}
@test "log --stop leaves a manually piped pane alone" {
"$PARTY_BIN" host bystander
manual="$PARTY_TMP/manual-pipe.out"
tmux -S "$(sock_of bystander)" pipe-pane -t bystander "cat >> '$manual'"
"$PARTY_BIN" log
"$PARTY_BIN" log --stop
tmux -S "$(sock_of bystander)" send-keys -t bystander 'echo marker-MANUAL' Enter
poll_for "$manual" marker-MANUAL
}
@test "close without a transcript stays silent about rescue" {
export HOME="$PARTY_TMP/home"
mkdir -p "$HOME"