Version Packages (canary) - #34
Open
github-actions[bot] wants to merge 1 commit into
Open
github-actions[bot] wants to merge 1 commit into
github-actions[bot] wants to merge 1 commit into
Conversation
github-actions
Bot
force-pushed
the
changeset-release/main
branch
from
September 7, 2026 16:52
fe7920b to
6bbe4be
Compare
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.
This PR was opened by the Changesets release GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated.
mainis currently in pre mode so this branch has prereleases rather than normal releases. If you want to exit prereleases, runchangeset pre exitonmain.Releases
@ora-ai/ax-nextjs@0.1.0-canary.0
Minor Changes
13614cd: Breaking (pre-1.0): removed support for the legacy
ard.config.*config file and itsdeprecated
Ard*aliases (ArdConfig,ArdEntryOverride,ResolvedArdConfig,ArdConfigError,loadArdConfig,validateArdConfig,ardConfigSchema).ard.config.*wasax.config.*'spre-2026-07-27 name, kept only as a temporary migration aid; carrying a second config surface (and
its dual-file precedence/warning logic) indefinitely cost more than the one-line rename it covered
for.
Migration: rename
ard.config.*toax.config.*. A project that still has only anard.config.*now fails the build loudly —
loadAxConfigthrowsAxConfigErrornaming the file and the rename —rather than silently building with defaults and dropping the file's settings. A project with both
files is unaffected:
ax.config.*already won and theard.config.*was already ignored.8d22b67: Add Phase 2.1:
ax.config.*(denylist/allowlist with a default-on/api/auth/**+/api/webhooks/**denylist, and hand-declared entries that override/extendinferred ones by
identifier) andnext.config.*reading (basePath/distDir/output,object or function form). An invalid
ax.configfails the build loudly; anext.configthatfails to load only warns and falls back to defaults.
The config file is named
ax.config, after theaxtool that reads it. (It was calledard.configduring development; that name is still accepted, with a deprecation warning, andax.configwins if both are present.)Breaking (pre-1.0):
generateCatalogandrunCliare nowasync, since loading config filescan only happen asynchronously. Callers must
awaitthem.2b7c745: Add Phase 2.8: gating & auth. ax now reads each artifact's own auth declaration and emits a
secret-free
authdescriptor (status: 'oauth2' | 'api_key' | 'none' | 'unknown', plus OAuthendpoints/scope-keys) so a gated surface is never advertised as open — the exact shape Ora's
registry projects and re-validates. OpenAPI auth is derived from
components.securitySchemes; anMCP mount wrapped in
withMcpAuth/verifyTokenis marked gated (status: 'unknown', since theOAuth endpoints aren't statically derivable) and its
resourceMetadataPathis cross-linked on theMCP server card. Only structural facts cross — endpoint URLs are http(s)-guarded and lists capped,
never a secret or prose.
New
isGatedconfig — a(target) => booleanmatcher that supersedes the olddenylist/allowlist. A gated artifact ax can describe is published with itsauthdescriptor; oneit can't describe is dropped. With no
isGated, a built-in floor gates/api/auth/**and/api/webhooks/**(exported asdefaultIsGated); supplyingisGatedreplaces that floor wholesale,so compose
defaultIsGatedto keep it (and returnfalseto re-include a path — the job the oldallowlistdid).Also adds review-before-publish (Phase 2.3): the first publish of a catalog prints the surface
it is about to expose and is gated behind confirmation —
--yes(required in CI / non-interactiveshells) or an interactive prompt. A re-run over an already-written catalog stays unattended. New
--dry-runprints the summary and writes nothing.Breaking (pre-1.0):
ax.config'sdenylistandallowlistare removed in favor ofisGated;migrate
allowlist: ['/x']to anisGatedthat returnsfalsefor/x, composingdefaultIsGatedto keep the auth/webhook floor. The exports
DEFAULT_DENYLIST,isPathDeniedare removed(
DEFAULT_GATED_GLOBS,defaultIsGated,resolveGating,matchesAnyGlobreplace them). CIpostbuild scripts must pass
ax --yesto write a first-time catalog.