Skip to content

ci: guarded job to claim PyPI tunaxis-codegen and npm @tunaxis/codegen-pyodide with a 0.0.1 placeholder - #216

Merged
luisleo526 merged 2 commits into
mainfrom
core/tnx-claim-codegen
Oct 18, 2026
Merged

luisleo526 merged 2 commits into
mainfrom
core/tnx-claim-codegen

Conversation

@luisleo526

Copy link
Copy Markdown
Contributor

CR-174 (Tunaxis rename; L6 10-19 03:5x): claims the new package name(s) now, which also proves the owner's pending trusted publisher(s) before the real 1.6.3 release.

  • New workflow_dispatch boolean input claim_placeholder (default false). Every existing job is guarded with !inputs.claim_placeholder, so a normal release behaves exactly as before.
  • The claim job runs on a hosted runner (ubuntu-24.04), as credentialed jobs must. It builds the placeholder inside the job, with no repository code. Its only content is the README "Tunaxis: first release coming soon. https://tunaxis.com". It's marked Development Status :: 1 - Planning, and the job checks its own output, including that the old name appears nowhere except the npm repository URL that provenance needs.
  • It's dispatched once from main after merge.

🤖 Generated with Claude Code

@luisleo526
luisleo526 merged commit f0613dd into main Oct 18, 2026
8 checks passed
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]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant