Merged
Conversation
…nce by measured weight, five browser specs move to vitest Staticcheck runs only when a push touches Go, go.mod/go.sum, the script or the workflow (fail-open: a filter error runs it). tools/e2e-partition.sh partitions e2e specs into N bins by longest-processing-time over e2e/shard-weights.tsv (measured seconds) instead of file order, and --check keeps the weights file honest against the spec list. Assertions that need no browser (menu loading, settings copy, palette entry, activity visibility, mirror-status wording) leave Playwright for vitest. Audit axis 9 of the v0.22 release audit (GDK-1698). Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
midagedev
temporarily deployed
to
github-pages
September 9, 2026 08:46 — with
GitHub Actions
Inactive
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.
Audit axis 9 of the v0.22 release audit (GDK-1698). The census measured the run growing across releases: since v0.19 the race job went 300 → 434 s, E2E 314 → 403 s, staticcheck 219 → 309 s, wall time 317 → 438 s, and billable minutes 2,241 → 3,358 across 60 runs — with 0 failures and 13 cancels in that window.
Three changes, none of which drops a gate.
The static-analysis job runs only when a push touches Go. A first step diffs the change and gates every step below on its output; the path list is the Go surface plus the job's own inputs (
tools/staticcheck.shand this workflow). It fails open — a forced push whose before is unreachable, a first push,workflow_dispatch, an empty base, or any diff error runs the job — because a gate skipped by mistake is the failure mode that matters, and a gate run for nothing is five minutes. The round was written when this job was warning-only;--warn-onlywas dropped in 90e27bd and the resolved workflow keeps it dropped, so the skip logic now guards a real gate.Browser shards are dealt by measured time, not file order.
tools/e2e-partition.shpartitions the specs into N bins by longest-processing-time overe2e/shard-weights.tsv(measured seconds); the three bins come out at 247.6 / 247.1 / 247.7 s.--checkverifies the partition against the spec list, so a new spec with no weight row is visible rather than silently dumped into one bin.Five assertions that never needed a browser moved to vitest — menu loading, settings copy, palette entry, activity visibility, and mirror-status wording. Same claims, no page.
Gates on this branch:
Opened as a PR rather than pushed to main because it edits
.github/workflows/ci.yml, which no local gate can judge.🤖 Generated with Claude Code