fix(ci): sync stale strix.yml concurrency-format assertion with PR #1779 - #1788
Merged
Merged
Conversation
PR #1779 changed strix.yml's concurrency group.format() expression from the 2-argument form to the 3-argument form format('{0}-{1}-{2}', ...) to restore PR-scoped concurrency (fixing a queue-saturation chicken-egg problem) while keeping repository+event-class isolation. The bash contract test scripts/ci/test_strix_quick_gate.sh was never updated to match, so two assertions in assert_strix_workflow_pr_trigger_hardened() kept checking for the old 2-argument format('{0}-{1}', ...) literal and now fail on every PR regardless of that PR's own diff. The parallel Python contract in tests/test_required_workflow_queue_contract.py was already correctly updated for the 3-argument form at the time of PR #1779 -- only the bash side drifted, the same class of bug PR #1750 fixes for a stale cron assertion in this same file. Updated both stale assertions to the current 3-argument format('{0}-{1}-{2}', ...) literal, preserving their semantic intent and messages unchanged. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01BV96rXhqoR3tYZ9AeAVur4
|
Caution Review failedThe pull request is closed. ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Team Run ID: 📒 Files selected for processing (1)
📝 WalkthroughWalkthroughChangesStrix 빠른 게이트 검증
Estimated code review effort: 1 (간단) | ~5분 Suggested reviewers: ✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
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.
Summary
scripts/ci/test_strix_quick_gate.shonmainfails a required check (exact-head-path-policy) on every PR, regardless of that PR's own diff, with:Root cause
#1779 ("
[QUEUE_SATURATION_CHICKEN_EGG]restore PR-scoped concurrency for strix.yml") deliberately changed.github/workflows/strix.yml's concurrencygroup:expression from the 2-argumentformat('{0}-{1}', github.event_name, github.event.client_payload.target_repository || ...)to the 3-argumentformat('{0}-{1}-{2}', github.event_name, github.event.client_payload.target_repository || ..., github.event.pull_request.number || ...), adding the PR number back into the group key to restore PR-scoped concurrency (fixing a queue-saturation chicken-egg problem) while keeping repository+event-class isolation.The parallel Python contract in
tests/test_required_workflow_queue_contract.py(assertblock around thestrix:job'sconcurrency_contract, lines ~387-396) was already correctly updated to expect the 3-argument form at the time #1779 merged. Only the bash-side contract inscripts/ci/test_strix_quick_gate.sh'sassert_strix_workflow_pr_trigger_hardened()was left asserting the old 2-argument literal — the same class of defect PR #1750 fixes for a stalecron: "*/30 * * * *"assertion in this same file (both are "contract test not updated alongside an intentional, already-merged workflow change").This is a genuine, reproducible defect on protected
mainitself — confirmed by running the script directly againstmainatff332ea88f(the commit immediately preceding this branch) before making any change: it failed with the two messages above (plus the pre-existing, unrelated cron failure from #1630 that #1750 already addresses).Fix
Updated the two stale assertions in
assert_strix_workflow_pr_trigger_hardened()from the 2-argumentformat('{0}-{1}', ...)literal to the current 3-argumentformat('{0}-{1}-{2}', ...)literal, preserving each assertion's semantic intent and human-readable message unchanged. No other lines touched.Developer experience
bash scripts/ci/test_strix_quick_gate.sh(withSTRIX_TEST_PROCESS_TIMEOUT_SECONDS=3 STRIX_TEST_FAKE_SLEEP_SECONDS=5, matching CI):mainatff332ea88f):test_strix_quick_gate: 3 failure(s)— the two concurrency-format assertions above, plus the pre-existingcron: "*/30 * * * *"failure from fix(scheduler): bound organization sweep pressure under Actions saturation #1630 (unrelated, already fixed in open draft PR fix(ci): update test_strix_quick_gate.sh's stale cron assertion from #1630 #1750, intentionally left untouched here).main):test_strix_quick_gate: 1 failure(s)— only the same pre-existing, out-of-scope cron failure remains. Both concurrency-format assertions now pass.coverage run -m pytest tests -q→2681 passed, 1 skipped, 21 subtests passed.coverage report --show-missing→ 100% onscripts/ci/(fail_under = 100).interrogate→RESULT: PASSED (minimum: 100.0%, actual: 100.0%).mainis the evidence the fix itself works.scripts/ci/test_strix_quick_gate.sh), confirmed against currentmainafter rebase.User experience
exact-head-path-policystops failing organization-wide PRs on these two assertions once this reaches protectedmain; any PR whose branch has already synced past this point (or syncs after) picks it up automatically. No workflow behavior change —strix.yml's actual concurrency grouping is untouched, only the test that verifies it is corrected to match.Related
cronassertion (from fix(scheduler): bound organization sweep pressure under Actions saturation #1630); not touched here.tests/test_required_workflow_queue_contract.py— the parallel Python-side contract, already correct, used here to confirm the expected current literal.🤖 Generated with Claude Code
https://claude.ai/code/session_01BV96rXhqoR3tYZ9AeAVur4
Generated by Claude Code
Summary by CodeRabbit