test: stabilize timing-sensitive bats cases #151

Merged
barrettruth merged 1 commit from fix/test-bats-timing-races into main 2026-05-02 16:39:48 +00:00
Owner

Summary

  • pin direct new-pane fast-path geometry checks with layout disabled so async relayout hooks cannot mutate the pre-relayout shape
  • wait for the master-stack fingerprint to settle before asserting the next split after drag-resize
  • add a stable window-state wait helper for the remain-on-exit ownership case
  • record the targeted-only verification rule for Bats flake work in AGENTS.md

Verification

BATS_JOBS=1 direnv exec /home/barrett/dev/tmux-mosaic just test-one "new-pane fast paths: grid 2 -> 3 keeps the new pane in the bottom tail before relayout|drag-resize: master width survives next split|auto-apply managed: dead foreign panes with remain-on-exit stay suspended until removed"

Repeated the same targeted filter 20 consecutive times: 20/20 passed.

direnv exec /home/barrett/dev/tmux-mosaic shfmt -i 2 -d tests/helpers.bash tests/integration/new_pane_fast_paths.bats tests/integration/master_stack.bats tests/integration/ownership_matrix.bats
direnv exec /home/barrett/dev/tmux-mosaic shellcheck -x --source-path=SCRIPTDIR --source-path=SCRIPTDIR/scripts tests/helpers.bash
git diff --check

Full suite intentionally not run; this PR only stress-tests the named failing/flaking Bats cases.

## Summary - pin direct new-pane fast-path geometry checks with layout disabled so async relayout hooks cannot mutate the pre-relayout shape - wait for the master-stack fingerprint to settle before asserting the next split after drag-resize - add a stable window-state wait helper for the remain-on-exit ownership case - record the targeted-only verification rule for Bats flake work in AGENTS.md ## Verification ```sh BATS_JOBS=1 direnv exec /home/barrett/dev/tmux-mosaic just test-one "new-pane fast paths: grid 2 -> 3 keeps the new pane in the bottom tail before relayout|drag-resize: master width survives next split|auto-apply managed: dead foreign panes with remain-on-exit stay suspended until removed" ``` Repeated the same targeted filter 20 consecutive times: 20/20 passed. ```sh direnv exec /home/barrett/dev/tmux-mosaic shfmt -i 2 -d tests/helpers.bash tests/integration/new_pane_fast_paths.bats tests/integration/master_stack.bats tests/integration/ownership_matrix.bats direnv exec /home/barrett/dev/tmux-mosaic shellcheck -x --source-path=SCRIPTDIR --source-path=SCRIPTDIR/scripts tests/helpers.bash git diff --check ``` Full suite intentionally not run; this PR only stress-tests the named failing/flaking Bats cases.
test: stabilize timing-sensitive bats cases
All checks were successful
Request Review / request_review (pull_request_target) Successful in 5s
quality / Format (pull_request) Successful in 9s
quality / Lint (pull_request) Successful in 11s
Release Metadata / release_metadata (pull_request_target) Successful in 4s
quality / Test (pull_request) Successful in 2m32s
49c0c7ebbe
barrettruth deleted branch fix/test-bats-timing-races 2026-05-02 16:39:48 +00:00
Sign in to join this conversation.
No description provided.