Commit 64554dd
outrider.yml: key the concurrency group per dispatch target (#118)
`group: outrider` with cancel-in-progress:false permits exactly one *pending*
run, and when a third dispatch arrives GitHub cancels the one already waiting —
not the newcomer — with no error and no annotation. Firing four targets at one
repo produced one run, one survivor, and two cancellations that read as CI
flakes rather than lost work (field notes on remyxai/remyxai-cli#49).
Keyed per target instead: distinct papers/branches run in parallel (they touch
different branches), a genuine duplicate of the same target still queues behind
its predecessor, and anything unpinned falls back to run_id so a dispatch is
never cancelled unless it's provably a duplicate. Index syntax because a bad
workflow-level expression invalidates the whole workflow.
outrider-daily.yml and outrider-weekly-refine.yml keep their static groups
deliberately — every drafter run commits to the same accumulated intel branch,
so two in flight would race on the push. Serializing is protective there.
This file is both this repo's own runner and the template customer installs
fetch (`remyxai outrider setup-local --two-tier`, and the engine's refiner
fetch), so the fix reaches new installs only once the `v1` tag is re-pointed.
Engine-side twin: remyxai/remyx#558 (same keying in render_workflow_yaml).
Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>1 parent bad0a20 commit 64554dd
1 file changed
Lines changed: 14 additions & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
49 | 49 | | |
50 | 50 | | |
51 | 51 | | |
52 | | - | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
53 | 66 | | |
54 | 67 | | |
55 | 68 | | |
| |||
0 commit comments