Skip to content

Build Python distributions in CI - #89

Merged
j0sh merged 7 commits into
mainfrom
codex/fleet-ci-freeze
Nov 5, 2026
Merged

j0sh merged 7 commits into
mainfrom
codex/fleet-ci-freeze

Conversation

@emranemran

@emranemran emranemran commented Nov 5, 2026 •

Copy link
Copy Markdown
Contributor

Build the wheel and source distribution in the existing Tests workflow, without publishing them. Ruff and pytest remain unchanged.

Fork PRs may run these read-only checks after maintainer approval. The repository requires workflow approval for all external contributors; fork runs receive no repository secrets. Required checks are ruff, pytest, and package directly.

No aggregate gates, merge-queue triggers, reusable-workflow additions, concurrency changes, or new YAML files. Existing release publication stays on tag/manual workflows. Managed CodeQL is restored with its original configuration and already excludes fork PRs.

Validation: actionlint and event/source/permission checks passed. GitHub CI passed on bb58cda; all final PR checks are green.

@emranemran
emranemran marked this pull request as ready for review November 5, 2026 01:49
@emranemran
emranemran requested a review from j0sh as a code owner November 5, 2026 01:49
Copilot AI balanced review requested due to automatic review settings November 5, 2026 01:49

Copilot AI 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.

🟢 Approval recommended

No active review issues were identified for the CI gating and disabled-by-default fleet notification changes.

No open issues 🎉

What changed in this PR

Strengthens SDK CI with a failure-sensitive gate and package builds, and adds disabled-by-default notifications to the central fleet builder without authorizing deployment.

Changes:

  • Adds merge-group and reusable CI support, job timeouts, package builds without publishing, and a gate requiring Ruff, pytest, and packaging to succeed.
  • Adds a notification workflow that validates successful main-branch push runs before creating a repository-scoped GitHub App token.
  • Documents the source contract, deployment freeze, and post-freeze activation requirements.
File Description
.github/​workflows/​tests.yml Adds CI triggers, concurrency controls, package builds, and the aggregate gate.
.github/​workflows/​fleet-ci-notify.yml Adds gated, validated notifications to the central builder.
.github/​FLEET-CI.md Documents the source contract, freeze restrictions, and activation steps.
.github/​fleet-ci.json Defines trusted source workflow and receiver metadata.

Review effort: Balanced

Copilot AI balanced review requested due to automatic review settings November 5, 2026 06:42

Copilot AI 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.

🟢 Approval recommended

No active review issues are recorded for the CI gating and disabled builder-notification changes.

No open issues 🎉

Review effort: Balanced

Copilot AI balanced review requested due to automatic review settings November 5, 2026 18:30
@emranemran emranemran changed the title Gate SDK tests and package builds with disabled fleet notifications Require SDK tests and Python package builds in CI Nov 5, 2026

Copilot AI 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.

🟢 Approval recommended

No active review issues remain for the SDK CI workflow changes.

No open issues 🎉

Review effort: Balanced

Copilot AI balanced review requested due to automatic review settings November 5, 2026 20:32
@j0sh j0sh changed the title Require SDK tests and Python package builds in CI Build Python distributions and skip fork code execution Nov 5, 2026
@j0sh

j0sh commented Nov 5, 2026 •

Copy link
Copy Markdown
Collaborator

Final policy: fork CI is allowed after maintainer approval, with read-only GitHub tokens and no repository secrets. The origin guards have been removed, so Ruff, pytest, and package validation actually run for approved fork contributions.

The final code change adds only the wheel/source-distribution build. Required checks are Ruff, pytest, and package directly. Aggregate gates, merge-queue preparation, reusable-workflow additions, and concurrency changes remain out. No new YAML files are added.

Managed CodeQL is restored and already excludes fork PRs. The previous custom CodeQL workflow was unnecessary and has been removed. Copilot's fork-validation concern is addressed; its gate/merge-queue suggestions refer to the superseded scope.

Workflow lint and event/source/permission checks passed. The maintainer has authorized merging after the final GitHub checks are green.

Copilot AI 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.

🟡 Changes recommended

Repository-origin guards let fork pull requests bypass required validation, while the missing ci-gate job and merge_group trigger can block branch protection and merge-queue progress.

3 open issues

Review effort: Balanced

Comment thread .github/workflows/tests.yml Resolved
Comment thread .github/workflows/tests.yml Resolved
Comment thread .github/workflows/tests.yml Resolved
Copilot AI balanced review requested due to automatic review settings November 5, 2026 21:24

Copilot AI 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.

🟡 Changes recommended

Managed CodeQL is disabled without a replacement workflow, leaving the intended security scans unconfigured.

4 open issues

Review effort: Balanced

Comment thread .github/workflows/tests.yml Resolved
Copilot AI balanced review requested due to automatic review settings November 5, 2026 21:40
@j0sh j0sh changed the title Build Python distributions and skip fork code execution Build Python distributions in CI Nov 5, 2026

Copilot AI 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.

🟡 Changes recommended

The workflow lacks same-repository job guards for package, ruff, and pytest, allowing permitted fork PR runs to check out and execute fork code instead of skipping it before checkout.

5 open issues

Review effort: Balanced

Comment thread .github/workflows/tests.yml Resolved

@j0sh j0sh left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Reviewed the final 11-line package-build addition at bb58cda. It builds wheel/source distributions without publishing, preserves contents: read, and adds no secrets, environments, aggregate gates, merge-queue hooks, or new workflow files. Fork CI remains subject to the repository's all-external-contributors approval policy. Existing publication is limited to tag/manual workflows. All six GitHub checks pass. Approved under the maintainer's instruction to merge this final scope once green.

@j0sh
j0sh merged commit 9511f08 into main Nov 5, 2026
7 checks passed
@j0sh
j0sh deleted the codex/fleet-ci-freeze branch November 5, 2026 21:46
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.

3 participants