diff --git a/apps/objectos-one/package.json b/apps/objectos-one/package.json index 1d8222c..40cd74c 100644 --- a/apps/objectos-one/package.json +++ b/apps/objectos-one/package.json @@ -1,6 +1,6 @@ { "name": "@objectos/one", - "version": "9.7.0", + "version": "10.2.0", "private": true, "license": "Apache-2.0", "description": "ObjectOS One — all-in-one local distribution (Tauri shell + bundled Node runtime + DB).", diff --git a/apps/objectos-one/src-tauri/Cargo.lock b/apps/objectos-one/src-tauri/Cargo.lock index a608805..6a3d768 100644 --- a/apps/objectos-one/src-tauri/Cargo.lock +++ b/apps/objectos-one/src-tauri/Cargo.lock @@ -2470,7 +2470,7 @@ dependencies = [ [[package]] name = "objectos-one" -version = "9.7.0" +version = "10.2.0" dependencies = [ "dirs 5.0.1", "libc", diff --git a/apps/objectos-one/src-tauri/Cargo.toml b/apps/objectos-one/src-tauri/Cargo.toml index fde480b..6901506 100644 --- a/apps/objectos-one/src-tauri/Cargo.toml +++ b/apps/objectos-one/src-tauri/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "objectos-one" -version = "9.7.0" +version = "10.2.0" description = "ObjectOS One shell" edition = "2021" rust-version = "1.77" diff --git a/apps/objectos-one/src-tauri/tauri.conf.json b/apps/objectos-one/src-tauri/tauri.conf.json index 5e02e7e..8c43f9c 100644 --- a/apps/objectos-one/src-tauri/tauri.conf.json +++ b/apps/objectos-one/src-tauri/tauri.conf.json @@ -1,7 +1,7 @@ { "$schema": "https://schema.tauri.app/config/2", "productName": "ObjectOS", - "version": "9.7.0", + "version": "10.2.0", "identifier": "ai.objectstack.objectos", "build": { "frontendDist": "../src", diff --git a/apps/objectos/package.json b/apps/objectos/package.json index b4ee72f..c616589 100644 --- a/apps/objectos/package.json +++ b/apps/objectos/package.json @@ -13,14 +13,14 @@ "type-check": "tsc --noEmit" }, "dependencies": { - "@objectstack/cli": "^9.7.0", - "@objectstack/core": "^9.7.0", - "@objectstack/driver-memory": "^9.7.0", - "@objectstack/driver-sql": "^9.7.0", - "@objectstack/metadata": "^9.7.0", - "@objectstack/objectql": "^9.7.0", - "@objectstack/runtime": "^9.7.0", - "@objectstack/spec": "^9.7.0" + "@objectstack/cli": "^10.2.0", + "@objectstack/core": "^10.2.0", + "@objectstack/driver-memory": "^10.2.0", + "@objectstack/driver-sql": "^10.2.0", + "@objectstack/metadata": "^10.2.0", + "@objectstack/objectql": "^10.2.0", + "@objectstack/runtime": "^10.2.0", + "@objectstack/spec": "^10.2.0" }, "devDependencies": { "@types/node": "^25.9.1", diff --git a/content/docs/resources/changelog.de.mdx b/content/docs/resources/changelog.de.mdx index 059a829..c8263d5 100644 --- a/content/docs/resources/changelog.de.mdx +++ b/content/docs/resources/changelog.de.mdx @@ -11,9 +11,9 @@ ObjectOS folgt **[Semantic Versioning](https://semver.org/)**: `MAJOR.MINOR.PATC | Versionssprung | Was es bedeutet | Was zu tun ist | |---|---|---| -| **Patch** (`9.7.0 → 9.7.1`) | Fehlerbehebungen, keine Verhaltensänderung | Aktualisieren, keine App-Änderungen nötig | -| **Minor** (`9.6 → 9.7`) | Neue Funktionen, abwärtskompatibel | Aktualisieren, optional neue Funktionen übernehmen | -| **Major** (`8 → 9`) | Breaking Changes, in den Release Notes dokumentiert | Lesen Sie den Migrationsleitfaden vor dem Upgrade | +| **Patch** (`10.0.0 → 10.0.1`) | Fehlerbehebungen, keine Verhaltensänderung | Aktualisieren, keine App-Änderungen nötig | +| **Minor** (`10.0 → 10.1`) | Neue Funktionen, abwärtskompatibel | Aktualisieren, optional neue Funktionen übernehmen | +| **Major** (`9 → 10`) | Breaking Changes, in den Release Notes dokumentiert | Lesen Sie den Migrationsleitfaden vor dem Upgrade | Alle `@objectstack/*`-Pakete werden gemeinsam mit einer synchronisierten Versionsnummer veröffentlicht — sie werden als Matrix getestet, nicht einzeln. @@ -22,7 +22,7 @@ Versionsnummer veröffentlicht — sie werden als Matrix getestet, nicht einzeln | Komponente | Kompatibilitätsregel | |---|---| -| ObjectOS-Image ↔ kompiliertes Artefakt | Gleiche Minor-Version. Ein 9.7.x-Image führt ein 9.7.x-Artefakt aus; ein 9.7-Artefakt kann Funktionen nutzen, die in einem 9.6-Image nicht verfügbar sind. | +| ObjectOS-Image ↔ kompiliertes Artefakt | Gleiche Minor-Version. Ein 10.2.x-Image führt ein 10.2.x-Artefakt aus; ein 10.2-Artefakt kann Funktionen nutzen, die in einem 10.0-Image nicht verfügbar sind. | | ObjectOS ↔ CLI | Gleiche Minor-Version empfohlen. Die per `npm i -g` installierte CLI erzeugt Scaffolds, die auf ihre eigene Version gepinnt sind. | | ObjectOS ↔ Datenbanktreiber | Treiber durch den Image-Build gepinnt; prüfen Sie Postgres ≥ 13 / MongoDB ≥ 5 / Turso (jede aktuelle Version). | | Node.js | **20 LTS oder neuer**. 22 LTS empfohlen für neue Deployments. | @@ -31,9 +31,9 @@ Versionsnummer veröffentlicht — sie werden als Matrix getestet, nicht einzeln | Branch | Status | Bis | |---|---|---| -| **9.x** (aktuell) | Aktive Entwicklung; neue Funktionen und Fixes | Mindestens 12 Monate nach dem Erscheinen von 10.0 | -| **8.x** | Nur Sicherheitsfixes | EOL mit dem Release von 10.0 | -| **≤ 7.x** | Nicht unterstützt | Bereits EOL | +| **10.x** (aktuell) | Aktive Entwicklung; neue Funktionen und Fixes | Mindestens 12 Monate nach dem Erscheinen von 11.0 | +| **9.x** | Nur Sicherheitsfixes | EOL mit dem Release von 11.0 | +| **≤ 8.x** | Nicht unterstützt | Bereits EOL | Kritische Sicherheitsfixes werden auf den aktuellen und den vorherigen Major-Branch zurückportiert. Alles andere landet auf `main`. @@ -51,9 +51,53 @@ Abonnieren Sie Releases auf GitHub, um benachrichtigt zu werden. ## Aktuelle Highlights -### 9.x — aktueller Release-Zug - -ObjectOS One und der gebündelte Server laufen jetzt auf `@objectstack` **9.7.0**. +### 10.x — aktueller Release-Zug + +ObjectOS One und der gebündelte Server laufen jetzt auf `@objectstack` **10.2.0**. +Trotz des Major-Sprungs ist der Runtime-Boot-Vertrag unverändert — +`createStandaloneStack` nimmt weiterhin dieselben Artefakt-, Umgebungs- und +Datenbankeinstellungen entgegen — und jeder Breaking Change landet in der +Multi-Org-Mandantenschicht, sodass ein **single-tenant ObjectOS-Deployment (der +Standard) ohne Konfigurationsänderungen von 9.x weiterrollt**. Was sich bewegt hat: + +- **Zeilenbezogenes Org-Scoping in ein eigenes Plugin ausgelagert** (10.0, Breaking) — + das automatische Stempeln von `organization_id`, das Pro-Org-Seed-Replay und der + Default-Org-Bootstrap wurden aus `@objectstack/plugin-security` in das optionale + [`@objectstack/plugin-org-scoping`](https://www.npmjs.com/package/@objectstack/plugin-org-scoping) + verschoben. Single-Org-Deployments sind schlanker (kein Wildcard-RLS, das bei jeder + Abfrage entfernt werden muss), und `OS_MULTI_TENANT=true` registriert das Plugin + weiterhin automatisch vor `plugin-security`, sodass per CLI gesteuerte Projekte keine + Codeänderungen benötigen. Laut ADR-0002 ist ein *Tenant* physische Isolation (eine + Umgebung = eine Datenbank); `organization_id` ist *logisches* Scoping innerhalb einer + DB und verdient daher sein eigenes Plugin. +- **Keine automatischen persönlichen Workspaces mehr** (10.0, Breaking) — + `plugin-security` erstellt nicht mehr für jeden neuen Benutzer eine + „`'s Workspace`"-Org. Benutzer nehmen jetzt eine Einladung an oder erstellen + explizit ihre erste Organisation (das Slack-/Linear-/GitHub-Orgs-Modell). Der erste + registrierte Benutzer — automatisch zum Plattform-Admin befördert — erhält im + Multi-Tenant-Modus weiterhin eine einzige `Default Organization`, damit seine Session + RLS auflöst; single-tenant Deployments erstellen keine Orgs. +- **`record`-Formularfeldtyp** (ADR-0014) — `Record`-Eigenschaften (etwa + die `fields`-Map eines Objekts) sind jetzt als vollwertige Formularfelder in Studio + editierbar, statt als rohes JSON durchzusickern, und der Objektvorschau-Bereich + bindet den echten `ObjectGrid`-Renderer ein — was Sie in der Vorschau sehen, ist das, + was ausgeliefert wird. +- **Steckbare Embeddings über `IEmbedder`** — ein neues Embedder-Protokoll plus + [`@objectstack/embedder-openai`](https://www.npmjs.com/package/@objectstack/embedder-openai); + die Knowledge-/RAG-Adapter nutzen jetzt `IEmbedder` und wurden umbenannt, um das + `plugin-`-Präfix abzulegen. +- **Public Forms** — anonyme Web-to-Lead-/Web-to-Case-Formulare, bereitgestellt unter + `/f/:slug`, eine einheitliche FormPage (öffentlich `/f/:slug` + intern + `/forms/:name`), eine `type: 'form'`-Aktionsvariante und `defaultDetailForm` auf + `ObjectSchema`. +- **Cloud-Identitätstrennung** — `os cloud login` ist jetzt von `os login` getrennt, + die Cloud-Control-Plane wurde in ein privates Repo verschoben (eine schlankere + OSS-Runtime), und `objectstack init` scaffoldet wieder ein Projekt, das baut und + bootet. + +### 9.x + +Der 9.x-Zug lief auf `@objectstack` **9.0 – 9.11** vor dem 10.0-Umstieg. Der Runtime-Boot-Vertrag ist gegenüber 8.0 unverändert — `createStandaloneStack` nimmt weiterhin dieselben Artefakt-, Umgebungs- und Datenbankeinstellungen entgegen —, sodass ein 8.0-Deployment ohne Konfigurationsänderungen weiterrollt. Was sich diff --git a/content/docs/resources/changelog.es.mdx b/content/docs/resources/changelog.es.mdx index d6b1259..f3a5270 100644 --- a/content/docs/resources/changelog.es.mdx +++ b/content/docs/resources/changelog.es.mdx @@ -11,9 +11,9 @@ ObjectOS sigue el **[Versionado semántico](https://semver.org/)**: `MAJOR.MINOR | Incremento de versión | Qué significa | Qué hacer | |---|---|---| -| **Parche** (`9.7.0 → 9.7.1`) | Corrección de errores, sin cambios de comportamiento | Actualiza, no se requieren cambios en la aplicación | -| **Menor** (`9.6 → 9.7`) | Nuevas funciones, compatible con versiones anteriores | Actualiza y, opcionalmente, adopta las nuevas funciones | -| **Mayor** (`8 → 9`) | Cambios incompatibles documentados en las notas de versión | Lee la guía de migración antes de actualizar | +| **Parche** (`10.0.0 → 10.0.1`) | Corrección de errores, sin cambios de comportamiento | Actualiza, no se requieren cambios en la aplicación | +| **Menor** (`10.0 → 10.1`) | Nuevas funciones, compatible con versiones anteriores | Actualiza y, opcionalmente, adopta las nuevas funciones | +| **Mayor** (`9 → 10`) | Cambios incompatibles documentados en las notas de versión | Lee la guía de migración antes de actualizar | Todos los paquetes `@objectstack/*` se publican juntos con un número de versión sincronizado: se prueban como una matriz, no de forma independiente. @@ -22,7 +22,7 @@ versión sincronizado: se prueban como una matriz, no de forma independiente. | Componente | Regla de compatibilidad | |---|---| -| Imagen de ObjectOS ↔ artefacto compilado | Misma versión menor. Una imagen 9.7.x ejecuta un artefacto 9.7.x; un artefacto 9.7 puede usar funciones no disponibles en una imagen 9.6. | +| Imagen de ObjectOS ↔ artefacto compilado | Misma versión menor. Una imagen 10.2.x ejecuta un artefacto 10.2.x; un artefacto 10.2 puede usar funciones no disponibles en una imagen 10.0. | | ObjectOS ↔ CLI | Se recomienda la misma versión menor. La CLI en `npm i -g` genera andamiajes fijados a su propia versión. | | ObjectOS ↔ controlador de base de datos | El controlador queda fijado por la compilación de la imagen; verifica Postgres ≥ 13 / MongoDB ≥ 5 / Turso (cualquiera actual). | | Node.js | **20 LTS o posterior**. Se recomienda 22 LTS para nuevos despliegues. | @@ -31,9 +31,9 @@ versión sincronizado: se prueban como una matriz, no de forma independiente. | Rama | Estado | Hasta | |---|---|---| -| **9.x** (actual) | Desarrollo activo; nuevas funciones y correcciones | Al menos 12 meses después del lanzamiento de 10.0 | -| **8.x** | Solo correcciones de seguridad | EOL en el lanzamiento de 10.0 | -| **≤ 7.x** | Sin soporte | Ya en EOL | +| **10.x** (actual) | Desarrollo activo; nuevas funciones y correcciones | Al menos 12 meses después del lanzamiento de 11.0 | +| **9.x** | Solo correcciones de seguridad | EOL en el lanzamiento de 11.0 | +| **≤ 8.x** | Sin soporte | Ya en EOL | Las correcciones de seguridad críticas se retroportan a la versión mayor actual y a la anterior. Todo lo demás se incorpora en `main`. @@ -51,9 +51,58 @@ Suscríbete a las versiones en GitHub para recibir notificaciones. ## Aspectos destacados recientes -### 9.x — tren de versiones actual - -ObjectOS One y el servidor incluido ahora se ejecutan sobre `@objectstack` **9.7.0**. +### 10.x — tren de versiones actual + +ObjectOS One y el servidor incluido ahora se ejecutan sobre `@objectstack` **10.2.0**. +A pesar del salto de versión mayor, el contrato de arranque del runtime no cambia +—`createStandaloneStack` sigue tomando el mismo artefacto, entorno y ajustes de +base de datos— y todos los cambios incompatibles caen en la capa de tenencia +multi-organización, por lo que un **despliegue de ObjectOS de inquilino único +(el predeterminado) actualiza desde 9.x sin cambios de configuración**. Lo que se +movió: + +- **El alcance por organización a nivel de fila se separó en su propio plugin** + (10.0, cambio incompatible): el autosellado de `organization_id`, la repetición + de seeds por organización y el arranque de la organización predeterminada se + movieron de `@objectstack/plugin-security` al plugin opcional + [`@objectstack/plugin-org-scoping`](https://www.npmjs.com/package/@objectstack/plugin-org-scoping). + Los despliegues de una sola organización son más ligeros (no hay RLS comodín que + eliminar en cada consulta), y `OS_MULTI_TENANT=true` sigue registrando + automáticamente el plugin por delante de `plugin-security`, por lo que los + proyectos gestionados por la CLI no necesitan cambios de código. Según el + ADR-0002, un *tenant* es aislamiento físico (un Environment = una base de datos); + `organization_id` es alcance *lógico* dentro de una misma BD, así que merece su + propio plugin. +- **Se acabaron los espacios de trabajo personales automáticos** (10.0, cambio + incompatible): `plugin-security` ya no crea una organización «`'s + Workspace`» para cada nuevo usuario. Ahora los usuarios aceptan una invitación o + crean explícitamente su primera organización (el modelo de Slack / Linear / + GitHub-Orgs). El primer usuario registrado —autopromovido a administrador de la + plataforma— sigue obteniendo una única `Default Organization` en modo + multi-inquilino para que su sesión resuelva el RLS; los despliegues de inquilino + único no crean ninguna organización. +- **Tipo de campo de formulario `record`** (ADR-0014): las propiedades + `Record` (como el mapa `fields` de un objeto) ahora son editables como + campos de formulario de primera clase en Studio, en lugar de filtrarse como JSON + en bruto, y el panel de previsualización del objeto monta el renderizador real + `ObjectGrid`: lo que previsualizas es lo que se publica. +- **Embeddings conectables mediante `IEmbedder`**: un nuevo protocolo de embedder + junto con + [`@objectstack/embedder-openai`](https://www.npmjs.com/package/@objectstack/embedder-openai); + los adaptadores de conocimiento / RAG ahora consumen `IEmbedder` y se + renombraron para eliminar el prefijo `plugin-`. +- **Formularios públicos**: formularios anónimos de Web-to-Lead / Web-to-Case + servidos en `/f/:slug`, una FormPage unificada (`/f/:slug` público + `/forms/:name` + interno), una variante de acción `type: 'form'` y `defaultDetailForm` en + `ObjectSchema`. +- **Separación de la identidad en la nube**: `os cloud login` ahora es independiente + de `os login`, el plano de control de la nube se movió a un repositorio privado + (un runtime OSS más ligero), y `objectstack init` vuelve a generar un proyecto que + compila y arranca. + +### 9.x + +El tren 9.x se ejecutó sobre `@objectstack` **9.0 – 9.11** antes del cambio a 10.0. El contrato de arranque del runtime no cambia respecto a 8.0 — `createStandaloneStack` sigue tomando el mismo artefacto, entorno y ajustes de base de datos—, por lo que un despliegue 8.0 actualiza sin cambios de diff --git a/content/docs/resources/changelog.fr.mdx b/content/docs/resources/changelog.fr.mdx index f7145df..fc0cf68 100644 --- a/content/docs/resources/changelog.fr.mdx +++ b/content/docs/resources/changelog.fr.mdx @@ -11,9 +11,9 @@ ObjectOS suit le **[versionnage sémantique](https://semver.org/)** : `MAJOR.MIN | Incrément de version | Signification | Que faire | |---|---|---| -| **Patch** (`9.7.0 → 9.7.1`) | Corrections de bogues, aucun changement de comportement | Mettre à jour, aucune modification de l'application nécessaire | -| **Mineur** (`9.6 → 9.7`) | Nouvelles fonctionnalités, rétrocompatibles | Mettre à jour, adopter éventuellement les nouvelles fonctionnalités | -| **Majeur** (`8 → 9`) | Changements incompatibles documentés dans les notes de version | Lire le guide de migration avant de mettre à niveau | +| **Patch** (`10.0.0 → 10.0.1`) | Corrections de bogues, aucun changement de comportement | Mettre à jour, aucune modification de l'application nécessaire | +| **Mineur** (`10.0 → 10.1`) | Nouvelles fonctionnalités, rétrocompatibles | Mettre à jour, adopter éventuellement les nouvelles fonctionnalités | +| **Majeur** (`9 → 10`) | Changements incompatibles documentés dans les notes de version | Lire le guide de migration avant de mettre à niveau | Tous les paquets `@objectstack/*` sont publiés ensemble avec un numéro de version synchronisé — ils sont testés en tant que matrice, et non @@ -23,7 +23,7 @@ indépendamment. | Composant | Règle de compatibilité | |---|---| -| Image ObjectOS ↔ artefact compilé | Même version mineure. Une image 9.7.x exécute un artefact 9.7.x ; un artefact 9.7 peut utiliser des fonctionnalités indisponibles dans une image 9.6. | +| Image ObjectOS ↔ artefact compilé | Même version mineure. Une image 10.2.x exécute un artefact 10.2.x ; un artefact 10.2 peut utiliser des fonctionnalités indisponibles dans une image 10.0. | | ObjectOS ↔ CLI | Même version mineure recommandée. Le CLI dans `npm i -g` écrit des squelettes épinglés à sa propre version. | | ObjectOS ↔ pilote de base de données | Pilote épinglé par la construction de l'image ; vérifier Postgres ≥ 13 / MongoDB ≥ 5 / Turso (toute version actuelle). | | Node.js | **20 LTS ou plus récent**. 22 LTS recommandé pour les nouveaux déploiements. | @@ -32,9 +32,9 @@ indépendamment. | Branche | Statut | Jusqu'à | |---|---|---| -| **9.x** (actuelle) | Développement actif ; nouvelles fonctionnalités et corrections | Au moins 12 mois après la sortie de la 10.0 | -| **8.x** | Corrections de sécurité uniquement | Fin de vie à la sortie de la 10.0 | -| **≤ 7.x** | Non prise en charge | Déjà en fin de vie | +| **10.x** (actuelle) | Développement actif ; nouvelles fonctionnalités et corrections | Au moins 12 mois après la sortie de la 11.0 | +| **9.x** | Corrections de sécurité uniquement | Fin de vie à la sortie de la 11.0 | +| **≤ 8.x** | Non prise en charge | Déjà en fin de vie | Les correctifs de sécurité critiques sont rétroportés vers la version majeure actuelle et la précédente. Tout le reste atterrit sur `main`. @@ -52,9 +52,58 @@ Abonnez-vous aux versions sur GitHub pour être notifié. ## Points marquants récents -### 9.x — train de versions actuel - -ObjectOS One et le serveur intégré tournent désormais sur `@objectstack` **9.7.0**. +### 10.x — train de versions actuel + +ObjectOS One et le serveur intégré tournent désormais sur `@objectstack` **10.2.0**. +Malgré le bond de version majeure, le contrat de démarrage du runtime est inchangé — +`createStandaloneStack` prend toujours le même artefact, le même environnement et +les mêmes paramètres de base de données — et chaque changement incompatible se +situe dans la couche de multilocation multi-organisations, de sorte qu'un +**déploiement ObjectOS mono-locataire (le cas par défaut) se met à jour depuis la +9.x sans aucun changement de configuration**. Ce qui a bougé : + +- **Le périmètre d'organisation au niveau des lignes est extrait dans son propre + plugin** (10.0, incompatible) — l'auto-marquage `organization_id`, la réexécution + des seeds par organisation et l'amorçage de l'organisation par défaut ont été + sortis de `@objectstack/plugin-security` vers le plugin optionnel + [`@objectstack/plugin-org-scoping`](https://www.npmjs.com/package/@objectstack/plugin-org-scoping). + Les déploiements mono-organisation sont plus légers (plus de RLS générique à + retirer à chaque requête), et `OS_MULTI_TENANT=true` enregistre toujours + automatiquement le plugin avant `plugin-security`, de sorte que les projets + pilotés par le CLI n'ont besoin d'aucun changement de code. Selon l'ADR-0002, un + *locataire* est une isolation physique (un Environment = une base de données) ; + `organization_id` est un périmètre *logique* à l'intérieur d'une seule base, il + mérite donc son propre plugin. +- **Plus d'espaces de travail personnels automatiques** (10.0, incompatible) — + `plugin-security` ne crée plus d'organisation « `'s Workspace` » pour chaque + nouvel utilisateur. Les utilisateurs acceptent désormais une invitation ou créent + explicitement leur première organisation (le modèle Slack / Linear / GitHub-Orgs). + Le premier utilisateur enregistré — auto-promu administrateur de la plateforme — + obtient toujours une unique `Default Organization` en mode multilocataire pour que + sa session résolve la RLS ; les déploiements mono-locataire ne créent aucune + organisation. +- **Type de champ de formulaire `record`** (ADR-0014) — les propriétés + `Record` (telles que la map `fields` d'un objet) sont désormais + éditables comme des champs de formulaire de première classe dans Studio au lieu de + transparaître en JSON brut, et le volet d'aperçu d'objet monte le véritable + moteur de rendu `ObjectGrid` — ce que vous prévisualisez correspond à ce qui est + livré. +- **Embeddings enfichables via `IEmbedder`** — un nouveau protocole d'embedder ainsi + que [`@objectstack/embedder-openai`](https://www.npmjs.com/package/@objectstack/embedder-openai) ; + les adaptateurs de connaissances / RAG consomment désormais `IEmbedder` et ont été + renommés pour abandonner le préfixe `plugin-`. +- **Formulaires publics** — des formulaires Web-to-Lead / Web-to-Case anonymes + servis sur `/f/:slug`, une FormPage unifiée (`/f/:slug` public + `/forms/:name` + interne), une variante d'action `type: 'form'` et `defaultDetailForm` sur + `ObjectSchema`. +- **Séparation de l'identité cloud** — `os cloud login` est désormais distinct de + `os login`, le plan de contrôle cloud a été déplacé vers un dépôt privé (un + runtime OSS plus léger), et `objectstack init` génère de nouveau un projet qui se + construit et démarre. + +### 9.x + +Le train 9.x a tourné sur `@objectstack` **9.0 – 9.11** avant la bascule vers la 10.0. Le contrat de démarrage du runtime est inchangé depuis la 8.0 — `createStandaloneStack` prend toujours les mêmes paramètres d'artefact, d'environnement et de base de données — de sorte qu'un déploiement 8.0 se met à diff --git a/content/docs/resources/changelog.ja.mdx b/content/docs/resources/changelog.ja.mdx index a3dd464..ed2d711 100644 --- a/content/docs/resources/changelog.ja.mdx +++ b/content/docs/resources/changelog.ja.mdx @@ -11,9 +11,9 @@ ObjectOS は **[セマンティックバージョニング](https://semver.org/) | バージョンの更新 | 意味 | 対応 | |---|---|---| -| **パッチ** (`9.7.0 → 9.7.1`) | バグ修正、動作の変更なし | そのまま更新でき、アプリの変更は不要 | -| **マイナー** (`9.6 → 9.7`) | 新機能、後方互換あり | そのまま更新でき、必要に応じて新機能を採用 | -| **メジャー** (`8 → 9`) | リリースノートに記載された破壊的変更 | アップグレード前に移行ガイドを必読 | +| **パッチ** (`10.0.0 → 10.0.1`) | バグ修正、動作の変更なし | そのまま更新でき、アプリの変更は不要 | +| **マイナー** (`10.0 → 10.1`) | 新機能、後方互換あり | そのまま更新でき、必要に応じて新機能を採用 | +| **メジャー** (`9 → 10`) | リリースノートに記載された破壊的変更 | アップグレード前に移行ガイドを必読 | すべての `@objectstack/*` パッケージは、同期されたバージョン番号で一緒にリリースされます。これらは個別ではなく、マトリックスとしてテストされます。 @@ -21,7 +21,7 @@ ObjectOS は **[セマンティックバージョニング](https://semver.org/) | コンポーネント | 互換性ルール | |---|---| -| ObjectOS イメージ ↔ コンパイル済みアーティファクト | 同一のマイナーバージョン。9.7.x のイメージは 9.7.x のアーティファクトを実行します。9.7 のアーティファクトは 9.6 のイメージで利用できない機能を使用している場合があります。 | +| ObjectOS イメージ ↔ コンパイル済みアーティファクト | 同一のマイナーバージョン。10.2.x のイメージは 10.2.x のアーティファクトを実行します。10.2 のアーティファクトは 10.0 のイメージで利用できない機能を使用している場合があります。 | | ObjectOS ↔ CLI | 同一のマイナーバージョンを推奨。`npm i -g` の CLI は、自身のバージョンに固定されたスキャフォールドを書き出します。 | | ObjectOS ↔ データベースドライバー | ドライバーはイメージビルドで固定されます。Postgres ≥ 13 / MongoDB ≥ 5 / Turso(現行いずれか)を確認してください。 | | Node.js | **20 LTS 以降**。新規デプロイには 22 LTS を推奨。 | @@ -30,9 +30,9 @@ ObjectOS は **[セマンティックバージョニング](https://semver.org/) | ブランチ | ステータス | 期限 | |---|---|---| -| **9.x**(現行) | 活発に開発中。新機能と修正 | 10.0 リリース後、少なくとも 12 か月 | -| **8.x** | セキュリティ修正のみ | 10.0 リリースで EOL | -| **≤ 7.x** | サポート対象外 | すでに EOL | +| **10.x**(現行) | 活発に開発中。新機能と修正 | 11.0 リリース後、少なくとも 12 か月 | +| **9.x** | セキュリティ修正のみ | 11.0 リリースで EOL | +| **≤ 8.x** | サポート対象外 | すでに EOL | 重大なセキュリティ修正は、現行および 1 つ前のメジャーバージョンにバックポートされます。それ以外はすべて `main` に取り込まれます。 @@ -49,9 +49,49 @@ GitHub でリリースを購読すると、通知を受け取れます。 ## 最近のハイライト -### 9.x — 現行リリーストレイン - -ObjectOS One とバンドル版サーバーは現在 `@objectstack` **9.7.0** 上で動作します。 +### 10.x — 現行リリーストレイン + +ObjectOS One とバンドル版サーバーは現在 `@objectstack` **10.2.0** 上で動作します。 +メジャーバージョンの更新にもかかわらず、ランタイムの起動コントラクトは変更ありません。 +`createStandaloneStack` は引き続き同じアーティファクト・環境・データベース設定を受け取り、 +すべての破壊的変更はマルチ組織テナンシー層に集約されているため、**シングルテナントの +ObjectOS デプロイ(デフォルト)は設定変更なしで 9.x からそのまま更新できます**。 +変わった点は次のとおりです: + +- **行レベルの組織スコーピングを独立したプラグインに分離**(10.0、破壊的)— + `organization_id` の自動スタンプ、組織ごとのシード再生、デフォルト組織のブートストラップが、 + `@objectstack/plugin-security` から、オプトインの + [`@objectstack/plugin-org-scoping`](https://www.npmjs.com/package/@objectstack/plugin-org-scoping) + に移されました。シングル組織のデプロイはより軽量になり(クエリごとにワイルドカード RLS を + 剥がす必要がなくなり)、`OS_MULTI_TENANT=true` は引き続き `plugin-security` の前にプラグインを + 自動登録するため、CLI で駆動されるプロジェクトはコード変更不要です。ADR-0002 に従い、 + *テナント*は物理的な分離(1 つの Environment = 1 つのデータベース)であり、 + `organization_id` は 1 つの DB 内での*論理的な*スコーピングなので、独自のプラグインを持つに値します。 +- **自動的な個人ワークスペースを廃止**(10.0、破壊的)— `plugin-security` は、 + 新規ユーザーごとに「`'s Workspace`」組織を作成しなくなりました。ユーザーは招待を受諾するか、 + 最初の組織を明示的に作成します(Slack / Linear / GitHub Orgs のモデル)。 + 最初に登録されたユーザー(プラットフォーム管理者に自動昇格)は、マルチテナントモードでは + 引き続き単一の `Default Organization` を取得し、セッションが RLS を解決できるようにします。 + シングルテナントのデプロイでは組織は作成されません。 +- **`record` フォームフィールドタイプ**(ADR-0014)— `Record` プロパティ + (オブジェクトの `fields` マップなど)は、生の JSON として漏れ出るのではなく、Studio で + ファーストクラスのフォームフィールドとして編集できるようになりました。また、オブジェクトの + プレビューペインは実際の `ObjectGrid` レンダラーをマウントします。プレビューしたものが + そのまま出荷されます。 +- **`IEmbedder` によるプラガブルな埋め込み** — 新しい埋め込みプロトコルと + [`@objectstack/embedder-openai`](https://www.npmjs.com/package/@objectstack/embedder-openai)。 + ナレッジ / RAG アダプターは `IEmbedder` を利用するようになり、`plugin-` プレフィックスを + 落とすように名称変更されました。 +- **Public Forms** — `/f/:slug` で提供される匿名の Web-to-Lead / Web-to-Case フォーム、 + 統合された FormPage(公開 `/f/:slug` + 内部 `/forms/:name`)、`type: 'form'` のアクションバリアント、 + `ObjectSchema` の `defaultDetailForm`。 +- **クラウド ID の分離** — `os cloud login` は `os login` とは別になり、 + クラウドコントロールプレーンはプライベートリポジトリに移され(より軽量な OSS ランタイム)、 + `objectstack init` は再びビルドして起動するプロジェクトをスキャフォールドします。 + +### 9.x + +9.x トレインは、10.0 への切り替え前は `@objectstack` **9.0 – 9.11** 上で動作していました。 ランタイムの起動コントラクトは 8.0 から変更ありません。`createStandaloneStack` は引き続き同じアーティファクト・環境・データベース設定を受け取るため、8.0 のデプロイは 設定変更なしでそのまま更新できます。変わったのはオーサリング向けの表面です: diff --git a/content/docs/resources/changelog.ko.mdx b/content/docs/resources/changelog.ko.mdx index a7c784c..7165329 100644 --- a/content/docs/resources/changelog.ko.mdx +++ b/content/docs/resources/changelog.ko.mdx @@ -11,9 +11,9 @@ ObjectOS는 **[유의적 버전(Semantic Versioning)](https://semver.org/)**을 | 버전 증가 | 의미 | 해야 할 일 | |---|---|---| -| **패치** (`9.7.0 → 9.7.1`) | 버그 수정, 동작 변경 없음 | 그대로 업데이트, 앱 변경 불필요 | -| **마이너** (`9.6 → 9.7`) | 새 기능, 하위 호환 | 그대로 업데이트, 필요 시 새 기능 도입 | -| **메이저** (`8 → 9`) | 릴리스 노트에 문서화된 호환성 깨짐 변경 | 업그레이드 전에 마이그레이션 가이드를 읽으세요 | +| **패치** (`10.0.0 → 10.0.1`) | 버그 수정, 동작 변경 없음 | 그대로 업데이트, 앱 변경 불필요 | +| **마이너** (`10.0 → 10.1`) | 새 기능, 하위 호환 | 그대로 업데이트, 필요 시 새 기능 도입 | +| **메이저** (`9 → 10`) | 릴리스 노트에 문서화된 호환성 깨짐 변경 | 업그레이드 전에 마이그레이션 가이드를 읽으세요 | 모든 `@objectstack/*` 패키지는 동기화된 버전 번호로 함께 릴리스됩니다 — 개별적으로가 아니라 매트릭스로 테스트됩니다. @@ -22,7 +22,7 @@ ObjectOS는 **[유의적 버전(Semantic Versioning)](https://semver.org/)**을 | 구성 요소 | 호환성 규칙 | |---|---| -| ObjectOS 이미지 ↔ 컴파일된 아티팩트 | 동일한 마이너 버전. 9.7.x 이미지는 9.7.x 아티팩트를 실행하며, 9.7 아티팩트는 9.6 이미지에서 사용할 수 없는 기능을 사용할 수 있습니다. | +| ObjectOS 이미지 ↔ 컴파일된 아티팩트 | 동일한 마이너 버전. 10.2.x 이미지는 10.2.x 아티팩트를 실행하며, 10.2 아티팩트는 10.0 이미지에서 사용할 수 없는 기능을 사용할 수 있습니다. | | ObjectOS ↔ CLI | 동일한 마이너 버전 권장. `npm i -g`로 설치한 CLI는 자체 버전에 고정된 스캐폴드를 작성합니다. | | ObjectOS ↔ 데이터베이스 드라이버 | 드라이버는 이미지 빌드에 고정됨; Postgres ≥ 13 / MongoDB ≥ 5 / Turso(현재 버전) 확인. | | Node.js | **20 LTS 이상**. 새 배포에는 22 LTS 권장. | @@ -31,9 +31,9 @@ ObjectOS는 **[유의적 버전(Semantic Versioning)](https://semver.org/)**을 | 브랜치 | 상태 | 종료 시점 | |---|---|---| -| **9.x** (현재) | 활발한 개발; 새 기능 및 수정 | 10.0 출시 후 최소 12개월 | -| **8.x** | 보안 수정만 | 10.0 릴리스 시 EOL | -| **≤ 7.x** | 지원 종료 | 이미 EOL | +| **10.x** (현재) | 활발한 개발; 새 기능 및 수정 | 11.0 출시 후 최소 12개월 | +| **9.x** | 보안 수정만 | 11.0 릴리스 시 EOL | +| **≤ 8.x** | 지원 종료 | 이미 EOL | 중대한 보안 수정은 현재 및 이전 메이저 버전에 백포트됩니다. 그 외 모든 것은 `main`에 반영됩니다. @@ -51,9 +51,49 @@ ObjectOS는 **[유의적 버전(Semantic Versioning)](https://semver.org/)**을 ## 주요 변경 사항 -### 9.x — 현재 릴리스 트레인 - -ObjectOS One과 번들 서버는 이제 `@objectstack` **9.7.0** 기반으로 동작합니다. +### 10.x — 현재 릴리스 트레인 + +ObjectOS One과 번들 서버는 이제 `@objectstack` **10.2.0** 기반으로 동작합니다. +메이저 버전 증가에도 불구하고 런타임 부트 계약은 변경되지 않았습니다 — +`createStandaloneStack`은 여전히 동일한 아티팩트, 환경, 데이터베이스 설정을 +받으며, 모든 호환성 깨짐 변경은 멀티 조직 테넌시 계층에서 발생하므로 **단일 +테넌트 ObjectOS 배포(기본값)는 구성 변경 없이 9.x에서 그대로 업데이트됩니다**. +바뀐 것은 다음과 같습니다: + +- **행 단위 조직 스코핑이 자체 플러그인으로 분리되었습니다** (10.0, 호환성 깨짐) — + `organization_id` 자동 스탬프, 조직별 시드 재생, 기본 조직 부트스트랩이 + `@objectstack/plugin-security`에서 빠져나와 옵트인 방식의 + [`@objectstack/plugin-org-scoping`](https://www.npmjs.com/package/@objectstack/plugin-org-scoping)으로 + 이동했습니다. 단일 조직 배포는 더 가벼워지며(모든 쿼리에서 제거할 와일드카드 RLS가 + 없음), `OS_MULTI_TENANT=true`는 여전히 `plugin-security`보다 먼저 플러그인을 자동 + 등록하므로 CLI로 구동되는 프로젝트는 코드 변경이 필요 없습니다. ADR-0002에 따르면 + *테넌트*는 물리적 격리(하나의 Environment = 하나의 데이터베이스)이고, + `organization_id`는 하나의 DB 내에서의 *논리적* 스코핑이므로 자체 플러그인을 + 가질 자격이 있습니다. +- **자동 개인 워크스페이스가 더 이상 없습니다** (10.0, 호환성 깨짐) — + `plugin-security`는 더 이상 모든 신규 사용자에 대해 "`'s Workspace`" 조직을 + 생성하지 않습니다. 사용자는 이제 초대를 수락하거나 명시적으로 첫 조직을 생성합니다 + (Slack / Linear / GitHub-Orgs 모델). 첫 등록 사용자 — 플랫폼 관리자로 자동 승격됨 — + 는 멀티 테넌트 모드에서 세션이 RLS를 해석할 수 있도록 여전히 단일 + `Default Organization`을 받습니다. 단일 테넌트 배포는 조직을 생성하지 않습니다. +- **`record` 폼 필드 타입** (ADR-0014) — `Record` 속성(예: 객체의 `fields` + 맵)이 이제 Studio에서 원시 JSON으로 새어 나가는 대신 일급 폼 필드로 편집 가능하며, + 객체 미리보기 창은 실제 `ObjectGrid` 렌더러를 마운트합니다 — 미리 보는 것이 곧 + 출시되는 것입니다. +- **`IEmbedder`를 통한 플러그형 임베딩** — 새로운 임베더 프로토콜과 + [`@objectstack/embedder-openai`](https://www.npmjs.com/package/@objectstack/embedder-openai); + 지식 / RAG 어댑터는 이제 `IEmbedder`를 사용하며 `plugin-` 접두사를 떼도록 + 이름이 변경되었습니다. +- **Public Forms** — `/f/:slug`에서 제공되는 익명 Web-to-Lead / Web-to-Case 폼, + 통합 FormPage(공개 `/f/:slug` + 내부 `/forms/:name`), `type: 'form'` 액션 변형, + 그리고 `ObjectSchema`의 `defaultDetailForm`. +- **클라우드 아이덴티티 분리** — `os cloud login`이 이제 `os login`과 분리되었고, + 클라우드 컨트롤 플레인은 비공개 저장소로 이동했으며(더 가벼운 OSS 런타임), + `objectstack init`은 다시 빌드되고 부팅되는 프로젝트를 스캐폴드합니다. + +### 9.x + +9.x 트레인은 10.0 전환 전까지 `@objectstack` **9.0 – 9.11** 기반으로 동작했습니다. 런타임 부트 계약은 8.0과 동일합니다 — `createStandaloneStack`은 여전히 동일한 아티팩트, 환경, 데이터베이스 설정을 받으므로 8.0 배포는 구성 변경 없이 그대로 업데이트됩니다. 바뀐 것은 작성자(author)가 마주하는 표면입니다: diff --git a/content/docs/resources/changelog.mdx b/content/docs/resources/changelog.mdx index 7cd3d89..1d9cc0e 100644 --- a/content/docs/resources/changelog.mdx +++ b/content/docs/resources/changelog.mdx @@ -11,9 +11,9 @@ ObjectOS follows **[Semantic Versioning](https://semver.org/)**: `MAJOR.MINOR.PA | Version bump | What it means | What to do | |---|---|---| -| **Patch** (`9.7.0 → 9.7.1`) | Bug fixes, no behavior change | Roll forward, no app changes needed | -| **Minor** (`9.6 → 9.7`) | New features, backward-compatible | Roll forward, optionally adopt new features | -| **Major** (`8 → 9`) | Breaking changes documented in release notes | Read the migration guide before upgrading | +| **Patch** (`10.0.0 → 10.0.1`) | Bug fixes, no behavior change | Roll forward, no app changes needed | +| **Minor** (`10.0 → 10.1`) | New features, backward-compatible | Roll forward, optionally adopt new features | +| **Major** (`9 → 10`) | Breaking changes documented in release notes | Read the migration guide before upgrading | All `@objectstack/*` packages release together with a synchronized version number — they're tested as a matrix, not independently. @@ -22,7 +22,7 @@ version number — they're tested as a matrix, not independently. | Component | Compatibility rule | |---|---| -| ObjectOS image ↔ compiled artifact | Same minor version. A 9.7.x image runs a 9.7.x artifact; a 9.7 artifact may use features unavailable in a 9.6 image. | +| ObjectOS image ↔ compiled artifact | Same minor version. A 10.2.x image runs a 10.2.x artifact; a 10.2 artifact may use features unavailable in a 10.0 image. | | ObjectOS ↔ CLI | Same minor version recommended. The CLI in `npm i -g` writes scaffolds pinned to its own version. | | ObjectOS ↔ database driver | Driver pinned by image build; verify Postgres ≥ 13 / MongoDB ≥ 5 / Turso (any current). | | Node.js | **20 LTS or newer**. 22 LTS recommended for new deployments. | @@ -31,9 +31,9 @@ version number — they're tested as a matrix, not independently. | Branch | Status | Until | |---|---|---| -| **9.x** (current) | Active development; new features and fixes | At least 12 months after 10.0 ships | -| **8.x** | Security fixes only | EOL on 10.0 release | -| **≤ 7.x** | Unsupported | Already EOL | +| **10.x** (current) | Active development; new features and fixes | At least 12 months after 11.0 ships | +| **9.x** | Security fixes only | EOL on 11.0 release | +| **≤ 8.x** | Unsupported | Already EOL | Critical security fixes are backported to the current and previous major. Everything else lands on `main`. @@ -51,9 +51,48 @@ Subscribe to releases on GitHub to get notified. ## Recent highlights -### 9.x — current release train - -ObjectOS One and the bundled server now ship on `@objectstack` **9.7.0**. +### 10.x — current release train + +ObjectOS One and the bundled server now ship on `@objectstack` **10.2.0**. +Despite the major bump, the runtime boot contract is unchanged — +`createStandaloneStack` still takes the same artifact, environment, and +database settings — and every breaking change lands in the multi-org tenancy +layer, so a **single-tenant ObjectOS deployment (the default) rolls forward +from 9.x with no config changes**. What moved: + +- **Row-level org scoping split into its own plugin** (10.0, breaking) — the + `organization_id` auto-stamp, per-org seed replay, and default-org bootstrap + moved out of `@objectstack/plugin-security` into the opt-in + [`@objectstack/plugin-org-scoping`](https://www.npmjs.com/package/@objectstack/plugin-org-scoping). + Single-org deployments are leaner (no wildcard RLS to strip on every query), + and `OS_MULTI_TENANT=true` still auto-registers the plugin ahead of + `plugin-security`, so projects driven by the CLI need no code changes. Per + ADR-0002, a *tenant* is physical isolation (one Environment = one database); + `organization_id` is *logical* scoping inside one DB, so it earns its own plugin. +- **No more automatic personal workspaces** (10.0, breaking) — `plugin-security` + no longer creates a "`'s Workspace`" org for every new user. Users now + accept an invitation or explicitly create their first organization (the + Slack / Linear / GitHub-Orgs model). The first registered user — auto-promoted + to platform admin — still gets a single `Default Organization` in multi-tenant + mode so their session resolves RLS; single-tenant deployments create no orgs. +- **`record` form field type** (ADR-0014) — `Record` properties (such + as an object's `fields` map) are now editable as first-class form fields in + Studio instead of leaking through as raw JSON, and the object preview pane + mounts the real `ObjectGrid` renderer — what you preview is what ships. +- **Pluggable embeddings via `IEmbedder`** — a new embedder protocol plus + [`@objectstack/embedder-openai`](https://www.npmjs.com/package/@objectstack/embedder-openai); + the knowledge / RAG adapters now consume `IEmbedder` and were renamed to drop + the `plugin-` prefix. +- **Public Forms** — anonymous Web-to-Lead / Web-to-Case forms served at + `/f/:slug`, a unified FormPage (public `/f/:slug` + internal `/forms/:name`), + a `type: 'form'` action variant, and `defaultDetailForm` on `ObjectSchema`. +- **Cloud identity split** — `os cloud login` is now separate from `os login`, + the cloud control plane moved to a private repo (a leaner OSS runtime), and + `objectstack init` again scaffolds a project that builds and boots. + +### 9.x + +The 9.x train ran on `@objectstack` **9.0 – 9.11** before the 10.0 cutover. The runtime boot contract is unchanged from 8.0 — `createStandaloneStack` still takes the same artifact, environment, and database settings — so an 8.0 deployment rolls forward without config changes. The author-facing diff --git a/content/docs/resources/changelog.zh-Hans.mdx b/content/docs/resources/changelog.zh-Hans.mdx index e057010..65d6e5d 100644 --- a/content/docs/resources/changelog.zh-Hans.mdx +++ b/content/docs/resources/changelog.zh-Hans.mdx @@ -11,9 +11,9 @@ ObjectOS 遵循 **[语义化版本](https://semver.org/)**:`MAJOR.MINOR.PATCH` | 版本号变化 | 含义 | 应对方式 | |---|---|---| -| **Patch**(`9.7.0 → 9.7.1`) | 修 bug,不改变行为 | 直接升级,无需改动应用 | -| **Minor**(`9.6 → 9.7`) | 新增功能,向后兼容 | 直接升级,可选采用新功能 | -| **Major**(`8 → 9`) | 破坏性变更,发版说明会列出 | 升级前阅读迁移指南 | +| **Patch**(`10.0.0 → 10.0.1`) | 修 bug,不改变行为 | 直接升级,无需改动应用 | +| **Minor**(`10.0 → 10.1`) | 新增功能,向后兼容 | 直接升级,可选采用新功能 | +| **Major**(`9 → 10`) | 破坏性变更,发版说明会列出 | 升级前阅读迁移指南 | 所有 `@objectstack/*` 包按同步的版本号一起发布 —— 作为矩阵一同测试, 而不是各自独立。 @@ -22,7 +22,7 @@ ObjectOS 遵循 **[语义化版本](https://semver.org/)**:`MAJOR.MINOR.PATCH` | 组件 | 兼容性规则 | |---|---| -| ObjectOS 镜像 ↔ 编译产物 | 同一 minor 版本。9.7.x 镜像运行 9.7.x 产物;9.7 产物可能使用 9.6 镜像不具备的功能。 | +| ObjectOS 镜像 ↔ 编译产物 | 同一 minor 版本。10.2.x 镜像运行 10.2.x 产物;10.2 产物可能使用 10.0 镜像不具备的功能。 | | ObjectOS ↔ CLI | 建议使用同一 minor 版本。`npm i -g` 安装的 CLI 生成的脚手架会固定为其自身版本。 | | ObjectOS ↔ 数据库驱动 | 驱动版本由镜像构建固定;请确认 Postgres ≥ 13 / MongoDB ≥ 5 / Turso(当前版本)。 | | Node.js | **20 LTS 或更新**。新部署推荐 22 LTS。 | @@ -31,9 +31,9 @@ ObjectOS 遵循 **[语义化版本](https://semver.org/)**:`MAJOR.MINOR.PATCH` | 分支 | 状态 | 截止 | |---|---|---| -| **9.x**(当前) | 活跃开发;新功能与修复 | 至少到 10.0 发布后 12 个月 | -| **8.x** | 仅安全修复 | 10.0 发布时 EOL | -| **≤ 7.x** | 不再支持 | 已 EOL | +| **10.x**(当前) | 活跃开发;新功能与修复 | 至少到 11.0 发布后 12 个月 | +| **9.x** | 仅安全修复 | 11.0 发布时 EOL | +| **≤ 8.x** | 不再支持 | 已 EOL | 关键安全修复会反向移植到当前 major 与上一个 major;其他变更只进 `main`。 @@ -51,9 +51,46 @@ ObjectOS 遵循 **[语义化版本](https://semver.org/)**:`MAJOR.MINOR.PATCH` ## 近期亮点 -### 9.x —— 当前发布列车 - -ObjectOS One 与捆绑的 server 现已基于 `@objectstack` **9.7.0**。运行时的 +### 10.x —— 当前发布列车 + +ObjectOS One 与捆绑的 server 现已基于 `@objectstack` **10.2.0**。尽管是大版本 +跨越,运行时的启动契约并未变化 —— `createStandaloneStack` 仍然接收同样的 +artifact、环境与数据库设置 —— 而所有破坏性变更都落在多组织(multi-org)租户 +层,因此**单租户的 ObjectOS 部署(默认形态)可从 9.x 无配置改动直接升级**。 +变动内容如下: + +- **行级组织作用域拆分为独立插件**(10.0,破坏性)—— `organization_id` + 自动标记、按组织的 seed 重放,以及默认组织的 bootstrap,已从 + `@objectstack/plugin-security` 移出,改到可选启用的 + [`@objectstack/plugin-org-scoping`](https://www.npmjs.com/package/@objectstack/plugin-org-scoping)。 + 单组织部署因此更精简(无需在每次查询时剥离通配的 RLS),而 + `OS_MULTI_TENANT=true` 仍会在 `plugin-security` 之前自动注册该插件,因此由 + CLI 驱动的项目无需任何代码改动。按 ADR-0002,*tenant*(租户)是物理隔离 + (一个 Environment = 一个数据库);`organization_id` 则是同一数据库内的*逻辑* + 作用域,因此它单独成为一个插件。 +- **不再自动创建个人工作区**(10.0,破坏性)—— `plugin-security` 不再为每位 + 新用户创建「`'s Workspace`」组织。用户现在需要接受邀请,或显式创建 + 自己的第一个组织(Slack / Linear / GitHub-Orgs 的模式)。第一位注册用户 + —— 会被自动提升为平台管理员 —— 在多租户模式下仍会获得一个 + `Default Organization`,以便其会话能解析 RLS;单租户部署则不创建任何组织。 +- **`record` 表单字段类型**(ADR-0014)—— `Record` 属性(例如对象的 + `fields` 映射)现在可在 Studio 中作为一等公民的表单字段编辑,而不再以原始 + JSON 的形式泄露出来;对象预览面板也挂载了真正的 `ObjectGrid` 渲染器 —— + 你预览到的就是最终交付的。 +- **通过 `IEmbedder` 实现可插拔嵌入**(embeddings)—— 新增一套 embedder 协议, + 外加 [`@objectstack/embedder-openai`](https://www.npmjs.com/package/@objectstack/embedder-openai); + 知识 / RAG 适配器现在消费 `IEmbedder`,并已重命名以去掉 `plugin-` 前缀。 +- **Public Forms(公开表单)** —— 服务于 `/f/:slug` 的匿名 Web-to-Lead / + Web-to-Case 表单、一个统一的 FormPage(公开的 `/f/:slug` + 内部的 + `/forms/:name`)、一个 `type: 'form'` 的 action 变体,以及 `ObjectSchema` 上的 + `defaultDetailForm`。 +- **云身份拆分** —— `os cloud login` 现在与 `os login` 分离,云控制平面已迁至 + 私有仓库(让 OSS 运行时更精简),而 `objectstack init` 再次能脚手架出一个 + 可构建、可启动的项目。 + +### 9.x + +9.x 列车在切换到 10.0 之前运行于 `@objectstack` **9.0 – 9.11**。运行时的 启动契约相较 8.0 没有变化 —— `createStandaloneStack` 仍然接收同样的 artifact、环境与数据库设置 —— 因此 8.0 部署可无配置改动直接升级。变动 集中在面向作者的层面: diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index d9c9be5..286df6c 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -85,29 +85,29 @@ importers: apps/objectos: dependencies: '@objectstack/cli': - specifier: ^9.7.0 - version: 9.7.0(@aws-sdk/client-s3@3.984.0)(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(ai@6.0.206(zod@4.4.3))(better-call@1.3.6(zod@4.4.3))(better-sqlite3@12.11.1)(jose@6.2.3)(kysely@0.29.2)(mongodb@7.3.0)(nanostores@1.3.0)(next@16.2.6(@opentelemetry/api@1.9.1)(react-dom@19.2.6(react@19.2.6))(react@19.2.6))(react-dom@19.2.6(react@19.2.6))(react@19.2.6) + specifier: ^10.2.0 + version: 10.2.0(@aws-sdk/client-s3@3.984.0)(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(ai@6.0.208(zod@4.4.3))(better-call@1.3.6(zod@4.4.3))(better-sqlite3@12.11.1)(jose@6.2.3)(kysely@0.29.2)(mongodb@7.3.0)(nanostores@1.3.0)(next@16.2.6(@opentelemetry/api@1.9.1)(react-dom@19.2.6(react@19.2.6))(react@19.2.6))(react-dom@19.2.6(react@19.2.6))(react@19.2.6) '@objectstack/core': - specifier: ^9.7.0 - version: 9.7.0(ai@6.0.206(zod@4.4.3)) + specifier: ^10.2.0 + version: 10.2.0(ai@6.0.208(zod@4.4.3)) '@objectstack/driver-memory': - specifier: ^9.7.0 - version: 9.7.0(ai@6.0.206(zod@4.4.3)) + specifier: ^10.2.0 + version: 10.2.0(ai@6.0.208(zod@4.4.3)) '@objectstack/driver-sql': - specifier: ^9.7.0 - version: 9.7.0(ai@6.0.206(zod@4.4.3)) + specifier: ^10.2.0 + version: 10.2.0(ai@6.0.208(zod@4.4.3)) '@objectstack/metadata': - specifier: ^9.7.0 - version: 9.7.0(ai@6.0.206(zod@4.4.3)) + specifier: ^10.2.0 + version: 10.2.0(ai@6.0.208(zod@4.4.3)) '@objectstack/objectql': - specifier: ^9.7.0 - version: 9.7.0(ai@6.0.206(zod@4.4.3)) + specifier: ^10.2.0 + version: 10.2.0(ai@6.0.208(zod@4.4.3)) '@objectstack/runtime': - specifier: ^9.7.0 - version: 9.7.0(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(ai@6.0.206(zod@4.4.3))(better-call@1.3.6(zod@4.4.3))(better-sqlite3@12.11.1)(jose@6.2.3)(kysely@0.29.2)(mongodb@7.3.0)(nanostores@1.3.0)(next@16.2.6(@opentelemetry/api@1.9.1)(react-dom@19.2.6(react@19.2.6))(react@19.2.6))(react-dom@19.2.6(react@19.2.6))(react@19.2.6) + specifier: ^10.2.0 + version: 10.2.0(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(ai@6.0.208(zod@4.4.3))(better-call@1.3.6(zod@4.4.3))(better-sqlite3@12.11.1)(jose@6.2.3)(kysely@0.29.2)(mongodb@7.3.0)(nanostores@1.3.0)(next@16.2.6(@opentelemetry/api@1.9.1)(react-dom@19.2.6(react@19.2.6))(react@19.2.6))(react-dom@19.2.6(react@19.2.6))(react@19.2.6) '@objectstack/spec': - specifier: ^9.7.0 - version: 9.7.0(ai@6.0.206(zod@4.4.3)) + specifier: ^10.2.0 + version: 10.2.0(ai@6.0.208(zod@4.4.3)) devDependencies: '@types/node': specifier: ^25.9.1 @@ -124,32 +124,32 @@ importers: packages: - '@ai-sdk/anthropic@3.0.84': - resolution: {integrity: sha512-BIDaHmCHs6Sr5VUsEkTbbVlAN4GWjg97X9x/IfXyviLtzsXvffui9XIcZugkAi1Ri6FnvI5T5qDGh5YLnSuzRg==} + '@ai-sdk/anthropic@3.0.85': + resolution: {integrity: sha512-fNeDB644l5wbRNQU0FnI+F7UTtOenMnPtACfMPUJaS2zJfuBlseEa1TMg+otHkETZgaJB+6Na51NQEv0+m7czw==} engines: {node: '>=18'} peerDependencies: zod: ^3.25.76 || ^4.1.8 - '@ai-sdk/gateway@3.0.132': - resolution: {integrity: sha512-sFZFGk6aVSNKmgDrb14efaAbvM71AB3UUvaTsU+bvhWP9jrkRrwix/jFX8IoOAJk0/X7Xf7p3m0J2O2G6ljZbA==} + '@ai-sdk/gateway@3.0.133': + resolution: {integrity: sha512-Ebs+7iS9zUgJu5B0RlxM2JmDWzq79Cpd6YdiqcCzB5qFdpfQJPUDiXutqlQP89F2XGjOdDeidulBTXUdXWzOxw==} engines: {node: '>=18'} peerDependencies: zod: ^3.25.76 || ^4.1.8 - '@ai-sdk/google@3.0.82': - resolution: {integrity: sha512-md+M92ZJuPIMU2p4v1rGLpJJWTmTh/vpJPkMnQbEdcLaPTZxRaroIKSnmL/9UGJV0BORJlHNDJegkcnhVpTmDA==} + '@ai-sdk/google@3.0.83': + resolution: {integrity: sha512-Pz7aCX0dy+5x+r4K/37HbLZNaPtPL4q2NduzJW64VffLv5sI9Nb478wAd7PlH2r2asiypJsz/Jerf9draTciUA==} engines: {node: '>=18'} peerDependencies: zod: ^3.25.76 || ^4.1.8 - '@ai-sdk/openai@3.0.71': - resolution: {integrity: sha512-j6eBAa5oHFZ4U5CxpIV3T4zXNM/BviodNCZCL1qHkA4aqkwK9iQ18TWYz2DZcXpw4BO5pikKzqpXORxb1EnZGA==} + '@ai-sdk/openai@3.0.74': + resolution: {integrity: sha512-LPDBWd2WCv0GQs29K2pHcNrGx24hm4D8QEP386HwUAUPr1URho6bNVXHNmIv0FxaW+xDkLpNMTen+mFCUBp2LA==} engines: {node: '>=18'} peerDependencies: zod: ^3.25.76 || ^4.1.8 - '@ai-sdk/provider-utils@4.0.29': - resolution: {integrity: sha512-uhukHaCBvqkwBHkT8C2PrnqKTCoLn3pdHXqtcR9I8ErH+flbzgW4o7VHSNIup9LRu+WBvZIZDQLsx6rwl2tiOA==} + '@ai-sdk/provider-utils@4.0.30': + resolution: {integrity: sha512-VO7I+vPffqI5sMnPoUq5DCSqKIgQIk/naJWRdQVpz2ma2zoprC/lqiJiUEl2s6DfvTD76TbhD3q39ROjlA6rGw==} engines: {node: '>=18'} peerDependencies: zod: ^3.25.76 || ^4.1.8 @@ -414,8 +414,8 @@ packages: resolution: {integrity: sha512-JiDShH45zKHWyGe4ZNVRrCjBz8Nh9TMmZG1kh4QTK8hCBTWBi8Da+i7s1fJw7/lYpM4ccepSNfqzZ/QvABBi5g==} engines: {node: '>=6.9.0'} - '@better-auth/core@1.6.19': - resolution: {integrity: sha512-ddE3Y9MoQ8t32QSO5Y8mV7pmnDAv5LdJjX1SPWUH6JUUmuOc7YEy3B5JfXZIJbRaXFdnAitN7pHPVa5u/dYAZA==} + '@better-auth/core@1.6.20': + resolution: {integrity: sha512-y73I1xNXuNYiHBFduWGRcJ2ro2rNuVDEYkgVMJtIaRXtbosdXHs9gfyQrHecgeHMHKx1SYSBT/CExak0vVMTng==} peerDependencies: '@better-auth/utils': 0.4.2 '@better-fetch/fetch': 1.3.1 @@ -431,55 +431,55 @@ packages: '@opentelemetry/api': optional: true - '@better-auth/drizzle-adapter@1.6.19': - resolution: {integrity: sha512-57C9ePorPmIEez6dHuQMz3hCTkYim0lfVRIoRtX7PiVfiRFB2bjXseQwrCJfQmkgMFlkp1s/c9nKgAjc2EvAIg==} + '@better-auth/drizzle-adapter@1.6.20': + resolution: {integrity: sha512-hJHfCdAiZrC7EmZAt3NAiGgcNo9Y5Qz3PLL+a9rODXaAJGCMvzUJniqef9wHuJBwU0SWW+2f4wXe8xQmaC/IKQ==} peerDependencies: - '@better-auth/core': ^1.6.19 + '@better-auth/core': ^1.6.20 '@better-auth/utils': 0.4.2 drizzle-orm: ^0.45.2 peerDependenciesMeta: drizzle-orm: optional: true - '@better-auth/kysely-adapter@1.6.19': - resolution: {integrity: sha512-DlmvllEd0nv8JL+plX3JB3WTmqDFnGFOmjmIiUDHo8R3PTAvC0ZaJq3Jk+LQLN5PyVQSUzXZKtvTQYaqRHzBaw==} + '@better-auth/kysely-adapter@1.6.20': + resolution: {integrity: sha512-Uvpmgbx5y8JqXroVanNzDdKzOl3HojoTz+/X6MR6zOUr25IzlYz660mjnu0rxKiIF55kD3CroqFsDzjNUw7ERw==} peerDependencies: - '@better-auth/core': ^1.6.19 + '@better-auth/core': ^1.6.20 '@better-auth/utils': 0.4.2 kysely: ^0.28.17 || ^0.29.0 peerDependenciesMeta: kysely: optional: true - '@better-auth/memory-adapter@1.6.19': - resolution: {integrity: sha512-cZ8iLRG/T8Oi/CqE9FTHj3z8pIOqRsINi50trWxPNwyY/Eyb7YCljrBi0PuqgIdyVs7BWfrrtEYTpO4ddfuwEw==} + '@better-auth/memory-adapter@1.6.20': + resolution: {integrity: sha512-J5Ni0LlFijbzXlwu2rFHaD8zEFocmajyzWkRnHsq8LhV/Dk4iWQwwnqzLrPoDQEj8roECAUF03hrIeMzqWRqJQ==} peerDependencies: - '@better-auth/core': ^1.6.19 + '@better-auth/core': ^1.6.20 '@better-auth/utils': 0.4.2 - '@better-auth/mongo-adapter@1.6.19': - resolution: {integrity: sha512-8AReXqhMGiGQIPEpGbmAhh+R4g70TsAVvzwdd6Aj4q+LTSwd3tqC89TFJ4eX8KSplxm9PFBZ6g6gsRmDd7urQg==} + '@better-auth/mongo-adapter@1.6.20': + resolution: {integrity: sha512-ClDBJf6h4g85WJswxwQwxLaiyRU67Gmz/uaIf19tY1gqlLJDykSGjmqRNSBMG5rWABNzcNqbO4KG31rYUldbIw==} peerDependencies: - '@better-auth/core': ^1.6.19 + '@better-auth/core': ^1.6.20 '@better-auth/utils': 0.4.2 mongodb: ^6.0.0 || ^7.0.0 peerDependenciesMeta: mongodb: optional: true - '@better-auth/oauth-provider@1.6.19': - resolution: {integrity: sha512-tGY9zvoActfrwlHBIOBN3Y6Sh/UtyzP4s2tBI3pjW0h7HptTbPvB8wyNMBMK7YT7ztsEPYY1OoY3WnMnxaqzxw==} + '@better-auth/oauth-provider@1.6.20': + resolution: {integrity: sha512-+YzrmMN9N5pv8s/nOaF6dUS3s0yH4PykZWLdaEeT7ZMWB+zEAa4E8TYKBH2CcWmlXmoYR4uAHtZYI+QiEu/guw==} peerDependencies: - '@better-auth/core': ^1.6.19 + '@better-auth/core': ^1.6.20 '@better-auth/utils': 0.4.2 '@better-fetch/fetch': 1.3.1 - better-auth: ^1.6.19 + better-auth: ^1.6.20 better-call: 1.3.6 - '@better-auth/prisma-adapter@1.6.19': - resolution: {integrity: sha512-pXZBhR7/bzJb48IUHlGMyz9SM9h1OCO5GIIuHEllJYt8MKgrjtsnXfUkwZh6pAUEIp3WxBEYMMK96bfkqHiWEg==} + '@better-auth/prisma-adapter@1.6.20': + resolution: {integrity: sha512-WhYdhSGuVSfu1peCSf2snmmVzfWjRaEvbSrsNCusiwGE9l94HlES4mjSPM48fed24hL7yg4j1dYK/yjEt87FpQ==} peerDependencies: - '@better-auth/core': ^1.6.19 + '@better-auth/core': ^1.6.20 '@better-auth/utils': 0.4.2 '@prisma/client': ^5.0.0 || ^6.0.0 || ^7.0.0 prisma: ^5.0.0 || ^6.0.0 || ^7.0.0 @@ -489,10 +489,10 @@ packages: prisma: optional: true - '@better-auth/telemetry@1.6.19': - resolution: {integrity: sha512-bBaB6SMIsrD3WutDdm5YQ1bQyinANTimHD8RtpLWhNh/jIXvzgwVVCrDFqA256vcGC/ZRCydmtW8ZrUqNMW9Og==} + '@better-auth/telemetry@1.6.20': + resolution: {integrity: sha512-3BhbY3naQDERvdJvJ7fGszVY6rpsVfc6c9uyBVZlC1coVEF/rkM0rIcjtMVI1GUH7vWy1wjR6qF5vQnMun3XNQ==} peerDependencies: - '@better-auth/core': ^1.6.19 + '@better-auth/core': ^1.6.20 '@better-auth/utils': 0.4.2 '@better-fetch/fetch': 1.3.1 @@ -1267,8 +1267,8 @@ packages: peerDependencies: hono: ^4 - '@hono/node-server@2.0.4': - resolution: {integrity: sha512-Ut3y0dMMPWy6bZ2kVfx25EOVbZlm15dhF4mOsezMlhpNHy+4MkU1qN9Y6lnruYi4wPmFzimGX2X7LF/FwHli4A==} + '@hono/node-server@2.0.5': + resolution: {integrity: sha512-yQFvDmyDo3y6rEOJZDUYPJ49DIKTPpIk4kGvm40xx4Ejne0Pu9a1+exxPN+C1UppWK/WGZX9F++/Xs231tE86g==} engines: {node: '>=20'} peerDependencies: hono: ^4 @@ -1605,36 +1605,40 @@ packages: resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} engines: {node: '>= 8'} - '@objectstack/account@9.7.0': - resolution: {integrity: sha512-daHgivenATrvYifcWDqZmDgGuHMVsh3SHn6XoozqIEJd2N2SMqwiYIM2Va41AjHqjcjVJe5UdrTx/eIOutappg==} + '@objectstack/account@10.2.0': + resolution: {integrity: sha512-VmjNJOIPdDn7jc/3aUTVh8p0iW+wT1EYP9yKUOnseb3O0N/O439jJa/HDtGSeIXe6rxdZB7jD8LUemfcjYE5Vw==} engines: {node: '>=18.0.0'} - '@objectstack/cli@9.7.0': - resolution: {integrity: sha512-ouudf/jc80TMiSgtUKB//c2jBVS8nt/SgWR7btOIq4uRRI2F/pWYgQML1g07fEYQJXcKi8rLXlC0So2XH0eqzg==} + '@objectstack/cli@10.2.0': + resolution: {integrity: sha512-6GyFu5nzWinPmLeEPqvMgtQbJLoBvVRq1AmPry2262mI4lcDHVCY3ftNW90RZysRI3wJu9kHJBTpZm0lwDEnTQ==} engines: {node: '>=18.0.0'} hasBin: true - '@objectstack/client@9.7.0': - resolution: {integrity: sha512-WxmZrOIYhaBKZj1DtjX63Pws8H8wWsKjtvzMr90IR9YZxUXD2ZGBKStb4SpGeCEHOC91N2yWNNyswS2ucGwcXw==} + '@objectstack/client@10.2.0': + resolution: {integrity: sha512-sjHiFjnQD8qps5RkS9LnnV9neB2v+JWlkIZztetsm9NVcfoOe8uZIP12VIKSoz09ph0A6AHjd1qbvf7DUzQiig==} engines: {node: '>=18.0.0'} - '@objectstack/console@9.7.0': - resolution: {integrity: sha512-XpIMcDtepOoyp+tS4syiLZdGORj479CctT9vrzsJ2tbM0rwfp+MxtaNK4YMlyoy2fbO9gl+Ut1MGDCI4CiI1cw==} + '@objectstack/cloud-connection@10.2.0': + resolution: {integrity: sha512-wHzuOeaASDEh4NgFlXk+/xqlrMLl/rRv0pvyHdWw1Lod2OzSZ/VGtEGLnR6cw+fUoUHiUPILRZrCn33D8Ao/ww==} + engines: {node: '>=18.0.0'} + + '@objectstack/console@10.2.0': + resolution: {integrity: sha512-J1pkfN9P9MYa4YxPPkekjBl16+mq7YeOItKT57bvD4MM29ngPRP94QUFHOkBdV1P3qoEuF52R1fHpoL4VAvCsw==} - '@objectstack/core@9.7.0': - resolution: {integrity: sha512-pDLrGUsrhWmAqMeImT7TJj4QQcllpOTZKc+0Iuwf9rcdKsshDvab4Gk3M7HrkO6NO3OTn42NIguka1mLu5drvw==} + '@objectstack/core@10.2.0': + resolution: {integrity: sha512-v25snMcDKYh2bXAYH2TG5E9Pa1hvLmSpLEqb6fZCauDAueS1XmA/XWn9GWONWSDoT4Hx4zXnAu8ScPNVvlprkg==} engines: {node: '>=18.0.0'} - '@objectstack/driver-memory@9.7.0': - resolution: {integrity: sha512-QLCQYbtfwkP8U1t+3tRlo7rOK9MGNr43axaWnVT+KJ5UVdFPe7o5LcUh3aUS91hn8BkhhkFXxq4lMyx8wUHetg==} + '@objectstack/driver-memory@10.2.0': + resolution: {integrity: sha512-e+cSXA8Gyaz0B4kWAWSTtWA7Bk+l2QpajPmbQ7CFZ5P53XmVqX+C1ooCAXA64anTC3BFBwjWSs/RbiI9idZzyw==} engines: {node: '>=18.0.0'} - '@objectstack/driver-mongodb@9.7.0': - resolution: {integrity: sha512-oultw8Qx5P563dcr7LdPNDlAXjzugvNApWXmW93+DCMGfyEyLFFaj16LQQz78EChrsHZlv9kVDlkZtbSIa/Xig==} + '@objectstack/driver-mongodb@10.2.0': + resolution: {integrity: sha512-WMV0eH6ifb0crpN92AqgoZViY0jOD8ZelOYl51qe/Yvh+PfXRIMnDpJkc4T9HWkLM+SHprkC+oyz7+yElcfFmA==} engines: {node: '>=18.0.0'} - '@objectstack/driver-sql@9.7.0': - resolution: {integrity: sha512-bCJtSN6d2sO9D+UV67KN3XFVkICGJxZVkjsQxndNJ4MVtNQmA+SicWf/oGHSNAV/W3OmD4kN7v9u0xg664bqwg==} + '@objectstack/driver-sql@10.2.0': + resolution: {integrity: sha512-rx9QpsCoUE1qg0lMmT49QnEx+N/9bZG6aLYF5V4TjCFnOrXlhV8FDSj/HUN9Kq6z1byUjgtmX0RwyfPia+wiNw==} engines: {node: '>=18.0.0'} peerDependencies: mysql2: ^3.0.0 @@ -1651,19 +1655,23 @@ packages: tedious: optional: true - '@objectstack/driver-sqlite-wasm@9.7.0': - resolution: {integrity: sha512-EJwaZt03AUp26Cgel2pTYoDOWwRsVwIwe3OxGh8tRi19IW3GGHOV8S27wVag6Tr2HqA/puoYCKV0BzWnb7ZwgQ==} + '@objectstack/driver-sqlite-wasm@10.2.0': + resolution: {integrity: sha512-IHzr4DpCF5KQwHm2Smw9GSMCRV26K3+GAMt850xoHGMRg9Bkffg5y8Sc2siEj3axQhnjyvnC92OBoJmJKPxCew==} engines: {node: '>=18.0.0'} - '@objectstack/formula@9.7.0': - resolution: {integrity: sha512-NEjpQ0SZ0R75Nc/JqwYsB1msrY7NRWyrrjLfU8GQvGe3xMQpgHQUvizCwtHYeBe2OB5GdkuOU4wL8BfJ8ymFow==} + '@objectstack/formula@10.2.0': + resolution: {integrity: sha512-a29B43u2Wg51+XrBhhLrtbkGMv4JfKAGK1UHKOERFIsUJE4aDrHXao4a2MS30eqwu/4IdFLoL2ZBHNca8BJ86g==} + + '@objectstack/lint@10.2.0': + resolution: {integrity: sha512-/vazLqyLe6Jqu129399e25YpK3ddmdeiLptmTuvkOKgzEnJLngrQqx5klABmQXFvzVKmCh5TArK2vDtGmloyRw==} + engines: {node: '>=18.0.0'} - '@objectstack/mcp@9.7.0': - resolution: {integrity: sha512-gSklxFU9j7ZHGwdmqX/+p9LFiR/Fw628CVRrQYge/NkStU37oNMOYgq569QEKDTPg+s/3bN0yif83dsmJtVzVA==} + '@objectstack/mcp@10.2.0': + resolution: {integrity: sha512-JyduKrsaIY5xO612WOrTX4ML3jcocXsaTszsSVXR+fgHx89hd9lGrxw9wXGDHYccBT10Ajyqs4EVfiweIKbJwg==} engines: {node: '>=18.0.0'} - '@objectstack/metadata-core@9.7.0': - resolution: {integrity: sha512-sakdtyYs6ZNU7ZcyGfwEw9mE4yif9+YEFYDbt1XpS9P8exj4TjnQ6Bf62XdR++0kZzNp/GwY+VA//4HjoVmoTQ==} + '@objectstack/metadata-core@10.2.0': + resolution: {integrity: sha512-KOVZ8bjTrgI1gAm8KAS5ib5W87904V5TRdI+9iljhsb0I3O2R5nZg8Gt+zBTRCWON+v9+e3ScwK+vgGrTcLn1w==} engines: {node: '>=18.0.0'} peerDependencies: vitest: ^4.0.0 @@ -1671,71 +1679,71 @@ packages: vitest: optional: true - '@objectstack/metadata-fs@9.7.0': - resolution: {integrity: sha512-EgIlOtABjcNVuUmgUh9iTFLFoLaWfUF1Ul8ulZpiSW0Wdf2e6PKwHrMT5ySjz8xU+4SWHsX6LorYf962J94cYg==} + '@objectstack/metadata-fs@10.2.0': + resolution: {integrity: sha512-iwCDA2VRD1M4k1Nxq96pSCpPt22YAeZI+GR+nlyahE0l82XgGKj2QKx18iX748Hh+5Y5t3CmH7sbwZWcwG8BCg==} engines: {node: '>=18.0.0'} - '@objectstack/metadata@9.7.0': - resolution: {integrity: sha512-k4djwIcE30PV8zkJ5LmS9qR31WW+eUzPAlT2f/XI/fouClTJiiyNiQJzwY+xbHmrhRYrTce9cVI+hCA1Fc1a5w==} + '@objectstack/metadata@10.2.0': + resolution: {integrity: sha512-2+3rmj/3lh21W0ftB/qqg8EDKmrNbxeUnxMdUb0gOIaj/60Fj2L/4u3EofY3xxP9VAhuhJlUi391TLUsAQVHsw==} engines: {node: '>=18.0.0'} - '@objectstack/objectql@9.7.0': - resolution: {integrity: sha512-ofNSh/ms1bt46tVeWrPGR5hxWIVY537Rpal3m3B2HTBdqiY+0x0W8RT0bdCnIwEJrQhPdgMTwobOx2dE8vpbqQ==} + '@objectstack/objectql@10.2.0': + resolution: {integrity: sha512-9JUck7DSmmpuzWerT0wJRt3SgMddiycSWeOUroZdlGx4ksGNGU1iNZHzwhY7JvlUOePdY7AOCAwHzrp6DUJf0g==} engines: {node: '>=18.0.0'} - '@objectstack/observability@9.7.0': - resolution: {integrity: sha512-rvcEablfRKWYHbZYKvsz2h69UnSUrodkN99gU0X2CcCWtpfV5G/N6NVGqdMdaljyZXH71fumgqthXsI4h2z/UQ==} + '@objectstack/observability@10.2.0': + resolution: {integrity: sha512-iSNtraUgnwQels6YqAVN7jlseyQ9GV0n67t0y7b1BQCVYaEPJb172gDrxNWhdk4ZSfgxdiouWIaqmPWkCFiApA==} engines: {node: '>=18.0.0'} - '@objectstack/platform-objects@9.7.0': - resolution: {integrity: sha512-Mu4E+9JEWkxiFJ3HvLgRZDvvG+kgJx7E3mrJipmNcHDc4rqUZsZcM1qEr/8bSqUoslYYRfLSMYEhzUgHA6gUgA==} + '@objectstack/platform-objects@10.2.0': + resolution: {integrity: sha512-wUfHL/8ae4QyJeXa9AtB+tFnvidrhqFN1XddW1z5ZA31oZo5ya8dB7J8CA1ctSwQhMBBbmlJJ6uKxazd1vedHw==} engines: {node: '>=18.0.0'} - '@objectstack/plugin-approvals@9.7.0': - resolution: {integrity: sha512-XS7+vYouxHbxxHCa3E5Na/6dw2NAK3hm66NmanfBtRf2Am+ljCy48lHcp3eNF4bnhYW0DLjHpkBgiZ6tPfWcFg==} + '@objectstack/plugin-approvals@10.2.0': + resolution: {integrity: sha512-uehQENjTw2ya5OspBGG5hWWkQexGBvHaydjRyi4TMM2LvR8dOSQVuYq0JuMqqd0iEHNlTKA0dZgPMZa2KPQL4g==} - '@objectstack/plugin-audit@9.7.0': - resolution: {integrity: sha512-7f71VKhmZG+x+YppoP7WPRyoTXmJLAzXgBtNi10dqAUWypB1u5JZOjBf9XajYXZ40vjEmkpfjsvLn5g6uOpGUw==} + '@objectstack/plugin-audit@10.2.0': + resolution: {integrity: sha512-ZQMZJj2lPJyQF8ySUHdnEJo4oPxwhQnZzuUql3NVoAbDp2mKYpa9GABaylnXs/F8oxKlWcgi686det6GTcoLiA==} engines: {node: '>=18.0.0'} - '@objectstack/plugin-auth@9.7.0': - resolution: {integrity: sha512-AYBI2z0oQZbx17PhMT6n0Ps9vYVzp2GORxczm5jqZMt9fIy7pmKm9/flFlbBFq1b5uwBUcnEw7vjso1zvB/3uQ==} + '@objectstack/plugin-auth@10.2.0': + resolution: {integrity: sha512-9x3oYZZDIK+DR6XorrIZJYXeh5ZLniJXv1OdrxFbo48ULLQNpCEIy/j3VI8XRfvo6aFgBlAdtqE4MXaHFhw/gw==} engines: {node: '>=18.0.0'} - '@objectstack/plugin-email@9.7.0': - resolution: {integrity: sha512-XHA2b8qxukIJz/0BTmG5XgdoFmH8c9X31GQoxYy0HnmECekySFNX/CY127gt8xFIGvzUdnBtt7d3VQ0/oIeC2w==} + '@objectstack/plugin-email@10.2.0': + resolution: {integrity: sha512-b2q+iXjhIxsS7BEJcaeyuAokkxMl7343cMyWxUelE5YlNaHwCiqYqxYB3F9+Pjp8LCeaGaIimRO8J869PYvGiw==} - '@objectstack/plugin-hono-server@9.7.0': - resolution: {integrity: sha512-zJymm3RiEwhGniL2SwXmTKmFYJ/zNOeV2dQy6Ul0tswSctAjvCw698bjEkFzWzV3Jz1RcAg8YYJkZzVr8sT81w==} + '@objectstack/plugin-hono-server@10.2.0': + resolution: {integrity: sha512-EEhg4gpHE88He3SVzC4ledFPl3aGSwoLqTolbFOPEEHODBMVvAOcJa0Wbqn3RLoN1fHd93eF5r7fo8fR6bLZ4Q==} engines: {node: '>=18.0.0'} - '@objectstack/plugin-org-scoping@9.7.0': - resolution: {integrity: sha512-PKcCzc6UuTy9YemRhWd6vtJw3oLQSJ4Kkf8LrHuBByVCL7XyNrM5upt6WZxjMuyOYVBni3xPRBFeFWDY3Y13lg==} + '@objectstack/plugin-org-scoping@10.2.0': + resolution: {integrity: sha512-51dj50vAjGl5kMRJ60yBPDx1bPOaM9DEs+Jo3z7cP/N3jc5ENnDqnBJMvLUdKkQ9pT60FF3eRRyh2o73PGwGDg==} engines: {node: '>=18.0.0'} - '@objectstack/plugin-reports@9.7.0': - resolution: {integrity: sha512-onNGx9ZNv0k/ZLXDOdEr/2lWK0aLoF+J7aIR+I0XTJPbFhjBqDhpoYr1nsMiL7mZUto1oQXNcDSUR1qfD8QAkw==} + '@objectstack/plugin-reports@10.2.0': + resolution: {integrity: sha512-YkI7CA5Y+ZXdQE6CvlIeMryprIo8/tfOXfF/pC3DKCyURngMXjjOwact++Izt4fNrZ1py+rmVXfRRZqiEOX5fA==} - '@objectstack/plugin-security@9.7.0': - resolution: {integrity: sha512-+pRM6DfAh7ZB6ZqC5RJHUidXJOcds6BJx+YkTC1XlvuNCXj/ZP9Fq6+t4EP9k4utcU8dWUQPu/ApxpCg6gD5hQ==} + '@objectstack/plugin-security@10.2.0': + resolution: {integrity: sha512-DoCaLt4nXCvZLcq+XETh02vs/mAjQ+Oh1OubDkG9JeG2s31EmOr3bm/ExO4y5L0QwOiGfPxCa3vmmm8D5SSAuA==} engines: {node: '>=18.0.0'} - '@objectstack/plugin-sharing@9.7.0': - resolution: {integrity: sha512-NOPFn8xcfvkDEMI0RhHw8tbSJa9wOB0V+oTUVxFOU9Swh/bhfP3Zmvn5RTDdMqMmYUoJbDjARMUwvx9Wy3wA0Q==} + '@objectstack/plugin-sharing@10.2.0': + resolution: {integrity: sha512-Yd31NnrrvwMm9owBiSM0Eqdb9pudr4Py6a3uiiVrwwxUfssM2dPiEGMBaaHo1Wh7gvja2EkMeIJGSlYJSbXuJA==} - '@objectstack/plugin-webhooks@9.7.0': - resolution: {integrity: sha512-TnLLvrjyhDT8pyyNj+sXPmK4oa9VllIs9m00BnYa+nVmbo+Er3mRBWHHD5gm9SlNKfZtVRN/8u1n4POgDDxv1g==} + '@objectstack/plugin-webhooks@10.2.0': + resolution: {integrity: sha512-xAi0Zi+t6yQJY7N97snVaJnWKO7NMuVkc4ZKsEooYy7rDYsMDJngwqgqgbfbbZvpp1A9HGfuecsZayQy1dMlgQ==} - '@objectstack/rest@9.7.0': - resolution: {integrity: sha512-lfkw2TkJORGQo/BpSkyLMDROvJvJNPhqf771QgqSOVT6t1evks6BWa6JjDT4SRLEhgX6+MUIFVaRhlk9j/l8cQ==} + '@objectstack/rest@10.2.0': + resolution: {integrity: sha512-FpjT7m/8wMSM+hkvuIGB2CGUDQFeacUKOMqSLWyF/2endtDK64xzezrjKwpDrg9jM4a4XgdK5RKx9K4GpHtyZw==} engines: {node: '>=18.0.0'} - '@objectstack/runtime@9.7.0': - resolution: {integrity: sha512-PrvNT7Hm9DcbWI03YBBWqig+6yBZbgtNJ41av+mFDOkcICbtwuSegQtTVg4UgihfuEkERg5t3WA3Ki3qU0MgFQ==} + '@objectstack/runtime@10.2.0': + resolution: {integrity: sha512-rEIynmFA1jWe+pHg+WEaYMtrPCZHjhZywzP1aHOV3FhhuC+pz8kA07eksDq5VwnUffeeu2hjQ7Ocz79Yc2gzdA==} engines: {node: '>=18.0.0'} - '@objectstack/service-ai@9.7.0': - resolution: {integrity: sha512-S727jawyaGqCWy/acaSA52J5hhSGBPDw3/PnFlm9wN4yJsL6Ks+5Ix4TW91l+UC97ZPS3qhC8hWnb0AY4+VU9Q==} + '@objectstack/service-ai@10.2.0': + resolution: {integrity: sha512-Cj/0t8n3IHWl09KKQqb+Vmb9CBIOvC3apdUToOO+8EBYzGppwl9BSkYY7wK7z4oAni1C9E2IUzhddRRTDhKnFQ==} engines: {node: '>=18.0.0'} peerDependencies: '@ai-sdk/anthropic': ^3.0.0 @@ -1752,58 +1760,54 @@ packages: '@ai-sdk/openai': optional: true - '@objectstack/service-analytics@9.7.0': - resolution: {integrity: sha512-DxCeNpLHwvWscdjnaSuI2xZzYhBqY9ab5Nqu1n/hJr2GE9SI+hnu5C0K3XSOQP7JzErc+qTiMUFYaOeAc9uMVg==} + '@objectstack/service-analytics@10.2.0': + resolution: {integrity: sha512-VeCjV99xKy5FQabeZtFo7vF4X6fuupS18wQXTnRb5s1GMae1Kzc1/mLw3BEBx1ixYiXQYE7GaFQLEapGR1i8wQ==} engines: {node: '>=18.0.0'} - '@objectstack/service-automation@9.7.0': - resolution: {integrity: sha512-GzaEzaTX5SFa+NppKURXyNh7BJZpbkZ5xcQRlcogi5P1ALMxahn5RwQRFWRI1jlaMJ0Omag9uoliDODgqqTCHQ==} + '@objectstack/service-automation@10.2.0': + resolution: {integrity: sha512-RVug5xjX79DxDuNnD2dPP590hWehVD8QXQbPndERlu0NUoQBLXevxXv3ZR/jrCGXqTfrZKcqVHvh6Qp3tW4wVg==} engines: {node: '>=18.0.0'} - '@objectstack/service-cache@9.7.0': - resolution: {integrity: sha512-Y031qEul/SlHfhpN+rxUnmVaVX3ylkMUiUKJUqKkB7sOI8H9Sm+fupxeFeDgqEDQq5bh+hCZho5O5SCUfuGCdg==} + '@objectstack/service-cache@10.2.0': + resolution: {integrity: sha512-htD6PIg0pMM4p++xqbd5InrsQzxjHmZcEDr/Op+jenoXZjXAnmZaiNeuMv1dS3MAAO91KQ0nqiQVTHWaX/8RjA==} engines: {node: '>=18.0.0'} - '@objectstack/service-cluster@9.7.0': - resolution: {integrity: sha512-bhV2NObP1cfwXFEiMH1ykQn4PKFO0714bEzEW2vwu4rAZMX0Dlz4nt9HcLF67OA1dea5z9yGwinGw1RD6sT6dQ==} + '@objectstack/service-cluster@10.2.0': + resolution: {integrity: sha512-D4WXUOBtPQ6aiIMr2fT08OSu83QVsB5Q0zCnFVhepuvjZZqCVVkkSwbms1lxmZ+/d+R/X0x1NZrD2ULjBeykRQ==} - '@objectstack/service-datasource@9.7.0': - resolution: {integrity: sha512-i7Quo42qt2iIWxlOifZt8g0xFsa/A97bNwWTApGqFnhIxD2W9knsUzdJaCnMcU3lomK587rCMS+otsNAbmD1cg==} + '@objectstack/service-datasource@10.2.0': + resolution: {integrity: sha512-1UeKcacWzhAl6bBFW3FdYBCShZ+zXc4OaR3JQnRMOuaFqEbahYORJlL3jPbHWE8HB9Jg13zqPZlVCZxdzI/1Nw==} - '@objectstack/service-feed@9.7.0': - resolution: {integrity: sha512-G/54qWzJnkUj3Kyy6VyZUwFzZhVhv1VbdnoBuCkY5T0K8ML38ZzlSy4P59ldIzwGiLitmxKwApuJW1aSLqVGUA==} + '@objectstack/service-i18n@10.2.0': + resolution: {integrity: sha512-pxtl14yoJgmOwzuYl4dtgBXSTTQ9Y6CUAe8ZqnReWhEkfL4BC9P5YMLtLO3UdShmAlKxfLL8+XdvJ/vtHuId5w==} engines: {node: '>=18.0.0'} - '@objectstack/service-i18n@9.7.0': - resolution: {integrity: sha512-QGafWrnLdMkCMGJC1rJmRWj5REaGCK2bJknCOBA7GXoiVRA8SknGvwfV9r0mfQwZ7VEET2tN6ytMuh7Au6ZCvw==} + '@objectstack/service-job@10.2.0': + resolution: {integrity: sha512-kBVdCcnXIEVrmmb6/F4nerPUb2PyOiJEZk4QNHhCj6vH00LHTpPt4baMkPAlYClwEU5Zu/ozQRIS1kvzAzEF3A==} engines: {node: '>=18.0.0'} - '@objectstack/service-job@9.7.0': - resolution: {integrity: sha512-RaYN7s7Grac3S0ZzDwrbvCVUBbA0aKLNbcExMDhd/c1e23pNpe7887Y++rilY3cRWtxG41FatxFnB2z/ZxerNw==} + '@objectstack/service-messaging@10.2.0': + resolution: {integrity: sha512-oJuo3ZaGYiVTODjsfeC1kNa+fL5dNRI3m9UXf/6hYCSJCoKKgH4lYm4avJsa5M47U5vetuoMsjerozJksRrgmA==} engines: {node: '>=18.0.0'} - '@objectstack/service-messaging@9.7.0': - resolution: {integrity: sha512-PSynXoy/GZUiIEzCWsoGsXgWTNwsFdmBp2NnIwpdklWBwOY/X/ma832yBZ7xASNLF0Fhe468J5NMkAP2ku7nwg==} + '@objectstack/service-package@10.2.0': + resolution: {integrity: sha512-SX9fuSmQbz+dWWv4FebGTnD25FUZfm+Y8mWBjRWd0qR+YKA54uKMZ1ZfwumjWmBdaPT6NqT3JCzOY2U+5QuUsg==} engines: {node: '>=18.0.0'} - '@objectstack/service-package@9.7.0': - resolution: {integrity: sha512-HSisiksqEXpJYL8wcXTEUPE5iN6zBMBxKRAXTg8shXNKSjPFKTu7rnTI798VpTyr3kGFrV2TajDgGcWNvF2DcA==} + '@objectstack/service-queue@10.2.0': + resolution: {integrity: sha512-ERldR+0BdClB0I5vnrJ5vF5hpvsCgWcSRvdf+og66q1j9PI1qn18DjBRBduK3JFB00VHtOQOd5BXSD4oYKQX5A==} engines: {node: '>=18.0.0'} - '@objectstack/service-queue@9.7.0': - resolution: {integrity: sha512-8BmiW34rMYIDplD/YxTcU89gOsqZKJCo9OXMqNPP3esz3PNRwYMjisGAQLtG/PPxsABTj3tDZblVBvaBM49XcA==} + '@objectstack/service-realtime@10.2.0': + resolution: {integrity: sha512-hDxLULjtx8Y9tFVV1fLr8kjc0GZxjFr61r2Fcr3IJhWl9L170N0X3Tgko41rMghvI679sPt3ggbd1A2/R/dpoA==} engines: {node: '>=18.0.0'} - '@objectstack/service-realtime@9.7.0': - resolution: {integrity: sha512-LJbMFqiiSOgbm+M6fSatfYWPKN0mecXoSz8O7C4jzOGrTIFmSDzanSfBVHAQUbg6Zr8jZDn4pXljTJSNJqM3JA==} + '@objectstack/service-settings@10.2.0': + resolution: {integrity: sha512-Tb87TOw5JTNLY4VY95YlgmUr6Kmsg2bOLd00cMWFGaH4V7iQlBzv9Msw76gpuoEPXFuRgyJEaNK3Vd21chdwWQ==} engines: {node: '>=18.0.0'} - '@objectstack/service-settings@9.7.0': - resolution: {integrity: sha512-H+bluyx1idRtJNpjnIIG6aoqkPS837vMQhPo6zH//ujwVGb1jLoZGnAEXQEl8vkv12K0kbxckHoCUBg9jcdUVw==} - engines: {node: '>=18.0.0'} - - '@objectstack/service-storage@9.7.0': - resolution: {integrity: sha512-zZjCwcsuNh8m7tj2iKJdcQ1spiRGzLaQCtfUPcWCCNuiaDPQyJGfUZuCh8cd0nTzER+n8AdqmT19vJryLNONdA==} + '@objectstack/service-storage@10.2.0': + resolution: {integrity: sha512-S53FQZ3PcZ4QaKR12ivpUUhTDoTX1f9E2hZ6O5N4O0QhvmyS8a3XxQXw+LYZrKYZtMj9mEDeNVrO83+mkRxyXQ==} engines: {node: '>=18.0.0'} peerDependencies: '@aws-sdk/client-s3': ^3.0.0 @@ -1814,12 +1818,12 @@ packages: '@aws-sdk/s3-request-presigner': optional: true - '@objectstack/setup@9.7.0': - resolution: {integrity: sha512-ukLqYK5xf4EnmU3uBj90ThGdNoiaNWVGN4I5k+VbyXTMS71wAt5XKKLFFcY2yMM8AVqA6yUp0OOsp39XW8kMDQ==} + '@objectstack/setup@10.2.0': + resolution: {integrity: sha512-7rFlvkeXICQTx+tPQtQj/OH4sNx/g5KHuZ/onPx411j0Agwkn0va6x+oNTpzY/WGJ4+hgXS9zTQhHAXY5nfqcQ==} engines: {node: '>=18.0.0'} - '@objectstack/spec@9.7.0': - resolution: {integrity: sha512-wCESixAqEu+jy+ZYw8m1VGYEVOJhI5YSBqiAnBwMl+hzFfovoXRYtu33C266g0GR2KWBRtp+An+FK1s4Q865Lg==} + '@objectstack/spec@10.2.0': + resolution: {integrity: sha512-AUmprDkGMJ60vesO2azwoJ2qMVVkAW5UehXWPQVChwr5HRY3CKbO9l5TrEjTF/3RUYkkLO05yorkQJHrms3IJw==} engines: {node: '>=18.0.0'} peerDependencies: ai: ^6.0.0 @@ -1827,27 +1831,31 @@ packages: ai: optional: true - '@objectstack/studio@9.7.0': - resolution: {integrity: sha512-6jnJ5EoWjMK1MD268zGLbM3msXkAmRcsxGrXToLfWCuQ91ZIXweKH/65w9xOhDM4a2KK1BSYcMWJsPfj6UkzxA==} + '@objectstack/studio@10.2.0': + resolution: {integrity: sha512-ZnhHhhL77hY7RCdHQnjyoldg04J7qM6YRrZJaV+WfCzh1TTecE6z18kRTV/rKXOFYmDRp89UjrpUxCL2tDDkAw==} engines: {node: '>=18.0.0'} - '@objectstack/trigger-api@9.7.0': - resolution: {integrity: sha512-DXQRpZSwBjvnxp3T4w86DgWlCyaQza67GgkL7T/5GCbYNclkGSa/0rlSCmjc2KKM6fEu10LkLtGwzZsHS7Q3Lw==} + '@objectstack/trigger-api@10.2.0': + resolution: {integrity: sha512-+14Uo5fvu1a1qwsMkDH9e2o+JU3aZf2Ovz0nZhRkEgnh/uiX/jpWo2PyKxHSRgXZYE28VYupf1P+nLE4q0rP5g==} + + '@objectstack/trigger-record-change@10.2.0': + resolution: {integrity: sha512-f7qnt+pGvmScRFmH9YLy+nHS9LUOIpvl2CTxoW2JoYFI+MrSbY1t4gdDDnIO3k7ue1SuvuGGqrxTf4NyhYRd3Q==} + engines: {node: '>=18.0.0'} - '@objectstack/trigger-record-change@9.7.0': - resolution: {integrity: sha512-bey5+kfKHP3u4AZWQ9pslY7MxJ4q7LsdGJGA6vzZ8BPD3jqberJBe+397N/2Mxci2ph0ngo91OCFoU7WxwioWA==} + '@objectstack/trigger-schedule@10.2.0': + resolution: {integrity: sha512-HP0Zk30usA0MnC02EvjGDKDo0EJhFEEuuYGjiEhSk2jLGGKW47z5cInSDQjYv0iaFQuYHcHftj400Pk/S1+Kzw==} engines: {node: '>=18.0.0'} - '@objectstack/trigger-schedule@9.7.0': - resolution: {integrity: sha512-04XXl5MjbxcWZy+O7hqkCNi/V/HjkMDavLYlgn4u9oaH6NwuuOuaMQqPAow9TdtaZ1q2pB7wty7cfnpuJBSm2w==} + '@objectstack/types@10.2.0': + resolution: {integrity: sha512-DvPnGpdVw9W8JWsi4VXcbgajViCMRhabgErGjXeRsUltrdHCFyWfb0OaLHEvi9Awsx4M+xrC6mNIlmo6ZEVYhw==} engines: {node: '>=18.0.0'} - '@objectstack/types@9.7.0': - resolution: {integrity: sha512-rPc6khwpaiQuRNSX1MtI5oP1eV55mnecKv+/J9HgHltBvkKk8eo1pS6rphuJI8/2Drm/eftH1/V2Yjzu7D7xmg==} + '@objectstack/verify@10.2.0': + resolution: {integrity: sha512-tenUWX5I+e/jHYCOVHcRhjbVivMMrk/haTQVlsL7e8yau+nLr0vCZD1kPPzNjXYU2rNqYcEfBKxN7HIENZaZ5A==} engines: {node: '>=18.0.0'} - '@oclif/core@4.11.4': - resolution: {integrity: sha512-URwiQ5ALx/sJ2iH4vzXEd+H4K6NAI7LRs6Jag3hrgKEpGmaE6alfRC8qjO4GIgb6A3ACaJumqP9twi/M9ywdHQ==} + '@oclif/core@4.11.10': + resolution: {integrity: sha512-kbzi5ZfWKYXZzUldAiJMoxVyXaBnMZqoIVDdHJs4DD7T9wg6ADWU5Ale+9XYfysScAt4Og9psyCEPCzIe10sEQ==} engines: {node: '>=18.0.0'} '@opennextjs/aws@4.0.2': @@ -2758,8 +2766,8 @@ packages: resolution: {integrity: sha512-kja8j7PjmncONqaTsB8fQ+wE2mSU2DJ9D4XKoJ5PFWIdRMa6SLSN1ff4mOr4jCbfRSsxR4keIiySJU0N9T5hIQ==} engines: {node: '>= 8.0.0'} - ai@6.0.206: - resolution: {integrity: sha512-hVdB5PozMMxmkPBfbCxkFOn0eVeCMi/imkfPvk65cxL4O8oIrvjUxDUX8dGkdkWG1No+R7e7D9ti2DHO61Z4YQ==} + ai@6.0.208: + resolution: {integrity: sha512-STz+AaZqJ4ZjH7UkpXkbHx+bjgIDOsE8fIUoZjkZ2whoZcfVmG9K/TqEKouJZ03SuZuD7lagntlU3zBhAEkRpQ==} engines: {node: '>=18'} peerDependencies: zod: ^3.25.76 || ^4.1.8 @@ -2851,8 +2859,8 @@ packages: engines: {node: '>=6.0.0'} hasBin: true - better-auth@1.6.19: - resolution: {integrity: sha512-68eXWKj0sxa0xW4+n4tENd6Co94UCynPKe1fncmO6kIB3XhSXWgwDEpiUouJV2dmLBrHM1FPkoI6Q5597zCGpQ==} + better-auth@1.6.20: + resolution: {integrity: sha512-fSpGHGRKiGRiYVd3QTQtuVZ8oxpiSe/7ip0Rpvt/Sy8zQbEbVKUPMOhE0gLXg+FjqTUsIo7582hxUYxtEcqUpA==} peerDependencies: '@lynx-js/react': '*' '@prisma/client': ^5.0.0 || ^6.0.0 || ^7.0.0 @@ -3708,12 +3716,8 @@ packages: hastscript@9.0.1: resolution: {integrity: sha512-g7df9rMFX/SPi34tyGCyUBREQoKkapwdY/T04Qn9TDWfHhAYt4/I0gMVirzK5wEzeUqIjEB+LXC/ypb7Aqno5w==} - hono@4.12.23: - resolution: {integrity: sha512-eIaZ9qDgu7XV0pxOCrg7/WhnQ6Ivm22UcxhXx/A3dcbqbbYgBEkc6e/J/s7j2tS96zoB0S9VBdLwQNCWwUo4LA==} - engines: {node: '>=16.9.0'} - - hono@4.12.25: - resolution: {integrity: sha512-2NFaIyNVgJmBs/ecmtGzlmluTFs5cHEWGTdu0t1HBwYzoGXOL5nUQBRMXsXWla5i4KkG//QMzVP88m1+I3fdAQ==} + hono@4.12.26: + resolution: {integrity: sha512-uyZtpnYxM9CmQ7QsQknM4zN8EftNqhON1qYeIKM0Se67CCEe2c44xyGURwB0axX2fBDu1dqHrHAc1hmNT8ITkw==} engines: {node: '>=16.9.0'} html-void-elements@3.0.0: @@ -3865,8 +3869,8 @@ packages: resolution: {integrity: sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==} hasBin: true - js-yaml@4.2.0: - resolution: {integrity: sha512-ePWsvanv0DWuDRsW8dnt+R4jQ31SCRCQ7hhNcPXZPsoBZiemuZNYGf7adZdqX2D86j6rvKp3RpCxVTSb8WQlOw==} + js-yaml@5.0.0: + resolution: {integrity: sha512-GSvaPUbk1U+FMZ7rJzF+F8e5YVtu7KnD40et/5rBXXRBv2jCO9L3qCewvIDDdudC0QycTFlf6EAA+h3kxBsuUw==} hasBin: true json-schema-traverse@1.0.0: @@ -4240,8 +4244,8 @@ packages: resolution: {integrity: sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==} engines: {node: '>=10'} - mingo@7.2.1: - resolution: {integrity: sha512-MEIQPOSJS2sVCueyQeE2rzgEeW3HpIIhizPbeuwD4v7+miVj7NI3ZVPqqw8t3YPIWCivpIaXA4KsoRI7koyNOA==} + mingo@7.2.2: + resolution: {integrity: sha512-ll8DV+C5RnV2zF3Jwendxhgqknofzp7KaDwmlpvqo4xrdMC5F7JTc2ToZOz//de84QymZTFY7LPHMViE8uNHhA==} miniflare@4.20260526.0: resolution: {integrity: sha512-JYQ7jPZZWoaaj9jWHb8Ucp6Cu2SbDVqIsAJhumqdzzLkkfq0pYkDeino/sZfW1ixJWPjv/C44zjm9gVJC2izCA==} @@ -4348,8 +4352,8 @@ packages: engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} hasBin: true - nanoid@5.1.11: - resolution: {integrity: sha512-v+KEsUv2ps74PaSKv0gHTxTCgMXOIfBEbaqa6w6ISIGC7ZsvHN4N9oJ8d4cmf0n5oTzQz2SLmThbQWhjd/8eKg==} + nanoid@5.1.15: + resolution: {integrity: sha512-kBg3RpGtIe+RpTbyXwoI6pk5yD7KUiI3sygUqgeBMRst42KmhB4RZC7eiO9Wa1HIpaCCtpE2DJ6OI4Wi5ebwFw==} engines: {node: ^18 || >=20} hasBin: true @@ -4990,6 +4994,10 @@ packages: resolution: {integrity: sha512-pn99VhoACYR8nFHhxqix+uvsbXineAasWm5ojXoN8xEwK5Kd3/TrhNn1wByuD52UxWRLy8pu+kRMniEi6Eq9Zg==} engines: {node: '>=12.0.0'} + tinyglobby@0.2.17: + resolution: {integrity: sha512-wXR/dYpcqKmfWpEdZjiKJOwCNFndD0DMnrW/cYjVGttEkBfVgcLFHoNrlj47mjOVic9yyNu65alsgF4NQyTa2g==} + engines: {node: '>=12.0.0'} + to-regex-range@5.0.1: resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} engines: {node: '>=8.0'} @@ -5250,32 +5258,32 @@ packages: snapshots: - '@ai-sdk/anthropic@3.0.84(zod@4.4.3)': + '@ai-sdk/anthropic@3.0.85(zod@4.4.3)': dependencies: '@ai-sdk/provider': 3.0.10 - '@ai-sdk/provider-utils': 4.0.29(zod@4.4.3) + '@ai-sdk/provider-utils': 4.0.30(zod@4.4.3) zod: 4.4.3 - '@ai-sdk/gateway@3.0.132(zod@4.4.3)': + '@ai-sdk/gateway@3.0.133(zod@4.4.3)': dependencies: '@ai-sdk/provider': 3.0.10 - '@ai-sdk/provider-utils': 4.0.29(zod@4.4.3) + '@ai-sdk/provider-utils': 4.0.30(zod@4.4.3) '@vercel/oidc': 3.2.0 zod: 4.4.3 - '@ai-sdk/google@3.0.82(zod@4.4.3)': + '@ai-sdk/google@3.0.83(zod@4.4.3)': dependencies: '@ai-sdk/provider': 3.0.10 - '@ai-sdk/provider-utils': 4.0.29(zod@4.4.3) + '@ai-sdk/provider-utils': 4.0.30(zod@4.4.3) zod: 4.4.3 - '@ai-sdk/openai@3.0.71(zod@4.4.3)': + '@ai-sdk/openai@3.0.74(zod@4.4.3)': dependencies: '@ai-sdk/provider': 3.0.10 - '@ai-sdk/provider-utils': 4.0.29(zod@4.4.3) + '@ai-sdk/provider-utils': 4.0.30(zod@4.4.3) zod: 4.4.3 - '@ai-sdk/provider-utils@4.0.29(zod@4.4.3)': + '@ai-sdk/provider-utils@4.0.30(zod@4.4.3)': dependencies: '@ai-sdk/provider': 3.0.10 '@standard-schema/spec': 1.1.0 @@ -5887,7 +5895,7 @@ snapshots: '@babel/runtime@7.29.2': {} - '@better-auth/core@1.6.19(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.3.6(zod@4.4.3))(jose@6.2.3)(kysely@0.29.2)(nanostores@1.3.0)': + '@better-auth/core@1.6.20(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.3.6(zod@4.4.3))(jose@6.2.3)(kysely@0.29.2)(nanostores@1.3.0)': dependencies: '@better-auth/utils': 0.4.2 '@better-fetch/fetch': 1.3.1 @@ -5901,48 +5909,48 @@ snapshots: optionalDependencies: '@opentelemetry/api': 1.9.1 - '@better-auth/drizzle-adapter@1.6.19(@better-auth/core@1.6.19(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.3.6(zod@4.4.3))(jose@6.2.3)(kysely@0.29.2)(nanostores@1.3.0))(@better-auth/utils@0.4.2)': + '@better-auth/drizzle-adapter@1.6.20(@better-auth/core@1.6.20(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.3.6(zod@4.4.3))(jose@6.2.3)(kysely@0.29.2)(nanostores@1.3.0))(@better-auth/utils@0.4.2)': dependencies: - '@better-auth/core': 1.6.19(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.3.6(zod@4.4.3))(jose@6.2.3)(kysely@0.29.2)(nanostores@1.3.0) + '@better-auth/core': 1.6.20(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.3.6(zod@4.4.3))(jose@6.2.3)(kysely@0.29.2)(nanostores@1.3.0) '@better-auth/utils': 0.4.2 - '@better-auth/kysely-adapter@1.6.19(@better-auth/core@1.6.19(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.3.6(zod@4.4.3))(jose@6.2.3)(kysely@0.29.2)(nanostores@1.3.0))(@better-auth/utils@0.4.2)(kysely@0.29.2)': + '@better-auth/kysely-adapter@1.6.20(@better-auth/core@1.6.20(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.3.6(zod@4.4.3))(jose@6.2.3)(kysely@0.29.2)(nanostores@1.3.0))(@better-auth/utils@0.4.2)(kysely@0.29.2)': dependencies: - '@better-auth/core': 1.6.19(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.3.6(zod@4.4.3))(jose@6.2.3)(kysely@0.29.2)(nanostores@1.3.0) + '@better-auth/core': 1.6.20(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.3.6(zod@4.4.3))(jose@6.2.3)(kysely@0.29.2)(nanostores@1.3.0) '@better-auth/utils': 0.4.2 optionalDependencies: kysely: 0.29.2 - '@better-auth/memory-adapter@1.6.19(@better-auth/core@1.6.19(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.3.6(zod@4.4.3))(jose@6.2.3)(kysely@0.29.2)(nanostores@1.3.0))(@better-auth/utils@0.4.2)': + '@better-auth/memory-adapter@1.6.20(@better-auth/core@1.6.20(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.3.6(zod@4.4.3))(jose@6.2.3)(kysely@0.29.2)(nanostores@1.3.0))(@better-auth/utils@0.4.2)': dependencies: - '@better-auth/core': 1.6.19(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.3.6(zod@4.4.3))(jose@6.2.3)(kysely@0.29.2)(nanostores@1.3.0) + '@better-auth/core': 1.6.20(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.3.6(zod@4.4.3))(jose@6.2.3)(kysely@0.29.2)(nanostores@1.3.0) '@better-auth/utils': 0.4.2 - '@better-auth/mongo-adapter@1.6.19(@better-auth/core@1.6.19(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.3.6(zod@4.4.3))(jose@6.2.3)(kysely@0.29.2)(nanostores@1.3.0))(@better-auth/utils@0.4.2)(mongodb@7.3.0)': + '@better-auth/mongo-adapter@1.6.20(@better-auth/core@1.6.20(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.3.6(zod@4.4.3))(jose@6.2.3)(kysely@0.29.2)(nanostores@1.3.0))(@better-auth/utils@0.4.2)(mongodb@7.3.0)': dependencies: - '@better-auth/core': 1.6.19(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.3.6(zod@4.4.3))(jose@6.2.3)(kysely@0.29.2)(nanostores@1.3.0) + '@better-auth/core': 1.6.20(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.3.6(zod@4.4.3))(jose@6.2.3)(kysely@0.29.2)(nanostores@1.3.0) '@better-auth/utils': 0.4.2 optionalDependencies: mongodb: 7.3.0 - '@better-auth/oauth-provider@1.6.19(@better-auth/core@1.6.19(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.3.6(zod@4.4.3))(jose@6.2.3)(kysely@0.29.2)(nanostores@1.3.0))(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(better-auth@1.6.19(@opentelemetry/api@1.9.1)(better-sqlite3@12.11.1)(mongodb@7.3.0)(next@16.2.6(@opentelemetry/api@1.9.1)(react-dom@19.2.6(react@19.2.6))(react@19.2.6))(react-dom@19.2.6(react@19.2.6))(react@19.2.6))(better-call@1.3.6(zod@4.4.3))': + '@better-auth/oauth-provider@1.6.20(@better-auth/core@1.6.20(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.3.6(zod@4.4.3))(jose@6.2.3)(kysely@0.29.2)(nanostores@1.3.0))(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(better-auth@1.6.20(@opentelemetry/api@1.9.1)(better-sqlite3@12.11.1)(mongodb@7.3.0)(next@16.2.6(@opentelemetry/api@1.9.1)(react-dom@19.2.6(react@19.2.6))(react@19.2.6))(react-dom@19.2.6(react@19.2.6))(react@19.2.6))(better-call@1.3.6(zod@4.4.3))': dependencies: - '@better-auth/core': 1.6.19(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.3.6(zod@4.4.3))(jose@6.2.3)(kysely@0.29.2)(nanostores@1.3.0) + '@better-auth/core': 1.6.20(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.3.6(zod@4.4.3))(jose@6.2.3)(kysely@0.29.2)(nanostores@1.3.0) '@better-auth/utils': 0.4.2 '@better-fetch/fetch': 1.3.1 - better-auth: 1.6.19(@opentelemetry/api@1.9.1)(better-sqlite3@12.11.1)(mongodb@7.3.0)(next@16.2.6(@opentelemetry/api@1.9.1)(react-dom@19.2.6(react@19.2.6))(react@19.2.6))(react-dom@19.2.6(react@19.2.6))(react@19.2.6) + better-auth: 1.6.20(@opentelemetry/api@1.9.1)(better-sqlite3@12.11.1)(mongodb@7.3.0)(next@16.2.6(@opentelemetry/api@1.9.1)(react-dom@19.2.6(react@19.2.6))(react@19.2.6))(react-dom@19.2.6(react@19.2.6))(react@19.2.6) better-call: 1.3.6(zod@4.4.3) jose: 6.2.3 zod: 4.4.3 - '@better-auth/prisma-adapter@1.6.19(@better-auth/core@1.6.19(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.3.6(zod@4.4.3))(jose@6.2.3)(kysely@0.29.2)(nanostores@1.3.0))(@better-auth/utils@0.4.2)': + '@better-auth/prisma-adapter@1.6.20(@better-auth/core@1.6.20(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.3.6(zod@4.4.3))(jose@6.2.3)(kysely@0.29.2)(nanostores@1.3.0))(@better-auth/utils@0.4.2)': dependencies: - '@better-auth/core': 1.6.19(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.3.6(zod@4.4.3))(jose@6.2.3)(kysely@0.29.2)(nanostores@1.3.0) + '@better-auth/core': 1.6.20(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.3.6(zod@4.4.3))(jose@6.2.3)(kysely@0.29.2)(nanostores@1.3.0) '@better-auth/utils': 0.4.2 - '@better-auth/telemetry@1.6.19(@better-auth/core@1.6.19(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.3.6(zod@4.4.3))(jose@6.2.3)(kysely@0.29.2)(nanostores@1.3.0))(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)': + '@better-auth/telemetry@1.6.20(@better-auth/core@1.6.20(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.3.6(zod@4.4.3))(jose@6.2.3)(kysely@0.29.2)(nanostores@1.3.0))(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)': dependencies: - '@better-auth/core': 1.6.19(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.3.6(zod@4.4.3))(jose@6.2.3)(kysely@0.29.2)(nanostores@1.3.0) + '@better-auth/core': 1.6.20(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.3.6(zod@4.4.3))(jose@6.2.3)(kysely@0.29.2)(nanostores@1.3.0) '@better-auth/utils': 0.4.2 '@better-fetch/fetch': 1.3.1 @@ -6474,13 +6482,13 @@ snapshots: '@tailwindcss/oxide': 4.3.0 tailwindcss: 4.3.0 - '@hono/node-server@1.19.14(hono@4.12.23)': + '@hono/node-server@1.19.14(hono@4.12.26)': dependencies: - hono: 4.12.23 + hono: 4.12.26 - '@hono/node-server@2.0.4(hono@4.12.25)': + '@hono/node-server@2.0.5(hono@4.12.26)': dependencies: - hono: 4.12.25 + hono: 4.12.26 '@img/colour@1.1.0': {} @@ -6684,7 +6692,7 @@ snapshots: '@modelcontextprotocol/sdk@1.29.0(zod@4.4.3)': dependencies: - '@hono/node-server': 1.19.14(hono@4.12.23) + '@hono/node-server': 1.19.14(hono@4.12.26) ajv: 8.20.0 ajv-formats: 3.0.1(ajv@8.20.0) content-type: 1.0.5 @@ -6694,7 +6702,7 @@ snapshots: eventsource-parser: 3.1.0 express: 5.2.1 express-rate-limit: 8.5.2(express@5.2.1) - hono: 4.12.23 + hono: 4.12.26 jose: 6.2.3 json-schema-typed: 8.0.2 pkce-challenge: 5.0.1 @@ -6775,66 +6783,68 @@ snapshots: '@nodelib/fs.scandir': 2.1.5 fastq: 1.20.1 - '@objectstack/account@9.7.0(ai@6.0.206(zod@4.4.3))': + '@objectstack/account@10.2.0(ai@6.0.208(zod@4.4.3))': dependencies: - '@objectstack/platform-objects': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/spec': 9.7.0(ai@6.0.206(zod@4.4.3)) + '@objectstack/platform-objects': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/spec': 10.2.0(ai@6.0.208(zod@4.4.3)) transitivePeerDependencies: - ai - vitest - '@objectstack/cli@9.7.0(@aws-sdk/client-s3@3.984.0)(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(ai@6.0.206(zod@4.4.3))(better-call@1.3.6(zod@4.4.3))(better-sqlite3@12.11.1)(jose@6.2.3)(kysely@0.29.2)(mongodb@7.3.0)(nanostores@1.3.0)(next@16.2.6(@opentelemetry/api@1.9.1)(react-dom@19.2.6(react@19.2.6))(react@19.2.6))(react-dom@19.2.6(react@19.2.6))(react@19.2.6)': - dependencies: - '@ai-sdk/anthropic': 3.0.84(zod@4.4.3) - '@ai-sdk/gateway': 3.0.132(zod@4.4.3) - '@ai-sdk/google': 3.0.82(zod@4.4.3) - '@ai-sdk/openai': 3.0.71(zod@4.4.3) - '@objectstack/account': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/client': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/console': 9.7.0 - '@objectstack/core': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/driver-memory': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/driver-mongodb': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/driver-sql': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/driver-sqlite-wasm': 9.7.0(ai@6.0.206(zod@4.4.3))(better-sqlite3@12.11.1) - '@objectstack/formula': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/mcp': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/objectql': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/observability': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/platform-objects': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/plugin-approvals': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/plugin-audit': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/plugin-auth': 9.7.0(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(ai@6.0.206(zod@4.4.3))(better-call@1.3.6(zod@4.4.3))(better-sqlite3@12.11.1)(jose@6.2.3)(kysely@0.29.2)(mongodb@7.3.0)(nanostores@1.3.0)(next@16.2.6(@opentelemetry/api@1.9.1)(react-dom@19.2.6(react@19.2.6))(react@19.2.6))(react-dom@19.2.6(react@19.2.6))(react@19.2.6) - '@objectstack/plugin-email': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/plugin-hono-server': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/plugin-org-scoping': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/plugin-reports': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/plugin-security': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/plugin-sharing': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/plugin-webhooks': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/rest': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/runtime': 9.7.0(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(ai@6.0.206(zod@4.4.3))(better-call@1.3.6(zod@4.4.3))(better-sqlite3@12.11.1)(jose@6.2.3)(kysely@0.29.2)(mongodb@7.3.0)(nanostores@1.3.0)(next@16.2.6(@opentelemetry/api@1.9.1)(react-dom@19.2.6(react@19.2.6))(react@19.2.6))(react-dom@19.2.6(react@19.2.6))(react@19.2.6) - '@objectstack/service-ai': 9.7.0(@ai-sdk/anthropic@3.0.84(zod@4.4.3))(@ai-sdk/gateway@3.0.132(zod@4.4.3))(@ai-sdk/google@3.0.82(zod@4.4.3))(@ai-sdk/openai@3.0.71(zod@4.4.3)) - '@objectstack/service-analytics': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/service-automation': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/service-cache': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/service-datasource': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/service-feed': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/service-job': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/service-messaging': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/service-package': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/service-queue': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/service-realtime': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/service-settings': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/service-storage': 9.7.0(@aws-sdk/client-s3@3.984.0)(ai@6.0.206(zod@4.4.3)) - '@objectstack/setup': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/spec': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/studio': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/trigger-api': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/trigger-record-change': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/trigger-schedule': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/types': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@oclif/core': 4.11.4 + '@objectstack/cli@10.2.0(@aws-sdk/client-s3@3.984.0)(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(ai@6.0.208(zod@4.4.3))(better-call@1.3.6(zod@4.4.3))(better-sqlite3@12.11.1)(jose@6.2.3)(kysely@0.29.2)(mongodb@7.3.0)(nanostores@1.3.0)(next@16.2.6(@opentelemetry/api@1.9.1)(react-dom@19.2.6(react@19.2.6))(react@19.2.6))(react-dom@19.2.6(react@19.2.6))(react@19.2.6)': + dependencies: + '@ai-sdk/anthropic': 3.0.85(zod@4.4.3) + '@ai-sdk/gateway': 3.0.133(zod@4.4.3) + '@ai-sdk/google': 3.0.83(zod@4.4.3) + '@ai-sdk/openai': 3.0.74(zod@4.4.3) + '@objectstack/account': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/client': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/cloud-connection': 10.2.0(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(ai@6.0.208(zod@4.4.3))(better-call@1.3.6(zod@4.4.3))(better-sqlite3@12.11.1)(jose@6.2.3)(kysely@0.29.2)(mongodb@7.3.0)(nanostores@1.3.0)(next@16.2.6(@opentelemetry/api@1.9.1)(react-dom@19.2.6(react@19.2.6))(react@19.2.6))(react-dom@19.2.6(react@19.2.6))(react@19.2.6) + '@objectstack/console': 10.2.0 + '@objectstack/core': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/driver-memory': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/driver-mongodb': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/driver-sql': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/driver-sqlite-wasm': 10.2.0(ai@6.0.208(zod@4.4.3))(better-sqlite3@12.11.1) + '@objectstack/formula': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/lint': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/mcp': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/objectql': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/observability': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/platform-objects': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/plugin-approvals': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/plugin-audit': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/plugin-auth': 10.2.0(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(ai@6.0.208(zod@4.4.3))(better-call@1.3.6(zod@4.4.3))(better-sqlite3@12.11.1)(jose@6.2.3)(kysely@0.29.2)(mongodb@7.3.0)(nanostores@1.3.0)(next@16.2.6(@opentelemetry/api@1.9.1)(react-dom@19.2.6(react@19.2.6))(react@19.2.6))(react-dom@19.2.6(react@19.2.6))(react@19.2.6) + '@objectstack/plugin-email': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/plugin-hono-server': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/plugin-org-scoping': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/plugin-reports': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/plugin-security': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/plugin-sharing': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/plugin-webhooks': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/rest': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/runtime': 10.2.0(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(ai@6.0.208(zod@4.4.3))(better-call@1.3.6(zod@4.4.3))(better-sqlite3@12.11.1)(jose@6.2.3)(kysely@0.29.2)(mongodb@7.3.0)(nanostores@1.3.0)(next@16.2.6(@opentelemetry/api@1.9.1)(react-dom@19.2.6(react@19.2.6))(react@19.2.6))(react-dom@19.2.6(react@19.2.6))(react@19.2.6) + '@objectstack/service-ai': 10.2.0(@ai-sdk/anthropic@3.0.85(zod@4.4.3))(@ai-sdk/gateway@3.0.133(zod@4.4.3))(@ai-sdk/google@3.0.83(zod@4.4.3))(@ai-sdk/openai@3.0.74(zod@4.4.3)) + '@objectstack/service-analytics': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/service-automation': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/service-cache': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/service-datasource': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/service-job': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/service-messaging': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/service-package': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/service-queue': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/service-realtime': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/service-settings': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/service-storage': 10.2.0(@aws-sdk/client-s3@3.984.0)(ai@6.0.208(zod@4.4.3)) + '@objectstack/setup': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/spec': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/studio': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/trigger-api': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/trigger-record-change': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/trigger-schedule': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/types': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/verify': 10.2.0(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(ai@6.0.208(zod@4.4.3))(better-call@1.3.6(zod@4.4.3))(better-sqlite3@12.11.1)(jose@6.2.3)(kysely@0.29.2)(mongodb@7.3.0)(nanostores@1.3.0)(next@16.2.6(@opentelemetry/api@1.9.1)(react-dom@19.2.6(react@19.2.6))(react@19.2.6))(react-dom@19.2.6(react@19.2.6))(react@19.2.6) + '@oclif/core': 4.11.10 bundle-require: 5.1.0(esbuild@0.28.1) chalk: 5.6.2 chokidar: 5.0.0 @@ -6890,36 +6900,85 @@ snapshots: - vitest - vue - '@objectstack/client@9.7.0(ai@6.0.206(zod@4.4.3))': + '@objectstack/client@10.2.0(ai@6.0.208(zod@4.4.3))': dependencies: - '@objectstack/core': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/spec': 9.7.0(ai@6.0.206(zod@4.4.3)) + '@objectstack/core': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/spec': 10.2.0(ai@6.0.208(zod@4.4.3)) transitivePeerDependencies: - ai - '@objectstack/console@9.7.0': {} + '@objectstack/cloud-connection@10.2.0(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(ai@6.0.208(zod@4.4.3))(better-call@1.3.6(zod@4.4.3))(better-sqlite3@12.11.1)(jose@6.2.3)(kysely@0.29.2)(mongodb@7.3.0)(nanostores@1.3.0)(next@16.2.6(@opentelemetry/api@1.9.1)(react-dom@19.2.6(react@19.2.6))(react@19.2.6))(react-dom@19.2.6(react@19.2.6))(react@19.2.6)': + dependencies: + '@objectstack/core': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/runtime': 10.2.0(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(ai@6.0.208(zod@4.4.3))(better-call@1.3.6(zod@4.4.3))(better-sqlite3@12.11.1)(jose@6.2.3)(kysely@0.29.2)(mongodb@7.3.0)(nanostores@1.3.0)(next@16.2.6(@opentelemetry/api@1.9.1)(react-dom@19.2.6(react@19.2.6))(react@19.2.6))(react-dom@19.2.6(react@19.2.6))(react@19.2.6) + '@objectstack/spec': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/types': 10.2.0(ai@6.0.208(zod@4.4.3)) + transitivePeerDependencies: + - '@aws-sdk/credential-providers' + - '@better-auth/utils' + - '@better-fetch/fetch' + - '@cloudflare/workers-types' + - '@lynx-js/react' + - '@mongodb-js/zstd' + - '@opentelemetry/api' + - '@prisma/client' + - '@sveltejs/kit' + - '@tanstack/react-start' + - '@tanstack/solid-start' + - ai + - better-call + - better-sqlite3 + - drizzle-kit + - drizzle-orm + - gcp-metadata + - jose + - kerberos + - kysely + - mongodb + - mongodb-client-encryption + - mysql + - mysql2 + - nanostores + - next + - pg + - pg-native + - pg-query-stream + - prisma + - react + - react-dom + - snappy + - socks + - solid-js + - sqlite3 + - supports-color + - svelte + - tedious + - vitest + - vue + + '@objectstack/console@10.2.0': {} - '@objectstack/core@9.7.0(ai@6.0.206(zod@4.4.3))': + '@objectstack/core@10.2.0(ai@6.0.208(zod@4.4.3))': dependencies: - '@objectstack/spec': 9.7.0(ai@6.0.206(zod@4.4.3)) + '@objectstack/spec': 10.2.0(ai@6.0.208(zod@4.4.3)) zod: 4.4.3 transitivePeerDependencies: - ai - '@objectstack/driver-memory@9.7.0(ai@6.0.206(zod@4.4.3))': + '@objectstack/driver-memory@10.2.0(ai@6.0.208(zod@4.4.3))': dependencies: - '@objectstack/core': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/spec': 9.7.0(ai@6.0.206(zod@4.4.3)) - mingo: 7.2.1 + '@objectstack/core': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/spec': 10.2.0(ai@6.0.208(zod@4.4.3)) + mingo: 7.2.2 transitivePeerDependencies: - ai - '@objectstack/driver-mongodb@9.7.0(ai@6.0.206(zod@4.4.3))': + '@objectstack/driver-mongodb@10.2.0(ai@6.0.208(zod@4.4.3))': dependencies: - '@objectstack/core': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/spec': 9.7.0(ai@6.0.206(zod@4.4.3)) + '@objectstack/core': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/spec': 10.2.0(ai@6.0.208(zod@4.4.3)) mongodb: 7.3.0 - nanoid: 5.1.11 + nanoid: 5.1.15 transitivePeerDependencies: - '@aws-sdk/credential-providers' - '@mongodb-js/zstd' @@ -6930,12 +6989,12 @@ snapshots: - snappy - socks - '@objectstack/driver-sql@9.7.0(ai@6.0.206(zod@4.4.3))': + '@objectstack/driver-sql@10.2.0(ai@6.0.208(zod@4.4.3))': dependencies: - '@objectstack/core': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/spec': 9.7.0(ai@6.0.206(zod@4.4.3)) + '@objectstack/core': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/spec': 10.2.0(ai@6.0.208(zod@4.4.3)) knex: 3.2.10(better-sqlite3@12.11.1) - nanoid: 5.1.11 + nanoid: 5.1.15 optionalDependencies: better-sqlite3: 12.11.1 transitivePeerDependencies: @@ -6945,13 +7004,13 @@ snapshots: - pg-query-stream - supports-color - '@objectstack/driver-sqlite-wasm@9.7.0(ai@6.0.206(zod@4.4.3))(better-sqlite3@12.11.1)': + '@objectstack/driver-sqlite-wasm@10.2.0(ai@6.0.208(zod@4.4.3))(better-sqlite3@12.11.1)': dependencies: - '@objectstack/core': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/driver-sql': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/spec': 9.7.0(ai@6.0.206(zod@4.4.3)) + '@objectstack/core': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/driver-sql': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/spec': 10.2.0(ai@6.0.208(zod@4.4.3)) knex: 3.2.10(better-sqlite3@12.11.1) - nanoid: 5.1.11 + nanoid: 5.1.15 sql.js: 1.14.1 transitivePeerDependencies: - ai @@ -6965,113 +7024,120 @@ snapshots: - supports-color - tedious - '@objectstack/formula@9.7.0(ai@6.0.206(zod@4.4.3))': + '@objectstack/formula@10.2.0(ai@6.0.208(zod@4.4.3))': dependencies: '@marcbachmann/cel-js': 7.6.1 - '@objectstack/spec': 9.7.0(ai@6.0.206(zod@4.4.3)) + '@objectstack/spec': 10.2.0(ai@6.0.208(zod@4.4.3)) + transitivePeerDependencies: + - ai + + '@objectstack/lint@10.2.0(ai@6.0.208(zod@4.4.3))': + dependencies: + '@objectstack/formula': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/spec': 10.2.0(ai@6.0.208(zod@4.4.3)) transitivePeerDependencies: - ai - '@objectstack/mcp@9.7.0(ai@6.0.206(zod@4.4.3))': + '@objectstack/mcp@10.2.0(ai@6.0.208(zod@4.4.3))': dependencies: '@modelcontextprotocol/sdk': 1.29.0(zod@4.4.3) - '@objectstack/core': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/spec': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/types': 9.7.0(ai@6.0.206(zod@4.4.3)) + '@objectstack/core': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/spec': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/types': 10.2.0(ai@6.0.208(zod@4.4.3)) zod: 4.4.3 transitivePeerDependencies: - '@cfworker/json-schema' - ai - supports-color - '@objectstack/metadata-core@9.7.0(ai@6.0.206(zod@4.4.3))': + '@objectstack/metadata-core@10.2.0(ai@6.0.208(zod@4.4.3))': dependencies: - '@objectstack/spec': 9.7.0(ai@6.0.206(zod@4.4.3)) + '@objectstack/spec': 10.2.0(ai@6.0.208(zod@4.4.3)) zod: 4.4.3 transitivePeerDependencies: - ai - '@objectstack/metadata-fs@9.7.0(ai@6.0.206(zod@4.4.3))': + '@objectstack/metadata-fs@10.2.0(ai@6.0.208(zod@4.4.3))': dependencies: - '@objectstack/metadata-core': 9.7.0(ai@6.0.206(zod@4.4.3)) + '@objectstack/metadata-core': 10.2.0(ai@6.0.208(zod@4.4.3)) chokidar: 5.0.0 transitivePeerDependencies: - ai - vitest - '@objectstack/metadata@9.7.0(ai@6.0.206(zod@4.4.3))': + '@objectstack/metadata@10.2.0(ai@6.0.208(zod@4.4.3))': dependencies: - '@objectstack/core': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/metadata-core': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/metadata-fs': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/platform-objects': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/spec': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/types': 9.7.0(ai@6.0.206(zod@4.4.3)) + '@objectstack/core': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/metadata-core': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/metadata-fs': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/platform-objects': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/spec': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/types': 10.2.0(ai@6.0.208(zod@4.4.3)) chokidar: 5.0.0 glob: 13.0.6 - js-yaml: 4.2.0 + js-yaml: 5.0.0 zod: 4.4.3 transitivePeerDependencies: - ai - vitest - '@objectstack/objectql@9.7.0(ai@6.0.206(zod@4.4.3))': + '@objectstack/objectql@10.2.0(ai@6.0.208(zod@4.4.3))': dependencies: - '@objectstack/core': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/formula': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/metadata-core': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/spec': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/types': 9.7.0(ai@6.0.206(zod@4.4.3)) + '@objectstack/core': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/formula': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/metadata-core': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/spec': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/types': 10.2.0(ai@6.0.208(zod@4.4.3)) ajv: 8.20.0 zod: 4.4.3 transitivePeerDependencies: - ai - vitest - '@objectstack/observability@9.7.0(ai@6.0.206(zod@4.4.3))': + '@objectstack/observability@10.2.0(ai@6.0.208(zod@4.4.3))': dependencies: - '@objectstack/spec': 9.7.0(ai@6.0.206(zod@4.4.3)) + '@objectstack/spec': 10.2.0(ai@6.0.208(zod@4.4.3)) transitivePeerDependencies: - ai - '@objectstack/platform-objects@9.7.0(ai@6.0.206(zod@4.4.3))': + '@objectstack/platform-objects@10.2.0(ai@6.0.208(zod@4.4.3))': dependencies: - '@objectstack/metadata-core': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/spec': 9.7.0(ai@6.0.206(zod@4.4.3)) + '@objectstack/metadata-core': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/spec': 10.2.0(ai@6.0.208(zod@4.4.3)) transitivePeerDependencies: - ai - vitest - '@objectstack/plugin-approvals@9.7.0(ai@6.0.206(zod@4.4.3))': + '@objectstack/plugin-approvals@10.2.0(ai@6.0.208(zod@4.4.3))': dependencies: - '@objectstack/core': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/formula': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/metadata-core': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/platform-objects': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/spec': 9.7.0(ai@6.0.206(zod@4.4.3)) + '@objectstack/core': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/formula': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/metadata-core': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/platform-objects': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/spec': 10.2.0(ai@6.0.208(zod@4.4.3)) transitivePeerDependencies: - ai - vitest - '@objectstack/plugin-audit@9.7.0(ai@6.0.206(zod@4.4.3))': + '@objectstack/plugin-audit@10.2.0(ai@6.0.208(zod@4.4.3))': dependencies: - '@objectstack/core': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/platform-objects': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/spec': 9.7.0(ai@6.0.206(zod@4.4.3)) + '@objectstack/core': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/platform-objects': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/spec': 10.2.0(ai@6.0.208(zod@4.4.3)) transitivePeerDependencies: - ai - vitest - '@objectstack/plugin-auth@9.7.0(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(ai@6.0.206(zod@4.4.3))(better-call@1.3.6(zod@4.4.3))(better-sqlite3@12.11.1)(jose@6.2.3)(kysely@0.29.2)(mongodb@7.3.0)(nanostores@1.3.0)(next@16.2.6(@opentelemetry/api@1.9.1)(react-dom@19.2.6(react@19.2.6))(react@19.2.6))(react-dom@19.2.6(react@19.2.6))(react@19.2.6)': + '@objectstack/plugin-auth@10.2.0(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(ai@6.0.208(zod@4.4.3))(better-call@1.3.6(zod@4.4.3))(better-sqlite3@12.11.1)(jose@6.2.3)(kysely@0.29.2)(mongodb@7.3.0)(nanostores@1.3.0)(next@16.2.6(@opentelemetry/api@1.9.1)(react-dom@19.2.6(react@19.2.6))(react@19.2.6))(react-dom@19.2.6(react@19.2.6))(react@19.2.6)': dependencies: - '@better-auth/core': 1.6.19(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.3.6(zod@4.4.3))(jose@6.2.3)(kysely@0.29.2)(nanostores@1.3.0) - '@better-auth/oauth-provider': 1.6.19(@better-auth/core@1.6.19(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.3.6(zod@4.4.3))(jose@6.2.3)(kysely@0.29.2)(nanostores@1.3.0))(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(better-auth@1.6.19(@opentelemetry/api@1.9.1)(better-sqlite3@12.11.1)(mongodb@7.3.0)(next@16.2.6(@opentelemetry/api@1.9.1)(react-dom@19.2.6(react@19.2.6))(react@19.2.6))(react-dom@19.2.6(react@19.2.6))(react@19.2.6))(better-call@1.3.6(zod@4.4.3)) + '@better-auth/core': 1.6.20(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.3.6(zod@4.4.3))(jose@6.2.3)(kysely@0.29.2)(nanostores@1.3.0) + '@better-auth/oauth-provider': 1.6.20(@better-auth/core@1.6.20(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.3.6(zod@4.4.3))(jose@6.2.3)(kysely@0.29.2)(nanostores@1.3.0))(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(better-auth@1.6.20(@opentelemetry/api@1.9.1)(better-sqlite3@12.11.1)(mongodb@7.3.0)(next@16.2.6(@opentelemetry/api@1.9.1)(react-dom@19.2.6(react@19.2.6))(react@19.2.6))(react-dom@19.2.6(react@19.2.6))(react@19.2.6))(better-call@1.3.6(zod@4.4.3)) '@noble/hashes': 2.2.0 - '@objectstack/core': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/platform-objects': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/spec': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/types': 9.7.0(ai@6.0.206(zod@4.4.3)) - better-auth: 1.6.19(@opentelemetry/api@1.9.1)(better-sqlite3@12.11.1)(mongodb@7.3.0)(next@16.2.6(@opentelemetry/api@1.9.1)(react-dom@19.2.6(react@19.2.6))(react@19.2.6))(react-dom@19.2.6(react@19.2.6))(react@19.2.6) + '@objectstack/core': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/platform-objects': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/spec': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/types': 10.2.0(ai@6.0.208(zod@4.4.3)) + better-auth: 1.6.20(@opentelemetry/api@1.9.1)(better-sqlite3@12.11.1)(mongodb@7.3.0)(next@16.2.6(@opentelemetry/api@1.9.1)(react-dom@19.2.6(react@19.2.6))(react@19.2.6))(react-dom@19.2.6(react@19.2.6))(react@19.2.6) transitivePeerDependencies: - '@better-auth/utils' - '@better-fetch/fetch' @@ -7102,101 +7168,106 @@ snapshots: - vitest - vue - '@objectstack/plugin-email@9.7.0(ai@6.0.206(zod@4.4.3))': + '@objectstack/plugin-email@10.2.0(ai@6.0.208(zod@4.4.3))': dependencies: - '@objectstack/core': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/platform-objects': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/spec': 9.7.0(ai@6.0.206(zod@4.4.3)) + '@objectstack/core': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/formula': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/platform-objects': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/spec': 10.2.0(ai@6.0.208(zod@4.4.3)) transitivePeerDependencies: - ai - vitest - '@objectstack/plugin-hono-server@9.7.0(ai@6.0.206(zod@4.4.3))': + '@objectstack/plugin-hono-server@10.2.0(ai@6.0.208(zod@4.4.3))': dependencies: - '@hono/node-server': 2.0.4(hono@4.12.25) - '@objectstack/core': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/spec': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/types': 9.7.0(ai@6.0.206(zod@4.4.3)) - hono: 4.12.25 + '@hono/node-server': 2.0.5(hono@4.12.26) + '@objectstack/core': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/spec': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/types': 10.2.0(ai@6.0.208(zod@4.4.3)) + hono: 4.12.26 transitivePeerDependencies: - ai - '@objectstack/plugin-org-scoping@9.7.0(ai@6.0.206(zod@4.4.3))': + '@objectstack/plugin-org-scoping@10.2.0(ai@6.0.208(zod@4.4.3))': dependencies: - '@objectstack/core': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/platform-objects': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/spec': 9.7.0(ai@6.0.206(zod@4.4.3)) + '@objectstack/core': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/platform-objects': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/spec': 10.2.0(ai@6.0.208(zod@4.4.3)) transitivePeerDependencies: - ai - vitest - '@objectstack/plugin-reports@9.7.0(ai@6.0.206(zod@4.4.3))': + '@objectstack/plugin-reports@10.2.0(ai@6.0.208(zod@4.4.3))': dependencies: - '@objectstack/core': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/platform-objects': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/spec': 9.7.0(ai@6.0.206(zod@4.4.3)) + '@objectstack/core': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/platform-objects': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/spec': 10.2.0(ai@6.0.208(zod@4.4.3)) + croner: 10.0.1 transitivePeerDependencies: - ai - vitest - '@objectstack/plugin-security@9.7.0(ai@6.0.206(zod@4.4.3))': + '@objectstack/plugin-security@10.2.0(ai@6.0.208(zod@4.4.3))': dependencies: - '@objectstack/core': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/platform-objects': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/spec': 9.7.0(ai@6.0.206(zod@4.4.3)) + '@objectstack/core': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/formula': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/platform-objects': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/spec': 10.2.0(ai@6.0.208(zod@4.4.3)) transitivePeerDependencies: - ai - vitest - '@objectstack/plugin-sharing@9.7.0(ai@6.0.206(zod@4.4.3))': + '@objectstack/plugin-sharing@10.2.0(ai@6.0.208(zod@4.4.3))': dependencies: - '@objectstack/core': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/objectql': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/platform-objects': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/spec': 9.7.0(ai@6.0.206(zod@4.4.3)) + '@objectstack/core': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/formula': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/objectql': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/platform-objects': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/spec': 10.2.0(ai@6.0.208(zod@4.4.3)) transitivePeerDependencies: - ai - vitest - '@objectstack/plugin-webhooks@9.7.0(ai@6.0.206(zod@4.4.3))': + '@objectstack/plugin-webhooks@10.2.0(ai@6.0.208(zod@4.4.3))': dependencies: - '@objectstack/core': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/service-messaging': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/spec': 9.7.0(ai@6.0.206(zod@4.4.3)) + '@objectstack/core': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/service-messaging': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/spec': 10.2.0(ai@6.0.208(zod@4.4.3)) transitivePeerDependencies: - ai - '@objectstack/rest@9.7.0(ai@6.0.206(zod@4.4.3))': + '@objectstack/rest@10.2.0(ai@6.0.208(zod@4.4.3))': dependencies: - '@objectstack/core': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/service-package': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/spec': 9.7.0(ai@6.0.206(zod@4.4.3)) + '@objectstack/core': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/service-package': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/spec': 10.2.0(ai@6.0.208(zod@4.4.3)) zod: 4.4.3 transitivePeerDependencies: - ai - '@objectstack/runtime@9.7.0(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(ai@6.0.206(zod@4.4.3))(better-call@1.3.6(zod@4.4.3))(better-sqlite3@12.11.1)(jose@6.2.3)(kysely@0.29.2)(mongodb@7.3.0)(nanostores@1.3.0)(next@16.2.6(@opentelemetry/api@1.9.1)(react-dom@19.2.6(react@19.2.6))(react@19.2.6))(react-dom@19.2.6(react@19.2.6))(react@19.2.6)': - dependencies: - '@objectstack/core': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/driver-memory': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/driver-sql': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/driver-sqlite-wasm': 9.7.0(ai@6.0.206(zod@4.4.3))(better-sqlite3@12.11.1) - '@objectstack/formula': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/metadata': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/objectql': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/observability': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/plugin-auth': 9.7.0(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(ai@6.0.206(zod@4.4.3))(better-call@1.3.6(zod@4.4.3))(better-sqlite3@12.11.1)(jose@6.2.3)(kysely@0.29.2)(mongodb@7.3.0)(nanostores@1.3.0)(next@16.2.6(@opentelemetry/api@1.9.1)(react-dom@19.2.6(react@19.2.6))(react@19.2.6))(react-dom@19.2.6(react@19.2.6))(react@19.2.6) - '@objectstack/plugin-org-scoping': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/plugin-security': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/rest': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/service-cluster': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/service-i18n': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/spec': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/types': 9.7.0(ai@6.0.206(zod@4.4.3)) + '@objectstack/runtime@10.2.0(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(ai@6.0.208(zod@4.4.3))(better-call@1.3.6(zod@4.4.3))(better-sqlite3@12.11.1)(jose@6.2.3)(kysely@0.29.2)(mongodb@7.3.0)(nanostores@1.3.0)(next@16.2.6(@opentelemetry/api@1.9.1)(react-dom@19.2.6(react@19.2.6))(react@19.2.6))(react-dom@19.2.6(react@19.2.6))(react@19.2.6)': + dependencies: + '@objectstack/core': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/driver-memory': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/driver-sql': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/driver-sqlite-wasm': 10.2.0(ai@6.0.208(zod@4.4.3))(better-sqlite3@12.11.1) + '@objectstack/formula': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/metadata': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/objectql': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/observability': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/plugin-auth': 10.2.0(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(ai@6.0.208(zod@4.4.3))(better-call@1.3.6(zod@4.4.3))(better-sqlite3@12.11.1)(jose@6.2.3)(kysely@0.29.2)(mongodb@7.3.0)(nanostores@1.3.0)(next@16.2.6(@opentelemetry/api@1.9.1)(react-dom@19.2.6(react@19.2.6))(react@19.2.6))(react-dom@19.2.6(react@19.2.6))(react@19.2.6) + '@objectstack/plugin-org-scoping': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/plugin-security': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/rest': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/service-cluster': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/service-datasource': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/service-i18n': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/spec': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/types': 10.2.0(ai@6.0.208(zod@4.4.3)) quickjs-emscripten: 0.32.0 zod: 4.4.3 optionalDependencies: - '@objectstack/driver-mongodb': 9.7.0(ai@6.0.206(zod@4.4.3)) + '@objectstack/driver-mongodb': 10.2.0(ai@6.0.208(zod@4.4.3)) transitivePeerDependencies: - '@aws-sdk/credential-providers' - '@better-auth/utils' @@ -7240,185 +7311,240 @@ snapshots: - vitest - vue - '@objectstack/service-ai@9.7.0(@ai-sdk/anthropic@3.0.84(zod@4.4.3))(@ai-sdk/gateway@3.0.132(zod@4.4.3))(@ai-sdk/google@3.0.82(zod@4.4.3))(@ai-sdk/openai@3.0.71(zod@4.4.3))': + '@objectstack/service-ai@10.2.0(@ai-sdk/anthropic@3.0.85(zod@4.4.3))(@ai-sdk/gateway@3.0.133(zod@4.4.3))(@ai-sdk/google@3.0.83(zod@4.4.3))(@ai-sdk/openai@3.0.74(zod@4.4.3))': dependencies: '@ai-sdk/provider': 3.0.10 - '@objectstack/core': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/formula': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/spec': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/types': 9.7.0(ai@6.0.206(zod@4.4.3)) - ai: 6.0.206(zod@4.4.3) + '@objectstack/core': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/formula': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/spec': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/types': 10.2.0(ai@6.0.208(zod@4.4.3)) + ai: 6.0.208(zod@4.4.3) zod: 4.4.3 optionalDependencies: - '@ai-sdk/anthropic': 3.0.84(zod@4.4.3) - '@ai-sdk/gateway': 3.0.132(zod@4.4.3) - '@ai-sdk/google': 3.0.82(zod@4.4.3) - '@ai-sdk/openai': 3.0.71(zod@4.4.3) - - '@objectstack/service-analytics@9.7.0(ai@6.0.206(zod@4.4.3))': - dependencies: - '@objectstack/core': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/spec': 9.7.0(ai@6.0.206(zod@4.4.3)) - transitivePeerDependencies: - - ai + '@ai-sdk/anthropic': 3.0.85(zod@4.4.3) + '@ai-sdk/gateway': 3.0.133(zod@4.4.3) + '@ai-sdk/google': 3.0.83(zod@4.4.3) + '@ai-sdk/openai': 3.0.74(zod@4.4.3) - '@objectstack/service-automation@9.7.0(ai@6.0.206(zod@4.4.3))': + '@objectstack/service-analytics@10.2.0(ai@6.0.208(zod@4.4.3))': dependencies: - '@objectstack/core': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/formula': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/spec': 9.7.0(ai@6.0.206(zod@4.4.3)) + '@objectstack/core': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/spec': 10.2.0(ai@6.0.208(zod@4.4.3)) transitivePeerDependencies: - ai - '@objectstack/service-cache@9.7.0(ai@6.0.206(zod@4.4.3))': + '@objectstack/service-automation@10.2.0(ai@6.0.208(zod@4.4.3))': dependencies: - '@objectstack/core': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/observability': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/spec': 9.7.0(ai@6.0.206(zod@4.4.3)) + '@objectstack/core': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/formula': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/spec': 10.2.0(ai@6.0.208(zod@4.4.3)) transitivePeerDependencies: - ai - '@objectstack/service-cluster@9.7.0(ai@6.0.206(zod@4.4.3))': + '@objectstack/service-cache@10.2.0(ai@6.0.208(zod@4.4.3))': dependencies: - '@objectstack/core': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/spec': 9.7.0(ai@6.0.206(zod@4.4.3)) + '@objectstack/core': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/observability': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/spec': 10.2.0(ai@6.0.208(zod@4.4.3)) transitivePeerDependencies: - ai - '@objectstack/service-datasource@9.7.0(ai@6.0.206(zod@4.4.3))': + '@objectstack/service-cluster@10.2.0(ai@6.0.208(zod@4.4.3))': dependencies: - '@objectstack/core': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/spec': 9.7.0(ai@6.0.206(zod@4.4.3)) + '@objectstack/core': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/spec': 10.2.0(ai@6.0.208(zod@4.4.3)) transitivePeerDependencies: - ai - '@objectstack/service-feed@9.7.0(ai@6.0.206(zod@4.4.3))': + '@objectstack/service-datasource@10.2.0(ai@6.0.208(zod@4.4.3))': dependencies: - '@objectstack/core': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/spec': 9.7.0(ai@6.0.206(zod@4.4.3)) + '@objectstack/core': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/spec': 10.2.0(ai@6.0.208(zod@4.4.3)) transitivePeerDependencies: - ai - '@objectstack/service-i18n@9.7.0(ai@6.0.206(zod@4.4.3))': + '@objectstack/service-i18n@10.2.0(ai@6.0.208(zod@4.4.3))': dependencies: - '@objectstack/core': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/spec': 9.7.0(ai@6.0.206(zod@4.4.3)) + '@objectstack/core': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/spec': 10.2.0(ai@6.0.208(zod@4.4.3)) transitivePeerDependencies: - ai - '@objectstack/service-job@9.7.0(ai@6.0.206(zod@4.4.3))': + '@objectstack/service-job@10.2.0(ai@6.0.208(zod@4.4.3))': dependencies: - '@objectstack/core': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/platform-objects': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/spec': 9.7.0(ai@6.0.206(zod@4.4.3)) + '@objectstack/core': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/platform-objects': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/spec': 10.2.0(ai@6.0.208(zod@4.4.3)) croner: 10.0.1 transitivePeerDependencies: - ai - vitest - '@objectstack/service-messaging@9.7.0(ai@6.0.206(zod@4.4.3))': + '@objectstack/service-messaging@10.2.0(ai@6.0.208(zod@4.4.3))': dependencies: - '@objectstack/core': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/spec': 9.7.0(ai@6.0.206(zod@4.4.3)) + '@objectstack/core': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/spec': 10.2.0(ai@6.0.208(zod@4.4.3)) transitivePeerDependencies: - ai - '@objectstack/service-package@9.7.0(ai@6.0.206(zod@4.4.3))': + '@objectstack/service-package@10.2.0(ai@6.0.208(zod@4.4.3))': dependencies: - '@objectstack/core': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/spec': 9.7.0(ai@6.0.206(zod@4.4.3)) + '@objectstack/core': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/spec': 10.2.0(ai@6.0.208(zod@4.4.3)) transitivePeerDependencies: - ai - '@objectstack/service-queue@9.7.0(ai@6.0.206(zod@4.4.3))': + '@objectstack/service-queue@10.2.0(ai@6.0.208(zod@4.4.3))': dependencies: - '@objectstack/core': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/platform-objects': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/spec': 9.7.0(ai@6.0.206(zod@4.4.3)) + '@objectstack/core': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/platform-objects': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/spec': 10.2.0(ai@6.0.208(zod@4.4.3)) transitivePeerDependencies: - ai - vitest - '@objectstack/service-realtime@9.7.0(ai@6.0.206(zod@4.4.3))': + '@objectstack/service-realtime@10.2.0(ai@6.0.208(zod@4.4.3))': dependencies: - '@objectstack/core': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/platform-objects': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/spec': 9.7.0(ai@6.0.206(zod@4.4.3)) + '@objectstack/core': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/platform-objects': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/spec': 10.2.0(ai@6.0.208(zod@4.4.3)) transitivePeerDependencies: - ai - vitest - '@objectstack/service-settings@9.7.0(ai@6.0.206(zod@4.4.3))': + '@objectstack/service-settings@10.2.0(ai@6.0.208(zod@4.4.3))': dependencies: '@noble/ciphers': 2.2.0 - '@objectstack/core': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/platform-objects': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/spec': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/types': 9.7.0(ai@6.0.206(zod@4.4.3)) + '@objectstack/core': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/platform-objects': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/spec': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/types': 10.2.0(ai@6.0.208(zod@4.4.3)) transitivePeerDependencies: - ai - vitest - '@objectstack/service-storage@9.7.0(@aws-sdk/client-s3@3.984.0)(ai@6.0.206(zod@4.4.3))': + '@objectstack/service-storage@10.2.0(@aws-sdk/client-s3@3.984.0)(ai@6.0.208(zod@4.4.3))': dependencies: - '@objectstack/core': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/observability': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/spec': 9.7.0(ai@6.0.206(zod@4.4.3)) + '@objectstack/core': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/observability': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/platform-objects': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/spec': 10.2.0(ai@6.0.208(zod@4.4.3)) optionalDependencies: '@aws-sdk/client-s3': 3.984.0 transitivePeerDependencies: - ai + - vitest - '@objectstack/setup@9.7.0(ai@6.0.206(zod@4.4.3))': + '@objectstack/setup@10.2.0(ai@6.0.208(zod@4.4.3))': dependencies: - '@objectstack/platform-objects': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/spec': 9.7.0(ai@6.0.206(zod@4.4.3)) + '@objectstack/platform-objects': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/spec': 10.2.0(ai@6.0.208(zod@4.4.3)) transitivePeerDependencies: - ai - vitest - '@objectstack/spec@9.7.0(ai@6.0.206(zod@4.4.3))': + '@objectstack/spec@10.2.0(ai@6.0.208(zod@4.4.3))': dependencies: zod: 4.4.3 optionalDependencies: - ai: 6.0.206(zod@4.4.3) + ai: 6.0.208(zod@4.4.3) - '@objectstack/studio@9.7.0(ai@6.0.206(zod@4.4.3))': + '@objectstack/studio@10.2.0(ai@6.0.208(zod@4.4.3))': dependencies: - '@objectstack/platform-objects': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/spec': 9.7.0(ai@6.0.206(zod@4.4.3)) + '@objectstack/platform-objects': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/spec': 10.2.0(ai@6.0.208(zod@4.4.3)) transitivePeerDependencies: - ai - vitest - '@objectstack/trigger-api@9.7.0(ai@6.0.206(zod@4.4.3))': + '@objectstack/trigger-api@10.2.0(ai@6.0.208(zod@4.4.3))': dependencies: - '@objectstack/core': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/spec': 9.7.0(ai@6.0.206(zod@4.4.3)) + '@objectstack/core': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/spec': 10.2.0(ai@6.0.208(zod@4.4.3)) transitivePeerDependencies: - ai - '@objectstack/trigger-record-change@9.7.0(ai@6.0.206(zod@4.4.3))': + '@objectstack/trigger-record-change@10.2.0(ai@6.0.208(zod@4.4.3))': dependencies: - '@objectstack/core': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/spec': 9.7.0(ai@6.0.206(zod@4.4.3)) + '@objectstack/core': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/spec': 10.2.0(ai@6.0.208(zod@4.4.3)) transitivePeerDependencies: - ai - '@objectstack/trigger-schedule@9.7.0(ai@6.0.206(zod@4.4.3))': + '@objectstack/trigger-schedule@10.2.0(ai@6.0.208(zod@4.4.3))': dependencies: - '@objectstack/core': 9.7.0(ai@6.0.206(zod@4.4.3)) - '@objectstack/spec': 9.7.0(ai@6.0.206(zod@4.4.3)) + '@objectstack/core': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/spec': 10.2.0(ai@6.0.208(zod@4.4.3)) transitivePeerDependencies: - ai - '@objectstack/types@9.7.0(ai@6.0.206(zod@4.4.3))': + '@objectstack/types@10.2.0(ai@6.0.208(zod@4.4.3))': dependencies: - '@objectstack/spec': 9.7.0(ai@6.0.206(zod@4.4.3)) + '@objectstack/spec': 10.2.0(ai@6.0.208(zod@4.4.3)) transitivePeerDependencies: - ai - '@oclif/core@4.11.4': + '@objectstack/verify@10.2.0(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(ai@6.0.208(zod@4.4.3))(better-call@1.3.6(zod@4.4.3))(better-sqlite3@12.11.1)(jose@6.2.3)(kysely@0.29.2)(mongodb@7.3.0)(nanostores@1.3.0)(next@16.2.6(@opentelemetry/api@1.9.1)(react-dom@19.2.6(react@19.2.6))(react@19.2.6))(react-dom@19.2.6(react@19.2.6))(react@19.2.6)': + dependencies: + '@objectstack/core': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/driver-sqlite-wasm': 10.2.0(ai@6.0.208(zod@4.4.3))(better-sqlite3@12.11.1) + '@objectstack/objectql': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/plugin-auth': 10.2.0(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(ai@6.0.208(zod@4.4.3))(better-call@1.3.6(zod@4.4.3))(better-sqlite3@12.11.1)(jose@6.2.3)(kysely@0.29.2)(mongodb@7.3.0)(nanostores@1.3.0)(next@16.2.6(@opentelemetry/api@1.9.1)(react-dom@19.2.6(react@19.2.6))(react@19.2.6))(react-dom@19.2.6(react@19.2.6))(react@19.2.6) + '@objectstack/plugin-hono-server': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/plugin-org-scoping': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/plugin-security': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/plugin-sharing': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/rest': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/runtime': 10.2.0(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(ai@6.0.208(zod@4.4.3))(better-call@1.3.6(zod@4.4.3))(better-sqlite3@12.11.1)(jose@6.2.3)(kysely@0.29.2)(mongodb@7.3.0)(nanostores@1.3.0)(next@16.2.6(@opentelemetry/api@1.9.1)(react-dom@19.2.6(react@19.2.6))(react@19.2.6))(react-dom@19.2.6(react@19.2.6))(react@19.2.6) + '@objectstack/service-analytics': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/service-automation': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/service-datasource': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/service-settings': 10.2.0(ai@6.0.208(zod@4.4.3)) + '@objectstack/spec': 10.2.0(ai@6.0.208(zod@4.4.3)) + transitivePeerDependencies: + - '@aws-sdk/credential-providers' + - '@better-auth/utils' + - '@better-fetch/fetch' + - '@cloudflare/workers-types' + - '@lynx-js/react' + - '@mongodb-js/zstd' + - '@opentelemetry/api' + - '@prisma/client' + - '@sveltejs/kit' + - '@tanstack/react-start' + - '@tanstack/solid-start' + - ai + - better-call + - better-sqlite3 + - drizzle-kit + - drizzle-orm + - gcp-metadata + - jose + - kerberos + - kysely + - mongodb + - mongodb-client-encryption + - mysql + - mysql2 + - nanostores + - next + - pg + - pg-native + - pg-query-stream + - prisma + - react + - react-dom + - snappy + - socks + - solid-js + - sqlite3 + - supports-color + - svelte + - tedious + - vitest + - vue + + '@oclif/core@4.11.10': dependencies: ansi-escapes: 4.3.2 ansis: 3.17.0 @@ -7434,7 +7560,7 @@ snapshots: semver: 7.8.1 string-width: 4.2.3 supports-color: 8.1.1 - tinyglobby: 0.2.16 + tinyglobby: 0.2.17 widest-line: 3.1.0 wordwrap: 1.0.0 wrap-ansi: 7.0.0 @@ -8250,7 +8376,7 @@ snapshots: dependencies: minimatch: 10.2.5 path-browserify: 1.0.1 - tinyglobby: 0.2.16 + tinyglobby: 0.2.17 '@tsconfig/node18@1.0.3': {} @@ -8352,11 +8478,11 @@ snapshots: dependencies: humanize-ms: 1.2.1 - ai@6.0.206(zod@4.4.3): + ai@6.0.208(zod@4.4.3): dependencies: - '@ai-sdk/gateway': 3.0.132(zod@4.4.3) + '@ai-sdk/gateway': 3.0.133(zod@4.4.3) '@ai-sdk/provider': 3.0.10 - '@ai-sdk/provider-utils': 4.0.29(zod@4.4.3) + '@ai-sdk/provider-utils': 4.0.30(zod@4.4.3) '@opentelemetry/api': 1.9.1 zod: 4.4.3 @@ -8422,15 +8548,15 @@ snapshots: baseline-browser-mapping@2.10.32: {} - better-auth@1.6.19(@opentelemetry/api@1.9.1)(better-sqlite3@12.11.1)(mongodb@7.3.0)(next@16.2.6(@opentelemetry/api@1.9.1)(react-dom@19.2.6(react@19.2.6))(react@19.2.6))(react-dom@19.2.6(react@19.2.6))(react@19.2.6): + better-auth@1.6.20(@opentelemetry/api@1.9.1)(better-sqlite3@12.11.1)(mongodb@7.3.0)(next@16.2.6(@opentelemetry/api@1.9.1)(react-dom@19.2.6(react@19.2.6))(react@19.2.6))(react-dom@19.2.6(react@19.2.6))(react@19.2.6): dependencies: - '@better-auth/core': 1.6.19(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.3.6(zod@4.4.3))(jose@6.2.3)(kysely@0.29.2)(nanostores@1.3.0) - '@better-auth/drizzle-adapter': 1.6.19(@better-auth/core@1.6.19(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.3.6(zod@4.4.3))(jose@6.2.3)(kysely@0.29.2)(nanostores@1.3.0))(@better-auth/utils@0.4.2) - '@better-auth/kysely-adapter': 1.6.19(@better-auth/core@1.6.19(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.3.6(zod@4.4.3))(jose@6.2.3)(kysely@0.29.2)(nanostores@1.3.0))(@better-auth/utils@0.4.2)(kysely@0.29.2) - '@better-auth/memory-adapter': 1.6.19(@better-auth/core@1.6.19(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.3.6(zod@4.4.3))(jose@6.2.3)(kysely@0.29.2)(nanostores@1.3.0))(@better-auth/utils@0.4.2) - '@better-auth/mongo-adapter': 1.6.19(@better-auth/core@1.6.19(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.3.6(zod@4.4.3))(jose@6.2.3)(kysely@0.29.2)(nanostores@1.3.0))(@better-auth/utils@0.4.2)(mongodb@7.3.0) - '@better-auth/prisma-adapter': 1.6.19(@better-auth/core@1.6.19(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.3.6(zod@4.4.3))(jose@6.2.3)(kysely@0.29.2)(nanostores@1.3.0))(@better-auth/utils@0.4.2) - '@better-auth/telemetry': 1.6.19(@better-auth/core@1.6.19(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.3.6(zod@4.4.3))(jose@6.2.3)(kysely@0.29.2)(nanostores@1.3.0))(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1) + '@better-auth/core': 1.6.20(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.3.6(zod@4.4.3))(jose@6.2.3)(kysely@0.29.2)(nanostores@1.3.0) + '@better-auth/drizzle-adapter': 1.6.20(@better-auth/core@1.6.20(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.3.6(zod@4.4.3))(jose@6.2.3)(kysely@0.29.2)(nanostores@1.3.0))(@better-auth/utils@0.4.2) + '@better-auth/kysely-adapter': 1.6.20(@better-auth/core@1.6.20(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.3.6(zod@4.4.3))(jose@6.2.3)(kysely@0.29.2)(nanostores@1.3.0))(@better-auth/utils@0.4.2)(kysely@0.29.2) + '@better-auth/memory-adapter': 1.6.20(@better-auth/core@1.6.20(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.3.6(zod@4.4.3))(jose@6.2.3)(kysely@0.29.2)(nanostores@1.3.0))(@better-auth/utils@0.4.2) + '@better-auth/mongo-adapter': 1.6.20(@better-auth/core@1.6.20(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.3.6(zod@4.4.3))(jose@6.2.3)(kysely@0.29.2)(nanostores@1.3.0))(@better-auth/utils@0.4.2)(mongodb@7.3.0) + '@better-auth/prisma-adapter': 1.6.20(@better-auth/core@1.6.20(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.3.6(zod@4.4.3))(jose@6.2.3)(kysely@0.29.2)(nanostores@1.3.0))(@better-auth/utils@0.4.2) + '@better-auth/telemetry': 1.6.20(@better-auth/core@1.6.20(@better-auth/utils@0.4.2)(@better-fetch/fetch@1.3.1)(@opentelemetry/api@1.9.1)(better-call@1.3.6(zod@4.4.3))(jose@6.2.3)(kysely@0.29.2)(nanostores@1.3.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 '@noble/ciphers': 2.2.0 @@ -9427,9 +9553,7 @@ snapshots: property-information: 7.1.0 space-separated-tokens: 2.0.2 - hono@4.12.23: {} - - hono@4.12.25: {} + hono@4.12.26: {} html-void-elements@3.0.0: {} @@ -9546,7 +9670,7 @@ snapshots: dependencies: argparse: 2.0.1 - js-yaml@4.2.0: + js-yaml@5.0.0: dependencies: argparse: 2.0.1 @@ -10125,7 +10249,7 @@ snapshots: mimic-response@3.1.0: optional: true - mingo@7.2.1: {} + mingo@7.2.2: {} miniflare@4.20260526.0: dependencies: @@ -10200,7 +10324,7 @@ snapshots: nanoid@3.3.12: {} - nanoid@5.1.11: {} + nanoid@5.1.15: {} nanostores@1.3.0: {} @@ -10918,6 +11042,11 @@ snapshots: fdir: 6.5.0(picomatch@4.0.4) picomatch: 4.0.4 + tinyglobby@0.2.17: + dependencies: + fdir: 6.5.0(picomatch@4.0.4) + picomatch: 4.0.4 + to-regex-range@5.0.1: dependencies: is-number: 7.0.0