Tracking a known-false comment merged with LeanerCloud/cloud-commitments-cli#1816, so it is not forgotten. Comment-only; no behavioural defect.
What is wrong
.github/workflows/database-migration.yml:252-255 currently reads:
# - GitHub keeps one pending entry per group, so a queued migration can be
# evicted by a later dispatch. Unlike rollback.yml, the `summary` job
# below does not exit 1 on a non-success result, so an evicted migration
# leaves the run green; read the per-cloud results it prints.
The "leaves the run green" clause is false. This is job-level concurrency, so an evicted queued job's result is cancelled, and a workflow run containing a cancelled job reports a run conclusion of cancelled, not success.
Established empirically during the review of LeanerCloud/cloud-commitments-cli#1816, not from intuition: across roughly 700 GitHub Actions runs in five repositories, a cancelled job never once coexisted with a success run conclusion. In 109 runs matching this exact shape (at least one success job, at least one cancelled job, and an if: always() job that still ran), the run conclusion was cancelled 109 times and success zero times.
The rest of the sentence is accurate: summary genuinely is if: always() and never exits non-zero, and eviction of a queued dispatch is real.
Why it matters
The claim is wrong in the conservative direction, which is why it did not block the merge: it teaches an operator to distrust a green run that is actually trustworthy. But it is a stated justification that is false, sitting next to a guard whose correctness a future reader will judge from exactly this paragraph.
Second, smaller issue in the same block
The comment block runs to roughly 40 lines for 9 lines of config and largely duplicates the LeanerCloud/cloud-commitments-cli#1816 PR description. Rationale belongs in the PR, not the source. Worth trimming to what a reader cannot deduce from the code:
- why the group is keyed on cloud plus environment and deliberately not the
*-tfstate-* groups (these jobs take no state lock; the resource protected is the database)
- why
cancel-in-progress: false (cancelling mid-migrate leaves schema_migrations dirty)
- why the
|| 'unset' sentinel exists (workflow_call passes environment as an unenforced type: string)
Fix
A corrected and trimmed version is already written and verified (comment-only diff, no group value changed). It was deliberately not pushed to LeanerCloud/cloud-commitments-cli#1816: CodeRabbit's review quota on this repo is roughly one review per hour shared across all open PRs, and at the time the queue held a privilege-escalation boundary fix (LeanerCloud/cloud-commitments-cli#1818) that needed the slot more than a comment edit did.
Good candidate to fold into the #114 fix, which touches this same workflow file, rather than spending a separate review cycle on a comment.
Verification bar
git diff must show comment lines only. Re-enumerate every job and its resolved concurrency group before and after and confirm no group value changed.
Tracking a known-false comment merged with LeanerCloud/cloud-commitments-cli#1816, so it is not forgotten. Comment-only; no behavioural defect.
What is wrong
.github/workflows/database-migration.yml:252-255currently reads:The "leaves the run green" clause is false. This is job-level concurrency, so an evicted queued job's result is
cancelled, and a workflow run containing a cancelled job reports a run conclusion ofcancelled, notsuccess.Established empirically during the review of LeanerCloud/cloud-commitments-cli#1816, not from intuition: across roughly 700 GitHub Actions runs in five repositories, a cancelled job never once coexisted with a
successrun conclusion. In 109 runs matching this exact shape (at least onesuccessjob, at least onecancelledjob, and anif: always()job that still ran), the run conclusion wascancelled109 times andsuccesszero times.The rest of the sentence is accurate:
summarygenuinely isif: always()and never exits non-zero, and eviction of a queued dispatch is real.Why it matters
The claim is wrong in the conservative direction, which is why it did not block the merge: it teaches an operator to distrust a green run that is actually trustworthy. But it is a stated justification that is false, sitting next to a guard whose correctness a future reader will judge from exactly this paragraph.
Second, smaller issue in the same block
The comment block runs to roughly 40 lines for 9 lines of config and largely duplicates the LeanerCloud/cloud-commitments-cli#1816 PR description. Rationale belongs in the PR, not the source. Worth trimming to what a reader cannot deduce from the code:
*-tfstate-*groups (these jobs take no state lock; the resource protected is the database)cancel-in-progress: false(cancelling mid-migrateleavesschema_migrationsdirty)|| 'unset'sentinel exists (workflow_callpassesenvironmentas an unenforcedtype: string)Fix
A corrected and trimmed version is already written and verified (comment-only diff, no group value changed). It was deliberately not pushed to LeanerCloud/cloud-commitments-cli#1816: CodeRabbit's review quota on this repo is roughly one review per hour shared across all open PRs, and at the time the queue held a privilege-escalation boundary fix (LeanerCloud/cloud-commitments-cli#1818) that needed the slot more than a comment edit did.
Good candidate to fold into the #114 fix, which touches this same workflow file, rather than spending a separate review cycle on a comment.
Verification bar
git diffmust show comment lines only. Re-enumerate every job and its resolved concurrency group before and after and confirm no group value changed.