fix(ci): let locale finalizers queue independently#68
Merged
Conversation
|
Preview deployment for your docs. Learn more about Mintlify Previews.
💡 Tip: Enable Workflows to automatically generate PRs for you. |
|
Preview deployment for your docs. Learn more about Mintlify Previews.
💡 Tip: Enable Workflows to automatically generate PRs for you. |
a888843 to
450757e
Compare
450757e to
1ca951e
Compare
Member
Author
|
Land-ready proof for this finalizer/concurrent deploy fix:
This fixes the observed |
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.
What Problem This Solves
Full translation runs still cancel locale finalizers when several locale artifacts finish close together. GitHub Actions concurrency groups allow only one running and one pending job per group, so the shared
docs-i18n-finalizegroup cancels older pending per-locale finalizers before they can commit their artifacts.Observed on https://github.com/openclaw/docs/actions/runs/28285982968:
Full batch 1 (zh-TW, zh-tw) / Finalize zh-TW artifactwas cancelled withCanceling since a higher priority waiting request for docs-i18n-finalize existswhile other locale finalizers continued.Why This Change Was Made
The per-locale finalizer no longer uses the shared Actions concurrency group. Its commit script already handles the real contention point by fetching latest
main, rebasing, checking source metadata, retrying push conflicts, and skipping stale artifacts safely.Because parallel finalizers can now dispatch locale R2 deploys concurrently, R2 dispatches also get a unique
request_idin the workflow run title. The waiter resolves the exact R2 run by that request id instead of treating concurrent workflow_dispatch runs as ambiguous.Scoped R2 deploys now fail when their content goes stale before upload, and the dispatch waiter retries them against latest
main. That keeps locale commits from silently skipping their scoped publish when another locale commit lands during build.User Impact
Full docs translation runs can publish all completed locale artifacts instead of dropping older pending finalizers or silently skipping scoped uploads when multiple locales finish around the same time.
Evidence
python3 .github/scripts/i18n/tests/test_i18n_scripts.py(Ran 42 tests,OK)git diff --check