Skip to content

ci: bound full Python shards across concurrent runs - #6274

Draft
loopx-agent wants to merge 7 commits into
mainfrom
codex/ci-shard-admission-20261012
Draft

loopx-agent wants to merge 7 commits into
mainfrom
codex/ci-shard-admission-20261012

Conversation

@loopx-agent

@loopx-agent loopx-agent commented Oct 11, 2026 •

Copy link
Copy Markdown
Collaborator

Limit full Python test shards to four shared repository-wide lanes, one per matrix shard. Concurrent runs retain their pending shards with queue: max; the existing obsolete-head cancellation and required failure/coverage gates remain in place.

This reduces long-test occupancy for runs carrying the new workflow. Contributors may wait longer; this does not reserve capacity or guarantee release priority across the organization's hosted pool. Older workflow versions do not participate. Rollback removes only the job-level concurrency block.

Validation at base 38cb407edc39752d3ad6b4d414ca5c5255aba177, head 81c9550c556d7b89585cb49dfbcba26c9a78fca7:

  • 14 workflow contracts passed, including 25 real Bash result combinations and missing/empty coverage partitions. Parsed YAML differs only at test-shard.concurrency. Removing admission fails its invariant; the other eight selected gate tests pass.
  • Ruff, semantic vocabulary and diff checks passed. Native risk validation passed 4 direct checks, 9 catalog checks, 8 profile checks and the public boundary scan. Exact change-quality receipt: cqr_b71d69d58b1381178e28.
  • Current-main integration preserves the remote branch work and the merged Host ACK fixture. Seven matched macOS diagnostic cases are 3 passed/4 failed on both independently archived arms; all four full normalized failure signatures match. This attribution does not waive required Linux CI. Historical failures remain failures.
  • Live same-shard cross-run serialization, the four-running bound and added lane wait cost remain unverified. The earlier bounded manual run did not acquire its prerequisite runner, so it established stopping behavior only. The current main prerequisite is still waiting without jobs; no new manual rehearsal was dispatched.

The PR remains a draft pending live qualification and required CI. The future-facing pass found the existing matrix/concurrency/gate owner sufficient; no additional scheduler or refactor was needed.

中文:全量 Python 测试按四个 matrix 分片共用仓库级并发组,采用 queue: max 保留等待分片。保留同 PR 旧 head 取消、完整测试集合、四分片、双 worker、报告与 coverage 必需门槛。重叠运行会增加贡献者等待;该限制只缓解长分片占用,不预留组织 runner 或保证发布最高优先,旧版 workflow 不参与。回退时仅移除 job 级 concurrency 块。

当前精确 base/head 的 14 项契约、真实 Bash 负例、缺失/空 coverage、完整 YAML 差异、移除并发准入的独立反例、Ruff、语义与原生风险检查通过。合入最新 main 和既有远端工作,使用更新后的真实 Host ACK 夹具;七个本机诊断两臂均为 3 通过/4 失败,完整失败签名一致,不能豁免 Linux 必过 CI。跨 run 串行、最多四路运行与新增等待成本仍待真实环境验证;现有前置 run 尚未获得 job,因此保持草稿。既有 owner 足够,无需额外 scheduler 或重构。

Signed-off-by: LoopX Agent <337587101+loopx-agent@users.noreply.github.com>
Signed-off-by: LoopX Agent <337587101+loopx-agent@users.noreply.github.com>
@mergify

mergify Bot commented Oct 12, 2026

Copy link
Copy Markdown

This pull request has merge conflicts with main and cannot be merged
until they are resolved. Please rebase or merge the base branch, @loopx-agent.

Choose the remote for the base repository, not an out-of-date fork.
For a fork clone, first inspect git remote -v; upstream must point
to https://github.com/loopx-project/loopx.git. If it is absent, add it
with git remote add upstream https://github.com/loopx-project/loopx.git.
Then run:

git fetch upstream
git rebase upstream/main
# Resolve each conflict, git add the resolved files, then git rebase --continue.
git push --force-with-lease origin HEAD

For a same-repository clone whose origin points to
https://github.com/loopx-project/loopx.git, use origin instead of
upstream for fetch/rebase. If you prefer merging the base, use
git merge <base-remote>/main and push normally.

Keep the DCO Signed-off-by trailer on every commit when you rebase.
https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/working-with-forks/syncing-a-fork

@mergify mergify Bot added the needs-rebase Mergify: the pull request has merge conflicts with its base branch label Oct 12, 2026
loopx-agent and others added 3 commits October 12, 2026 13:26
Signed-off-by: LoopX Agent <337587101+loopx-agent@users.noreply.github.com>
Signed-off-by: song <liusongstep@gmail.com>
@mergify mergify Bot removed the needs-rebase Mergify: the pull request has merge conflicts with its base branch label Oct 12, 2026
…rsing

Signed-off-by: LoopX Agent <337587101+loopx-agent@users.noreply.github.com>
Signed-off-by: LoopX Agent <337587101+loopx-agent@users.noreply.github.com>

This branch has not been deployed

No deployments
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.

2 participants