Skip to content

ci(actions): reduce pull request queue fan-out - #401

Merged
seonghobae merged 1 commit into
mainfrom
codex/actions-queue-consolidation
Sep 4, 2026
Merged

ci(actions): reduce pull request queue fan-out#401
seonghobae merged 1 commit into
mainfrom
codex/actions-queue-consolidation

Conversation

@seonghobae

@seonghobae seonghobae commented Sep 4, 2026

Copy link
Copy Markdown
Contributor

변경 내용

  • PR CI concurrency 키를 workflow-repository-PR 단위로 고정해 같은 PR의 이전 실행만 취소합니다.
  • PR에서는 Office Python 3.14 한 개 job만 실행하고, protected main push에서는 3.11–3.14 호환성 검증을 모두 유지합니다.
  • release concurrency 키에도 workflow와 repository를 포함하되 cancel-in-progress: false를 유지합니다.
  • 기본 브랜치에 파일이 없는 로컬 ghost workflow 61개를 비활성화했습니다. GitHub 동적 Dependabot/CodeQL workflow는 유지했습니다.
  • 비활성 ghost가 남긴 Performance Evidence queued run 1개만 취소했습니다. release/build/deploy/publish 계열은 취소하지 않았습니다.

검증

Base: 720a87fd2155c532e6326dee767bb4b9e5e4d5fc
Head: 098771a999f4ff6e7d2bb541047bc4512039e2ec

  • actionlint .github/workflows/*.yml
  • corepack pnpm exec vitest run src/workflowExactHead.test.ts src/releaseWorkflowSyntax.test.ts src/releaseExactCheckout.test.ts — 13 passed
  • corepack pnpm typecheck
  • git diff --check

제품 코드는 변경하지 않았습니다. protected merge는 요청하지 않습니다.

Summary by CodeRabbit

  • 개선 사항

    • 저장소와 실행 대상별로 CI 및 릴리스 워크플로를 구분해, 서로 다른 실행이 불필요하게 영향을 주지 않도록 개선했습니다.
    • 풀 리퀘스트에서는 Python 3.14 검사를 우선 실행하고, 그 외 실행에서는 지원 버전 전체를 검증하도록 조정했습니다.
    • 릴리스 작업은 진행 중인 실행을 취소하지 않도록 유지했습니다.
  • 테스트

    • 워크플로 취소 정책과 Python 호환성 검증 범위를 확인하는 테스트를 추가했습니다.

Signed-off-by: Seongho Bae <me@seonghobae.me>
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Sep 4, 2026

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review Completed 2026-09-04T14:22:56.720171Z 098771a PR opened
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@coderabbitai

coderabbitai Bot commented Sep 4, 2026

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Team

Run ID: 807e9053-6f39-445e-8d7f-33d48595a67e

📥 Commits

Reviewing files that changed from the base of the PR and between 720a87f and 098771a.

📒 Files selected for processing (3)
  • .github/workflows/ci.yml
  • .github/workflows/release.yml
  • src/workflowExactHead.test.ts

Included review availability: Your plan provides up to 1 included review per hour; 0 remain after this review.


📝 Walkthrough

Walkthrough

CI와 릴리스 워크플로의 동시성 그룹 식별자를 저장소별로 구분합니다. Pull request에서는 Python 3.14만 테스트하고, 다른 이벤트에서는 Python 3.11~3.14를 테스트합니다. 관련 설정을 계약 테스트로 검증합니다.

Changes

워크플로 실행 정책

Layer / File(s) Summary
CI 실행 및 Python 매트릭스 정책
.github/workflows/ci.yml
CI 동시성 그룹에 github.repository를 추가합니다. Pull request 이벤트에서는 office 작업이 Python 3.14만 사용하고, 다른 이벤트에서는 Python 3.11~3.14를 사용합니다.
릴리스 실행 정책 및 계약 검증
.github/workflows/release.yml, src/workflowExactHead.test.ts
릴리스 동시성 그룹에 워크플로, 저장소, 태그 이름을 포함합니다. 레지스트리 게시 검증 실패 시 exit 1 동작을 유지합니다. CI와 릴리스의 동시성, 취소 정책, Python 매트릭스를 테스트합니다.

Estimated code review effort: 2 (Simple) | ~10 minutes

Merge Risk: ⚪ Minimal · up to 09877

This change scopes CI cancellation to the same repository and PR, reduces PR testing to Python 3.14, and preserves the full Python matrix for protected main pushes. Release runs remain non-cancelling and independently grouped; no current merge-blocking risk remains.

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed 제목은 PR 이벤트에서 Python 작업 수를 줄이고 GitHub Actions 대기열 분산을 완화하는 주요 변경 사항을 간결하게 설명합니다. 동시성 설정 변경도 제목의 범위와 관련됩니다.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 1…
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch codex/actions-queue-consolidation

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@seonghobae
seonghobae merged commit a40b948 into main Sep 4, 2026
8 of 18 checks passed
@seonghobae
seonghobae deleted the codex/actions-queue-consolidation branch September 4, 2026 14:20

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 098771a999

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread .github/workflows/ci.yml
fail-fast: false
matrix:
python-version: ["3.11", "3.12", "3.13", "3.14"]
python-version: ${{ github.event_name == 'pull_request' && fromJSON('["3.14"]') || fromJSON('["3.11", "3.12", "3.13", "3.14"]') }}

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Document the reduced pre-merge Python matrix

On pull requests this now runs Office verification only on Python 3.14, but the canonical verification guidance still says CI executes the complete 3.11–3.14 matrix (office/README.md:273-275) and that normal exact-head CI retains those gates (docs/print-output.md:46). Because the new test treats this PR/main split as a durable workflow contract, update the smallest affected canonical test-strategy or verification documentation to make clear that compatibility failures on 3.11–3.13 are detected only after merge.

AGENTS.md reference: AGENTS.md:L5-L9

Useful? React with 👍 / 👎.

Comment thread .github/workflows/ci.yml
fail-fast: false
matrix:
python-version: ["3.11", "3.12", "3.13", "3.14"]
python-version: ${{ github.event_name == 'pull_request' && fromJSON('["3.14"]') || fromJSON('["3.11", "3.12", "3.13", "3.14"]') }}

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Update the Office matrix contract test

With this expression in place, every Office job fails its own coverage run -m pytest: office/tests/test_python_support_contract.py:53-56 requires python-version to be followed directly by a literal YAML list, so it cannot match this ${{ ... }} value and fails at assert matrix_match is not None. Update that contract test to validate the event-dependent PR/main matrices before switching the workflow representation.

AGENTS.md reference: AGENTS.md:L5-L9

Useful? React with 👍 / 👎.

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.

1 participant