chore: prune Stainless-era CI cruft and vestigial release-doctor#1364
Merged
Conversation
The Stainless templates left behind a bunch of CI scaffolding that's no longer doing anything in this repo: ci.yml - `on.push.branches` filter listed Stainless-internal codegen branches (`integrated/**`, `stl-preview-*`, `codegen/**`, `codegen/stl/**`) that never land here. Replaced with `branches: [main]` so push runs fire only on merge. - `on.pull_request.branches-ignore` filtered the same Stainless preview branches. Dropped — same reasoning. - Job-level `if:` guards (`github.event_name == 'push' || github.event.pull_request.head.repo.fork` etc.) existed to deduplicate the duplicate runs you get when both push + pull_request fire for a same-repo PR. Under the new `on:` shape (push only on main, pull_request unfiltered) each commit triggers exactly one run, so the dedup is unnecessary. - `runs-on` toggled to `depot-ubuntu-24.04` when running under `stainless-sdks/increase-typescript`. We never run there. Simplified to `ubuntu-latest`. - `'codegen metadata'` head-commit guard skipped CI for Stainless's codegen housekeeping commits. We don't push those. - The build job's OIDC token + `upload-artifact.sh` step pushed build tarballs to `pkg.stainless.com/s` for Stainless's preview UI. Dead endpoint for us. Dropped along with the `id-token: write` permission it required. release-doctor.yml + bin/check-release-environment - The script was a literal no-op (`errors=()` array, never populated, always prints "ready"). It exists in templates as a pre-flight check for repos with publish secrets (PYPI_TOKEN etc.); this repo uses OIDC trusted publishing on npm so there's no token to check. - Even with checks populated, the only failure mode it catches that the publish workflow doesn't is "secret literally not set" — which recovers in 30s by setting the secret and re-running publish. Without branch-protection enforcement (which we don't have), it's a soft warning, not a gate. Drop it entirely.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Cleans up CI scaffolding left over from Stainless's templates that no longer does anything in this repo.
`ci.yml` simplification
42 lines down to 4.
`release-doctor.yml` + `bin/check-release-environment` deletion
The doctor script is a literal no-op:
```bash
errors=()
lenErrors=${#errors[@]}
if [[ lenErrors -gt 0 ]]; then ... fi
echo "The environment is ready to push releases!"
```
It exists in Stainless templates as a pre-flight check for repos with publish secrets (`PYPI_TOKEN` etc.); this repo uses OIDC trusted publishing on npm so there's no token to check (`bin/publish-npm` falls back to `ACTIONS_ID_TOKEN_REQUEST_TOKEN` when `NPM_TOKEN` isn't set, and the workflow doesn't pass `NPM_TOKEN`).
Even with checks populated, the only failure mode it catches that the publish workflow doesn't is "secret literally not set" — which recovers in 30s by setting the secret and re-running publish. Without branch-protection enforcement (which we don't have), it's a soft warning, not a gate.
Test plan