diff --git a/.changeset/25727-round2-dependency-pins.md b/.changeset/25727-round2-dependency-pins.md new file mode 100644 index 0000000000..3d35da8ac1 --- /dev/null +++ b/.changeset/25727-round2-dependency-pins.md @@ -0,0 +1,9 @@ +--- +"@object-ui/plugin-chatbot": patch +"@object-ui/auth": patch +--- + +Clause-②: no +Metadata-protocol: none + +Dependency pins the merged objectstack tree resolves to one copy: `@object-ui/plugin-chatbot` pins `@ai-sdk/react` to `4.0.121` and `ai` to `7.0.118` (the `ai` that `@ai-sdk/react` 4.0.121 itself pins, so the chat transport's types come from one `ai`), and `@object-ui/auth` pins `better-auth` to `1.7.12`. diff --git a/.objectstack-sha b/.objectstack-sha index 8abcf4de4f..e7175c3c61 100644 --- a/.objectstack-sha +++ b/.objectstack-sha @@ -1 +1 @@ -43edf90b56db8b47ad17684c145fb7fa8bf08583 +5874d25302cbb80db675eddf1b69198073fbe2a9 diff --git a/apps/console/src/components/RootLandingRedirect.test.ts b/apps/console/src/components/RootLandingRedirect.test.ts index 704f6dbb51..643b976a66 100644 --- a/apps/console/src/components/RootLandingRedirect.test.ts +++ b/apps/console/src/components/RootLandingRedirect.test.ts @@ -70,7 +70,7 @@ describe('resolveLandingPath', () => { // platform administration console shipped by @objectstack/platform-objects // into every deployment, so "the only app I can see is Setup" means "this // environment has no product apps yet", not "Setup is the product". Under - // ADR-0075 the environment layer's home is the environment's own + // ObjectUI ADR-0075 the environment layer's home is the environment's own // responsibility, and `/home` — build-with-AI, start-from-a-template, Your // apps — is that home. describe('objectui#4048 — a Setup-only deployment lands on the env home', () => { @@ -93,7 +93,7 @@ describe('resolveLandingPath', () => { expect(resolveLandingPath([{ name: 'setup' }])).toBe('/home'); }); - it('still lands in Setup when the deployment DECLARES it (ADR-0075 wins over the default)', () => { + it('still lands in Setup when the deployment DECLARES it (ObjectUI ADR-0075 wins over the default)', () => { // The declared landing is the escape hatch: an admin-console deployment // that genuinely wants Setup as its first screen says so with // `isDefault`, and rule 1 is deliberately untouched by this fix. diff --git a/apps/console/src/components/RootLandingRedirect.tsx b/apps/console/src/components/RootLandingRedirect.tsx index 2ed110ae80..174b92dd9f 100644 --- a/apps/console/src/components/RootLandingRedirect.tsx +++ b/apps/console/src/components/RootLandingRedirect.tsx @@ -100,7 +100,7 @@ export function resolveLandingPath(apps: readonly LandingApp[] | null | undefine // .resolveLandingRoute`), which for Setup is `dashboard/system_overview`. // // "The only app I can see is Setup" means the environment has no product - // apps yet — and under ADR-0075 the environment layer's home is the + // apps yet — and under ObjectUI ADR-0075 the environment layer's home is the // environment's own responsibility, which is `/home` (build with AI, start // from a template, Your apps). Rule 1 is deliberately left alone: a // deployment that genuinely wants Setup as its first screen DECLARES it diff --git a/packages/app-shell/src/__tests__/homeAffordancesFollowDeclaration-7256.test.ts b/packages/app-shell/src/__tests__/homeAffordancesFollowDeclaration-7256.test.ts index 7e69f2c75c..a30beb479e 100644 --- a/packages/app-shell/src/__tests__/homeAffordancesFollowDeclaration-7256.test.ts +++ b/packages/app-shell/src/__tests__/homeAffordancesFollowDeclaration-7256.test.ts @@ -10,7 +10,7 @@ * cloud's control plane lands a signed-in customer on the app declared with * `isDefault` (`cloud_control` → its Welcome page). The chrome did not follow: * the top-bar logo, both sidebar Home rows and the app-switcher Home entry each - * hard-coded `/home`, the ENVIRONMENT layer's launcher (ADR-0075). One click on + * hard-coded `/home`, the ENVIRONMENT layer's launcher (ObjectUI ADR-0075). One click on * the logo therefore left the control plane's guided welcome for a screen whose * "Build an app" / "Start from a template" cards act on an environment the * control plane does not have, and whose "Your apps" tiles are the control diff --git a/packages/app-shell/src/__tests__/homeRecoveryRedirectsFollowDeclaration-7373.test.ts b/packages/app-shell/src/__tests__/homeRecoveryRedirectsFollowDeclaration-7373.test.ts index 66416597b5..6c98f4c27e 100644 --- a/packages/app-shell/src/__tests__/homeRecoveryRedirectsFollowDeclaration-7373.test.ts +++ b/packages/app-shell/src/__tests__/homeRecoveryRedirectsFollowDeclaration-7373.test.ts @@ -16,7 +16,7 @@ * * What was left behind: a control-plane customer refused an app, or landed on a * surface their runtime does not serve, was dropped on the ENVIRONMENT launcher - * (ADR-0075) — "Build an app" / "Start from a template" cards acting on an + * (ObjectUI ADR-0075) — "Build an app" / "Start from a template" cards acting on an * environment the control plane does not have, and "Your apps" tiles that are * the control plane's own internal management apps. The declaration was already * read by `/` and by the chrome; only the error paths still disagreed. @@ -67,7 +67,7 @@ * - `utils/homePath.ts` — `HOME_LAUNCHER_PATH` IS the launcher, and the `??` * fallback every site above resolves through. Making it anything else is * option C (redirecting `/home` itself), which the card's ruling excluded: - * it would strip the environment layer of its real launcher (ADR-0075). + * it would strip the environment layer of its real launcher (ObjectUI ADR-0075). * * `console/ConsoleShell.tsx`'s `RootRedirect` was a second such site — the `/` * LANDING rather than a recovery exit, held out of the launcher scan by a @@ -175,7 +175,7 @@ describe('objectui#7373 — recovery redirects follow the declared landing', () it('⛔ the launcher constant itself is untouched — option C stays excluded', () => { // `HOME_LAUNCHER_PATH` is the fallback every site above resolves through. // A card that "fixed" this line would redirect `/home` itself and strip the - // environment layer of its launcher (ADR-0075) — excluded by the ruling. + // environment layer of its launcher (ObjectUI ADR-0075) — excluded by the ruling. const src = stripComments(read('packages/app-shell/src/utils/homePath.ts')); expect(src).toMatch(/export const HOME_LAUNCHER_PATH = '\/home';/); }); diff --git a/packages/app-shell/src/preview/__tests__/DraftChangesPanel.securityProblems.test.tsx b/packages/app-shell/src/preview/__tests__/DraftChangesPanel.securityProblems.test.tsx index 0fbf8b9fbb..144a6beb26 100644 --- a/packages/app-shell/src/preview/__tests__/DraftChangesPanel.securityProblems.test.tsx +++ b/packages/app-shell/src/preview/__tests__/DraftChangesPanel.securityProblems.test.tsx @@ -36,6 +36,11 @@ vi.mock('@object-ui/i18n', async (importOriginal) => { }); import { DraftChangesPanel } from '../DraftChangesPanel'; +// Warm the lint package at module scope: `securityPostureLint` loads it with a +// function-body `import('@objectstack/lint')`, and that first transform must not +// be paid inside a 1000 ms `findBy` window (AGENTS.md, test discipline). Same +// specifier, so the component's own dynamic import resolves from the cache. +import '@objectstack/lint'; afterEach(() => { vi.restoreAllMocks(); diff --git a/packages/app-shell/src/utils/homePath.ts b/packages/app-shell/src/utils/homePath.ts index 7274475225..a10aacd2e0 100644 --- a/packages/app-shell/src/utils/homePath.ts +++ b/packages/app-shell/src/utils/homePath.ts @@ -6,7 +6,7 @@ * Two different screens have both called themselves the console's home: * * - `/home`, the multi-app workspace launcher ("Build an app", "Start from a - * template", "Your apps"). Under ADR-0075 that is the ENVIRONMENT layer's + * template", "Your apps"). Under ObjectUI ADR-0075 that is the ENVIRONMENT layer's * home: its cards act on the environment the SPA is attached to. * - `/apps/`, the landing an App DECLARES with `isDefault: true`. The * landing page WITHIN that app is its first navigation item (spec 17.0.0 @@ -46,7 +46,7 @@ /** * The multi-app workspace launcher — the environment layer's own home - * (ADR-0075). The fallback whenever no App declares a landing, which is every + * (ObjectUI ADR-0075). The fallback whenever no App declares a landing, which is every * ordinary environment and therefore the unchanged status quo. */ export const HOME_LAUNCHER_PATH = '/home'; diff --git a/packages/auth/package.json b/packages/auth/package.json index c17b1053e4..2e2b262c45 100644 --- a/packages/auth/package.json +++ b/packages/auth/package.json @@ -39,7 +39,7 @@ }, "dependencies": { "@objectstack/spec": "^18.0.0-next.1", - "better-auth": "^1.7.2" + "better-auth": "1.7.12" }, "devDependencies": { "@types/react": "19.3.0", diff --git a/packages/plugin-chatbot/package.json b/packages/plugin-chatbot/package.json index 6ef48f9028..6811f5c961 100644 --- a/packages/plugin-chatbot/package.json +++ b/packages/plugin-chatbot/package.json @@ -36,7 +36,7 @@ "lint": "eslint ." }, "dependencies": { - "@ai-sdk/react": "^4.0.68", + "@ai-sdk/react": "4.0.121", "@object-ui/components": "workspace:*", "@object-ui/core": "workspace:*", "@object-ui/i18n": "workspace:*", @@ -45,7 +45,7 @@ "@radix-ui/react-slot": "^1.3.3", "@objectstack/spec": "^18.0.0-next.1", "@radix-ui/react-use-controllable-state": "^1.2.6", - "ai": "^7.0.65", + "ai": "7.0.118", "class-variance-authority": "^0.7.1", "lucide-react": "^1.43.0", "motion": "^13.2.0", diff --git a/packages/plugin-dashboard/SKILL.md b/packages/plugin-dashboard/SKILL.md index 31f8bd0bbc..dced132405 100644 --- a/packages/plugin-dashboard/SKILL.md +++ b/packages/plugin-dashboard/SKILL.md @@ -1,3 +1,12 @@ +--- +name: plugin-dashboard +description: Skill notes for @object-ui/plugin-dashboard, the server-driven dashboard renderer — repo-internal package notes, not part of the published skills catalog. +metadata: + # Hides this file from `npx skills add` discovery: every SKILL.md outside the + # published `skills/` catalog carries this marker. + internal: true +--- + # @object-ui/plugin-dashboard — Skill notes Server-driven dashboard renderer. Consumes `DashboardSchema` (from diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 5898326264..904fc88232 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -42,7 +42,7 @@ importers: version: link:packages/test-support '@objectstack/spec': specifier: file:.objectstack-pin/spec - version: file:.objectstack-pin/spec(ai@7.0.65(zod@4.6.7)) + version: file:.objectstack-pin/spec(ai@7.0.118(zod@4.6.7)) '@playwright/test': specifier: ^1.62.1 version: 1.62.1 @@ -280,13 +280,13 @@ importers: version: link:../../packages/types '@objectstack/client': specifier: file:../../.objectstack-pin/client - version: file:.objectstack-pin/client(ai@7.0.65(zod@4.6.7)) + version: file:.objectstack-pin/client(ai@7.0.118(zod@4.6.7)) '@objectstack/lint': specifier: file:../../.objectstack-pin/lint - version: file:.objectstack-pin/lint(ai@7.0.65(zod@4.6.7)) + version: file:.objectstack-pin/lint(ai@7.0.118(zod@4.6.7)) '@objectstack/spec': specifier: file:../../.objectstack-pin/spec - version: file:.objectstack-pin/spec(ai@7.0.65(zod@4.6.7)) + version: file:.objectstack-pin/spec(ai@7.0.118(zod@4.6.7)) '@tailwindcss/postcss': specifier: ^4.3.3 version: 4.3.3 @@ -424,7 +424,7 @@ importers: version: link:../../packages/types '@objectstack/spec': specifier: file:../../.objectstack-pin/spec - version: file:.objectstack-pin/spec(ai@7.0.65(zod@4.6.7)) + version: file:.objectstack-pin/spec(ai@7.0.118(zod@4.6.7)) fumadocs-core: specifier: 16.15.4 version: 16.15.4(@mdx-js/mdx@3.1.1)(@tanstack/react-router@1.170.8(react-dom@19.3.0(react@19.3.0))(react@19.3.0))(@types/estree-jsx@1.0.5)(@types/hast@3.0.5)(@types/mdast@4.0.4)(@types/react@19.3.0)(lucide-react@1.43.0(react@19.3.0))(next@16.3.8(@babel/core@7.29.7)(@opentelemetry/api@1.9.1)(@playwright/test@1.62.1)(@types/node@26.2.0)(react-dom@19.3.0(react@19.3.0))(react@19.3.0))(react-dom@19.3.0(react@19.3.0))(react-router@7.18.2(react-dom@19.3.0(react@19.3.0))(react@19.3.0))(react@19.3.0)(zod@4.6.7) @@ -782,13 +782,13 @@ importers: version: link:../types '@objectstack/formula': specifier: file:../../.objectstack-pin/formula - version: file:.objectstack-pin/formula(ai@7.0.65(zod@4.6.7)) + version: file:.objectstack-pin/formula(ai@7.0.118(zod@4.6.7)) '@objectstack/lint': specifier: file:../../.objectstack-pin/lint - version: file:.objectstack-pin/lint(ai@7.0.65(zod@4.6.7)) + version: file:.objectstack-pin/lint(ai@7.0.118(zod@4.6.7)) '@objectstack/spec': specifier: file:../../.objectstack-pin/spec - version: file:.objectstack-pin/spec(ai@7.0.65(zod@4.6.7)) + version: file:.objectstack-pin/spec(ai@7.0.118(zod@4.6.7)) '@sentry/react': specifier: ^10.70.0 version: 10.70.0(react@19.3.0) @@ -879,10 +879,10 @@ importers: dependencies: '@objectstack/spec': specifier: file:../../.objectstack-pin/spec - version: file:.objectstack-pin/spec(ai@7.0.65(zod@4.6.7)) + version: file:.objectstack-pin/spec(ai@7.0.118(zod@4.6.7)) better-auth: - specifier: ^1.7.2 - version: 1.7.2(@opentelemetry/api@1.9.1)(better-sqlite3@12.9.0)(mongodb@7.2.0(socks@2.8.9))(next@16.3.8(@babel/core@7.29.7)(@opentelemetry/api@1.9.1)(@playwright/test@1.62.1)(@types/node@26.2.0)(react-dom@19.3.0(react@19.3.0))(react@19.3.0))(react-dom@19.3.0(react@19.3.0))(react@19.3.0)(vitest@4.1.10) + specifier: 1.7.12 + version: 1.7.12(@opentelemetry/api@1.9.1)(mongodb@7.2.0(socks@2.8.9))(next@16.3.8(@babel/core@7.29.7)(@opentelemetry/api@1.9.1)(@playwright/test@1.62.1)(@types/node@26.2.0)(react-dom@19.3.0(react@19.3.0))(react@19.3.0))(react-dom@19.3.0(react@19.3.0))(react@19.3.0)(vitest@4.1.10) devDependencies: '@types/react': specifier: 19.3.0 @@ -910,7 +910,7 @@ importers: version: link:../types '@objectstack/spec': specifier: file:../../.objectstack-pin/spec - version: file:.objectstack-pin/spec(ai@7.0.65(zod@4.6.7)) + version: file:.objectstack-pin/spec(ai@7.0.118(zod@4.6.7)) '@tailwindcss/postcss': specifier: ^4.3.3 version: 4.3.3 @@ -978,7 +978,7 @@ importers: devDependencies: '@objectstack/spec': specifier: file:../../.objectstack-pin/spec - version: file:.objectstack-pin/spec(ai@7.0.65(zod@4.6.7)) + version: file:.objectstack-pin/spec(ai@7.0.118(zod@4.6.7)) '@types/react': specifier: 19.3.0 version: 19.3.0 @@ -1014,7 +1014,7 @@ importers: version: link:../types '@objectstack/spec': specifier: file:../../.objectstack-pin/spec - version: file:.objectstack-pin/spec(ai@7.0.65(zod@4.6.7)) + version: file:.objectstack-pin/spec(ai@7.0.118(zod@4.6.7)) '@radix-ui/react-accordion': specifier: ^1.2.20 version: 1.2.20(@types/react-dom@19.3.0(@types/react@19.3.0))(@types/react@19.3.0)(react-dom@19.3.0(react@19.3.0))(react@19.3.0) @@ -1198,10 +1198,10 @@ importers: version: link:../types '@objectstack/formula': specifier: file:../../.objectstack-pin/formula - version: file:.objectstack-pin/formula(ai@7.0.65(zod@4.6.7)) + version: file:.objectstack-pin/formula(ai@7.0.118(zod@4.6.7)) '@objectstack/spec': specifier: file:../../.objectstack-pin/spec - version: file:.objectstack-pin/spec(ai@7.0.65(zod@4.6.7)) + version: file:.objectstack-pin/spec(ai@7.0.118(zod@4.6.7)) devDependencies: '@object-ui/test-support': specifier: workspace:* @@ -1257,10 +1257,10 @@ importers: version: link:../types '@objectstack/client': specifier: file:../../.objectstack-pin/client - version: file:.objectstack-pin/client(ai@7.0.65(zod@4.6.7)) + version: file:.objectstack-pin/client(ai@7.0.118(zod@4.6.7)) '@objectstack/spec': specifier: file:../../.objectstack-pin/spec - version: file:.objectstack-pin/spec(ai@7.0.65(zod@4.6.7)) + version: file:.objectstack-pin/spec(ai@7.0.118(zod@4.6.7)) devDependencies: '@object-ui/test-support': specifier: workspace:* @@ -1300,7 +1300,7 @@ importers: version: link:../types '@objectstack/spec': specifier: file:../../.objectstack-pin/spec - version: file:.objectstack-pin/spec(ai@7.0.65(zod@4.6.7)) + version: file:.objectstack-pin/spec(ai@7.0.118(zod@4.6.7)) hast-util-to-jsx-runtime: specifier: ^2.3.6 version: 2.3.6 @@ -1410,7 +1410,7 @@ importers: version: link:../types '@objectstack/spec': specifier: file:../../.objectstack-pin/spec - version: file:.objectstack-pin/spec(ai@7.0.65(zod@4.6.7)) + version: file:.objectstack-pin/spec(ai@7.0.118(zod@4.6.7)) lucide-react: specifier: ^1.43.0 version: 1.43.0(react@19.3.0) @@ -1451,7 +1451,7 @@ importers: devDependencies: '@objectstack/spec': specifier: file:../../.objectstack-pin/spec - version: file:.objectstack-pin/spec(ai@7.0.65(zod@4.6.7)) + version: file:.objectstack-pin/spec(ai@7.0.118(zod@4.6.7)) '@types/react': specifier: 19.3.0 version: 19.3.0 @@ -1472,7 +1472,7 @@ importers: version: link:../types '@objectstack/spec': specifier: file:../../.objectstack-pin/spec - version: file:.objectstack-pin/spec(ai@7.0.65(zod@4.6.7)) + version: file:.objectstack-pin/spec(ai@7.0.118(zod@4.6.7)) devDependencies: '@types/react': specifier: 19.3.0 @@ -1635,7 +1635,7 @@ importers: version: link:../test-support '@objectstack/spec': specifier: file:../../.objectstack-pin/spec - version: file:.objectstack-pin/spec(ai@7.0.65(zod@4.6.7)) + version: file:.objectstack-pin/spec(ai@7.0.118(zod@4.6.7)) '@types/react': specifier: 19.3.0 version: 19.3.0 @@ -1658,8 +1658,8 @@ importers: packages/plugin-chatbot: dependencies: '@ai-sdk/react': - specifier: ^4.0.68 - version: 4.0.68(react@19.3.0)(zod@4.6.7) + specifier: 4.0.121 + version: 4.0.121(react@19.3.0)(zod@4.6.7) '@object-ui/components': specifier: workspace:* version: link:../components @@ -1677,7 +1677,7 @@ importers: version: link:../types '@objectstack/spec': specifier: file:../../.objectstack-pin/spec - version: file:.objectstack-pin/spec(ai@7.0.65(zod@4.6.7)) + version: file:.objectstack-pin/spec(ai@7.0.118(zod@4.6.7)) '@radix-ui/react-slot': specifier: ^1.3.3 version: 1.3.3(@types/react@19.3.0)(react@19.3.0) @@ -1685,8 +1685,8 @@ importers: specifier: ^1.2.6 version: 1.2.6(@types/react@19.3.0)(react@19.3.0) ai: - specifier: ^7.0.65 - version: 7.0.65(zod@4.6.7) + specifier: 7.0.118 + version: 7.0.118(zod@4.6.7) class-variance-authority: specifier: ^0.7.1 version: 0.7.1 @@ -1768,7 +1768,7 @@ importers: version: link:../types '@objectstack/spec': specifier: file:../../.objectstack-pin/spec - version: file:.objectstack-pin/spec(ai@7.0.65(zod@4.6.7)) + version: file:.objectstack-pin/spec(ai@7.0.118(zod@4.6.7)) lucide-react: specifier: ^1.43.0 version: 1.43.0(react@19.3.0) @@ -1838,7 +1838,7 @@ importers: version: link:../types '@objectstack/spec': specifier: file:../../.objectstack-pin/spec - version: file:.objectstack-pin/spec(ai@7.0.65(zod@4.6.7)) + version: file:.objectstack-pin/spec(ai@7.0.118(zod@4.6.7)) clsx: specifier: ^2.1.1 version: 2.1.1 @@ -1890,7 +1890,7 @@ importers: version: link:../i18n '@objectstack/spec': specifier: file:../../.objectstack-pin/spec - version: file:.objectstack-pin/spec(ai@7.0.65(zod@4.6.7)) + version: file:.objectstack-pin/spec(ai@7.0.118(zod@4.6.7)) lucide-react: specifier: ^1.43.0 version: 1.43.0(react@19.3.0) @@ -2015,7 +2015,7 @@ importers: version: link:../types '@objectstack/spec': specifier: file:../../.objectstack-pin/spec - version: file:.objectstack-pin/spec(ai@7.0.65(zod@4.6.7)) + version: file:.objectstack-pin/spec(ai@7.0.118(zod@4.6.7)) lucide-react: specifier: ^1.43.0 version: 1.43.0(react@19.3.0) @@ -2076,7 +2076,7 @@ importers: version: link:../types '@objectstack/spec': specifier: file:../../.objectstack-pin/spec - version: file:.objectstack-pin/spec(ai@7.0.65(zod@4.6.7)) + version: file:.objectstack-pin/spec(ai@7.0.118(zod@4.6.7)) lucide-react: specifier: ^1.43.0 version: 1.43.0(react@19.3.0) @@ -2146,7 +2146,7 @@ importers: version: link:../types '@objectstack/spec': specifier: file:../../.objectstack-pin/spec - version: file:.objectstack-pin/spec(ai@7.0.65(zod@4.6.7)) + version: file:.objectstack-pin/spec(ai@7.0.118(zod@4.6.7)) '@tanstack/react-virtual': specifier: ^3.14.9 version: 3.14.9(react-dom@19.3.0(react@19.3.0))(react@19.3.0) @@ -2283,7 +2283,7 @@ importers: dependencies: '@objectstack/spec': specifier: file:../../.objectstack-pin/spec - version: file:.objectstack-pin/spec(ai@7.0.65(zod@4.6.7)) + version: file:.objectstack-pin/spec(ai@7.0.118(zod@4.6.7)) lucide-react: specifier: ^1.43.0 version: 1.43.0(react@19.3.0) @@ -2503,7 +2503,7 @@ importers: version: link:../test-support '@objectstack/spec': specifier: file:../../.objectstack-pin/spec - version: file:.objectstack-pin/spec(ai@7.0.65(zod@4.6.7)) + version: file:.objectstack-pin/spec(ai@7.0.118(zod@4.6.7)) '@types/node': specifier: ^26.2.0 version: 26.2.0 @@ -2554,7 +2554,7 @@ importers: version: link:../types '@objectstack/spec': specifier: file:../../.objectstack-pin/spec - version: file:.objectstack-pin/spec(ai@7.0.65(zod@4.6.7)) + version: file:.objectstack-pin/spec(ai@7.0.118(zod@4.6.7)) class-variance-authority: specifier: ^0.7.1 version: 0.7.1 @@ -2624,7 +2624,7 @@ importers: version: link:../types '@objectstack/spec': specifier: file:../../.objectstack-pin/spec - version: file:.objectstack-pin/spec(ai@7.0.65(zod@4.6.7)) + version: file:.objectstack-pin/spec(ai@7.0.118(zod@4.6.7)) lucide-react: specifier: ^1.43.0 version: 1.43.0(react@19.3.0) @@ -2697,7 +2697,7 @@ importers: version: link:../types '@objectstack/spec': specifier: file:../../.objectstack-pin/spec - version: file:.objectstack-pin/spec(ai@7.0.65(zod@4.6.7)) + version: file:.objectstack-pin/spec(ai@7.0.118(zod@4.6.7)) class-variance-authority: specifier: ^0.7.1 version: 0.7.1 @@ -2762,7 +2762,7 @@ importers: version: link:../types '@objectstack/spec': specifier: file:../../.objectstack-pin/spec - version: file:.objectstack-pin/spec(ai@7.0.65(zod@4.6.7)) + version: file:.objectstack-pin/spec(ai@7.0.118(zod@4.6.7)) react: specifier: 19.3.0 version: 19.3.0 @@ -2827,7 +2827,7 @@ importers: devDependencies: '@objectstack/spec': specifier: file:../../.objectstack-pin/spec - version: file:.objectstack-pin/spec(ai@7.0.65(zod@4.6.7)) + version: file:.objectstack-pin/spec(ai@7.0.118(zod@4.6.7)) '@tailwindcss/postcss': specifier: ^4.3.3 version: 4.3.3 @@ -2869,13 +2869,13 @@ importers: version: link:../types '@objectstack/spec': specifier: file:../../.objectstack-pin/spec - version: file:.objectstack-pin/spec(ai@7.0.65(zod@4.6.7)) + version: file:.objectstack-pin/spec(ai@7.0.118(zod@4.6.7)) packages/test-support: devDependencies: '@objectstack/spec': specifier: file:../../.objectstack-pin/spec - version: file:.objectstack-pin/spec(ai@7.0.65(zod@4.6.7)) + version: file:.objectstack-pin/spec(ai@7.0.118(zod@4.6.7)) '@types/node': specifier: ^26.2.0 version: 26.2.0 @@ -2890,7 +2890,7 @@ importers: dependencies: '@objectstack/spec': specifier: file:../../.objectstack-pin/spec - version: file:.objectstack-pin/spec(ai@7.0.65(zod@4.6.7)) + version: file:.objectstack-pin/spec(ai@7.0.118(zod@4.6.7)) zod: specifier: ^4.6.5 version: 4.6.7 @@ -2938,30 +2938,30 @@ packages: '@adobe/css-tools@4.5.0': resolution: {integrity: sha512-6OzddxPio9UiWTCemp4N8cYLV2ZN1ncRnV1cVGtve7dhPOtRkleRyx32GQCYSwDYgaHU3USMm84tNsvKzRCa1Q==} - '@ai-sdk/gateway@4.0.52': - resolution: {integrity: sha512-SXUM8jzzuTUJRq+EOgPd5to6DSx0EKslVn+IVZHbUEX6k/3vCPNrvjckbK26HnNxHU/STxm+zTSJteqrO+7Z0w==} + '@ai-sdk/gateway@4.0.96': + resolution: {integrity: sha512-1aniRTzEf9T7uRHdKnBQ36WgEVQswK6wDgkPVsNMl+sPy7otcmrBa2HEurdFBS51s1q3/UXlh8nNcguwU79Hkg==} engines: {node: '>=22'} peerDependencies: zod: ^3.25.76 || ^4.1.8 - '@ai-sdk/mcp@2.0.31': - resolution: {integrity: sha512-vBxkIg4CB9wQjWYo5uu1G/Vv3Xhbi3JZ47HoT5ywLNTycxKlY2RGGynTyGqcXLcvWBErRyMygDYVFn8VPc1N+w==} + '@ai-sdk/mcp@2.0.60': + resolution: {integrity: sha512-/veUBdZ3u/Kg/F5J2IPq8ePC2sxbtPsteZ9idUWLdmavxI46xbT/ygwWT+jOSp6I4x8p0z618fFdVSNVOyLL4g==} engines: {node: '>=22'} peerDependencies: zod: ^3.25.76 || ^4.1.8 - '@ai-sdk/provider-utils@5.0.27': - resolution: {integrity: sha512-EzAn4pdgG5g0xXtH6lE2zyNmfjDQIDjATkfqzuidEI35g++hh4+07vnjzkT/RmGmIClPZiRj/Q2GMPV2V7mkHw==} + '@ai-sdk/provider-utils@5.0.49': + resolution: {integrity: sha512-T+/H8DCvqJoCqLhltVatS7ffA779Iyk/ZZrgNXkrgv51E0n2Cd6eIdCmtwhCGIKqtbTtwCvTmQdAMv5Z8rOGHQ==} engines: {node: '>=22'} peerDependencies: zod: ^3.25.76 || ^4.1.8 - '@ai-sdk/provider@4.0.7': - resolution: {integrity: sha512-6or44XprPzKbr8zkmzosowSE0pxkvJcoojBL+mCZvPUt3kvXp3XSNqeVun9golb1acEfSo6yaEBRT18h2VU+1Q==} + '@ai-sdk/provider@4.0.18': + resolution: {integrity: sha512-+GZJIgz1jk86pwEbb3f1BD2bdoSKyWE4Jg4YUc7NMnMozbWemSKYZcw2F4nMaO5qwsL5A8RmioAKW81YktRpIQ==} engines: {node: '>=22'} - '@ai-sdk/react@4.0.68': - resolution: {integrity: sha512-zz/CtHN6Wu9i3Fmv/1pZOVRQ8de03t5o7XDVn1KXPVEbIrc5KsV+B+d3tbsBB/d4+Q2yUtZ/BhkP7ubLH6LhUg==} + '@ai-sdk/react@4.0.121': + resolution: {integrity: sha512-x1ZAJVpogdXZJ7E3GJMg6dOKR3Qe+DDgNpQRvnjxdzPN99MXkls58l0o80pNjPExZWEn763iuCB0+V0qZiKEsQ==} engines: {node: '>=22'} peerDependencies: react: 19.3.0 @@ -3175,64 +3175,61 @@ packages: resolution: {integrity: sha512-6zABk/ECA/QYSCQ1NGiVwwbQerUCZ+TQbp64Q3AgmfNvurHH0j8TtXa1qbShXA6qqkpAj4V5W8pP6mLe1mcMqA==} engines: {node: '>=18'} - '@better-auth/core@1.7.2': - resolution: {integrity: sha512-j0nM4ygsWbF/fcYRoKtDn8gn8uLXkmC+075HqSqsJEAV828cJR9bvYBCUQ1zmxNyRBk6Iz/qXsA0Zm2oksiOTg==} + '@better-auth/core@1.7.12': + resolution: {integrity: sha512-SUStBGHJ13KnSO6+7U/1DSlfuOtln4jtOrFZqzQtxZVHZIrAoMjwHNGitlF+s7hvKbuC3Z14xjnqfLLqIqGfxw==} peerDependencies: - '@better-auth/utils': 0.4.2 - '@better-fetch/fetch': 1.3.1 - '@cloudflare/workers-types': '>=4' + '@better-auth/utils': ^0.4.2 || ^0.5.0 + '@better-fetch/fetch': 1.3.2 '@opentelemetry/api': ^1.9.0 - better-call: 1.4.0 + better-call: 1.4.4 jose: ^6.1.0 kysely: ^0.28.5 || ^0.29.0 nanostores: ^1.0.1 peerDependenciesMeta: - '@cloudflare/workers-types': - optional: true '@opentelemetry/api': optional: true - '@better-auth/drizzle-adapter@1.7.2': - resolution: {integrity: sha512-A5wE10PIv3aS5LGePecEHntQylKy6OOF17B4dqlE0DwJeqU/IOBSd7/LZhMop9cNJ3WFjKMpazVSf91yYM/NFg==} + '@better-auth/drizzle-adapter@1.7.12': + resolution: {integrity: sha512-Qzoyuf05aK01Pc0k3EXv8Xj3XCT2m2dCWc5HoB7x+xX6N3Pm2eQsca+UIArsJcbuNEWWP3L51oIebnBoHJ5DTw==} peerDependencies: - '@better-auth/core': ^1.7.2 - '@better-auth/utils': 0.4.2 + '@better-auth/core': ^1.7.12 + '@better-auth/utils': ^0.4.2 || ^0.5.0 drizzle-orm: ^0.45.2 || >=1.0.0-rc.1 <2.0.0 peerDependenciesMeta: drizzle-orm: optional: true - '@better-auth/kysely-adapter@1.7.2': - resolution: {integrity: sha512-LYdSRLOvZiF+6S0UThu+wE/Qxsq9P2jQs7ZKkY6BIBJqUjYyxVDmi8HFcantBvWWW1/BeQCSsD7YVDG4gICMIQ==} + '@better-auth/kysely-adapter@1.7.12': + resolution: {integrity: sha512-1PaFXktLv4n3DmrGbPaCj5SsvcT40NnWw7NLua5/J1+8/A051N5ZzqOwJifXEIQX5k6NdwvmymwDQxKytduEAQ==} peerDependencies: - '@better-auth/core': ^1.7.2 - '@better-auth/utils': 0.4.2 + '@better-auth/core': ^1.7.12 + '@better-auth/utils': ^0.4.2 || ^0.5.0 kysely: ^0.28.17 || ^0.29.0 peerDependenciesMeta: kysely: optional: true - '@better-auth/memory-adapter@1.7.2': - resolution: {integrity: sha512-0q1SXMzm5esH9L0xVuM6IxCk59E4G+3HySX4My9gvEwqtmUobykn+iuc/si3Y4xwUO7JODqQ5o+/pPcLDDMIrA==} + '@better-auth/memory-adapter@1.7.12': + resolution: {integrity: sha512-glaDwXzDptnddHqRuu7fj47FAssUcOzLNgdlTGJoEPrspkX69x2vnXwgAzNuApjZI21WLtPH/rQ6CN+DQGybPA==} peerDependencies: - '@better-auth/core': ^1.7.2 - '@better-auth/utils': 0.4.2 + '@better-auth/core': ^1.7.12 + '@better-auth/utils': ^0.4.2 || ^0.5.0 - '@better-auth/mongo-adapter@1.7.2': - resolution: {integrity: sha512-4879SmUWHUs0OYlvHoCFbycZ7i1bqytkcgAUdt9RLQMvZ5H3LRMTgax2YVlGZEXgwNjY/X7xAoXOecWLhlQWeA==} + '@better-auth/mongo-adapter@1.7.12': + resolution: {integrity: sha512-HKV4sgYSw/Gdt9AuHlESMkiKL72SWdGweDy1Wsyxoh06BpG7aNu4aSJ7marNpMdKZteyRbxWWqQkA9ediA8qFw==} peerDependencies: - '@better-auth/core': ^1.7.2 - '@better-auth/utils': 0.4.2 + '@better-auth/core': ^1.7.12 + '@better-auth/utils': ^0.4.2 || ^0.5.0 mongodb: ^6.0.0 || ^7.0.0 peerDependenciesMeta: mongodb: optional: true - '@better-auth/prisma-adapter@1.7.2': - resolution: {integrity: sha512-mXTr/83WrNWLrvzIjtgDgdu9iXhOcSG1+qBQOAKlbGSFiOB+z4IMRneQ2wmMOiB8mKY9qGkClVUjKRFXqtHnFQ==} + '@better-auth/prisma-adapter@1.7.12': + resolution: {integrity: sha512-FZRX6ORbwhDmeYE1Tl0IPtUn8v3BlVFgbJxDnm/DCNHxuFRf+0t4HfddUgYeYehHFR8aSDsdYX44fEFWM9877w==} peerDependencies: - '@better-auth/core': ^1.7.2 - '@better-auth/utils': 0.4.2 + '@better-auth/core': ^1.7.12 + '@better-auth/utils': ^0.4.2 || ^0.5.0 '@prisma/client': ^5.0.0 || ^6.0.0 || ^7.0.0 prisma: ^5.0.0 || ^6.0.0 || ^7.0.0 peerDependenciesMeta: @@ -3241,21 +3238,18 @@ packages: prisma: optional: true - '@better-auth/telemetry@1.7.2': - resolution: {integrity: sha512-LcWu+O0zrxYDQj8E36vfkJwGPW4k9ZDA/rCo0zST6ihzL+juR7pBowoZIM9E6tK0Vit52mf6412bGT4XM4eTjQ==} + '@better-auth/telemetry@1.7.12': + resolution: {integrity: sha512-DaDkKNnI99vKGGbWq9KJg2uYeaOjsK9nIBw9T2m2KG/RkxpvQRjYkZ00++up2bZQkR5pB1nukGbplza3UJG/Xg==} peerDependencies: - '@better-auth/core': ^1.7.2 - '@better-auth/utils': 0.4.2 - '@better-fetch/fetch': 1.3.1 - - '@better-auth/utils@0.4.2': - resolution: {integrity: sha512-AUxrvu+HaaODsUyzDxFgwd/8RZ1yZaYo42LXKSrU2oGgR38pS1ij8nqQKNgtTWoYGpNevNXtCfgTy6loHveW9A==} + '@better-auth/core': ^1.7.12 + '@better-auth/utils': ^0.4.2 || ^0.5.0 + '@better-fetch/fetch': 1.3.2 '@better-auth/utils@0.5.0': resolution: {integrity: sha512-BL8W4EfIZFwlu0r54m3v1ztjDhu6dDe/amLTm0xybmbZaNgYUqhD3SjpAsnq0q8YD6/ki4iwIgxJNLP/N3TxiA==} - '@better-fetch/fetch@1.3.1': - resolution: {integrity: sha512-ABkD1WhyfPZprKRQI3bhATjeiFuNWC9PXhfGWqL+sg/gKrM977oFrYkdb4msM3hgUGonr7KlOsOFT5TU2rht9g==} + '@better-fetch/fetch@1.3.2': + resolution: {integrity: sha512-Gs7n99b5tqUC6cQAPbV0uED3IraHB6xQbHLQ/C3l7ZFafHScOx9pQ+DYmP5blbLFShVWLqxNUlI9wi4xU/X+ow==} '@braintree/sanitize-url@7.1.2': resolution: {integrity: sha512-jigsZK+sMF/cuiB7sERuo9V7N9jx+dhmHHnQyDSVdpZwVutaBu7WvNYqMDLSgFgfB30n452TP3vjDAvFC973mA==} @@ -4301,10 +4295,6 @@ packages: resolution: {integrity: sha512-gLyJlPHPZYdAk1JENA9LeHejZe1Ti77/pTeFm/nMXmQH/HFZlcS/O2XJB+L8fkbrNSqhdtlvjBVjxwUYanNH5Q==} engines: {node: '>=8.0.0'} - '@opentelemetry/semantic-conventions@1.43.0': - resolution: {integrity: sha512-eSYWTm620tTk45EKSedaUL8MFYI8hW164hIXsgIHyxu3VobUB3fFCu5t0hQby6OoWRPsG1KkKUG2M5UadiLiVg==} - engines: {node: '>=14'} - '@oxc-project/types@0.155.0': resolution: {integrity: sha512-SeE8JPwW1xs1tHeNycjUtUBdhorRa8o4jlvjwk49R7/Z291i+4DQa7JJIgOm/TaYQZx+QrPQbVJ/9c8dMIZN8Q==} @@ -6226,8 +6216,8 @@ packages: resolution: {integrity: sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==} engines: {node: '>= 14'} - ai@7.0.65: - resolution: {integrity: sha512-Uzom971mOHETL9tbeCWDEgbAA/Banj0KnR2obNEWPEUlGnAv2NJjFIxrUZ6F0XxHFDgGVVpnz86BB2CPOZZ83g==} + ai@7.0.118: + resolution: {integrity: sha512-ZjkbbOffH09yQAjeZ5yGXd8ePTQlFIyKH5aW0s0LOMmvaR1TSoeg5wVURwLvFry/IzzaLndmw9glTKwWRoog3Q==} engines: {node: '>=22'} peerDependencies: zod: ^3.25.76 || ^4.1.8 @@ -6400,15 +6390,14 @@ packages: engines: {node: '>=6.0.0'} hasBin: true - better-auth@1.7.2: - resolution: {integrity: sha512-gKapKBEvYIGcMxi74RjQ7EbFLiqyQt58vdoJmL1qAlWSkY1Bc2Vqshl524/3u1NxauiOU03M/Ebh762Brmac9A==} + better-auth@1.7.12: + resolution: {integrity: sha512-f1fEG0QdTslzbmFA+vOGFFW/XXCWkG4kBxLeH9n1vp1otTH9+ZzV6EJ6797GStWeiYYgS5Vnt9xqE12KwSyAAw==} peerDependencies: '@lynx-js/react': '*' '@prisma/client': ^5.0.0 || ^6.0.0 || ^7.0.0 - '@sveltejs/kit': ^2.0.0 + '@sveltejs/kit': ^2.0.0 || ^3.0.0 '@tanstack/react-start': ^1.0.0 '@tanstack/solid-start': ^1.0.0 - better-sqlite3: ^12.0.0 drizzle-kit: '>=0.31.4 || >=1.0.0-beta.1' drizzle-orm: ^0.45.2 || >=1.0.0-rc.1 <2.0.0 mongodb: ^6.0.0 || ^7.0.0 @@ -6420,7 +6409,7 @@ packages: react-dom: 19.3.0 solid-js: ^1.0.0 svelte: ^4.0.0 || ^5.0.0 - vitest: ^2.0.0 || ^3.0.0 || ^4.0.0 + vitest: ^2.0.0 || ^3.0.0 || ^4.0.0 || ^5.0.0 vue: ^3.0.0 peerDependenciesMeta: '@lynx-js/react': @@ -6433,8 +6422,6 @@ packages: optional: true '@tanstack/solid-start': optional: true - better-sqlite3: - optional: true drizzle-kit: optional: true drizzle-orm: @@ -6462,18 +6449,14 @@ packages: vue: optional: true - better-call@1.4.0: - resolution: {integrity: sha512-bBKOT4vv1kZLDgxVePdilk/Jwkn+dtRRsmi3DzHcDP+WnswyVl6dR59l2HEeP/0cB+bDoopASAesWDPIdd/zZA==} + better-call@1.4.4: + resolution: {integrity: sha512-Gq4XdGFy4dmUxFEAX2nj0ycFcFbD9ZWh8YROouZoyXeF1M11TpYbplk0pDByTFF8Wz+MYa6W9052c9m7dD+mfw==} peerDependencies: zod: ^4.0.0 peerDependenciesMeta: zod: optional: true - better-sqlite3@12.9.0: - resolution: {integrity: sha512-wqUv4Gm3toFpHDQmaKD4QhZm3g1DjUBI0yzS4UBl6lElUmXFYdTQmmEDpAFa5o8FiFiymURypEnfVHzILKaxqQ==} - engines: {node: 20.x || 22.x || 23.x || 24.x || 25.x} - bidi-js@1.0.3: resolution: {integrity: sha512-RKshQI1R3YQ+n9YJz2QQ147P66ELpa1FQEg20Dk8oW9t2KgLbpDLLp9aGZ7y8WHSshDknG0bknqGw5/tyCs5tw==} @@ -6488,9 +6471,6 @@ packages: resolution: {integrity: sha512-sXnYK/Ij80TO3lcqZVV2YgfKN5QjUWIRk/XSm2J/4bd/lPko3lvk0O4ZppH6m+6hB2/GTu+ptNwVFe1xh+QLQw==} engines: {node: '>=4'} - bindings@1.5.0: - resolution: {integrity: sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==} - bl@4.1.0: resolution: {integrity: sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==} @@ -7529,9 +7509,6 @@ packages: resolution: {integrity: sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==} engines: {node: '>=16.0.0'} - file-uri-to-path@1.0.0: - resolution: {integrity: sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==} - fill-range@7.1.1: resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} engines: {node: '>=8'} @@ -11076,39 +11053,40 @@ snapshots: '@adobe/css-tools@4.5.0': {} - '@ai-sdk/gateway@4.0.52(zod@4.6.7)': + '@ai-sdk/gateway@4.0.96(zod@4.6.7)': dependencies: - '@ai-sdk/provider': 4.0.7 - '@ai-sdk/provider-utils': 5.0.27(zod@4.6.7) + '@ai-sdk/provider': 4.0.18 + '@ai-sdk/provider-utils': 5.0.49(zod@4.6.7) '@vercel/oidc': 3.2.0 zod: 4.6.7 - '@ai-sdk/mcp@2.0.31(zod@4.6.7)': + '@ai-sdk/mcp@2.0.60(zod@4.6.7)': dependencies: - '@ai-sdk/provider': 4.0.7 - '@ai-sdk/provider-utils': 5.0.27(zod@4.6.7) + '@ai-sdk/provider': 4.0.18 + '@ai-sdk/provider-utils': 5.0.49(zod@4.6.7) + cross-spawn: 7.0.6 pkce-challenge: 5.0.1 zod: 4.6.7 - '@ai-sdk/provider-utils@5.0.27(zod@4.6.7)': + '@ai-sdk/provider-utils@5.0.49(zod@4.6.7)': dependencies: - '@ai-sdk/provider': 4.0.7 + '@ai-sdk/provider': 4.0.18 '@standard-schema/spec': 1.1.0 '@workflow/serde': 4.1.0 eventsource-parser: 3.1.1 undici: 7.29.0 zod: 4.6.7 - '@ai-sdk/provider@4.0.7': + '@ai-sdk/provider@4.0.18': dependencies: json-schema: 0.4.0 - '@ai-sdk/react@4.0.68(react@19.3.0)(zod@4.6.7)': + '@ai-sdk/react@4.0.121(react@19.3.0)(zod@4.6.7)': dependencies: - '@ai-sdk/mcp': 2.0.31(zod@4.6.7) - '@ai-sdk/provider': 4.0.7 - '@ai-sdk/provider-utils': 5.0.27(zod@4.6.7) - ai: 7.0.65(zod@4.6.7) + '@ai-sdk/mcp': 2.0.60(zod@4.6.7) + '@ai-sdk/provider': 4.0.18 + '@ai-sdk/provider-utils': 5.0.49(zod@4.6.7) + ai: 7.0.118(zod@4.6.7) react: 19.3.0 swr: 2.5.1(react@19.3.0) throttleit: 2.1.0 @@ -11420,13 +11398,12 @@ snapshots: '@bcoe/v8-coverage@1.0.2': {} - '@better-auth/core@1.7.2(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.4.0(zod@4.6.7))(jose@6.2.9)(kysely@0.29.5)(nanostores@1.5.0)': + '@better-auth/core@1.7.12(@better-auth/utils@0.5.0)(@better-fetch/fetch@1.3.2)(@opentelemetry/api@1.9.1)(better-call@1.4.4(zod@4.6.7))(jose@6.2.9)(kysely@0.29.5)(nanostores@1.5.0)': dependencies: - '@better-auth/utils': 0.4.2 - '@better-fetch/fetch': 1.3.1 - '@opentelemetry/semantic-conventions': 1.43.0 + '@better-auth/utils': 0.5.0 + '@better-fetch/fetch': 1.3.2 '@standard-schema/spec': 1.1.0 - better-call: 1.4.0(zod@4.6.7) + better-call: 1.4.4(zod@4.6.7) jose: 6.2.9 kysely: 0.29.5 nanostores: 1.5.0 @@ -11434,50 +11411,46 @@ snapshots: optionalDependencies: '@opentelemetry/api': 1.9.1 - '@better-auth/drizzle-adapter@1.7.2(@better-auth/core@1.7.2(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.4.0(zod@4.6.7))(jose@6.2.9)(kysely@0.29.5)(nanostores@1.5.0))(@better-auth/utils@0.4.2)': + '@better-auth/drizzle-adapter@1.7.12(@better-auth/core@1.7.12(@better-auth/utils@0.5.0)(@better-fetch/fetch@1.3.2)(@opentelemetry/api@1.9.1)(better-call@1.4.4(zod@4.6.7))(jose@6.2.9)(kysely@0.29.5)(nanostores@1.5.0))(@better-auth/utils@0.5.0)': dependencies: - '@better-auth/core': 1.7.2(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.4.0(zod@4.6.7))(jose@6.2.9)(kysely@0.29.5)(nanostores@1.5.0) - '@better-auth/utils': 0.4.2 + '@better-auth/core': 1.7.12(@better-auth/utils@0.5.0)(@better-fetch/fetch@1.3.2)(@opentelemetry/api@1.9.1)(better-call@1.4.4(zod@4.6.7))(jose@6.2.9)(kysely@0.29.5)(nanostores@1.5.0) + '@better-auth/utils': 0.5.0 - '@better-auth/kysely-adapter@1.7.2(@better-auth/core@1.7.2(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.4.0(zod@4.6.7))(jose@6.2.9)(kysely@0.29.5)(nanostores@1.5.0))(@better-auth/utils@0.4.2)(kysely@0.29.5)': + '@better-auth/kysely-adapter@1.7.12(@better-auth/core@1.7.12(@better-auth/utils@0.5.0)(@better-fetch/fetch@1.3.2)(@opentelemetry/api@1.9.1)(better-call@1.4.4(zod@4.6.7))(jose@6.2.9)(kysely@0.29.5)(nanostores@1.5.0))(@better-auth/utils@0.5.0)(kysely@0.29.5)': dependencies: - '@better-auth/core': 1.7.2(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.4.0(zod@4.6.7))(jose@6.2.9)(kysely@0.29.5)(nanostores@1.5.0) - '@better-auth/utils': 0.4.2 + '@better-auth/core': 1.7.12(@better-auth/utils@0.5.0)(@better-fetch/fetch@1.3.2)(@opentelemetry/api@1.9.1)(better-call@1.4.4(zod@4.6.7))(jose@6.2.9)(kysely@0.29.5)(nanostores@1.5.0) + '@better-auth/utils': 0.5.0 optionalDependencies: kysely: 0.29.5 - '@better-auth/memory-adapter@1.7.2(@better-auth/core@1.7.2(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.4.0(zod@4.6.7))(jose@6.2.9)(kysely@0.29.5)(nanostores@1.5.0))(@better-auth/utils@0.4.2)': + '@better-auth/memory-adapter@1.7.12(@better-auth/core@1.7.12(@better-auth/utils@0.5.0)(@better-fetch/fetch@1.3.2)(@opentelemetry/api@1.9.1)(better-call@1.4.4(zod@4.6.7))(jose@6.2.9)(kysely@0.29.5)(nanostores@1.5.0))(@better-auth/utils@0.5.0)': dependencies: - '@better-auth/core': 1.7.2(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.4.0(zod@4.6.7))(jose@6.2.9)(kysely@0.29.5)(nanostores@1.5.0) - '@better-auth/utils': 0.4.2 + '@better-auth/core': 1.7.12(@better-auth/utils@0.5.0)(@better-fetch/fetch@1.3.2)(@opentelemetry/api@1.9.1)(better-call@1.4.4(zod@4.6.7))(jose@6.2.9)(kysely@0.29.5)(nanostores@1.5.0) + '@better-auth/utils': 0.5.0 - '@better-auth/mongo-adapter@1.7.2(@better-auth/core@1.7.2(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.4.0(zod@4.6.7))(jose@6.2.9)(kysely@0.29.5)(nanostores@1.5.0))(@better-auth/utils@0.4.2)(mongodb@7.2.0(socks@2.8.9))': + '@better-auth/mongo-adapter@1.7.12(@better-auth/core@1.7.12(@better-auth/utils@0.5.0)(@better-fetch/fetch@1.3.2)(@opentelemetry/api@1.9.1)(better-call@1.4.4(zod@4.6.7))(jose@6.2.9)(kysely@0.29.5)(nanostores@1.5.0))(@better-auth/utils@0.5.0)(mongodb@7.2.0(socks@2.8.9))': dependencies: - '@better-auth/core': 1.7.2(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.4.0(zod@4.6.7))(jose@6.2.9)(kysely@0.29.5)(nanostores@1.5.0) - '@better-auth/utils': 0.4.2 + '@better-auth/core': 1.7.12(@better-auth/utils@0.5.0)(@better-fetch/fetch@1.3.2)(@opentelemetry/api@1.9.1)(better-call@1.4.4(zod@4.6.7))(jose@6.2.9)(kysely@0.29.5)(nanostores@1.5.0) + '@better-auth/utils': 0.5.0 optionalDependencies: mongodb: 7.2.0(socks@2.8.9) - '@better-auth/prisma-adapter@1.7.2(@better-auth/core@1.7.2(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.4.0(zod@4.6.7))(jose@6.2.9)(kysely@0.29.5)(nanostores@1.5.0))(@better-auth/utils@0.4.2)': - dependencies: - '@better-auth/core': 1.7.2(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.4.0(zod@4.6.7))(jose@6.2.9)(kysely@0.29.5)(nanostores@1.5.0) - '@better-auth/utils': 0.4.2 - - '@better-auth/telemetry@1.7.2(@better-auth/core@1.7.2(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.4.0(zod@4.6.7))(jose@6.2.9)(kysely@0.29.5)(nanostores@1.5.0))(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)': + '@better-auth/prisma-adapter@1.7.12(@better-auth/core@1.7.12(@better-auth/utils@0.5.0)(@better-fetch/fetch@1.3.2)(@opentelemetry/api@1.9.1)(better-call@1.4.4(zod@4.6.7))(jose@6.2.9)(kysely@0.29.5)(nanostores@1.5.0))(@better-auth/utils@0.5.0)': dependencies: - '@better-auth/core': 1.7.2(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.4.0(zod@4.6.7))(jose@6.2.9)(kysely@0.29.5)(nanostores@1.5.0) - '@better-auth/utils': 0.4.2 - '@better-fetch/fetch': 1.3.1 + '@better-auth/core': 1.7.12(@better-auth/utils@0.5.0)(@better-fetch/fetch@1.3.2)(@opentelemetry/api@1.9.1)(better-call@1.4.4(zod@4.6.7))(jose@6.2.9)(kysely@0.29.5)(nanostores@1.5.0) + '@better-auth/utils': 0.5.0 - '@better-auth/utils@0.4.2': + '@better-auth/telemetry@1.7.12(@better-auth/core@1.7.12(@better-auth/utils@0.5.0)(@better-fetch/fetch@1.3.2)(@opentelemetry/api@1.9.1)(better-call@1.4.4(zod@4.6.7))(jose@6.2.9)(kysely@0.29.5)(nanostores@1.5.0))(@better-auth/utils@0.5.0)(@better-fetch/fetch@1.3.2)': dependencies: - '@noble/hashes': 2.3.0 + '@better-auth/core': 1.7.12(@better-auth/utils@0.5.0)(@better-fetch/fetch@1.3.2)(@opentelemetry/api@1.9.1)(better-call@1.4.4(zod@4.6.7))(jose@6.2.9)(kysely@0.29.5)(nanostores@1.5.0) + '@better-auth/utils': 0.5.0 + '@better-fetch/fetch': 1.3.2 '@better-auth/utils@0.5.0': dependencies: '@noble/hashes': 2.3.0 - '@better-fetch/fetch@1.3.1': {} + '@better-fetch/fetch@1.3.2': {} '@braintree/sanitize-url@7.1.2': {} @@ -12359,33 +12332,33 @@ snapshots: '@nodelib/fs.scandir': 2.1.5 fastq: 1.20.1 - '@objectstack/client@file:.objectstack-pin/client(ai@7.0.65(zod@4.6.7))': + '@objectstack/client@file:.objectstack-pin/client(ai@7.0.118(zod@4.6.7))': dependencies: - '@objectstack/core': file:.objectstack-pin/core(ai@7.0.65(zod@4.6.7)) - '@objectstack/spec': file:.objectstack-pin/spec(ai@7.0.65(zod@4.6.7)) + '@objectstack/core': file:.objectstack-pin/core(ai@7.0.118(zod@4.6.7)) + '@objectstack/spec': file:.objectstack-pin/spec(ai@7.0.118(zod@4.6.7)) transitivePeerDependencies: - ai - '@objectstack/core@file:.objectstack-pin/core(ai@7.0.65(zod@4.6.7))': + '@objectstack/core@file:.objectstack-pin/core(ai@7.0.118(zod@4.6.7))': dependencies: - '@objectstack/spec': file:.objectstack-pin/spec(ai@7.0.65(zod@4.6.7)) - '@objectstack/types': file:.objectstack-pin/types(ai@7.0.65(zod@4.6.7)) + '@objectstack/spec': file:.objectstack-pin/spec(ai@7.0.118(zod@4.6.7)) + '@objectstack/types': file:.objectstack-pin/types(ai@7.0.118(zod@4.6.7)) zod: 4.6.7 transitivePeerDependencies: - ai - '@objectstack/formula@file:.objectstack-pin/formula(ai@7.0.65(zod@4.6.7))': + '@objectstack/formula@file:.objectstack-pin/formula(ai@7.0.118(zod@4.6.7))': dependencies: '@marcbachmann/cel-js': 8.0.0 - '@objectstack/spec': file:.objectstack-pin/spec(ai@7.0.65(zod@4.6.7)) + '@objectstack/spec': file:.objectstack-pin/spec(ai@7.0.118(zod@4.6.7)) transitivePeerDependencies: - ai - '@objectstack/lint@file:.objectstack-pin/lint(ai@7.0.65(zod@4.6.7))': + '@objectstack/lint@file:.objectstack-pin/lint(ai@7.0.118(zod@4.6.7))': dependencies: - '@objectstack/formula': file:.objectstack-pin/formula(ai@7.0.65(zod@4.6.7)) + '@objectstack/formula': file:.objectstack-pin/formula(ai@7.0.118(zod@4.6.7)) '@objectstack/sdui-parser': file:.objectstack-pin/sdui-parser - '@objectstack/spec': file:.objectstack-pin/spec(ai@7.0.65(zod@4.6.7)) + '@objectstack/spec': file:.objectstack-pin/spec(ai@7.0.118(zod@4.6.7)) ajv: 8.20.0 ajv-formats: 3.0.1(ajv@8.20.0) sucrase: 3.35.1 @@ -12395,16 +12368,16 @@ snapshots: '@objectstack/sdui-parser@file:.objectstack-pin/sdui-parser': {} - '@objectstack/spec@file:.objectstack-pin/spec(ai@7.0.65(zod@4.6.7))': + '@objectstack/spec@file:.objectstack-pin/spec(ai@7.0.118(zod@4.6.7))': dependencies: pg-connection-string: 2.14.1 zod: 4.6.7 optionalDependencies: - ai: 7.0.65(zod@4.6.7) + ai: 7.0.118(zod@4.6.7) - '@objectstack/types@file:.objectstack-pin/types(ai@7.0.65(zod@4.6.7))': + '@objectstack/types@file:.objectstack-pin/types(ai@7.0.118(zod@4.6.7))': dependencies: - '@objectstack/spec': file:.objectstack-pin/spec(ai@7.0.65(zod@4.6.7)) + '@objectstack/spec': file:.objectstack-pin/spec(ai@7.0.118(zod@4.6.7)) transitivePeerDependencies: - ai @@ -12422,8 +12395,6 @@ snapshots: '@opentelemetry/api@1.9.1': optional: true - '@opentelemetry/semantic-conventions@1.43.0': {} - '@oxc-project/types@0.155.0': {} '@playwright/test@1.62.1': @@ -14364,11 +14335,11 @@ snapshots: agent-base@7.1.4: {} - ai@7.0.65(zod@4.6.7): + ai@7.0.118(zod@4.6.7): dependencies: - '@ai-sdk/gateway': 4.0.52(zod@4.6.7) - '@ai-sdk/provider': 4.0.7 - '@ai-sdk/provider-utils': 5.0.27(zod@4.6.7) + '@ai-sdk/gateway': 4.0.96(zod@4.6.7) + '@ai-sdk/provider': 4.0.18 + '@ai-sdk/provider-utils': 5.0.49(zod@4.6.7) zod: 4.6.7 ajv-draft-04@1.0.0(ajv@8.18.0): @@ -14548,51 +14519,43 @@ snapshots: baseline-browser-mapping@2.11.21: {} - better-auth@1.7.2(@opentelemetry/api@1.9.1)(better-sqlite3@12.9.0)(mongodb@7.2.0(socks@2.8.9))(next@16.3.8(@babel/core@7.29.7)(@opentelemetry/api@1.9.1)(@playwright/test@1.62.1)(@types/node@26.2.0)(react-dom@19.3.0(react@19.3.0))(react@19.3.0))(react-dom@19.3.0(react@19.3.0))(react@19.3.0)(vitest@4.1.10): - dependencies: - '@better-auth/core': 1.7.2(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.4.0(zod@4.6.7))(jose@6.2.9)(kysely@0.29.5)(nanostores@1.5.0) - '@better-auth/drizzle-adapter': 1.7.2(@better-auth/core@1.7.2(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.4.0(zod@4.6.7))(jose@6.2.9)(kysely@0.29.5)(nanostores@1.5.0))(@better-auth/utils@0.4.2) - '@better-auth/kysely-adapter': 1.7.2(@better-auth/core@1.7.2(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.4.0(zod@4.6.7))(jose@6.2.9)(kysely@0.29.5)(nanostores@1.5.0))(@better-auth/utils@0.4.2)(kysely@0.29.5) - '@better-auth/memory-adapter': 1.7.2(@better-auth/core@1.7.2(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.4.0(zod@4.6.7))(jose@6.2.9)(kysely@0.29.5)(nanostores@1.5.0))(@better-auth/utils@0.4.2) - '@better-auth/mongo-adapter': 1.7.2(@better-auth/core@1.7.2(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.4.0(zod@4.6.7))(jose@6.2.9)(kysely@0.29.5)(nanostores@1.5.0))(@better-auth/utils@0.4.2)(mongodb@7.2.0(socks@2.8.9)) - '@better-auth/prisma-adapter': 1.7.2(@better-auth/core@1.7.2(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.4.0(zod@4.6.7))(jose@6.2.9)(kysely@0.29.5)(nanostores@1.5.0))(@better-auth/utils@0.4.2) - '@better-auth/telemetry': 1.7.2(@better-auth/core@1.7.2(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.4.0(zod@4.6.7))(jose@6.2.9)(kysely@0.29.5)(nanostores@1.5.0))(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1) - '@better-auth/utils': 0.4.2 - '@better-fetch/fetch': 1.3.1 + better-auth@1.7.12(@opentelemetry/api@1.9.1)(mongodb@7.2.0(socks@2.8.9))(next@16.3.8(@babel/core@7.29.7)(@opentelemetry/api@1.9.1)(@playwright/test@1.62.1)(@types/node@26.2.0)(react-dom@19.3.0(react@19.3.0))(react@19.3.0))(react-dom@19.3.0(react@19.3.0))(react@19.3.0)(vitest@4.1.10): + dependencies: + '@better-auth/core': 1.7.12(@better-auth/utils@0.5.0)(@better-fetch/fetch@1.3.2)(@opentelemetry/api@1.9.1)(better-call@1.4.4(zod@4.6.7))(jose@6.2.9)(kysely@0.29.5)(nanostores@1.5.0) + '@better-auth/drizzle-adapter': 1.7.12(@better-auth/core@1.7.12(@better-auth/utils@0.5.0)(@better-fetch/fetch@1.3.2)(@opentelemetry/api@1.9.1)(better-call@1.4.4(zod@4.6.7))(jose@6.2.9)(kysely@0.29.5)(nanostores@1.5.0))(@better-auth/utils@0.5.0) + '@better-auth/kysely-adapter': 1.7.12(@better-auth/core@1.7.12(@better-auth/utils@0.5.0)(@better-fetch/fetch@1.3.2)(@opentelemetry/api@1.9.1)(better-call@1.4.4(zod@4.6.7))(jose@6.2.9)(kysely@0.29.5)(nanostores@1.5.0))(@better-auth/utils@0.5.0)(kysely@0.29.5) + '@better-auth/memory-adapter': 1.7.12(@better-auth/core@1.7.12(@better-auth/utils@0.5.0)(@better-fetch/fetch@1.3.2)(@opentelemetry/api@1.9.1)(better-call@1.4.4(zod@4.6.7))(jose@6.2.9)(kysely@0.29.5)(nanostores@1.5.0))(@better-auth/utils@0.5.0) + '@better-auth/mongo-adapter': 1.7.12(@better-auth/core@1.7.12(@better-auth/utils@0.5.0)(@better-fetch/fetch@1.3.2)(@opentelemetry/api@1.9.1)(better-call@1.4.4(zod@4.6.7))(jose@6.2.9)(kysely@0.29.5)(nanostores@1.5.0))(@better-auth/utils@0.5.0)(mongodb@7.2.0(socks@2.8.9)) + '@better-auth/prisma-adapter': 1.7.12(@better-auth/core@1.7.12(@better-auth/utils@0.5.0)(@better-fetch/fetch@1.3.2)(@opentelemetry/api@1.9.1)(better-call@1.4.4(zod@4.6.7))(jose@6.2.9)(kysely@0.29.5)(nanostores@1.5.0))(@better-auth/utils@0.5.0) + '@better-auth/telemetry': 1.7.12(@better-auth/core@1.7.12(@better-auth/utils@0.5.0)(@better-fetch/fetch@1.3.2)(@opentelemetry/api@1.9.1)(better-call@1.4.4(zod@4.6.7))(jose@6.2.9)(kysely@0.29.5)(nanostores@1.5.0))(@better-auth/utils@0.5.0)(@better-fetch/fetch@1.3.2) + '@better-auth/utils': 0.5.0 + '@better-fetch/fetch': 1.3.2 '@noble/ciphers': 2.3.0 '@noble/hashes': 2.3.0 - better-call: 1.4.0(zod@4.6.7) + better-call: 1.4.4(zod@4.6.7) defu: 6.1.7 jose: 6.2.9 kysely: 0.29.5 nanostores: 1.5.0 zod: 4.6.7 optionalDependencies: - better-sqlite3: 12.9.0 mongodb: 7.2.0(socks@2.8.9) next: 16.3.8(@babel/core@7.29.7)(@opentelemetry/api@1.9.1)(@playwright/test@1.62.1)(@types/node@26.2.0)(react-dom@19.3.0(react@19.3.0))(react@19.3.0) react: 19.3.0 react-dom: 19.3.0(react@19.3.0) vitest: 4.1.10(@opentelemetry/api@1.9.1)(@types/node@26.2.0)(@vitest/coverage-v8@4.1.10)(@vitest/ui@4.1.10)(happy-dom@20.11.2)(jsdom@29.1.1(@noble/hashes@2.3.0))(msw@2.15.0(@types/node@26.2.0)(typescript@6.0.3))(vite@8.3.5(@types/node@26.2.0)(esbuild@0.28.2)(jiti@2.7.0)(tsx@4.23.12)(yaml@2.9.0)) transitivePeerDependencies: - - '@cloudflare/workers-types' - '@opentelemetry/api' - better-call@1.4.0(zod@4.6.7): + better-call@1.4.4(zod@4.6.7): dependencies: '@better-auth/utils': 0.5.0 - '@better-fetch/fetch': 1.3.1 + '@better-fetch/fetch': 1.3.2 rou3: 0.9.2 set-cookie-parser: 3.1.2 optionalDependencies: zod: 4.6.7 - better-sqlite3@12.9.0: - dependencies: - bindings: 1.5.0 - prebuild-install: 7.1.3 - optional: true - bidi-js@1.0.3: dependencies: require-from-string: 2.0.2 @@ -14608,11 +14571,6 @@ snapshots: dependencies: editions: 6.22.0 - bindings@1.5.0: - dependencies: - file-uri-to-path: 1.0.0 - optional: true - bl@4.1.0: dependencies: buffer: 5.7.1 @@ -15807,9 +15765,6 @@ snapshots: dependencies: flat-cache: 4.0.1 - file-uri-to-path@1.0.0: - optional: true - fill-range@7.1.1: dependencies: to-regex-range: 5.0.1 diff --git a/scripts/__tests__/check-lockfile-integrity.test.ts b/scripts/__tests__/check-lockfile-integrity.test.ts index d42b404cdb..848bbb01b8 100644 --- a/scripts/__tests__/check-lockfile-integrity.test.ts +++ b/scripts/__tests__/check-lockfile-integrity.test.ts @@ -97,12 +97,12 @@ describe('green on main — the negative control', () => { * keys under one name. Built from the real lockfile by a transformation this file * asserts landed. */ -const PINNED_SPEC = " '@objectstack/spec@file:.objectstack-pin/spec(ai@7.0.65(zod@4.6.7))':"; +const PINNED_SPEC = " '@objectstack/spec@file:.objectstack-pin/spec(ai@7.0.118(zod@4.6.7))':"; function sampleA(): string { expect(realLock, 'the pinned spec snapshot key moved — rebuild this sample before trusting it').toContain(PINNED_SPEC); return realLock.replace( PINNED_SPEC, - " '@objectstack/spec@18.0.0-next.3(ai@7.0.65(zod@4.6.7))':\n dependencies:\n zod: 4.6.7\n" + PINNED_SPEC, + " '@objectstack/spec@18.0.0-next.3(ai@7.0.118(zod@4.6.7))':\n dependencies:\n zod: 4.6.7\n" + PINNED_SPEC, ); } @@ -120,8 +120,8 @@ function sampleB(): string { let out = realLock; const forked = [ PINNED_SPEC, - " '@objectstack/formula@file:.objectstack-pin/formula(ai@7.0.65(zod@4.6.7))':", - " ai@7.0.65(zod@4.6.7):", + " '@objectstack/formula@file:.objectstack-pin/formula(ai@7.0.118(zod@4.6.7))':", + " ai@7.0.118(zod@4.6.7):", ]; for (const key of forked) { expect(out, `snapshot key moved: ${key}`).toContain(key); @@ -137,13 +137,13 @@ describe('cause 1 — a registry @objectstack/* copy beside the pinned build (ob it('the sample really differs from the base (the mutation landed)', () => { expect(sampleA()).not.toEqual(realLock); - expect(sampleA()).toContain("'@objectstack/spec@18.0.0-next.3(ai@7.0.65(zod@4.6.7))':"); + expect(sampleA()).toContain("'@objectstack/spec@18.0.0-next.3(ai@7.0.118(zod@4.6.7))':"); }); it('goes red, naming the second physical spec', () => { const spec = reading.duplicated.find((f) => f.name === '@objectstack/spec'); expect(spec?.headCount).toBe(2); - expect(spec?.added).toEqual(['@objectstack/spec@18.0.0-next.3(ai@7.0.65(zod@4.6.7))']); + expect(spec?.added).toEqual(['@objectstack/spec@18.0.0-next.3(ai@7.0.118(zod@4.6.7))']); }); it('⛔ no longer orders versions: the retired rule 1 reports nothing of its own', () => { diff --git a/scripts/__tests__/docs-build-trigger.test.ts b/scripts/__tests__/docs-build-trigger.test.ts index c3a782fd1d..2d8c0b5b57 100644 --- a/scripts/__tests__/docs-build-trigger.test.ts +++ b/scripts/__tests__/docs-build-trigger.test.ts @@ -296,7 +296,7 @@ const fixtures: Record = { 'site only': [`${SITE_DIR}/app/page.tsx`], 'root readme only': ['README.md'], 'changeset only': ['.changeset/lovely-pandas-clap.md'], - 'internal docs only': ['docs/adr/ADR-9999-example.md'], + 'internal docs only': ['docs/adr/9999-example.md'], 'unrelated workflow only': ['.github/workflows/nothing-to-do-with-the-site.yml'], 'ci.yml only': ['.github/workflows/ci.yml'], };