chore: version packages - #198
Merged
Merged
Conversation
github-actions
Bot
force-pushed
the
changeset-release/main
branch
from
September 8, 2026 18:19
aee9db6 to
caec249
Compare
github-actions
Bot
force-pushed
the
changeset-release/main
branch
from
September 8, 2026 22:58
caec249 to
5a74fae
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.
Releases
seamless-cli@0.14.0
Minor Changes
af41ba4: Move the scaffold onto auth API
v0.12.0, admin dashboardv0.6.0, and seamless-templatesv0.13.0.v0.11.0puts passkey enrollment behind an access session. It is a breaking change to the wirecontract:
/webAuthn/register/startand/webAuthn/register/finishused to accept the ephemeraltoken the API mints from an email address alone, so anyone who knew an address could enroll a
credential against that account and sign in as its owner. Both routes read the access session now,
and enrollment no longer issues a session of its own, answering
200with the credential instead.The same release declares and validates the window on
GET /admin/users, and adds organizationdeletion along with a paged, searchable admin organization list.
v0.12.0ships dashboardv0.6.0inside the API image, which is what that dashboard release needs: it pages and searches organizations
on the server, gains a remove action, takes a date range on Overview and Security, and grows an
Authenticator Policy section.
The admin dashboard pin moves with it, so the standalone console (
--admin=imageand--admin=source) serves the same release the API image serves at/console.The enrollment change has no safe release order, so every side of it moves here at once. Templates
v0.13.0carries@seamless-auth/react0.12.0,@seamless-auth/express0.14.0and@seamless-auth/fastify0.5.0in the starters, and the conformance harness's adapters take thesame
^0.14.0and^0.5.0. The adapters forward the access session the API now requires; an olderone sends what this API refuses, so a scaffold pinned to either half alone would answer
401atenrollment. No shipped flow loses a step, because registration proves an address with an email OTP
and verifying it issues the session before the passkey screen appears.
The adapters also proxy
DELETE /admin/organizations/:organizationId, and forward the query stringon
GET /admin/usersandGET /internal/auth-events/login-stats, which both dropped it, so thedashboard's user search and its login statistics range now reach the API as sent.
206e3cd: Move the scaffold onto the current Seamless ecosystem: auth API
v0.10.0, admin dashboardv0.5.0,and seamless-templates
v0.12.0.Three releases of auth API work land together.
v0.8.0gives WebAuthn challenges their own storewith a five-minute expiry and one-time use, so a registration and a login can be outstanding at once
instead of clobbering each other, and it adds
AUTHENTICATOR_POLICY, which decides attachment, userverification, attestation, and whether a synced passkey may enrol.
v0.9.0puts the lockout policyand the per-IP and per-identity limiters on TOTP step-up, which had none of the three, and stops
running refresh tokens through bcrypt.
v0.10.0drops thesessions.refreshTokenHashcolumn theprevious release stopped writing.
A scaffold's compose file is built from the pinned release's
.env.example, so a new project picks upAUTHENTICATOR_POLICYalong withSESSION_IDLE_TTL,MAX_CONCURRENT_SESSIONSand a commentedTRUST_PROXY, andREFRESH_TOKEN_TTLmoves from1hto1d.The admin dashboard bump keeps the standalone console (
--admin=imageand--admin=source) in stepwith the one the API image now serves at
/console, sincev0.10.0embeds dashboardv0.5.0itself.That release names the acting administrator separately from the subject in the events table, and
collects identity proofing before preparing a device replacement, which is what the API already
records and requires.
Templates
v0.12.0moves the starters onto@seamless-auth/react0.11.0,@seamless-auth/express0.13.0and@seamless-auth/fastify0.4.0. All three are 0.x minors, so the caret ranges thestarters carried could never have resolved to them and a scaffolded project stayed on the older
versions however long ago they were pinned. It also carries per-application auth cookie names read
from
AUTH_COOKIE_PREFIX, so two Seamless apps on one host stop overwriting each other's session. Themanifest contract is unchanged, so nothing in
initmoves with it.The conformance harness's adapters follow the same SDKs the starters now install:
@seamless-auth/express^0.13.0and@seamless-auth/fastify^0.4.0. Both stop repeating theaccess and refresh tokens in the body of the response that sets them as
httpOnlycookies, and bothforward a magic link's
redirectUrito the API.ec85b59: Match the list windows the auth API now enforces, and let
org listpage.The API validates the window on its admin list routes:
limitis 1 to 100 andoffsetis 0 or more. The CLI checked both flags against one range with a floorof zero, which was right for
--offsetand wrong for--limit, sousers list --limit 0andusers list --limit 500were sent and came back as a400 naming neither the flag nor the bound. Each flag is checked against its own
range now, and the message says which one was wrong and what it accepts.
--limit 0is therefore an error rather than a request for nothing. Asking theserver for zero rows and reporting "No users." said there were none when the CLI
had not looked, which is worse than saying the flag is out of range.
org listgains--limit,--offsetand--search. It sent no window at all,so once the API started defaulting to 50 it printed the first 50 organizations
and then a count of every organization, claiming rows it had not shown. It now
reports where the page sits, the way
users listalready did, and--searchmatches the name and slug server-side.