Repository navigation
ci: token-free OIDC claim publish with a version input - #217
Merged
Merged
Conversation
The npm claim job now publishes only through the trusted publisher: no environment and no token (the one-time NPM_FIRST_PUBLISH token is being revoked). A claim_version input (default 0.0.1, must match 0.0.N) lets a 0.0.2 placeholder prove the first trusted publish within npm's 2-day window. Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
luisleo526
added a commit
that referenced
this pull request
Oct 25, 2026
* CHANGELOG: sections for 1.6.2 and 1.6.3 (release-notes backfill, CR-315) The CHANGELOG had no 1.6.2 or 1.6.3 section: 1.7.0 sat directly above 1.6.1, although the release note policy at the top of the file asks for a section per released version. This adds both, from the tags (`git log` and `git diff` between v1.6.1, v1.6.2, v1.6.3) and the GitHub release notes and the published advisory GHSA-5www-2x9c-mgr6: - 1.6.3 (2026-10-23): the security fix merged from a private fork (commit 0418898, "Codegen can emit C++ calls and type names taken from the input script", high, CWE-94, affected pineforge-codegen 0.6.4 up to 1.6.3 and @pineforge/codegen-pyodide 0.7.0 up to 1.6.3), stated as the advisory states it and without a reproduction recipe; and #237, #238, #239, #240 (CI, npm publishing environment, documentation). - 1.6.2 (2026-10-21): the pf-cpp-allowlist checker (#210), the LIBC_RESERVED_NAMES reserved-name change in the emitter, the licensor entity written as PINEFORGE LLC (#234), and the CI changes #212, #214, #215, #216, #217, #221, #223, #225, #233, #236. Additions only (0 lines removed): no sentence is replaced. No file other than CHANGELOG.md changes. Co-Authored-By: Claude Sonnet 5.5 <[email protected]> * CHANGELOG: 1.6.3 compatibility text states that the security fix refuses scripts (REV P2) (CR-315) REV-CX's read of the CR-315 backfill (reports/verdict-cr315.md) found that the 1.6.3 Compatibility bullet understated the fix. Checked against `git diff v1.6.2 v1.6.3` of pineforge_codegen/ before writing it: - visit_call.py / visit_expr.py: an unknown call or a member read on a builtin-backed receiver no longer reaches the emitted C++ as text; it ends with "<name>(...) is not implemented in PineForge runtime."; - parser.py: a string, number or operator in a type position or inside <...> raises a located ParseError; - support_checker.py: array.new / array.from with an undeclared element type is refused with the same "not implemented" message; - types.py: the default of an enum-typed element is na<double>() (a name that is not a declared user type falls back to its slot's default); visit_expr.py: format, currency and order values are typed std::string. So a script that compiled under 1.6.2 can fail under 1.6.3, which the bullet now says. Also (REV P3): the pf-cpp-allowlist entry carries the advisory's own caveat (a denylist with known false positives, not proof that a unit is safe), and the Security entry states that release images before 1.6.3 contain an affected codegen and the 1.6.3 image the fixed one. Replaces text added by the previous commit of this change (d009aee), not on main. CHANGELOG.md only. Co-Authored-By: Claude Sonnet 5.5 <[email protected]> --------- Co-authored-by: Claude Sonnet 5.5 <[email protected]>
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.
CR-174 (Tunaxis rename): the npm claim job in publish-pyodide.yml now publishes only over OIDC trusted publishing. Its
environment: npm-firstandNODE_AUTH_TOKENlines are removed, since the one-time token is being revoked. Aclaim_versioninput (default 0.0.1, validated against0.0.N) is passed through an env variable, never interpolated into the script. It lets a 0.0.2 placeholder prove the first trusted publish within npm's 2-day window. The realpublishjob is unchanged.🤖 Generated with Claude Code