Skip to content

Prepare the first npm release - #8

Merged
kochizufan merged 5 commits into
train/2026-12from
dec26/m1-t7-publish
Oct 27, 2026
Merged

kochizufan merged 5 commits into
train/2026-12from
dec26/m1-t7-publish

Conversation

@kochizufan

@kochizufan kochizufan commented Oct 27, 2026 •

Copy link
Copy Markdown
Member

Prepares @c4h/atlas for its first npm release. Nothing is published by this PR.

Changes

  • CI settings: ci/pnpm-workspace.ci.yaml (allowBuilds esbuild, minimumReleaseAgeExclude for @maplat/* and @c4h/*,). The workflows copy it to pnpm-workspace.yaml and run pnpm install --frozen-lockfile; the copy is not committed.
  • Workflows: pnpm 11.27.0, Node 22/24 (test) and 24 (deploy). Every uses: is pinned by commit SHA with the tag as a comment. test.yml and deploy.yml start from contents: read; only the Pages deploy job gets pages: write and id-token: write.
  • publish.yml: the shared trusted-publishing workflow (manual dispatch, npm-publish environment, provenance). Only CI_WORKFLOW_FILE differs from the template (test.yml).
  • package.json: engines.node is >=22; dev tools follow the shared versions used across the Code for History packages (vitest 5, TypeScript 6, vite-plugin-dts 5, @types/node 26; jszip 3.10.2). vite-plugin-dts 5 renames outDir/rollupTypes to outDirs/bundleTypes and drops logLevel; the generated declarations are unchanged. files, prepublishOnly, version and repository are unchanged.
  • Dependency audit: pnpm audit goes from critical 3 / high 26 to critical 0 / high 0 (--prod stays 0).
  • Docs: README (en/ja) gets an API section that lists every export, a release-pinned block around the install commands, Node.js >= 22, and a note on installing the repository on its own. New CHANGELOG.md.
  • Comments: comments in src/proj-wasm-crs.ts (shipped in the tarball) no longer point at private development notes.
  • Tests: tests/readme-api-coverage.test.ts (every export of src/index.ts, read at run time, must appear in both READMEs) and tests/public-surface-wording.test.ts (published sources, READMEs and the changelog carry no internal references).

Checked locally

  • pnpm run prepublishOnly (test, typecheck, build, verify:demo, verify:packed-browser): exit 0, 116 tests.
  • pnpm pack --dry-run: 25 files; no tests, openspec, .github, ci, demo, scripts, AGENTS.md, .npmrc, index.html or vite.config.ts.

Note for Teiresias

Teiresias CI installs this repository as a sibling with pnpm 10 and no CI settings. With the overrides now recorded in the lockfile, that install stops with ERR_PNPM_LOCKFILE_CONFIG_MISMATCH, so Teiresias needs its matching change (code4history/Teiresias#10) right after this is merged.

🤖 Generated with Claude Code

kochizufan and others added 5 commits October 27, 2026 19:25
…ces in published files

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…d comments

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…m publish workflow

- ci/pnpm-workspace.ci.yaml carries allowBuilds, minimumReleaseAgeExclude and the
  tinypool override; the workflows copy it before pnpm install --frozen-lockfile
- test.yml and deploy.yml get least-privilege permissions; only the Pages deploy job
  gets pages/id-token write
- publish.yml is the shared trusted-publishing workflow with CI_WORKFLOW_FILE=test.yml
- devDependencies move to the latest release of their series and engines.node to >=22

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
… 6, vite-plugin-dts 5)

vitest 5 no longer depends on tinypool, so the tinypool override is dropped.
vite-plugin-dts 5 renames outDir to outDirs and rollupTypes to bundleTypes and has no
logLevel; the generated declarations are unchanged.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@kochizufan
kochizufan marked this pull request as ready for review October 27, 2026 12:29
@kochizufan
kochizufan merged commit 3021ec8 into train/2026-12 Oct 27, 2026
5 checks passed
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