seamless-cli 0.11.0 → 0.13.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (77) hide show
  1. package/README.md +99 -26
  2. package/dist/commands/check.js +67 -42
  3. package/dist/commands/check.js.map +1 -1
  4. package/dist/commands/config.js +7 -2
  5. package/dist/commands/config.js.map +1 -1
  6. package/dist/commands/helpTopics.js +28 -11
  7. package/dist/commands/helpTopics.js.map +1 -1
  8. package/dist/commands/init.js +71 -42
  9. package/dist/commands/init.js.map +1 -1
  10. package/dist/commands/sessions.js +8 -3
  11. package/dist/commands/sessions.js.map +1 -1
  12. package/dist/commands/users.js +20 -7
  13. package/dist/commands/users.js.map +1 -1
  14. package/dist/commands/verify.js +41 -11
  15. package/dist/commands/verify.js.map +1 -1
  16. package/dist/commands/whoami.js +21 -3
  17. package/dist/commands/whoami.js.map +1 -1
  18. package/dist/core/admin.js +9 -2
  19. package/dist/core/admin.js.map +1 -1
  20. package/dist/core/authClient.js +71 -5
  21. package/dist/core/authClient.js.map +1 -1
  22. package/dist/core/config.js +55 -3
  23. package/dist/core/config.js.map +1 -1
  24. package/dist/core/errors.js +32 -0
  25. package/dist/core/errors.js.map +1 -0
  26. package/dist/core/fetch.js +17 -1
  27. package/dist/core/fetch.js.map +1 -1
  28. package/dist/core/images.js +11 -2
  29. package/dist/core/images.js.map +1 -1
  30. package/dist/core/interactiveLogin.js +16 -14
  31. package/dist/core/interactiveLogin.js.map +1 -1
  32. package/dist/core/jwksKid.js +40 -0
  33. package/dist/core/jwksKid.js.map +1 -0
  34. package/dist/core/keychain.js +13 -26
  35. package/dist/core/keychain.js.map +1 -1
  36. package/dist/core/loginFlow.js +49 -8
  37. package/dist/core/loginFlow.js.map +1 -1
  38. package/dist/core/output.js +9 -29
  39. package/dist/core/output.js.map +1 -1
  40. package/dist/core/redact.js +68 -0
  41. package/dist/core/redact.js.map +1 -0
  42. package/dist/core/secrets.js +0 -3
  43. package/dist/core/secrets.js.map +1 -1
  44. package/dist/core/systemConfig.js +39 -4
  45. package/dist/core/systemConfig.js.map +1 -1
  46. package/dist/core/templates.js +6 -4
  47. package/dist/core/templates.js.map +1 -1
  48. package/dist/generators/admin/admin.js +102 -1
  49. package/dist/generators/admin/admin.js.map +1 -1
  50. package/dist/generators/auth/auth.js +2 -59
  51. package/dist/generators/auth/auth.js.map +1 -1
  52. package/dist/generators/docker/docker.js +5 -21
  53. package/dist/generators/docker/docker.js.map +1 -1
  54. package/dist/index.js +4 -3
  55. package/dist/index.js.map +1 -1
  56. package/dist/prompts/projectSetup.js +1 -12
  57. package/dist/prompts/projectSetup.js.map +1 -1
  58. package/package.json +2 -2
  59. package/verify/adapter-fastify-app/Dockerfile +14 -0
  60. package/verify/adapter-fastify-app/package.json +12 -0
  61. package/verify/adapter-fastify-app/server.mjs +64 -0
  62. package/verify/adapter-fastify-app/vendor/.gitignore +3 -0
  63. package/verify/adapter-fastify-app/vendor/.gitkeep +0 -0
  64. package/verify/docker-compose.cache.yml +43 -0
  65. package/verify/docker-compose.verify.yml +52 -21
  66. package/verify/harness/api/loginEnumeration.spec.ts +139 -0
  67. package/verify/harness/global-setup.ts +4 -1
  68. package/verify/harness/lib/client.ts +7 -3
  69. package/verify/harness/lib/env.ts +4 -0
  70. package/verify/harness/lib/fixtures.ts +12 -3
  71. package/verify/harness/lib/matrixReporter.ts +19 -6
  72. package/verify/harness/lib/reactFlows.ts +0 -2
  73. package/verify/harness/playwright.config.ts +11 -2
  74. package/dist/core/jwks.js +0 -19
  75. package/dist/core/jwks.js.map +0 -1
  76. package/dist/utils/writeEnv.js +0 -9
  77. package/dist/utils/writeEnv.js.map +0 -1
