Repository navigation
fix: reject missing local paths and speed up local checks - #81
Merged
Merged
Conversation
- local mode validates each checkout path is a readable directory before startup - typos like `diffx change` no longer start a server that never exits - ambiguous-input test isolates runtime/config/state and fails at a deadline instead of hanging
- each Playwright worker owns a fixture server behind a Vite preview of one shared build - browser specs run fully parallel at 33% of cores; slow full-render test marked slow - mise runs post-build suites concurrently; check:push runs Go tests once, with race - Go tests time out after 3m (5m with race) so hangs fail fast
A keep-alive client could leave an unused connection that http.Server.Shutdown waits on for 5s, flaking the active-stream shutdown test under load.
flexdinesh
marked this pull request as ready for review
October 21, 2026 06:40
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.
cmd/diffx/local.go(acquireLocalInput): local mode rejects a checkout path that is not an existing directory before serving. Since fix: start local server before collecting workspaces #76/feat: stream local collection and render available snapshots #79 moved collection after startup, a typo such asdiffx changestarted a foreground server that never exited, which hungTestCollectorOptionsRejectAmbiguousInputsBeforeStartupfor Go's 10m timeout (or passed by accident when a developer's diffx was running). The test now isolates runtime/config/state and runs each case under a 10s deadline;TestLocalInputRejectsMissingCheckoutPathBeforeStartupcovers missing, file and repeated paths.TestLocalInputDefaultsToCurrentDirectorynow creates its--pathfixture directories.fullyParallelat 33% of cores with no shared review state and no fixed port (DIFFX_TEST_PORTremoved). The 4000px full-render inline-comments test is markedtest.slow().mise.toml: suites aftercheck:ci(contracts, JS, release, Go) run concurrently;check:pushruns the Go suite once, with the race detector, instead of plain then race.TestRemoteRunShutdownClosesActiveEventStreamflaked under load (3/40 onorigin/mainwith-race): a keep-alive client could leave a spare, never-used connection thathttp.Server.Shutdownwaits on for 5s. The test client now disables keep-alives; 80/80 pass under load.pnpm devstill starts its own fixture viago run.mise run check:pushpassed in 3m56s (previously ~12m), with 88/88 browser tests in 2.9m, while another project's Playwright suite loaded the machine (load avg ~30-50). A run at lower load with warm caches took 96s.docs/system.mddocuments the path rule;docs/development.mddocuments per-worker browser servers, concurrent suites, race-only Go run in pre-push and Go timeouts.