Repository navigation
test(chat): pause the page clock at a time the page has not passed - #767
Merged
Merged
Conversation
pauseAt(new Date()) used a time taken in Node, which can be behind the page clock that clock.install() starts, and Playwright then throws 'Cannot fast-forward to the past'. Pause at the page's own time plus a margin instead. Fixes #766
devswha
added a commit
that referenced
this pull request
Oct 11, 2026
## Change Release 0.4.7, from main at 80ca9bb (47 PRs since v0.4.6). - `package.json` and `herdr-plugin.toml`: 0.4.7. - CHANGELOG: `[Unreleased]` becomes `[0.4.7] - 2026-10-12`, with the compare links. - #513's entry moves out of the 0.4.0 section, where its branch's merge left it, and gets its credit; it says the pace is a setting, off by default (#834). - A Maintenance section covers the PRs that had no entry: #743, #756, #767, #795, #805, #810, #813, #821, #826, #831. - The note under the Hermes entry that asked for a runtime bump at release now says what a remote PC needs. - `release-summaries.json`: 0.4.7 in en/ko/ja/zh/tr (6 new, 6 improved, 5 fixed). The Turkish lines are not checked by a native speaker. - `REMOTE_BUNDLE_VERSION` 25 -> 26. Since v0.4.5's runtime the bridge gained Hermes transcripts (#604), conversation pushes (#689) and Grok/Antigravity activity (#816), so `remote-v26` is published before the app release. Not in this release: #606. ## Validation - `bun scripts/release-notes.ts 0.4.7` renders the summaries and the full changelog (235 lines). - `bun run typecheck` and `bun run build`: pass. - `TMPDIR=/tmp bun run test:unit`: one failure, `server/voice.test.ts` ("audio.webm" vs "clip.webm"), which fails the same way on unmodified `main` on this Mac (Bun 1.4.0); CI runs Bun 1.4.2. - Every PR merged since v0.4.6 was checked against the changelog section: all 47 are linked. ## Release After this merges and its CI on `main` passes: push `remote-v26`, wait for its release, then run the Release workflow with `0.4.7`.
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.
Fixes #766
scripts/chat-size-regression.tscalledpage.clock.install()and thenpauseAt(new Date())with a time taken in Node. The installed clock follows the page's own real time, which can already be past that Node time, and Playwright then throwspauseAt: Cannot fast-forward to the past. All four sites (the default keep-pane check, the phone check and two places in the "inactive attach lifecycle" scenarios) now go throughpauseClock(page). It pauses at the page'sDate.now()plus a 1 s margin for the round trip. No other script inscripts/usespauseAt.Test-only change, so no CHANGELOG entry.
Verification
CHECK_MAX_RUNS=8 bun run check run --build /tmp/l9-loop.sh 16 …(runsbun scripts/chat-size-regression.ts16 times on the check's isolated herdr): 12 pass / 4 fail. Every failure waspauseAt: Error: Cannot fast-forward to the past, in toggles, resume, writes and once outside the lifecycle loop.bun run typecheck: pass.