Skip to content

bugfix(ci): derive.yml concurrency cancels sibling dispatches (closes #364) - #365

Merged
gerchowl merged 1 commit into
devfrom
bugfix/364-derive-concurrency-cancels-siblings
May 8, 2026
Merged

bugfix(ci): derive.yml concurrency cancels sibling dispatches (closes #364)#365
gerchowl merged 1 commit into
devfrom
bugfix/364-derive-concurrency-cancels-siblings

Conversation

@gerchowl

@gerchowl gerchowl commented May 8, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Fix derive.yml concurrency group: include `kind` / `source-tier` / `target-tier` so distinct-purpose dispatches don't displace each other's pending slot.
  • Closes bugfix(ci): derive.yml concurrency cancels sibling resize/ktx2 dispatches #364 — repro hit during the `v2026.04.99-tst-full` orchestration when three resize dispatches were fired in quick succession; the middle one (`25530375206`) cancelled 4s after creation with no jobs ever starting.

Test plan

  • CI green
  • Live verification: re-dispatch resize 1k→256 against `gerchowl/mat-vis-tst` after merge; previously-queued runs (`25530374358`, `25530376084`) are unaffected (they run under the legacy group); the new dispatch runs concurrently under the new group key
  • Two ktx2 dispatches (1k + 512) afterward run in parallel

…loses #364)

The legacy group ``derive-{repo}-budget`` covered ALL derive dispatches
against a repo. Combined with GHA's "at most one pending per group"
rule under ``cancel-in-progress: false``, firing three resize
dispatches in quick succession (1k→512, 1k→256, 1k→128) cancels the
middle one: the third displaces the second's pending slot before it
can start.

Hit during the v2026.04.99-tst-full chain — the 256 resize cancelled
4s after dispatch with no jobs ever starting (run 25530375206). Same
hazard would bite ktx2-1k vs ktx2-512 dispatched together.

Fix: include kind/source-tier/target-tier in the concurrency group
key. Distinct-purpose dispatches now run in parallel; same-purpose
double-dispatch still serializes because that case shares the key.
@gerchowl
gerchowl enabled auto-merge (squash) May 8, 2026 06:32
@gerchowl
gerchowl merged commit b043f2f into dev May 8, 2026
4 checks passed
gerchowl added a commit that referenced this pull request May 15, 2026
…loses #364) (#365)

The legacy group ``derive-{repo}-budget`` covered ALL derive dispatches
against a repo. Combined with GHA's "at most one pending per group"
rule under ``cancel-in-progress: false``, firing three resize
dispatches in quick succession (1k→512, 1k→256, 1k→128) cancels the
middle one: the third displaces the second's pending slot before it
can start.

Hit during the v2026.04.99-tst-full chain — the 256 resize cancelled
4s after dispatch with no jobs ever starting (run 25530375206). Same
hazard would bite ktx2-1k vs ktx2-512 dispatched together.

Fix: include kind/source-tier/target-tier in the concurrency group
key. Distinct-purpose dispatches now run in parallel; same-purpose
double-dispatch still serializes because that case shares the key.
@gerchowl
gerchowl deleted the bugfix/364-derive-concurrency-cancels-siblings branch July 1, 2026 06:54
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.

bugfix(ci): derive.yml concurrency cancels sibling resize/ktx2 dispatches

1 participant