@@ -15,15 +15,17 @@ import { requireInteractive, warnOnUnusableWidth } from "../core/tty.js";
15
15
  import { createPortalClient, ReauthRequiredError, } from "../core/authClient.js";
16
16
  import { getPortalSession, normalizeInstanceUrl } from "../core/config.js";
17
17
  import { parseEnv, writeEnv } from "../core/env.js";
18
+ import { generateAdminSource } from "../generators/admin/admin.js";
18
19
  import { generateSecret } from "../core/secrets.js";
19
- import { buildScaffoldDatabaseUrl, getApplicationDatabase, listApplications, rotateServiceToken, } from "../core/portal.js";
20
+ import { fetchActiveJwksKid } from "../core/jwksKid.js";
21
+ import { buildScaffoldDatabaseUrl, getApplicationDatabase, listApplications, rotateServiceToken, resolveAppInstanceUrl, } from "../core/portal.js";
20
22
  import { selectApplication } from "../prompts/appSelect.js";
21
23
  const AUTH_SERVER_URL = "http://localhost:5312";
22
24
  const API_URL = "http://localhost:3000";
23
- // Managed auth instances resolve signing keys from the token header and do not
24
- // expose a per-application JWKS kid, so the scaffolded backend uses the SDK's
25
- // default. This matches the portal's own "Get connected" guidance.
26
- const MANAGED_JWKS_KID = "dev-main";
25
+ // Only reached when the instance cannot be asked. Adapters resolve the signing key
26
+ // from the token header through the remote JWKS, so this value verifies nothing, but
27
+ // they warn on boot while it is the dev default, so the real kid is worth fetching.
28
+ const FALLBACK_JWKS_KID = "dev-main";
27
29
  export async function runCLI(projectName, aliases = [], opts = {}) {
28
30
  const cwd = process.cwd();
29
31
  // Managed connect now reads the portal session, so a profile no longer selects
@@ -161,9 +163,7 @@ async function scaffold(root, projectName, preselect, openSource, opts) {
161
163
  await scaffoldLocal(root, projectName, preselect, openSource, opts);
162
164
  }
163
165
  // Writing starter files over a directory someone already has work in is the one
164
- // destructive step in a scaffold, so --yes is deliberately not enough to reach
165
- // it. --force is, and it says nothing about the integrate-or-scaffold question,
166
- // which --app answers instead.
166
+ // destructive step in a scaffold, so this takes --force rather than --yes.
167
167
  async function resolveExistingDirectoryAction(canConnect, opts) {
168
168
  if (!opts.yes) {
169
169
  requireInteractive("This directory is not empty. What would you like to do?", "Pass --yes --force to scaffold here anyway, or --app <id> to connect the existing project to a managed application.");
@@ -175,8 +175,8 @@ async function resolveExistingDirectoryAction(canConnect, opts) {
175
175
  console.log(kleur.yellow("Scaffolding into a directory that is not empty (--force)."));
176
176
  return "scaffold";
177
177
  }
178
- // Managed or local decides where the project's auth lives for good, so --yes
179
- // alone will not pick: --app <id> means managed and --local means self-hosted.
178
+ // Where the project's auth lives is settled for good here, so --yes will not pick:
179
+ // --app <id> means managed, --local means self-hosted.
180
180
  async function resolveScaffoldTarget(appCount, opts) {
181
181
  if (!opts.yes) {
182
182
  requireInteractive("How should this project get its auth?", "Pass --app <id> to connect a managed application, or --local to scaffold a self-hosted stack.");
@@ -187,6 +187,10 @@ async function resolveScaffoldTarget(appCount, opts) {
187
187
  // The bundled database as a connection string with placeholder credentials, or
188
188
  // an empty string when the control plane has not provisioned one yet. Never
189
189
  // requests ?reveal=true, so no live credential reaches this machine.
190
+ //
191
+ // Both callers run this before rotating the service token: a database that is not
192
+ // provisioned yet is a warning rather than a failure, and finding that out after
193
+ // the rotation would mean reporting it against a half-wired project.
190
194
  async function resolveDatabaseUrl(client, app) {
191
195
  const database = await getApplicationDatabase(client, app.id);
192
196
  if (!database) {
@@ -233,12 +237,10 @@ async function scaffoldManaged(root, projectName, preselect, openSource, client,
233
237
  console.log(`Adding ${entry.label} starter...`);
234
238
  await source.copyInto(entry, dir);
235
239
  }
236
- // Read before rotating: a database that is not provisioned yet is a warning,
237
- // not a failure, and finding that out after the token is rotated would mean
238
- // reporting it against a half-wired project.
239
240
  const databaseUrl = await resolveDatabaseUrl(client, app);
240
241
  const serviceToken = await issueServiceToken(client, app, opts);
241
- const authServerUrl = normalizeInstanceUrl(app.domain);
242
+ const authServerUrl = normalizeInstanceUrl(requireInstanceUrl(app));
243
+ const jwksKid = await resolveJwksKid(authServerUrl);
242
244
  // Everything past rotation is guarded: if it throws, the freshly issued token is
243
245
  // printed so a deployed app can be re-wired rather than left bricked (the control
244
246
  // plane never re-shows it).
@@ -247,7 +249,7 @@ async function scaffoldManaged(root, projectName, preselect, openSource, client,
247
249
  authServerUrl,
248
250
  apiUrl: API_URL,
249
251
  apiToken: serviceToken,
250
- jwksKid: MANAGED_JWKS_KID,
252
+ jwksKid,
251
253
  // A managed instance hosts its own dashboard, so the app API does not proxy
252
254
  // the console. Keeps the template's SERVE_ADMIN_CONSOLE gate off.
253
255
  serveAdminConsole: "false",
@@ -281,7 +283,7 @@ async function scaffoldManaged(root, projectName, preselect, openSource, client,
281
283
  }
282
284
  catch (err) {
283
285
  console.error(kleur.red("\nScaffolding failed after a new service token was issued. The token below is valid — set it on your backend to recover:"));
284
- printManagedValues(authServerUrl, serviceToken);
286
+ printManagedValues(authServerUrl, serviceToken, jwksKid);
285
287
  throw err;
286
288
  }
287
289
  }
@@ -308,20 +310,27 @@ async function scaffoldLocal(root, projectName, preselect, openSource, opts) {
308
310
  console.log(`Adding ${entry.label} starter...`);
309
311
  await source.copyInto(entry, dir);
310
312
  }
313
+ // Before the compose file is written, because that file declares `build: ./admin`
314
+ // and a project whose build context never arrived cannot come up at all.
315
+ if (answers.adminMode === "source") {
316
+ console.log("Adding admin dashboard source...");
317
+ await generateAdminSource(root);
318
+ }
311
319
  let sharedConfig = {};
312
320
  if (answers.authMode === "local") {
313
- sharedConfig = await generateAuthServer({ root }, "local", oauthProviders, answers.adminMode, answers.ownerEmail);
314
- }
315
- if (answers.useDocker) {
316
- const dockerShared = await generateDockerCompose(root, {
317
- authMode: answers.authMode,
318
- adminMode: answers.adminMode,
319
- oauth: oauthProviders,
320
- ownerEmail: answers.ownerEmail,
321
- });
322
- if (answers.authMode === "docker") {
323
- sharedConfig = dockerShared;
324
- }
321
+ sharedConfig = await generateAuthServer(root, oauthProviders, answers.adminMode, answers.ownerEmail);
322
+ }
323
+ // Both auth modes run the stack on compose, so the file is always written.
324
+ // Only the docker mode takes its shared config from here; a local auth server
325
+ // has already produced its own above.
326
+ const dockerShared = await generateDockerCompose(root, {
327
+ authMode: answers.authMode,
328
+ adminMode: answers.adminMode,
329
+ oauth: oauthProviders,
330
+ ownerEmail: answers.ownerEmail,
331
+ });
332
+ if (answers.authMode === "docker") {
333
+ sharedConfig = dockerShared;
325
334
  }
326
335
  const ctx = {
327
336
  authServerUrl: AUTH_SERVER_URL,
@@ -351,7 +360,6 @@ async function scaffoldLocal(root, projectName, preselect, openSource, opts) {
351
360
  webFramework: webEntry.framework,
352
361
  apiFramework: apiEntry.framework,
353
362
  authMode: answers.authMode,
354
- useDocker: answers.useDocker,
355
363
  adminMode: answers.adminMode,
356
364
  ownerEmail: answers.ownerEmail,
357
365
  });
@@ -363,15 +371,13 @@ async function scaffoldLocal(root, projectName, preselect, openSource, opts) {
363
371
  // to paste in by hand.
364
372
  async function integrateExistingProject(root, client, apps, opts) {
365
373
  const app = await selectApplication(apps, opts.appId);
366
- // Read before rotating: a database that is not provisioned yet is a warning,
367
- // not a failure, and finding that out after the token is rotated would mean
368
- // reporting it against a half-wired project.
369
374
  const databaseUrl = await resolveDatabaseUrl(client, app);
370
375
  const serviceToken = await issueServiceToken(client, app, opts);
371
- const authServerUrl = normalizeInstanceUrl(app.domain);
376
+ const authServerUrl = normalizeInstanceUrl(requireInstanceUrl(app));
377
+ const jwksKid = await resolveJwksKid(authServerUrl);
372
378
  const apiDir = path.join(root, "api");
373
379
  if (!fs.existsSync(apiDir)) {
374
- printManagedValues(authServerUrl, serviceToken);
380
+ printManagedValues(authServerUrl, serviceToken, jwksKid);
375
381
  return;
376
382
  }
377
383
  // The token is already rotated (old one invalidated); if the write fails, print
@@ -381,7 +387,7 @@ async function integrateExistingProject(root, client, apps, opts) {
381
387
  }
382
388
  catch (err) {
383
389
  console.error(kleur.red("\nFailed to write api/.env after issuing a new service token. Set it by hand to recover:"));
384
- printManagedValues(authServerUrl, serviceToken);
390
+ printManagedValues(authServerUrl, serviceToken, jwksKid);
385
391
  throw err;
386
392
  }
387
393
  console.log(kleur.green(`Updated ${path.join("api", ".env")}.`));
@@ -395,7 +401,7 @@ function wireApiEnv(apiDir, authServerUrl, serviceToken, databaseUrl) {
395
401
  const values = fs.existsSync(envPath) ? parseEnv(envPath) : {};
396
402
  values.AUTH_SERVER_URL = authServerUrl;
397
403
  values.API_SERVICE_TOKEN = serviceToken;
398
- values.JWKS_KID = values.JWKS_KID || MANAGED_JWKS_KID;
404
+ values.JWKS_KID = values.JWKS_KID || FALLBACK_JWKS_KID;
399
405
  values.COOKIE_SIGNING_KEY =
400
406
  values.COOKIE_SIGNING_KEY || generateSecret(32);
401
407
  // Never overwritten: an existing project may already hold a working
@@ -406,11 +412,22 @@ function wireApiEnv(apiDir, authServerUrl, serviceToken, databaseUrl) {
406
412
  fs.mkdirSync(apiDir, { recursive: true });
407
413
  writeEnv(envPath, values);
408
414
  }
409
- function printManagedValues(authServerUrl, serviceToken) {
415
+ // Asked of the instance rather than assumed: instances pin their kid per tier
416
+ // (trialkey1, paidkey1), so writing the dev default made every managed scaffold boot
417
+ // an app warning that it was misconfigured.
418
+ async function resolveJwksKid(authServerUrl) {
419
+ const kid = await fetchActiveJwksKid(authServerUrl);
420
+ if (kid)
421
+ return kid;
422
+ console.log(kleur.yellow(`Could not read the signing key id from ${authServerUrl}, so JWKS_KID is set to "${FALLBACK_JWKS_KID}".`));
423
+ console.log(kleur.dim(" Nothing verifies against it, the SDK resolves the key from the token, but your adapter will warn on boot until it matches. Read it from /.well-known/jwks.json once the instance is up."));
424
+ return FALLBACK_JWKS_KID;
425
+ }
426
+ function printManagedValues(authServerUrl, serviceToken, jwksKid) {
410
427
  console.log(kleur.green("\nManaged connection values:\n"));
411
428
  console.log(kleur.dim(" AUTH_SERVER_URL ") + authServerUrl);
412
429
  console.log(kleur.dim(" API_SERVICE_TOKEN ") + serviceToken);
413
- console.log(kleur.dim(" JWKS_KID ") + MANAGED_JWKS_KID);
430
+ console.log(kleur.dim(" JWKS_KID ") + jwksKid);
414
431
  console.log(kleur.yellow("\nCopy the service token now. The control plane will not show it again."));
415
432
  console.log(kleur.dim("Set AUTH_SERVER_URL and API_SERVICE_TOKEN on your backend, and the auth"));
416
433
  console.log(kleur.dim("server URL on your frontend, then sign in to verify.\n"));
@@ -420,9 +437,8 @@ function printManagedValues(authServerUrl, serviceToken) {
420
437
  // cancels the whole command, so nothing is left half-wired.
421
438
  async function issueServiceToken(client, app, opts) {
422
439
  if (app.hasServiceToken) {
423
- // Rotation breaks whatever is running on the old token, so it is a
424
- // destructive confirmation like the overwrite one: --yes does not answer it,
425
- // --force does.
440
+ // Rotation breaks whatever is running on the old token, so it confirms like
441
+ // the overwrite step does.
426
442
  if (opts.yes) {
427
443
  if (!opts.force) {
428
444
  throw new Error(`"${app.name}" already has a service token, and issuing a new one invalidates it (breaking anything already deployed with it). Re-run with --force to rotate it anyway.`);
@@ -442,11 +458,24 @@ async function issueServiceToken(client, app, opts) {
442
458
  }
443
459
  return rotateServiceToken(client, app.id);
444
460
  }
461
+ // connectable() filters out applications with no auth server, so this throwing means
462
+ // the filtered list and the selection disagreed, not that one is simply not ready yet.
463
+ function requireInstanceUrl(app) {
464
+ const url = resolveAppInstanceUrl(app);
465
+ if (!url) {
466
+ throw new Error(`Application "${app.name}" has no auth instance URL yet. Run seamless apps list to check whether it has finished provisioning.`);
467
+ }
468
+ return url;
469
+ }
445
470
  // listApplications reports applications that have not finished provisioning too,
446
471
  // because `seamless apps list` has to show them. Managed connect needs an auth
447
472
  // server to point at, so it keeps considering only the ones that have one.
473
+ //
474
+ // Asked through resolveAppInstanceUrl rather than of `domain` directly: an
475
+ // application served at an instanceUrl its stale domain column never carried would
476
+ // otherwise be filtered out here and never offered.
448
477
  function connectable(apps) {
449
- return apps.filter((app) => !!app.domain);
478
+ return apps.filter((app) => resolveAppInstanceUrl(app) !== undefined);
450
479
  }
451
480
  // Resolves the chosen templates (reading their manifests and asserting CLI
452
481
  // support) before any files are written, so every prompt finishes first.
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@ import kleur from "kleur";
2
2
  import { extractFlag } from "../core/args.js";
3
3
  import { createAuthClient, ReauthRequiredError } from "../core/authClient.js";
4
4
  import { clearLocalSession } from "../core/session.js";
5
+ import { errorMessage } from "../core/errors.js";
5
6
  import { listSessions, revokeAllSessions, revokeSessionById, } from "../core/sessions.js";
6
7
  import { confirmDestructive, hasForceFlag, } from "../core/confirmAction.js";
7
8
  export async function runSessions(args) {
@@ -14,7 +15,7 @@ export async function runSessions(args) {
14
15
  await revoke(client, positional);
15
16
  }
16
17
  else {
17
- await list(client);
18
+ await list(client, positional);
18
19
  }
19
20
  }
20
21
  catch (err) {
@@ -22,12 +23,16 @@ export async function runSessions(args) {
22
23
  console.log(kleur.yellow(err.message));
23
24
  process.exit(1);
24
25
  }
25
- console.error(kleur.red(err.message));
26
+ console.error(kleur.red(errorMessage(err)));
26
27
  process.exit(1);
27
28
  }
28
29
  }
29
- async function list(client) {
30
+ async function list(client, positional) {
30
31
  const sessions = await listSessions(client);
32
+ if (positional.includes("--json")) {
33
+ console.log(JSON.stringify(sessions, null, 2));
34
+ return;
35
+ }
31
36
  if (sessions.length === 0) {
32
37
  console.log(kleur.dim("No active sessions."));
33
38
  return;
@@ -1 +1 @@
1
- {"version":3,"file":"sessions.js","sourceRoot":"","sources":["../../src/commands/sessions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sessions.js","sourceRoot":"","sources":["../../src/commands/sessions.ts"],"names":[],"mappings":"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"}
@@ -32,26 +32,39 @@ export async function runUsers(args) {
32
32
  reportAdminError(err);
33
33
  }
34
34
  }
35
+ const DEFAULT_LIMIT = 50;
36
+ // `--limit 0` is a legitimate answer (ask for nothing), so the floor is 0 rather
37
+ // than 1, but a negative or non-numeric page is a typo the server would silently
38
+ // reinterpret.
39
+ function pageNumber(raw, flag, fallback) {
40
+ if (raw === undefined)
41
+ return fallback;
42
+ const value = Number(raw);
43
+ if (!Number.isInteger(value) || value < 0) {
44
+ console.error(kleur.red(`--${flag} must be a non-negative whole number.`));
45
+ process.exit(1);
46
+ }
47
+ return value;
48
+ }
35
49
  async function usersList(client, rest) {
36
50
  const json = rest.includes("--json");
37
51
  const limitFlag = extractFlag(rest, "limit");
38
52
  const offsetFlag = extractFlag(limitFlag.rest, "offset");
39
- const limit = Number(limitFlag.value ?? "50");
40
- const offset = Number(offsetFlag.value ?? "0");
41
- const { users, total } = await listUsers(client);
53
+ const limit = pageNumber(limitFlag.value, "limit", DEFAULT_LIMIT);
54
+ const offset = pageNumber(offsetFlag.value, "offset", 0);
55
+ const { users, total } = await listUsers(client, { limit, offset });
42
56
  if (json) {
43
57
  console.log(JSON.stringify(users, null, 2));
44
58
  return;
45
59
  }
46
- const page = users.slice(offset, offset + limit);
47
- if (page.length === 0) {
60
+ if (users.length === 0) {
48
61
  console.log(kleur.dim("No users."));
49
62
  return;
50
63
  }
51
- for (const user of page) {
64
+ for (const user of users) {
52
65
  printUserRow(user);
53
66
  }
54
- console.log(kleur.dim(`Showing ${offset + 1}-${offset + page.length} of ${total} user${total === 1 ? "" : "s"}.`));
67
+ console.log(kleur.dim(`Showing ${offset + 1}-${offset + users.length} of ${total} user${total === 1 ? "" : "s"}.`));
55
68
  }
56
69
  async function usersDelete(client, rest) {
57
70
  const id = rest.find((arg) => !arg.startsWith("--"));
@@ -1 +1 @@
1
- {"version":3,"file":"users.js","sourceRoot":"","sources":["../../src/commands/users.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"users.js","sourceRoot":"","sources":["../../src/commands/users.ts"],"names":[],"mappings":"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"}
@@ -57,8 +57,9 @@ function readTemplateFlows(dir) {
57
57
  }
58
58
  }
59
59
  // The web templates to build, serve, and drive. Each is served at :5173 in turn and
60
- // pointed at the adapter. Resolution order: an explicit SEAMLESS_REACT_DIR (a single
61
- // template path, used by CI), otherwise every runnable web template in the registry.
60
+ // pointed at the adapter. SEAMLESS_REACT_DIR narrows the run to one template directory;
61
+ // otherwise every runnable web template in the registry is driven, which is what CI does
62
+ // (it sets SEAMLESS_TEMPLATES_DIR and leaves the set alone).
62
63
  function resolveWebTemplates() {
63
64
  const override = process.env.SEAMLESS_REACT_DIR;
64
65
  if (override) {
@@ -96,6 +97,7 @@ function flowsToGrep(flows) {
96
97
  return flows.map((f) => `@${f}`).join("|");
97
98
  }
98
99
  const VENDOR_DIR = path.join(VERIFY_DIR, "adapter-app", "vendor");
100
+ const FASTIFY_VENDOR_DIR = path.join(VERIFY_DIR, "adapter-fastify-app", "vendor");
99
101
  const REACT_VENDOR_DIR = path.join(VERIFY_DIR, "react-vendor");
100
102
  // The React client SDK (@seamless-auth/react). Defaults to a sibling checkout;
101
103
  // override with SEAMLESS_REACT_SDK_DIR. Only needed for --local browser runs.
@@ -119,7 +121,7 @@ function resolveServerDir() {
119
121
  return candidate;
120
122
  }
121
123
  function cleanVendor() {
122
- for (const dir of [VENDOR_DIR, REACT_VENDOR_DIR]) {
124
+ for (const dir of [VENDOR_DIR, FASTIFY_VENDOR_DIR, REACT_VENDOR_DIR]) {
123
125
  for (const f of fs.readdirSync(dir)) {
124
126
  if (f.endsWith(".tgz"))
125
127
  fs.rmSync(path.join(dir, f));
@@ -134,17 +136,35 @@ async function packLocalReactSdk(env) {
134
136
  await runCommand("npm", ["run", "build"], sdkDir, env);
135
137
  await runCommand("npm", ["pack", "--pack-destination", REACT_VENDOR_DIR], sdkDir, env);
136
138
  }
139
+ // Each adapter image installs core plus its own framework package, so the
140
+ // tarballs are packed into that image's vendor dir and nothing else.
141
+ const ADAPTER_SDKS = [
142
+ { pkg: "@seamless-auth/express", vendorDir: VENDOR_DIR },
143
+ { pkg: "@seamless-auth/fastify", vendorDir: FASTIFY_VENDOR_DIR },
144
+ ];
137
145
  async function packLocalSdks(env) {
138
146
  const serverDir = resolveServerDir();
139
- console.log(kleur.cyan("→ Building & packing local @seamless-auth/* (core, express)…"));
147
+ console.log(kleur.cyan("→ Building & packing local @seamless-auth/* (core, express, fastify)…"));
140
148
  await runCommand("pnpm", ["--filter", "@seamless-auth/core", "build"], serverDir, env);
141
- await runCommand("pnpm", ["--filter", "@seamless-auth/express", "build"], serverDir, env);
142
- for (const pkg of ["@seamless-auth/core", "@seamless-auth/express"]) {
143
- await runCommand("pnpm", ["--filter", pkg, "pack", "--pack-destination", VENDOR_DIR], serverDir, env);
149
+ for (const { pkg } of ADAPTER_SDKS) {
150
+ await runCommand("pnpm", ["--filter", pkg, "build"], serverDir, env);
151
+ }
152
+ for (const { pkg, vendorDir } of ADAPTER_SDKS) {
153
+ // core goes into both, since each image installs it alongside its adapter.
154
+ for (const target of ["@seamless-auth/core", pkg]) {
155
+ await runCommand("pnpm", ["--filter", target, "pack", "--pack-destination", vendorDir], serverDir, env);
156
+ }
144
157
  }
145
158
  }
159
+ // An extra compose file layered over the base one, for settings that only make sense in
160
+ // one environment. CI uses it to attach a build cache; a local run sets nothing and gets
161
+ // the file it always got.
162
+ const COMPOSE_OVERRIDE = process.env.SEAMLESS_VERIFY_COMPOSE_OVERRIDE?.trim();
146
163
  function compose(env, ...args) {
147
- return runCommand("docker", ["compose", "-f", COMPOSE_FILE, ...args], VERIFY_DIR, env);
164
+ const files = ["-f", COMPOSE_FILE];
165
+ if (COMPOSE_OVERRIDE)
166
+ files.push("-f", COMPOSE_OVERRIDE);
167
+ return runCommand("docker", ["compose", ...files, ...args], VERIFY_DIR, env);
148
168
  }
149
169
  // Runs a set of Playwright projects, optionally narrowed by a grep. Returns true on
150
170
  // pass, false on failure, so one layer failing does not abort the others.
@@ -193,6 +213,7 @@ function collectPackageVersions(opts, apiDir, webTemplates) {
193
213
  const serverDir = resolveServerDir();
194
214
  push("@seamless-auth/core", readPkgVersion(path.join(serverDir, "packages", "core", "package.json")));
195
215
  push("@seamless-auth/express", readPkgVersion(path.join(serverDir, "packages", "express", "package.json")));
216
+ push("@seamless-auth/fastify", readPkgVersion(path.join(serverDir, "packages", "fastify", "package.json")));
196
217
  }
197
218
  catch {
198
219
  // Server checkout unavailable; leave the SDK lines out rather than fail.
@@ -209,6 +230,7 @@ function collectPackageVersions(opts, apiDir, webTemplates) {
209
230
  else {
210
231
  // Released: the pins the adapter and web images build against.
211
232
  push("@seamless-auth/express", readDepVersion(path.join(VERIFY_DIR, "adapter-app", "package.json"), "@seamless-auth/express"));
233
+ push("@seamless-auth/fastify", readDepVersion(path.join(VERIFY_DIR, "adapter-fastify-app", "package.json"), "@seamless-auth/fastify"));
212
234
  const reactPins = new Set();
213
235
  for (const tmpl of webTemplates) {
214
236
  const pin = readDepVersion(path.join(tmpl.dir, "package.json"), "@seamless-auth/react");
@@ -306,11 +328,12 @@ export async function runVerify(args = []) {
306
328
  SEAMLESS_OWNER_EMAIL: ownerEmail,
307
329
  SEAMLESS_API_URL: "http://localhost:5312",
308
330
  SEAMLESS_ADAPTER_URL: "http://localhost:3000",
331
+ SEAMLESS_FASTIFY_ADAPTER_URL: "http://localhost:3001",
309
332
  };
310
333
  // The base stack (no browser layer). The react service is added per template below.
311
334
  const baseServices = ["postgres", "auth-api"];
312
335
  if (!opts.apiOnly)
313
- baseServices.push("adapter");
336
+ baseServices.push("adapter", "adapter-fastify");
314
337
  let failed = false;
315
338
  let setupError;
316
339
  const results = [];
@@ -338,11 +361,14 @@ export async function runVerify(args = []) {
338
361
  // API and adapter layers are template-independent, so they run once.
339
362
  const apiEnv = {
340
363
  ...baseEnv,
341
- ...(opts.apiOnly ? {} : { SEAMLESS_VERIFY_ADAPTER: "1" }),
364
+ ...(opts.apiOnly
365
+ ? {}
366
+ : { SEAMLESS_VERIFY_ADAPTER: "1", SEAMLESS_VERIFY_ADAPTER_FASTIFY: "1" }),
342
367
  };
343
368
  const apiProjects = ["api"];
369
+ // The adapter suite runs once per adopter framework, against the same specs.
344
370
  if (!opts.apiOnly)
345
- apiProjects.push("adapter");
371
+ apiProjects.push("adapter", "adapter-fastify");
346
372
  const apiLabel = opts.apiOnly ? "API" : "API / adapter";
347
373
  console.log(kleur.cyan("→ Running the API / adapter conformance…\n"));
348
374
  if (!(await runLayer(results, apiLabel, () => runProjects(apiEnv, apiProjects, opts.grep)))) {
@@ -356,6 +382,10 @@ export async function runVerify(args = []) {
356
382
  SEAMLESS_REACT_DIR: tmpl.dir,
357
383
  SEAMLESS_REACT_URL: "http://localhost:5173",
358
384
  SEAMLESS_VERIFY_REACT: "1",
385
+ // Only read by the CI cache override, which keys the react build cache per
386
+ // template. Each one is different source, so sharing a scope would have them
387
+ // evict each other every run.
388
+ SEAMLESS_VERIFY_TEMPLATE_ID: tmpl.id,
359
389
  };
360
390
  const grep = opts.grep ?? flowsToGrep(tmpl.flows);
361
391
  const label = `Web · ${tmpl.id}${grep ? ` (${grep})` : " (all flows)"}`;