release: 0.39.0#94
Conversation
|
🧪 Testing To try out this version of the SDK: Expires at: Fri, 03 Jul 2026 00:33:12 GMT |
🐤 Canary SummaryThis is an automated release PR with no UI/UX changes:
|
🐤 Canary Proposed TestsNo testable user journeys found for this PR. |
Confidence Score: 5/5 - Safe to MergeSafe to merge — this appears to be a standard release bump to version 0.38.1 with no identified logic, security, or correctness issues surfaced during review. The automated analysis found zero critical, significant, or medium-severity issues across the reviewed files. While only 4 of 13 changed files received coverage, the absence of any flagged concerns and the nature of a patch release (typically containing minor fixes or version metadata updates) supports a clean merge. Key Findings:
|
dcbda64 to
7fde307
Compare
7fde307 to
983f201
Compare
EntelligenceAI PR SummaryThis PR updates
Confidence Score: 3/5 - Review RecommendedLikely safe but review recommended — this PR itself only updates Key Findings:
Files requiring special attention
|
983f201 to
8dead0f
Compare
8dead0f to
c890ae3
Compare
c890ae3 to
63c35fd
Compare
63c35fd to
479c910
Compare
479c910 to
f6c43d6
Compare
f6c43d6 to
6f3fbdd
Compare
6f3fbdd to
7e1e1c1
Compare
7e1e1c1 to
705d4a6
Compare
efee314 to
1d3589f
Compare
1d3589f to
97d3e1f
Compare
97d3e1f to
5704a81
Compare
| pnpm tsn scripts/publish-packages.ts "{ \"paths_released\": \"$PATHS_RELEASED\" }" | ||
| env: | ||
| INPUT_PATH: ${{ github.event.inputs.path }} | ||
| NPM_TOKEN: ${{ secrets.HYPERSPELL_NPM_TOKEN || secrets.NPM_TOKEN }} |
There was a problem hiding this comment.
publish-npm.yml skips NPM_TOKEN validation that bin/publish-npm previously enforced
bin/publish-npm previously had an inline guard that printed a clear error and exited if NPM_TOKEN was unset and OIDC was unavailable. The new bin/publish-npm drops that guard entirely and unconditionally calls npm config set ... "$NPM_TOKEN". The validation was moved to bin/check-release-environment (called only from release-doctor.yml), but publish-npm.yml never calls check-release-environment. If either secret (HYPERSPELL_NPM_TOKEN/NPM_TOKEN) is missing, GitHub Actions resolves the expression to "", so the publish job builds all packages, installs deps, and then fails late at pnpm publish with a cryptic npm auth error instead of the fast, descriptive message.
Prompt to fix with AI
Copy this prompt into your AI coding assistant to fix this issue.
Add a step in `.github/workflows/publish-npm.yml` before 'Publish to NPM' that runs `bash ./bin/check-release-environment` with `env: NPM_TOKEN: ${{ secrets.HYPERSPELL_NPM_TOKEN || secrets.NPM_TOKEN }}`, so the workflow fails fast with a descriptive error if the secret is missing rather than failing late at npm auth after building all packages.
5704a81 to
22d7a0b
Compare
| echo "ERROR: NPM_TOKEN must be set if not running in a Github Action with id-token permission" | ||
| exit 1 | ||
| fi | ||
| npm config set '//registry.npmjs.org/:_authToken' "$NPM_TOKEN" |
There was a problem hiding this comment.
NPM_TOKEN empty-string not caught; check moved out of publish path
bin/publish-npm removed its inline NPM_TOKEN guard and now unconditionally calls npm config set with "$NPM_TOKEN". publish-npm.yml sets NPM_TOKEN from secrets with a || fallback; when both secrets are absent it evaluates to empty string (not unset), so bash's -u guard never fires, the auth token is set to "", and the publish silently fails at npm with an opaque auth error. The only [ -z "${NPM_TOKEN}" ] check lives in bin/check-release-environment, which is only invoked by release-doctor.yml (triggered on PRs, not on publish events).
Prompt to fix with AI
Copy this prompt into your AI coding assistant to fix this issue.
Add an explicit NPM_TOKEN check to `publish-npm.yml` before the publish step, OR add `if [ -z "${NPM_TOKEN:-}" ]; then echo 'ERROR: NPM_TOKEN must be set'; exit 1; fi` at the top of `bin/publish-npm` (replacing the unconditional set) so the publish job itself fails fast with a clear message when both secrets are unset.
22d7a0b to
2bc1e39
Compare
2bc1e39 to
e924fd9
Compare
e924fd9 to
08b4b26
Compare
08b4b26 to
06c2dcc
Compare
06c2dcc to
55cdd7c
Compare
55cdd7c to
6ae88d1
Compare
6ae88d1 to
730dac4
Compare
730dac4 to
a5372dc
Compare
a5372dc to
735d2fb
Compare
Automated Release PR
0.39.0 (2026-06-04)
Full Changelog: v0.38.0...v0.39.0
Features
Bug Fixes
Chores
Documentation
This pull request is managed by Stainless's GitHub App.
The semver version number is based on included commit messages. Alternatively, you can manually set the version number in the title of this pull request.
For a better experience, it is recommended to use either rebase-merge or squash-merge when merging this pull request.
🔗 Stainless website
📚 Read the docs
🙋 Reach out for help or questions