Skip to content

Commit 1cc4396

Browse files
dzhelezovclaude
andcommitted
fix(release): older ponder versions publish as ponder-<v>, not latest; gitignore example codegen artifacts
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
1 parent d8c9fb4 commit 1cc4396

2 files changed

Lines changed: 13 additions & 3 deletions

File tree

.github/workflows/release.yml

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,12 @@ jobs:
5757

5858
- name: Publish to npm (Trusted Publishing via OIDC — no token)
5959
working-directory: ${{ runner.temp }}/fork/${{ steps.v.outputs.version }}/packages/core
60-
# --tag latest so this <version>-sqd.<rev> prerelease is the default `npm install`.
61-
# When this repo is PUBLIC, append `--provenance` for a signed provenance attestation.
62-
run: npm publish --access public --tag latest
60+
# `latest` ONLY for the newest ponder version in versions.json, so publishing an older version
61+
# (e.g. 0.15.17 after 0.16.6) does not clobber the default `npm install`. Older versions get a
62+
# `ponder-<version>` tag; users still pin the exact `<version>-sqd.<rev>`. Provenance is automatic.
63+
run: |
64+
V='${{ steps.v.outputs.version }}'
65+
MAX=$(node -e "const j=require('$GITHUB_WORKSPACE/versions.json');console.log(j.versions.map(r=>r.ponder).sort((a,b)=>a.localeCompare(b,undefined,{numeric:true})).pop())")
66+
if [ "$V" = "$MAX" ]; then TAG=latest; else TAG="ponder-$V"; fi
67+
echo "→ npm publish --tag $TAG (newest ponder in versions.json = $MAX)"
68+
npm publish --access public --tag "$TAG"

.gitignore

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,3 +4,7 @@ harness/euler/vaults.*.json
44
*.log
55
.DS_Store
66
.claude/
7+
examples/*/package-lock.json
8+
examples/*/ponder-env.d.ts
9+
examples/*/.ponder/
10+
examples/*/generated/

0 commit comments

Comments
 (0)