Skip to content

test: make two BirdsBirdBirds tests pass on macOS - #21

Merged
theycallmeswift merged 1 commit into
mainfrom
fix/birdsbirdbirds-macos-tests
Oct 16, 2026
Merged

theycallmeswift merged 1 commit into
mainfrom
fix/birdsbirdbirds-macos-tests

Conversation

@theycallmeswift

@theycallmeswift theycallmeswift commented Oct 16, 2026 •

Copy link
Copy Markdown
Contributor

Two BirdsBirdBirds tests fail on macOS, and this makes them pass without changing the package. The 413 test now sends only the headers, because the server refuses from Content-Length and a client still writing the body can get EPIPE first. Watcher tests now repeat their first save until it is reported, because fs.watch on macOS can miss a change made just after it starts. Closes #20.

Decide

Nothing. Whether the server should let a client read its 413 before dropping the connection is in #22.

Ready gate

Step Evidence
Tests and lint npm run verify: ok for all three packages. npm run lint: 0 issues in 15 files. BirdsBirdBirds tests: 91 of 91 in five runs in a row. Full npm test on macOS: 191 of 192; the failure is covered under Skipped tests. ✅
Red run On main, the 413 test fails on every macOS run with write EPIPE. Watcher tests on main under background file churn failed in three of eight runs, in three different tests. On this branch, five runs under the same churn pass 8 of 8 each. ✅
Sibling sweep Searched for watcher tests that wait on the first save after startWatching. The appears-once, redrawn, burst, and page-server tests now use saveUntilReported. The complete-PNG test writes its PNG after two quiet waits, and the negative tests can't fail from a missed event, so they are unchanged. ✅
Docs and specs None: tests only. ✅
Standalone run No package changed. ✅
Editorial pass Reread against docs/style/; the two new helpers each document why they exist. ✅
Skipped tests None skipped. On macOS the Mad Libs install test fails with "Missing: package@ from lock file" because the OS temp directory is under the /var symlink. #19 fixes that. CI runs on Linux. ✅
Secrets, permissions Not touched. ✅

View with [code]smith Autofix with [code]smith
Need help on this PR? Tag @codesmith-bot with what you need.

The 413 test now sends only the headers, since the server refuses from
Content-Length and a client still writing the body can get EPIPE first.
Watcher tests repeat their first save until it is reported, since
fs.watch on macOS can miss a change made just after it starts.

Closes #20
@theycallmeswift
theycallmeswift marked this pull request as ready for review October 16, 2026 13:19
@theycallmeswift
theycallmeswift merged commit 20c1a40 into main Oct 16, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

test: two BirdsBirdBirds tests fail on macOS (413 EPIPE, watcher timeout)

1 participant