Repository navigation
ci: real paths for release-ci, putitoutthere-config-check and changelog-check - #902
thekevinbot wants to merge 3 commits into
Conversation
704d00a to
319ae97
Compare
Before merging: this stack is not GitHub-native, so a single merge here will not land itThe plan for this epic assumed pushing to a stack branch triggers GitHub's cascading rebase, and that merging mid-stack lands every layer beneath. Neither is happening on these PRs — they are ordinary base-chained PRs, not a registered stack. Two consequences. 1. The layers were out of sync, and are now reconciledAfter the path fixes were pushed to #899 / #900, nothing above them moved. Measured: So a merge at that point would have landed the release-ci / changelog-check changes while silently dropping the python and ts path fixes. The 29 branches from 2.
|
…og-check The last three placeholders, restored with real globs. Placeholder count is now zero: every PR trigger disabled by the baseline layer is re-enabled. release-precheck.yml becomes release-ci.yml. Its paths are the union of every [[package]] globs entry in putitoutthere.toml plus the config itself; the plan job change-detects against those same globs, so per-package subdivision happens inside the run (a python-only PR plans only dirsql-py). putitoutthere build.yml exposes no package filter and the release cascade is cross-package by design, so this stays one workflow rather than splitting per package. Fragment and attestation dirs are excluded: they ship in no artifact. The plugin's README stays in scope -- hatchling embeds it as the PyPI long-description, so it is a build input -- and the plugin is named explicitly rather than plugins/*. release-config-check.yml becomes putitoutthere-config-check.yml, named for the tool whose config it validates, triggering only on putitoutthere.toml. changelog-check.yml keeps its name and gains packages/** paths. Not decomposed per package: the gate already reasons per package internally (changed_packages / code_touched), runs once, and reports one check. plugins/ is deliberately absent -- the gate's matchers are hardcoded to packages/<pkg>/, so it cannot see plugin fragments and running it on a plugin change is a vacuous pass; plugin changelog enforcement is a gate gap tracked in its own issue. skip-changelog: CI configuration only, no packages/** change Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01GECJQGPKgycnh4hrhzrDYP
… base Rust fragments stop shipping in the crate (Cargo.toml exclude, landing separately), so they cannot alter release-ci's verdict. changelog-check's gate is diff-scoped via base.sha, so the branches filter only hid it from stacked PRs. skip-changelog: CI configuration only
…heck.yml on edits to their own files The pull_request self-path was omitted while this stack was being probed, so definition layers reported zero checks and the probe PRs measured cleanly. The probes are read and closed, and the YAML layers were always separate PRs from them, so the suppression has no remaining purpose -- it only leaves CI-config-only PRs with no checks at all, which merge vacuously green under the post-#881 Mergify gate. skip-changelog: CI configuration only
319ae97 to
bfc6132
Compare
Definition layer D8 of #834, the last (replaces #895). Base is #901. Placeholder count: 0 — every trigger disabled by #880 is restored.
release-precheck.yml→release-ci.yml. Paths = union of every[[package]] globsentry inputitoutthere.toml+ the config itself; fragments and attestations excluded; package READMEs included (they ship — PyPI long-description, npm tarball, crate archive). Stays one workflow: putitoutthere'sbuild.ymlhas no package filter (verified at the v0 sha), and its plan job already change-detects per package inside the run.release-config-check.yml→putitoutthere-config-check.yml, triggering only onputitoutthere.toml.changelog-check.yml:packages/**minuse2e-attestations/(filtered out of the gate'scode_touched, so they cannot alter its verdict).plugins/deliberately absent — the gate cannot see plugin fragments (changelog-gate cannot see plugins/ — plugin changes are not changelog-enforced #896).Expected checks: zero (workflow-only diff). Everything above this layer is a probe.
E2E Verification
N/A - CI configuration only
Generated by Claude Code