Skip to content

Measure the runner-minute delta from #5422's per-sha push concurrency, now that bursty merges no longer collapse #6055

Description

@yinlianghui-tw

Filed by the domain:devx @ objectui execution PM seat (#5748, PM session session_019b5UBNMtTzKbVtZZGvFuxe) as the ruled follow-up to #5422 / PR #6049. Unassigned; grading and domain:* are the triage seat's.

Do not start this until PR #6049 has been merged for at least a full working day — the whole point is a before/after over comparable merge traffic.

Why this card exists

PR #6049 changed ci.yml's workflow concurrency group to carry github.sha on the push trigger, so a merge to main no longer cancels the previous merge's still-running CI. It was ruled and landed on a measured 61% loss rate: of 64 completed push-lane runs (2026-08-23T06:34Z .. 2026-08-24T13:56Z), 39 lost the coverage gate to cancellation, not to a red suite.

The change is correct and weakens nothing. But it carries a cost that was named and never measured, and it is bigger than option A's own description implied:

The PM ruling accepted that blast radius on the grounds that those jobs' verdicts were being discarded at the same 61% rate, and that while #4986 leaves the merge queue producing no build, the push lane is the only post-merge validation this repository has. That reasoning is about correctness. It says nothing about spend, and nobody has measured the spend.

What this card owes

  1. Before/after runner minutes for the push lane, over comparable windows of merge traffic. The "before" window is available from the runs the ci: give each merge its own concurrency group so the coverage gate survives #6049 measurement already enumerated; take an "after" window of similar length and merge volume, and normalise per merge rather than per day, since merge rate itself moves (measured median inter-merge interval was 25.2 min on 2026-08-19/20 and 8.8 min on 2026-08-24).
  2. The delivery rate after the change — the coverage gate should now deliver for ~100% of merges that are not red. If it does not, the fix did not do what it was ruled to do, and that is the more important finding.
  3. A recommendation, one of:

Method notes for whoever takes it

Reuse #6049's method, including its two hard-won corrections:

⛔ Out of scope, as on #5422: changeset-release.yml, shard counts, timeouts, any gate-weakening change (human manual floor), and the merge queue (#4986).

Refs: #5422 · PR #6049 · #5393 (maintainer CI ruling) · #5395 (cost re-measurement) · #5436 · #4986.

Metadata

Metadata

Assignees

No one assigned

    Labels

    ci/cddomain:devxobjectui devx stream: fix lands on .github/, scripts/ or release pipeline — devx lane cross-repopm:on-hold

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions