Skip to content

chore: rename to @ora-ai/ax-nextjs and prepare for npm publishing - #26

Merged
arielshulman29 merged 6 commits into
mainfrom
chore/rename-ax-nextjs
Aug 28, 2026
Merged

arielshulman29 merged 6 commits into
mainfrom
chore/rename-ax-nextjs

Conversation

@arielshulman29

@arielshulman29 arielshulman29 commented Aug 26, 2026 •

Copy link
Copy Markdown
Collaborator

Why

@ora-ai/ax — the name resolved in PLAN.md open question #7 — was claimed on npm on 2026-08-14 by the Ora team's own CLI (published from eralabs-ai/ora-cli). This PR renames the package to @ora-ai/ax-nextjs (the CLI bin stays ax), renames the report directory to match the tool, and does the remaining work to make the repo npm-publishable — the first canary is one merged Version-Packages PR away.

What's in here

Package rename (@ora-ai/ax → @ora-ai/ax-nextjs)

  • package.json, lockfile, fixtures, README, source-emitted install hints, and the generated-by markers (including regex-escaped forms)
  • Report goldens regenerated (pnpm reports:regen) — the longer marker shifts twin byte/token counts
  • Name-based pnpm filters in CI updated; PLAN.md question Phase 2.4: emission targets, ARD §6.1 discovery, detect-and-recommend #7 re-resolved

Report directory rename (.ora/report.json → .ax/report.json)

  • REPORT_OUTPUT_PATH plus wizard labels, help text, scripts, CI comments, gitignore, READMEs
  • The ora check-language surface is untouched — report.ora.checks, ora-checks.ts, oraCheckNotes name Ora's scoring vocabulary, not a path

Publish metadata

  • repository (required for provenance) / homepage / bugs / keywords
  • MIT LICENSE (Era Labs) at root and in packages/ax/; README shipped in the package dir
  • Next peer range narrowed to >=15 — the only major CI builds against

Release engineering

  • release.yml: changesets flow — merging the auto-maintained "Version Packages" PR builds and publishes from CI with npm provenance; safe to land without NPM_TOKEN (the token is only exercised on actual publish)
  • RELEASING.md: one-time NPM_TOKEN setup and canary → latest promotion
  • Changesets pre-release mode (canary tag): pending changesets produce 0.1.0-canary.0 under the canary dist-tag, so a plain npm install @ora-ai/ax-nextjs resolves nothing until latest is promoted

Publish-critical tests (new CI jobs)

  • package: pack the tarball, publint + @arethetypeswrong/cli (esm-only profile)
  • tarball-e2e: install the packed tarball into a scratch Next app with plain npm and run a real build + postbuild on Node 18.18 / 20 / 22 — backing the engines claim and catching files-allowlist gaps, deps misfiled as devDeps, and bin-shim breakage

Merges from main (kept current throughout): declared-entry-auth (#25), README rewrite (#28–#30), 404 wayfinding guide (#31), and the flagship fixture-corpus consolidation (#32) — each resolved by regenerating goldens from the merged source and re-applying the renames to newly-landed code (incl. scripts/mutation-tests.mjs reading the old .ora/ path).

Verification

  • 736/736 unit tests, typecheck, prettier
  • All 8 report-snapshot goldens verify post-consolidation; publint clean; attw green (esm-only)
  • 18/18 middleware dogfood probes; all flagship mutation probes pass; ARD conformance passes
  • Tarball E2E green locally and in CI on all three Node versions, asserting the .ax/report.json path

Follow-ups (not in this PR)

  • Ora team: add the NPM_TOKEN repo secret (see RELEASING.md) and confirm "Allow GitHub Actions to create and approve pull requests" is enabled — release.yml needs it to open the Version Packages PR
  • Changeset for the declared-entry-auth feature (merged to main without one)
  • Decide whether first publish adds reportVersion to .ax/report.json
  • Direct unit tests for route-tree, find-config-file, validation-errors, config-schema, server-card-record, ajv-instance
  • Demo repo twins need one regeneration (old generated-by markers are no longer recognized)

🤖 Generated with Claude Code

arielshulman29 and others added 6 commits August 26, 2026 13:07
The planned name @ora-ai/ax was claimed on npm (2026-08-14) by the Ora
team's own CLI (eralabs-ai/ora-cli), so the package is now
@ora-ai/ax-nextjs; the CLI bin stays `ax`. Golden reports regenerated:
the longer generated-by marker shifts twin byte/token counts.

Publish readiness on top of the rename:
- package.json: repository/homepage/bugs/keywords (repository is
  required for npm provenance), Next peer narrowed to >=15 (the only
  major CI builds against)
- MIT LICENSE (Era Labs) at the root and in the package dir; README
  copied into packages/ax so the npm page and tarball carry one
- release.yml: changesets version-PR/publish flow from CI with
  provenance; RELEASING.md documents the NPM_TOKEN setup and the
  canary -> latest promotion
- changesets pre-release mode entered with tag `canary`, so the pending
  changesets produce 0.1.0-canary.0 under the canary dist-tag
- scripts/tarball-e2e.mjs + CI jobs: pack the tarball, publint + attw
  it, then install it into a scratch Next app with plain npm and run a
  real build on Node 18.18/20/22 to back the engines claim
- ci.yml: `--filter ax` -> `--filter @ora-ai/ax-nextjs` (name-based
  filters stopped matching after the rename)

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Conflicts: README.md and the 17 fixture report goldens. README resolved
to main's rewrite (regular-dependency install, toolkit framing) with the
@ora-ai/ax-nextjs rename re-applied throughout; packages/ax/README.md
and RELEASING.md's install line updated to match. Goldens regenerated
from the merged source (pnpm reports:regen) rather than hand-merged, so
they carry both main's declared-entry-auth report section and the
renamed generated-by marker; reports:verify passes on all 17.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
The report directory now matches the tool's name: REPORT_OUTPUT_PATH
moves to .ax/report.json, with the wizard labels, help text, scripts,
CI comments, gitignore, and READMEs following. The `ora` check-language
surface (report.ora.checks, ora-checks.ts, oraCheckNotes) is unchanged
— that names Ora's scoring vocabulary, not a path.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Brings in the /404.md wayfinding-guide feature (PR #31). Conflicts were
the 17 report goldens (both sides regenerated them); resolved by
regenerating from the merged source, so the goldens and the new
twins.golden/404.md files carry the renamed generated-by marker and the
404-guide content together. One stale marker assertion in
generate.test.ts updated to the renamed package.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Add a "Try it before release" section so reviewers can install the
plugin from a pnpm-packed tarball before it's published to npm.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Brings in the flagship fixture-corpus consolidation (PR #32). Old
fixtures deleted on main resolved as deletions; the surviving goldens
were regenerated from the merged source (8 snapshots now, down from 17).
The new corpus and mutation harness were authored against the
pre-rename names, so the sweep re-applied @ora-ai/ax-nextjs across the
new fixtures and fixed scripts/mutation-tests.mjs reading
.ora/report.json (4 spots) — all mutation probes pass after the fix.
dogfood-middleware.mjs keeps main's flagship retarget plus the renamed
import path.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@arielshulman29
arielshulman29 merged commit a83d65d into main Aug 28, 2026
6 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