@llmops/core 0.4.8-beta.4 → 0.4.8-beta.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,4 @@
1
- const require_db = require('./db-B9jJgYNw.cjs');
1
+ const require_db = require('./db-C4vSSIoo.cjs');
2
2
  let kysely = require("kysely");
3
3
 
4
4
  //#region src/db/bun-sqlite-dialect.ts
package/dist/db/index.cjs CHANGED
@@ -1,5 +1,5 @@
1
- const require_db = require('../db-B9jJgYNw.cjs');
2
- const require_neon_dialect = require('../neon-dialect-BBWePgOv.cjs');
1
+ const require_db = require('../db-C4vSSIoo.cjs');
2
+ const require_neon_dialect = require('../neon-dialect-COb-W-YR.cjs');
3
3
 
4
4
  exports.SCHEMA_METADATA = require_db.SCHEMA_METADATA;
5
5
  exports.configVariantsSchema = require_db.configVariantsSchema;
@@ -7,6 +7,7 @@ exports.configsSchema = require_db.configsSchema;
7
7
  exports.createDatabase = require_db.createDatabase;
8
8
  exports.createDatabaseFromConnection = require_db.createDatabaseFromConnection;
9
9
  exports.createNeonDialect = require_neon_dialect.createNeonDialect;
10
+ exports.createNeonSqlFunction = require_db.createNeonSqlFunction;
10
11
  exports.datasetRecordsSchema = require_db.datasetRecordsSchema;
11
12
  exports.datasetVersionRecordsSchema = require_db.datasetVersionRecordsSchema;
12
13
  exports.datasetVersionsSchema = require_db.datasetVersionsSchema;
@@ -15,6 +16,7 @@ exports.detectDatabaseType = require_db.detectDatabaseType;
15
16
  exports.environmentSecretsSchema = require_db.environmentSecretsSchema;
16
17
  exports.environmentsSchema = require_db.environmentsSchema;
17
18
  exports.executeWithSchema = require_neon_dialect.executeWithSchema;
19
+ exports.generatePostgresSchemaSQL = require_db.generatePostgresSchemaSQL;
18
20
  exports.getMigrations = require_db.getMigrations;
19
21
  exports.guardrailConfigsSchema = require_db.guardrailConfigsSchema;
20
22
  exports.llmRequestsSchema = require_db.llmRequestsSchema;
@@ -28,6 +30,7 @@ exports.playgroundsSchema = require_db.playgroundsSchema;
28
30
  exports.providerConfigsSchema = require_db.providerConfigsSchema;
29
31
  exports.providerGuardrailOverridesSchema = require_db.providerGuardrailOverridesSchema;
30
32
  exports.runAutoMigrations = require_db.runAutoMigrations;
33
+ exports.runSchemaSQL = require_db.runSchemaSQL;
31
34
  exports.schemas = require_db.schemas;
32
35
  exports.targetingRulesSchema = require_db.targetingRulesSchema;
33
36
  exports.validatePartialTableData = require_db.validatePartialTableData;
@@ -1,2 +1,2 @@
1
- import { $ as SCHEMA_METADATA, A as DatasetsTable, At as variantsSchema, B as LLMRequest, C as Dataset, Ct as playgroundRunsSchema, D as DatasetVersionRecord, Dt as schemas, E as DatasetVersion, Et as providerGuardrailOverridesSchema, F as GuardrailConfig, G as PlaygroundResultsTable, H as Playground, I as GuardrailConfigsTable, J as PlaygroundsTable, K as PlaygroundRun, L as GuardrailResult, M as EnvironmentSecret, N as EnvironmentSecretsTable, O as DatasetVersionRecordsTable, Ot as targetingRulesSchema, P as EnvironmentsTable, Q as ProviderGuardrailOverridesTable, R as GuardrailResults, S as Database, St as playgroundResultsSchema, T as DatasetRecordsTable, Tt as providerConfigsSchema, U as PlaygroundColumn, V as LLMRequestsTable, W as PlaygroundResult, X as ProviderConfigsTable, Y as ProviderConfig, Z as ProviderGuardrailOverride, _ as validateTableData, _t as environmentSecretsSchema, a as createDatabaseFromConnection, at as Variant, b as ConfigVariantsTable, bt as llmRequestsSchema, c as executeWithSchema, ct as VariantsTable, d as getMigrations, dt as configVariantsSchema, et as Selectable, f as matchType, ft as configsSchema, g as validatePartialTableData, gt as datasetsSchema, h as parseTableData, ht as datasetVersionsSchema, i as createDatabase, it as Updateable, j as Environment, jt as workspaceSettingsSchema, k as DatasetVersionsTable, kt as variantVersionsSchema, l as MigrationOptions, lt as WorkspaceSettings, m as parsePartialTableData, mt as datasetVersionRecordsSchema, n as DatabaseOptions, nt as TargetingRule, o as detectDatabaseType, ot as VariantVersion, p as runAutoMigrations, pt as datasetRecordsSchema, q as PlaygroundRunsTable, r as DatabaseType, rt as TargetingRulesTable, s as createNeonDialect, st as VariantVersionsTable, t as DatabaseConnection, tt as TableName, u as MigrationResult, ut as WorkspaceSettingsTable, v as Config, vt as environmentsSchema, w as DatasetRecord, wt as playgroundsSchema, x as ConfigsTable, xt as playgroundColumnSchema, y as ConfigVariant, yt as guardrailConfigsSchema, z as Insertable } from "../index-BtSgIKup.cjs";
2
- export { Config, ConfigVariant, ConfigVariantsTable, ConfigsTable, Database, DatabaseConnection, DatabaseOptions, DatabaseType, Dataset, DatasetRecord, DatasetRecordsTable, DatasetVersion, DatasetVersionRecord, DatasetVersionRecordsTable, DatasetVersionsTable, DatasetsTable, Environment, EnvironmentSecret, EnvironmentSecretsTable, EnvironmentsTable, GuardrailConfig, GuardrailConfigsTable, GuardrailResult, GuardrailResults, Insertable, LLMRequest, LLMRequestsTable, MigrationOptions, MigrationResult, Playground, PlaygroundColumn, PlaygroundResult, PlaygroundResultsTable, PlaygroundRun, PlaygroundRunsTable, PlaygroundsTable, ProviderConfig, ProviderConfigsTable, ProviderGuardrailOverride, ProviderGuardrailOverridesTable, SCHEMA_METADATA, Selectable, TableName, TargetingRule, TargetingRulesTable, Updateable, Variant, VariantVersion, VariantVersionsTable, VariantsTable, WorkspaceSettings, WorkspaceSettingsTable, configVariantsSchema, configsSchema, createDatabase, createDatabaseFromConnection, createNeonDialect, datasetRecordsSchema, datasetVersionRecordsSchema, datasetVersionsSchema, datasetsSchema, detectDatabaseType, environmentSecretsSchema, environmentsSchema, executeWithSchema, getMigrations, guardrailConfigsSchema, llmRequestsSchema, matchType, parsePartialTableData, parseTableData, playgroundColumnSchema, playgroundResultsSchema, playgroundRunsSchema, playgroundsSchema, providerConfigsSchema, providerGuardrailOverridesSchema, runAutoMigrations, schemas, targetingRulesSchema, validatePartialTableData, validateTableData, variantVersionsSchema, variantsSchema, workspaceSettingsSchema };
1
+ import { $ as ProviderConfigsTable, A as DatasetVersionRecord, At as schemas, B as GuardrailResult, C as ConfigVariantsTable, Ct as llmRequestsSchema, D as DatasetRecord, Dt as playgroundsSchema, E as Dataset, Et as playgroundRunsSchema, F as EnvironmentSecret, G as Playground, H as Insertable, I as EnvironmentSecretsTable, J as PlaygroundResultsTable, K as PlaygroundColumn, L as EnvironmentsTable, M as DatasetVersionsTable, Mt as variantVersionsSchema, N as DatasetsTable, Nt as variantsSchema, O as DatasetRecordsTable, Ot as providerConfigsSchema, P as Environment, Pt as workspaceSettingsSchema, Q as ProviderConfig, R as GuardrailConfig, S as ConfigVariant, St as guardrailConfigsSchema, T as Database, Tt as playgroundResultsSchema, U as LLMRequest, V as GuardrailResults, W as LLMRequestsTable, X as PlaygroundRunsTable, Y as PlaygroundRun, Z as PlaygroundsTable, _ as validateTableData, _t as datasetVersionRecordsSchema, a as createDatabaseFromConnection, at as TargetingRule, b as runSchemaSQL, bt as environmentSecretsSchema, c as executeWithSchema, ct as Variant, d as getMigrations, dt as VariantsTable, et as ProviderGuardrailOverride, f as matchType, ft as WorkspaceSettings, g as validatePartialTableData, gt as datasetRecordsSchema, h as parseTableData, ht as configsSchema, i as createDatabase, it as TableName, j as DatasetVersionRecordsTable, jt as targetingRulesSchema, k as DatasetVersion, kt as providerGuardrailOverridesSchema, l as MigrationOptions, lt as VariantVersion, m as parsePartialTableData, mt as configVariantsSchema, n as DatabaseOptions, nt as SCHEMA_METADATA, o as detectDatabaseType, ot as TargetingRulesTable, p as runAutoMigrations, pt as WorkspaceSettingsTable, q as PlaygroundResult, r as DatabaseType, rt as Selectable, s as createNeonDialect, st as Updateable, t as DatabaseConnection, tt as ProviderGuardrailOverridesTable, u as MigrationResult, ut as VariantVersionsTable, v as createNeonSqlFunction, vt as datasetVersionsSchema, w as ConfigsTable, wt as playgroundColumnSchema, x as Config, xt as environmentsSchema, y as generatePostgresSchemaSQL, yt as datasetsSchema, z as GuardrailConfigsTable } from "../index-BYhMgUES.cjs";
2
+ export { Config, ConfigVariant, ConfigVariantsTable, ConfigsTable, Database, DatabaseConnection, DatabaseOptions, DatabaseType, Dataset, DatasetRecord, DatasetRecordsTable, DatasetVersion, DatasetVersionRecord, DatasetVersionRecordsTable, DatasetVersionsTable, DatasetsTable, Environment, EnvironmentSecret, EnvironmentSecretsTable, EnvironmentsTable, GuardrailConfig, GuardrailConfigsTable, GuardrailResult, GuardrailResults, Insertable, LLMRequest, LLMRequestsTable, MigrationOptions, MigrationResult, Playground, PlaygroundColumn, PlaygroundResult, PlaygroundResultsTable, PlaygroundRun, PlaygroundRunsTable, PlaygroundsTable, ProviderConfig, ProviderConfigsTable, ProviderGuardrailOverride, ProviderGuardrailOverridesTable, SCHEMA_METADATA, Selectable, TableName, TargetingRule, TargetingRulesTable, Updateable, Variant, VariantVersion, VariantVersionsTable, VariantsTable, WorkspaceSettings, WorkspaceSettingsTable, configVariantsSchema, configsSchema, createDatabase, createDatabaseFromConnection, createNeonDialect, createNeonSqlFunction, datasetRecordsSchema, datasetVersionRecordsSchema, datasetVersionsSchema, datasetsSchema, detectDatabaseType, environmentSecretsSchema, environmentsSchema, executeWithSchema, generatePostgresSchemaSQL, getMigrations, guardrailConfigsSchema, llmRequestsSchema, matchType, parsePartialTableData, parseTableData, playgroundColumnSchema, playgroundResultsSchema, playgroundRunsSchema, playgroundsSchema, providerConfigsSchema, providerGuardrailOverridesSchema, runAutoMigrations, runSchemaSQL, schemas, targetingRulesSchema, validatePartialTableData, validateTableData, variantVersionsSchema, variantsSchema, workspaceSettingsSchema };
@@ -1,2 +1,2 @@
1
- import { $ as SCHEMA_METADATA, A as DatasetsTable, At as variantsSchema, B as LLMRequest, C as Dataset, Ct as playgroundRunsSchema, D as DatasetVersionRecord, Dt as schemas, E as DatasetVersion, Et as providerGuardrailOverridesSchema, F as GuardrailConfig, G as PlaygroundResultsTable, H as Playground, I as GuardrailConfigsTable, J as PlaygroundsTable, K as PlaygroundRun, L as GuardrailResult, M as EnvironmentSecret, N as EnvironmentSecretsTable, O as DatasetVersionRecordsTable, Ot as targetingRulesSchema, P as EnvironmentsTable, Q as ProviderGuardrailOverridesTable, R as GuardrailResults, S as Database, St as playgroundResultsSchema, T as DatasetRecordsTable, Tt as providerConfigsSchema, U as PlaygroundColumn, V as LLMRequestsTable, W as PlaygroundResult, X as ProviderConfigsTable, Y as ProviderConfig, Z as ProviderGuardrailOverride, _ as validateTableData, _t as environmentSecretsSchema, a as createDatabaseFromConnection, at as Variant, b as ConfigVariantsTable, bt as llmRequestsSchema, c as executeWithSchema, ct as VariantsTable, d as getMigrations, dt as configVariantsSchema, et as Selectable, f as matchType, ft as configsSchema, g as validatePartialTableData, gt as datasetsSchema, h as parseTableData, ht as datasetVersionsSchema, i as createDatabase, it as Updateable, j as Environment, jt as workspaceSettingsSchema, k as DatasetVersionsTable, kt as variantVersionsSchema, l as MigrationOptions, lt as WorkspaceSettings, m as parsePartialTableData, mt as datasetVersionRecordsSchema, n as DatabaseOptions, nt as TargetingRule, o as detectDatabaseType, ot as VariantVersion, p as runAutoMigrations, pt as datasetRecordsSchema, q as PlaygroundRunsTable, r as DatabaseType, rt as TargetingRulesTable, s as createNeonDialect, st as VariantVersionsTable, t as DatabaseConnection, tt as TableName, u as MigrationResult, ut as WorkspaceSettingsTable, v as Config, vt as environmentsSchema, w as DatasetRecord, wt as playgroundsSchema, x as ConfigsTable, xt as playgroundColumnSchema, y as ConfigVariant, yt as guardrailConfigsSchema, z as Insertable } from "../index-LRmy4sz9.mjs";
2
- export { Config, ConfigVariant, ConfigVariantsTable, ConfigsTable, Database, DatabaseConnection, DatabaseOptions, DatabaseType, Dataset, DatasetRecord, DatasetRecordsTable, DatasetVersion, DatasetVersionRecord, DatasetVersionRecordsTable, DatasetVersionsTable, DatasetsTable, Environment, EnvironmentSecret, EnvironmentSecretsTable, EnvironmentsTable, GuardrailConfig, GuardrailConfigsTable, GuardrailResult, GuardrailResults, Insertable, LLMRequest, LLMRequestsTable, MigrationOptions, MigrationResult, Playground, PlaygroundColumn, PlaygroundResult, PlaygroundResultsTable, PlaygroundRun, PlaygroundRunsTable, PlaygroundsTable, ProviderConfig, ProviderConfigsTable, ProviderGuardrailOverride, ProviderGuardrailOverridesTable, SCHEMA_METADATA, Selectable, TableName, TargetingRule, TargetingRulesTable, Updateable, Variant, VariantVersion, VariantVersionsTable, VariantsTable, WorkspaceSettings, WorkspaceSettingsTable, configVariantsSchema, configsSchema, createDatabase, createDatabaseFromConnection, createNeonDialect, datasetRecordsSchema, datasetVersionRecordsSchema, datasetVersionsSchema, datasetsSchema, detectDatabaseType, environmentSecretsSchema, environmentsSchema, executeWithSchema, getMigrations, guardrailConfigsSchema, llmRequestsSchema, matchType, parsePartialTableData, parseTableData, playgroundColumnSchema, playgroundResultsSchema, playgroundRunsSchema, playgroundsSchema, providerConfigsSchema, providerGuardrailOverridesSchema, runAutoMigrations, schemas, targetingRulesSchema, validatePartialTableData, validateTableData, variantVersionsSchema, variantsSchema, workspaceSettingsSchema };
1
+ import { $ as ProviderConfigsTable, A as DatasetVersionRecord, At as schemas, B as GuardrailResult, C as ConfigVariantsTable, Ct as llmRequestsSchema, D as DatasetRecord, Dt as playgroundsSchema, E as Dataset, Et as playgroundRunsSchema, F as EnvironmentSecret, G as Playground, H as Insertable, I as EnvironmentSecretsTable, J as PlaygroundResultsTable, K as PlaygroundColumn, L as EnvironmentsTable, M as DatasetVersionsTable, Mt as variantVersionsSchema, N as DatasetsTable, Nt as variantsSchema, O as DatasetRecordsTable, Ot as providerConfigsSchema, P as Environment, Pt as workspaceSettingsSchema, Q as ProviderConfig, R as GuardrailConfig, S as ConfigVariant, St as guardrailConfigsSchema, T as Database, Tt as playgroundResultsSchema, U as LLMRequest, V as GuardrailResults, W as LLMRequestsTable, X as PlaygroundRunsTable, Y as PlaygroundRun, Z as PlaygroundsTable, _ as validateTableData, _t as datasetVersionRecordsSchema, a as createDatabaseFromConnection, at as TargetingRule, b as runSchemaSQL, bt as environmentSecretsSchema, c as executeWithSchema, ct as Variant, d as getMigrations, dt as VariantsTable, et as ProviderGuardrailOverride, f as matchType, ft as WorkspaceSettings, g as validatePartialTableData, gt as datasetRecordsSchema, h as parseTableData, ht as configsSchema, i as createDatabase, it as TableName, j as DatasetVersionRecordsTable, jt as targetingRulesSchema, k as DatasetVersion, kt as providerGuardrailOverridesSchema, l as MigrationOptions, lt as VariantVersion, m as parsePartialTableData, mt as configVariantsSchema, n as DatabaseOptions, nt as SCHEMA_METADATA, o as detectDatabaseType, ot as TargetingRulesTable, p as runAutoMigrations, pt as WorkspaceSettingsTable, q as PlaygroundResult, r as DatabaseType, rt as Selectable, s as createNeonDialect, st as Updateable, t as DatabaseConnection, tt as ProviderGuardrailOverridesTable, u as MigrationResult, ut as VariantVersionsTable, v as createNeonSqlFunction, vt as datasetVersionsSchema, w as ConfigsTable, wt as playgroundColumnSchema, x as Config, xt as environmentsSchema, y as generatePostgresSchemaSQL, yt as datasetsSchema, z as GuardrailConfigsTable } from "../index-BvU4Gv3C.mjs";
2
+ export { Config, ConfigVariant, ConfigVariantsTable, ConfigsTable, Database, DatabaseConnection, DatabaseOptions, DatabaseType, Dataset, DatasetRecord, DatasetRecordsTable, DatasetVersion, DatasetVersionRecord, DatasetVersionRecordsTable, DatasetVersionsTable, DatasetsTable, Environment, EnvironmentSecret, EnvironmentSecretsTable, EnvironmentsTable, GuardrailConfig, GuardrailConfigsTable, GuardrailResult, GuardrailResults, Insertable, LLMRequest, LLMRequestsTable, MigrationOptions, MigrationResult, Playground, PlaygroundColumn, PlaygroundResult, PlaygroundResultsTable, PlaygroundRun, PlaygroundRunsTable, PlaygroundsTable, ProviderConfig, ProviderConfigsTable, ProviderGuardrailOverride, ProviderGuardrailOverridesTable, SCHEMA_METADATA, Selectable, TableName, TargetingRule, TargetingRulesTable, Updateable, Variant, VariantVersion, VariantVersionsTable, VariantsTable, WorkspaceSettings, WorkspaceSettingsTable, configVariantsSchema, configsSchema, createDatabase, createDatabaseFromConnection, createNeonDialect, createNeonSqlFunction, datasetRecordsSchema, datasetVersionRecordsSchema, datasetVersionsSchema, datasetsSchema, detectDatabaseType, environmentSecretsSchema, environmentsSchema, executeWithSchema, generatePostgresSchemaSQL, getMigrations, guardrailConfigsSchema, llmRequestsSchema, matchType, parsePartialTableData, parseTableData, playgroundColumnSchema, playgroundResultsSchema, playgroundRunsSchema, playgroundsSchema, providerConfigsSchema, providerGuardrailOverridesSchema, runAutoMigrations, runSchemaSQL, schemas, targetingRulesSchema, validatePartialTableData, validateTableData, variantVersionsSchema, variantsSchema, workspaceSettingsSchema };
package/dist/db/index.mjs CHANGED
@@ -1,4 +1,4 @@
1
- import { A as schemas, C as llmRequestsSchema, D as playgroundsSchema, E as playgroundRunsSchema, M as variantVersionsSchema, N as variantsSchema, O as providerConfigsSchema, P as workspaceSettingsSchema, S as guardrailConfigsSchema, T as playgroundResultsSchema, _ as datasetVersionRecordsSchema, a as matchType, b as environmentSecretsSchema, d as validatePartialTableData, f as validateTableData, g as datasetRecordsSchema, h as configsSchema, i as getMigrations, j as targetingRulesSchema, k as providerGuardrailOverridesSchema, l as parsePartialTableData, m as configVariantsSchema, n as createDatabaseFromConnection, o as runAutoMigrations, p as SCHEMA_METADATA, r as detectDatabaseType, t as createDatabase, u as parseTableData, v as datasetVersionsSchema, w as playgroundColumnSchema, x as environmentsSchema, y as datasetsSchema } from "../db-DX_QaIkx.mjs";
1
+ import { A as playgroundsSchema, C as environmentSecretsSchema, D as playgroundColumnSchema, E as llmRequestsSchema, F as variantVersionsSchema, I as variantsSchema, L as workspaceSettingsSchema, M as providerGuardrailOverridesSchema, N as schemas, O as playgroundResultsSchema, P as targetingRulesSchema, S as datasetsSchema, T as guardrailConfigsSchema, _ as configVariantsSchema, a as matchType, b as datasetVersionRecordsSchema, d as validatePartialTableData, f as validateTableData, g as SCHEMA_METADATA, h as runSchemaSQL, i as getMigrations, j as providerConfigsSchema, k as playgroundRunsSchema, l as parsePartialTableData, m as generatePostgresSchemaSQL, n as createDatabaseFromConnection, o as runAutoMigrations, p as createNeonSqlFunction, r as detectDatabaseType, t as createDatabase, u as parseTableData, v as configsSchema, w as environmentsSchema, x as datasetVersionsSchema, y as datasetRecordsSchema } from "../db-DNmuKhIK.mjs";
2
2
  import { n as executeWithSchema, t as createNeonDialect } from "../neon-dialect-DySGBYUi.mjs";
3
3
 
4
- export { SCHEMA_METADATA, configVariantsSchema, configsSchema, createDatabase, createDatabaseFromConnection, createNeonDialect, datasetRecordsSchema, datasetVersionRecordsSchema, datasetVersionsSchema, datasetsSchema, detectDatabaseType, environmentSecretsSchema, environmentsSchema, executeWithSchema, getMigrations, guardrailConfigsSchema, llmRequestsSchema, matchType, parsePartialTableData, parseTableData, playgroundColumnSchema, playgroundResultsSchema, playgroundRunsSchema, playgroundsSchema, providerConfigsSchema, providerGuardrailOverridesSchema, runAutoMigrations, schemas, targetingRulesSchema, validatePartialTableData, validateTableData, variantVersionsSchema, variantsSchema, workspaceSettingsSchema };
4
+ export { SCHEMA_METADATA, configVariantsSchema, configsSchema, createDatabase, createDatabaseFromConnection, createNeonDialect, createNeonSqlFunction, datasetRecordsSchema, datasetVersionRecordsSchema, datasetVersionsSchema, datasetsSchema, detectDatabaseType, environmentSecretsSchema, environmentsSchema, executeWithSchema, generatePostgresSchemaSQL, getMigrations, guardrailConfigsSchema, llmRequestsSchema, matchType, parsePartialTableData, parseTableData, playgroundColumnSchema, playgroundResultsSchema, playgroundRunsSchema, playgroundsSchema, providerConfigsSchema, providerGuardrailOverridesSchema, runAutoMigrations, runSchemaSQL, schemas, targetingRulesSchema, validatePartialTableData, validateTableData, variantVersionsSchema, variantsSchema, workspaceSettingsSchema };
@@ -13939,6 +13939,240 @@ const schemas = {
13939
13939
  llm_requests: llmRequestsSchema
13940
13940
  };
13941
13941
 
13942
+ //#endregion
13943
+ //#region src/db/schema-sql.ts
13944
+ /**
13945
+ * Idempotent SQL Schema Generator
13946
+ *
13947
+ * Generates fully idempotent PostgreSQL schema SQL that can be run on every
13948
+ * server restart. Works in edge environments (no file system access needed).
13949
+ *
13950
+ * This is the programmatic version of the generate-schema-sql.ts script.
13951
+ */
13952
+ function toSnakeCase(str) {
13953
+ return str.replace(/[A-Z]/g, (letter) => `_${letter.toLowerCase()}`);
13954
+ }
13955
+ function getDefaultValue(fieldType, defaultValue) {
13956
+ if (defaultValue === void 0) return null;
13957
+ if (defaultValue === "now()") return "NOW()";
13958
+ if (typeof defaultValue === "boolean") return defaultValue ? "TRUE" : "FALSE";
13959
+ if (typeof defaultValue === "number") return String(defaultValue);
13960
+ if (typeof defaultValue === "string") {
13961
+ if (defaultValue === "{}") return "'{}'::jsonb";
13962
+ return `'${defaultValue}'`;
13963
+ }
13964
+ return null;
13965
+ }
13966
+ const TYPE_MAPPINGS = {
13967
+ uuid: "UUID",
13968
+ text: "TEXT",
13969
+ integer: "INTEGER",
13970
+ boolean: "BOOLEAN",
13971
+ timestamp: "TIMESTAMP WITH TIME ZONE",
13972
+ jsonb: "JSONB"
13973
+ };
13974
+ /**
13975
+ * Generate idempotent PostgreSQL schema SQL
13976
+ *
13977
+ * @param schemaName - Optional PostgreSQL schema name (e.g., 'llmops').
13978
+ * If not provided, tables are created in the current search_path.
13979
+ * @returns SQL string that can be executed to create/update the schema
13980
+ */
13981
+ function generatePostgresSchemaSQL(schemaName) {
13982
+ const lines = [];
13983
+ const schemaPrefix = schemaName ? `"${schemaName}".` : "";
13984
+ lines.push(`-- LLMOps Database Schema (PostgreSQL)`);
13985
+ lines.push(`-- This SQL is fully idempotent and safe to run on every server restart.`);
13986
+ lines.push("");
13987
+ if (schemaName) {
13988
+ lines.push(`-- Create schema if not exists`);
13989
+ lines.push(`CREATE SCHEMA IF NOT EXISTS "${schemaName}";`);
13990
+ lines.push("");
13991
+ }
13992
+ lines.push(`-- Enable UUID extension`);
13993
+ lines.push(`CREATE EXTENSION IF NOT EXISTS "pgcrypto" SCHEMA public;`);
13994
+ lines.push("");
13995
+ const sortedTables = Object.entries(SCHEMA_METADATA.tables).map(([name, meta$2]) => ({
13996
+ name,
13997
+ meta: meta$2
13998
+ })).sort((a, b) => a.meta.order - b.meta.order);
13999
+ lines.push(`-- STEP 1: Create tables (if not exist)`);
14000
+ for (const { name, meta: meta$2 } of sortedTables) {
14001
+ const fullTableName = schemaPrefix + toSnakeCase(name);
14002
+ if (!Object.entries(meta$2.fields).find(([_, f]) => f.primaryKey)) continue;
14003
+ lines.push(`CREATE TABLE IF NOT EXISTS ${fullTableName} (`);
14004
+ lines.push(` id UUID PRIMARY KEY DEFAULT gen_random_uuid()`);
14005
+ lines.push(`);`);
14006
+ }
14007
+ lines.push("");
14008
+ lines.push(`-- STEP 2: Add columns (if not exist)`);
14009
+ for (const { name, meta: meta$2 } of sortedTables) {
14010
+ const fullTableName = schemaPrefix + toSnakeCase(name);
14011
+ for (const [columnName, field] of Object.entries(meta$2.fields)) {
14012
+ if (field.primaryKey) continue;
14013
+ const snakeColumn = toSnakeCase(columnName);
14014
+ const sqlType = TYPE_MAPPINGS[field.type] || "TEXT";
14015
+ const defaultVal = getDefaultValue(field.type, field.default);
14016
+ let colDef = `${snakeColumn} ${sqlType}`;
14017
+ if (defaultVal) colDef += ` DEFAULT ${defaultVal}`;
14018
+ lines.push(`ALTER TABLE ${fullTableName} ADD COLUMN IF NOT EXISTS ${colDef};`);
14019
+ }
14020
+ }
14021
+ lines.push("");
14022
+ lines.push(`-- STEP 3: Add unique constraints (if not exist)`);
14023
+ for (const { name, meta: meta$2 } of sortedTables) {
14024
+ const snakeTable = toSnakeCase(name);
14025
+ const fullTableName = schemaPrefix + snakeTable;
14026
+ for (const [columnName, field] of Object.entries(meta$2.fields)) if (field.unique) {
14027
+ const snakeColumn = toSnakeCase(columnName);
14028
+ const constraintName = `uq_${snakeTable}_${snakeColumn}`;
14029
+ lines.push(`DO $$`);
14030
+ lines.push(`BEGIN`);
14031
+ lines.push(` IF NOT EXISTS (`);
14032
+ lines.push(` SELECT 1 FROM pg_constraint WHERE conname = '${constraintName}'`);
14033
+ lines.push(` ) THEN`);
14034
+ lines.push(` ALTER TABLE ${fullTableName} ADD CONSTRAINT ${constraintName} UNIQUE (${snakeColumn});`);
14035
+ lines.push(` END IF;`);
14036
+ lines.push(`END $$;`);
14037
+ }
14038
+ if (meta$2.uniqueConstraints) for (const constraint of meta$2.uniqueConstraints) {
14039
+ const cols = constraint.columns.map(toSnakeCase).join(", ");
14040
+ const constraintName = `uq_${snakeTable}_${constraint.columns.map(toSnakeCase).join("_")}`;
14041
+ lines.push(`DO $$`);
14042
+ lines.push(`BEGIN`);
14043
+ lines.push(` IF NOT EXISTS (`);
14044
+ lines.push(` SELECT 1 FROM pg_constraint WHERE conname = '${constraintName}'`);
14045
+ lines.push(` ) THEN`);
14046
+ lines.push(` ALTER TABLE ${fullTableName} ADD CONSTRAINT ${constraintName} UNIQUE (${cols});`);
14047
+ lines.push(` END IF;`);
14048
+ lines.push(`END $$;`);
14049
+ }
14050
+ }
14051
+ lines.push("");
14052
+ lines.push(`-- STEP 4: Add foreign keys (if not exist)`);
14053
+ for (const { name, meta: meta$2 } of sortedTables) {
14054
+ const snakeTable = toSnakeCase(name);
14055
+ const fullTableName = schemaPrefix + snakeTable;
14056
+ for (const [columnName, field] of Object.entries(meta$2.fields)) if (field.references) {
14057
+ const snakeColumn = toSnakeCase(columnName);
14058
+ const refTable = schemaPrefix + toSnakeCase(field.references.table);
14059
+ const refColumn = toSnakeCase(field.references.column);
14060
+ const constraintName = `fk_${snakeTable}_${snakeColumn}`;
14061
+ lines.push(`DO $$`);
14062
+ lines.push(`BEGIN`);
14063
+ lines.push(` IF NOT EXISTS (`);
14064
+ lines.push(` SELECT 1 FROM pg_constraint WHERE conname = '${constraintName}'`);
14065
+ lines.push(` ) THEN`);
14066
+ lines.push(` ALTER TABLE ${fullTableName} ADD CONSTRAINT ${constraintName}`);
14067
+ lines.push(` FOREIGN KEY (${snakeColumn}) REFERENCES ${refTable}(${refColumn}) ON DELETE CASCADE;`);
14068
+ lines.push(` END IF;`);
14069
+ lines.push(`END $$;`);
14070
+ }
14071
+ }
14072
+ lines.push("");
14073
+ lines.push(`-- STEP 5: Create indexes (if not exist)`);
14074
+ for (const { name, meta: meta$2 } of sortedTables) {
14075
+ const snakeTable = toSnakeCase(name);
14076
+ const fullTableName = schemaPrefix + snakeTable;
14077
+ for (const [columnName, field] of Object.entries(meta$2.fields)) if (field.references) {
14078
+ const snakeColumn = toSnakeCase(columnName);
14079
+ lines.push(`CREATE INDEX IF NOT EXISTS idx_${snakeTable}_${snakeColumn} ON ${fullTableName}(${snakeColumn});`);
14080
+ }
14081
+ }
14082
+ lines.push("");
14083
+ lines.push(`-- STEP 6: Create updated_at triggers`);
14084
+ const functionName = `${schemaName ? `"${schemaName}".` : "public."}update_updated_at_column`;
14085
+ lines.push(`CREATE OR REPLACE FUNCTION ${functionName}()`);
14086
+ lines.push(`RETURNS TRIGGER AS $$`);
14087
+ lines.push(`BEGIN`);
14088
+ lines.push(` NEW.updated_at = NOW();`);
14089
+ lines.push(` RETURN NEW;`);
14090
+ lines.push(`END;`);
14091
+ lines.push(`$$ language 'plpgsql';`);
14092
+ for (const { name } of sortedTables) {
14093
+ const snakeTable = toSnakeCase(name);
14094
+ const fullTableName = schemaPrefix + snakeTable;
14095
+ lines.push(`DROP TRIGGER IF EXISTS update_${snakeTable}_updated_at ON ${fullTableName};`);
14096
+ lines.push(`CREATE TRIGGER update_${snakeTable}_updated_at BEFORE UPDATE ON ${fullTableName} FOR EACH ROW EXECUTE FUNCTION ${functionName}();`);
14097
+ }
14098
+ lines.push("");
14099
+ return lines.join("\n");
14100
+ }
14101
+ /**
14102
+ * Execute the schema SQL using a Neon SQL function
14103
+ *
14104
+ * @param sql - Neon sql function (from `neon()` or passed connection)
14105
+ * @param schemaName - Optional PostgreSQL schema name
14106
+ */
14107
+ async function runSchemaSQL(sql$1, schemaName) {
14108
+ const statements = splitSQLStatements(generatePostgresSchemaSQL(schemaName));
14109
+ for (const statement of statements) {
14110
+ const trimmed = statement.trim();
14111
+ if (trimmed && !trimmed.startsWith("--")) await sql$1(trimmed);
14112
+ }
14113
+ }
14114
+ /**
14115
+ * Split SQL into individual statements, keeping DO blocks together
14116
+ */
14117
+ function splitSQLStatements(sql$1) {
14118
+ const statements = [];
14119
+ let current = "";
14120
+ let inDoBlock = false;
14121
+ const lines = sql$1.split("\n");
14122
+ for (const line of lines) {
14123
+ const trimmed = line.trim();
14124
+ if (!trimmed || trimmed.startsWith("--")) continue;
14125
+ if (trimmed === "DO $$") {
14126
+ inDoBlock = true;
14127
+ current = line + "\n";
14128
+ continue;
14129
+ }
14130
+ if (inDoBlock) {
14131
+ current += line + "\n";
14132
+ if (trimmed === "END $$;") {
14133
+ statements.push(current.trim());
14134
+ current = "";
14135
+ inDoBlock = false;
14136
+ }
14137
+ continue;
14138
+ }
14139
+ current += line + "\n";
14140
+ if (trimmed.endsWith(";")) {
14141
+ statements.push(current.trim());
14142
+ current = "";
14143
+ }
14144
+ }
14145
+ if (current.trim()) statements.push(current.trim());
14146
+ return statements;
14147
+ }
14148
+ /**
14149
+ * Create a Neon SQL function from various connection types
14150
+ *
14151
+ * The Neon serverless library returns a tagged template function from neon(),
14152
+ * but for conventional string queries we need to use sql.query() instead.
14153
+ * This helper wraps the neon instance to provide a simple query function.
14154
+ *
14155
+ * @param rawConnection - neon() function, connection string, or undefined (uses env vars)
14156
+ * @returns SQL function that can be used with runSchemaSQL, or null if unable to create
14157
+ */
14158
+ async function createNeonSqlFunction(rawConnection) {
14159
+ const wrapNeonSql = (sql$1) => {
14160
+ return (query) => sql$1.query(query);
14161
+ };
14162
+ if (typeof rawConnection === "function") {
14163
+ if ("query" in rawConnection && typeof rawConnection.query === "function") return wrapNeonSql(rawConnection);
14164
+ return rawConnection;
14165
+ }
14166
+ if (typeof rawConnection === "string" && rawConnection) {
14167
+ const { neon: neon$1 } = await import("@neondatabase/serverless");
14168
+ return wrapNeonSql(neon$1(rawConnection));
14169
+ }
14170
+ const connectionString = process.env.NEON_CONNECTION_STRING || process.env.NEON_PG_URL || process.env.DATABASE_URL || process.env.POSTGRES_URL || "";
14171
+ if (!connectionString) return null;
14172
+ const { neon } = await import("@neondatabase/serverless");
14173
+ return wrapNeonSql(neon(connectionString));
14174
+ }
14175
+
13942
14176
  //#endregion
13943
14177
  //#region src/db/validation.ts
13944
14178
  /**
@@ -14397,12 +14631,12 @@ async function createDatabaseFromConnection(rawConnection, options) {
14397
14631
  case "sqlite":
14398
14632
  if ("aggregate" in rawConnection && !("createSession" in rawConnection)) dialect = new kysely.SqliteDialect({ database: rawConnection });
14399
14633
  else if ("fileControl" in rawConnection) {
14400
- const { BunSqliteDialect } = await Promise.resolve().then(() => require("./bun-sqlite-dialect-DQa87s1D.cjs"));
14634
+ const { BunSqliteDialect } = await Promise.resolve().then(() => require("./bun-sqlite-dialect-D8jqel4D.cjs"));
14401
14635
  dialect = new BunSqliteDialect({ database: rawConnection });
14402
14636
  } else if ("createSession" in rawConnection && typeof window === "undefined") try {
14403
14637
  const { DatabaseSync } = await import("node:sqlite");
14404
14638
  if (rawConnection instanceof DatabaseSync) {
14405
- const { NodeSqliteDialect } = await Promise.resolve().then(() => require("./node-sqlite-dialect-DLKHH0RE.cjs"));
14639
+ const { NodeSqliteDialect } = await Promise.resolve().then(() => require("./node-sqlite-dialect-krEZZBUP.cjs"));
14406
14640
  dialect = new NodeSqliteDialect({ database: rawConnection });
14407
14641
  }
14408
14642
  } catch {}
@@ -14420,7 +14654,7 @@ async function createDatabaseFromConnection(rawConnection, options) {
14420
14654
  break;
14421
14655
  case "neon": {
14422
14656
  if (typeof rawConnection === "function") {
14423
- const { createNeonDialect: createNeonDialect$1 } = await Promise.resolve().then(() => require("./neon-dialect-BBGTCnek.cjs"));
14657
+ const { createNeonDialect: createNeonDialect$1 } = await Promise.resolve().then(() => require("./neon-dialect-CjY5HR5J.cjs"));
14424
14658
  dialect = createNeonDialect$1(rawConnection);
14425
14659
  break;
14426
14660
  }
@@ -14428,7 +14662,7 @@ async function createDatabaseFromConnection(rawConnection, options) {
14428
14662
  if (!connectionString) throw new Error("Neon connection string is required. Pass it directly as the database option or set one of: NEON_CONNECTION_STRING, NEON_PG_URL, DATABASE_URL, POSTGRES_URL");
14429
14663
  const { neon } = await import("@neondatabase/serverless");
14430
14664
  const sql$1 = neon(connectionString);
14431
- const { createNeonDialect } = await Promise.resolve().then(() => require("./neon-dialect-BBGTCnek.cjs"));
14665
+ const { createNeonDialect } = await Promise.resolve().then(() => require("./neon-dialect-CjY5HR5J.cjs"));
14432
14666
  dialect = createNeonDialect(sql$1);
14433
14667
  break;
14434
14668
  }
@@ -14500,6 +14734,12 @@ Object.defineProperty(exports, 'createDatabaseFromConnection', {
14500
14734
  return createDatabaseFromConnection;
14501
14735
  }
14502
14736
  });
14737
+ Object.defineProperty(exports, 'createNeonSqlFunction', {
14738
+ enumerable: true,
14739
+ get: function () {
14740
+ return createNeonSqlFunction;
14741
+ }
14742
+ });
14503
14743
  Object.defineProperty(exports, 'datasetRecordsSchema', {
14504
14744
  enumerable: true,
14505
14745
  get: function () {
@@ -14542,6 +14782,12 @@ Object.defineProperty(exports, 'environmentsSchema', {
14542
14782
  return environmentsSchema;
14543
14783
  }
14544
14784
  });
14785
+ Object.defineProperty(exports, 'generatePostgresSchemaSQL', {
14786
+ enumerable: true,
14787
+ get: function () {
14788
+ return generatePostgresSchemaSQL;
14789
+ }
14790
+ });
14545
14791
  Object.defineProperty(exports, 'getAuthClientOptions', {
14546
14792
  enumerable: true,
14547
14793
  get: function () {
@@ -14656,6 +14902,12 @@ Object.defineProperty(exports, 'runAutoMigrations', {
14656
14902
  return runAutoMigrations;
14657
14903
  }
14658
14904
  });
14905
+ Object.defineProperty(exports, 'runSchemaSQL', {
14906
+ enumerable: true,
14907
+ get: function () {
14908
+ return runSchemaSQL;
14909
+ }
14910
+ });
14659
14911
  Object.defineProperty(exports, 'schemas', {
14660
14912
  enumerable: true,
14661
14913
  get: function () {
@@ -13915,6 +13915,240 @@ const schemas = {
13915
13915
  llm_requests: llmRequestsSchema
13916
13916
  };
13917
13917
 
13918
+ //#endregion
13919
+ //#region src/db/schema-sql.ts
13920
+ /**
13921
+ * Idempotent SQL Schema Generator
13922
+ *
13923
+ * Generates fully idempotent PostgreSQL schema SQL that can be run on every
13924
+ * server restart. Works in edge environments (no file system access needed).
13925
+ *
13926
+ * This is the programmatic version of the generate-schema-sql.ts script.
13927
+ */
13928
+ function toSnakeCase(str) {
13929
+ return str.replace(/[A-Z]/g, (letter) => `_${letter.toLowerCase()}`);
13930
+ }
13931
+ function getDefaultValue(fieldType, defaultValue) {
13932
+ if (defaultValue === void 0) return null;
13933
+ if (defaultValue === "now()") return "NOW()";
13934
+ if (typeof defaultValue === "boolean") return defaultValue ? "TRUE" : "FALSE";
13935
+ if (typeof defaultValue === "number") return String(defaultValue);
13936
+ if (typeof defaultValue === "string") {
13937
+ if (defaultValue === "{}") return "'{}'::jsonb";
13938
+ return `'${defaultValue}'`;
13939
+ }
13940
+ return null;
13941
+ }
13942
+ const TYPE_MAPPINGS = {
13943
+ uuid: "UUID",
13944
+ text: "TEXT",
13945
+ integer: "INTEGER",
13946
+ boolean: "BOOLEAN",
13947
+ timestamp: "TIMESTAMP WITH TIME ZONE",
13948
+ jsonb: "JSONB"
13949
+ };
13950
+ /**
13951
+ * Generate idempotent PostgreSQL schema SQL
13952
+ *
13953
+ * @param schemaName - Optional PostgreSQL schema name (e.g., 'llmops').
13954
+ * If not provided, tables are created in the current search_path.
13955
+ * @returns SQL string that can be executed to create/update the schema
13956
+ */
13957
+ function generatePostgresSchemaSQL(schemaName) {
13958
+ const lines = [];
13959
+ const schemaPrefix = schemaName ? `"${schemaName}".` : "";
13960
+ lines.push(`-- LLMOps Database Schema (PostgreSQL)`);
13961
+ lines.push(`-- This SQL is fully idempotent and safe to run on every server restart.`);
13962
+ lines.push("");
13963
+ if (schemaName) {
13964
+ lines.push(`-- Create schema if not exists`);
13965
+ lines.push(`CREATE SCHEMA IF NOT EXISTS "${schemaName}";`);
13966
+ lines.push("");
13967
+ }
13968
+ lines.push(`-- Enable UUID extension`);
13969
+ lines.push(`CREATE EXTENSION IF NOT EXISTS "pgcrypto" SCHEMA public;`);
13970
+ lines.push("");
13971
+ const sortedTables = Object.entries(SCHEMA_METADATA.tables).map(([name, meta$2]) => ({
13972
+ name,
13973
+ meta: meta$2
13974
+ })).sort((a, b) => a.meta.order - b.meta.order);
13975
+ lines.push(`-- STEP 1: Create tables (if not exist)`);
13976
+ for (const { name, meta: meta$2 } of sortedTables) {
13977
+ const fullTableName = schemaPrefix + toSnakeCase(name);
13978
+ if (!Object.entries(meta$2.fields).find(([_, f]) => f.primaryKey)) continue;
13979
+ lines.push(`CREATE TABLE IF NOT EXISTS ${fullTableName} (`);
13980
+ lines.push(` id UUID PRIMARY KEY DEFAULT gen_random_uuid()`);
13981
+ lines.push(`);`);
13982
+ }
13983
+ lines.push("");
13984
+ lines.push(`-- STEP 2: Add columns (if not exist)`);
13985
+ for (const { name, meta: meta$2 } of sortedTables) {
13986
+ const fullTableName = schemaPrefix + toSnakeCase(name);
13987
+ for (const [columnName, field] of Object.entries(meta$2.fields)) {
13988
+ if (field.primaryKey) continue;
13989
+ const snakeColumn = toSnakeCase(columnName);
13990
+ const sqlType = TYPE_MAPPINGS[field.type] || "TEXT";
13991
+ const defaultVal = getDefaultValue(field.type, field.default);
13992
+ let colDef = `${snakeColumn} ${sqlType}`;
13993
+ if (defaultVal) colDef += ` DEFAULT ${defaultVal}`;
13994
+ lines.push(`ALTER TABLE ${fullTableName} ADD COLUMN IF NOT EXISTS ${colDef};`);
13995
+ }
13996
+ }
13997
+ lines.push("");
13998
+ lines.push(`-- STEP 3: Add unique constraints (if not exist)`);
13999
+ for (const { name, meta: meta$2 } of sortedTables) {
14000
+ const snakeTable = toSnakeCase(name);
14001
+ const fullTableName = schemaPrefix + snakeTable;
14002
+ for (const [columnName, field] of Object.entries(meta$2.fields)) if (field.unique) {
14003
+ const snakeColumn = toSnakeCase(columnName);
14004
+ const constraintName = `uq_${snakeTable}_${snakeColumn}`;
14005
+ lines.push(`DO $$`);
14006
+ lines.push(`BEGIN`);
14007
+ lines.push(` IF NOT EXISTS (`);
14008
+ lines.push(` SELECT 1 FROM pg_constraint WHERE conname = '${constraintName}'`);
14009
+ lines.push(` ) THEN`);
14010
+ lines.push(` ALTER TABLE ${fullTableName} ADD CONSTRAINT ${constraintName} UNIQUE (${snakeColumn});`);
14011
+ lines.push(` END IF;`);
14012
+ lines.push(`END $$;`);
14013
+ }
14014
+ if (meta$2.uniqueConstraints) for (const constraint of meta$2.uniqueConstraints) {
14015
+ const cols = constraint.columns.map(toSnakeCase).join(", ");
14016
+ const constraintName = `uq_${snakeTable}_${constraint.columns.map(toSnakeCase).join("_")}`;
14017
+ lines.push(`DO $$`);
14018
+ lines.push(`BEGIN`);
14019
+ lines.push(` IF NOT EXISTS (`);
14020
+ lines.push(` SELECT 1 FROM pg_constraint WHERE conname = '${constraintName}'`);
14021
+ lines.push(` ) THEN`);
14022
+ lines.push(` ALTER TABLE ${fullTableName} ADD CONSTRAINT ${constraintName} UNIQUE (${cols});`);
14023
+ lines.push(` END IF;`);
14024
+ lines.push(`END $$;`);
14025
+ }
14026
+ }
14027
+ lines.push("");
14028
+ lines.push(`-- STEP 4: Add foreign keys (if not exist)`);
14029
+ for (const { name, meta: meta$2 } of sortedTables) {
14030
+ const snakeTable = toSnakeCase(name);
14031
+ const fullTableName = schemaPrefix + snakeTable;
14032
+ for (const [columnName, field] of Object.entries(meta$2.fields)) if (field.references) {
14033
+ const snakeColumn = toSnakeCase(columnName);
14034
+ const refTable = schemaPrefix + toSnakeCase(field.references.table);
14035
+ const refColumn = toSnakeCase(field.references.column);
14036
+ const constraintName = `fk_${snakeTable}_${snakeColumn}`;
14037
+ lines.push(`DO $$`);
14038
+ lines.push(`BEGIN`);
14039
+ lines.push(` IF NOT EXISTS (`);
14040
+ lines.push(` SELECT 1 FROM pg_constraint WHERE conname = '${constraintName}'`);
14041
+ lines.push(` ) THEN`);
14042
+ lines.push(` ALTER TABLE ${fullTableName} ADD CONSTRAINT ${constraintName}`);
14043
+ lines.push(` FOREIGN KEY (${snakeColumn}) REFERENCES ${refTable}(${refColumn}) ON DELETE CASCADE;`);
14044
+ lines.push(` END IF;`);
14045
+ lines.push(`END $$;`);
14046
+ }
14047
+ }
14048
+ lines.push("");
14049
+ lines.push(`-- STEP 5: Create indexes (if not exist)`);
14050
+ for (const { name, meta: meta$2 } of sortedTables) {
14051
+ const snakeTable = toSnakeCase(name);
14052
+ const fullTableName = schemaPrefix + snakeTable;
14053
+ for (const [columnName, field] of Object.entries(meta$2.fields)) if (field.references) {
14054
+ const snakeColumn = toSnakeCase(columnName);
14055
+ lines.push(`CREATE INDEX IF NOT EXISTS idx_${snakeTable}_${snakeColumn} ON ${fullTableName}(${snakeColumn});`);
14056
+ }
14057
+ }
14058
+ lines.push("");
14059
+ lines.push(`-- STEP 6: Create updated_at triggers`);
14060
+ const functionName = `${schemaName ? `"${schemaName}".` : "public."}update_updated_at_column`;
14061
+ lines.push(`CREATE OR REPLACE FUNCTION ${functionName}()`);
14062
+ lines.push(`RETURNS TRIGGER AS $$`);
14063
+ lines.push(`BEGIN`);
14064
+ lines.push(` NEW.updated_at = NOW();`);
14065
+ lines.push(` RETURN NEW;`);
14066
+ lines.push(`END;`);
14067
+ lines.push(`$$ language 'plpgsql';`);
14068
+ for (const { name } of sortedTables) {
14069
+ const snakeTable = toSnakeCase(name);
14070
+ const fullTableName = schemaPrefix + snakeTable;
14071
+ lines.push(`DROP TRIGGER IF EXISTS update_${snakeTable}_updated_at ON ${fullTableName};`);
14072
+ lines.push(`CREATE TRIGGER update_${snakeTable}_updated_at BEFORE UPDATE ON ${fullTableName} FOR EACH ROW EXECUTE FUNCTION ${functionName}();`);
14073
+ }
14074
+ lines.push("");
14075
+ return lines.join("\n");
14076
+ }
14077
+ /**
14078
+ * Execute the schema SQL using a Neon SQL function
14079
+ *
14080
+ * @param sql - Neon sql function (from `neon()` or passed connection)
14081
+ * @param schemaName - Optional PostgreSQL schema name
14082
+ */
14083
+ async function runSchemaSQL(sql$1, schemaName) {
14084
+ const statements = splitSQLStatements(generatePostgresSchemaSQL(schemaName));
14085
+ for (const statement of statements) {
14086
+ const trimmed = statement.trim();
14087
+ if (trimmed && !trimmed.startsWith("--")) await sql$1(trimmed);
14088
+ }
14089
+ }
14090
+ /**
14091
+ * Split SQL into individual statements, keeping DO blocks together
14092
+ */
14093
+ function splitSQLStatements(sql$1) {
14094
+ const statements = [];
14095
+ let current = "";
14096
+ let inDoBlock = false;
14097
+ const lines = sql$1.split("\n");
14098
+ for (const line of lines) {
14099
+ const trimmed = line.trim();
14100
+ if (!trimmed || trimmed.startsWith("--")) continue;
14101
+ if (trimmed === "DO $$") {
14102
+ inDoBlock = true;
14103
+ current = line + "\n";
14104
+ continue;
14105
+ }
14106
+ if (inDoBlock) {
14107
+ current += line + "\n";
14108
+ if (trimmed === "END $$;") {
14109
+ statements.push(current.trim());
14110
+ current = "";
14111
+ inDoBlock = false;
14112
+ }
14113
+ continue;
14114
+ }
14115
+ current += line + "\n";
14116
+ if (trimmed.endsWith(";")) {
14117
+ statements.push(current.trim());
14118
+ current = "";
14119
+ }
14120
+ }
14121
+ if (current.trim()) statements.push(current.trim());
14122
+ return statements;
14123
+ }
14124
+ /**
14125
+ * Create a Neon SQL function from various connection types
14126
+ *
14127
+ * The Neon serverless library returns a tagged template function from neon(),
14128
+ * but for conventional string queries we need to use sql.query() instead.
14129
+ * This helper wraps the neon instance to provide a simple query function.
14130
+ *
14131
+ * @param rawConnection - neon() function, connection string, or undefined (uses env vars)
14132
+ * @returns SQL function that can be used with runSchemaSQL, or null if unable to create
14133
+ */
14134
+ async function createNeonSqlFunction(rawConnection) {
14135
+ const wrapNeonSql = (sql$1) => {
14136
+ return (query) => sql$1.query(query);
14137
+ };
14138
+ if (typeof rawConnection === "function") {
14139
+ if ("query" in rawConnection && typeof rawConnection.query === "function") return wrapNeonSql(rawConnection);
14140
+ return rawConnection;
14141
+ }
14142
+ if (typeof rawConnection === "string" && rawConnection) {
14143
+ const { neon: neon$1 } = await import("@neondatabase/serverless");
14144
+ return wrapNeonSql(neon$1(rawConnection));
14145
+ }
14146
+ const connectionString = process.env.NEON_CONNECTION_STRING || process.env.NEON_PG_URL || process.env.DATABASE_URL || process.env.POSTGRES_URL || "";
14147
+ if (!connectionString) return null;
14148
+ const { neon } = await import("@neondatabase/serverless");
14149
+ return wrapNeonSql(neon(connectionString));
14150
+ }
14151
+
13918
14152
  //#endregion
13919
14153
  //#region src/db/validation.ts
13920
14154
  /**
@@ -14416,4 +14650,4 @@ async function createDatabaseFromConnection(rawConnection, options) {
14416
14650
  }
14417
14651
 
14418
14652
  //#endregion
14419
- export { schemas as A, literal as B, llmRequestsSchema as C, playgroundsSchema as D, playgroundRunsSchema as E, zod_default as F, union as G, object as H, _enum as I, unknown as K, any as L, variantVersionsSchema as M, variantsSchema as N, providerConfigsSchema as O, workspaceSettingsSchema as P, array as R, guardrailConfigsSchema as S, playgroundResultsSchema as T, record as U, number$1 as V, string$1 as W, datasetVersionRecordsSchema as _, matchType as a, environmentSecretsSchema as b, logger as c, validatePartialTableData as d, validateTableData as f, datasetRecordsSchema as g, configsSchema as h, getMigrations$1 as i, targetingRulesSchema as j, providerGuardrailOverridesSchema as k, parsePartialTableData as l, configVariantsSchema as m, createDatabaseFromConnection as n, runAutoMigrations as o, SCHEMA_METADATA as p, detectDatabaseType as r, getAuthClientOptions as s, createDatabase as t, parseTableData as u, datasetVersionsSchema as v, playgroundColumnSchema as w, environmentsSchema as x, datasetsSchema as y, boolean$1 as z };
14653
+ export { playgroundsSchema as A, any as B, environmentSecretsSchema as C, playgroundColumnSchema as D, llmRequestsSchema as E, variantVersionsSchema as F, object as G, boolean$1 as H, variantsSchema as I, union as J, record as K, workspaceSettingsSchema as L, providerGuardrailOverridesSchema as M, schemas as N, playgroundResultsSchema as O, targetingRulesSchema as P, zod_default as R, datasetsSchema as S, guardrailConfigsSchema as T, literal as U, array as V, number$1 as W, unknown as Y, configVariantsSchema as _, matchType as a, datasetVersionRecordsSchema as b, logger as c, validatePartialTableData as d, validateTableData as f, SCHEMA_METADATA as g, runSchemaSQL as h, getMigrations$1 as i, providerConfigsSchema as j, playgroundRunsSchema as k, parsePartialTableData as l, generatePostgresSchemaSQL as m, createDatabaseFromConnection as n, runAutoMigrations as o, createNeonSqlFunction as p, string$1 as q, detectDatabaseType as r, getAuthClientOptions as s, createDatabase as t, parseTableData as u, configsSchema as v, environmentsSchema as w, datasetVersionsSchema as x, datasetRecordsSchema as y, _enum as z };
@@ -1,7 +1,7 @@
1
1
  import { ColumnType, Dialect, Generated, Kysely, MssqlDialect, MysqlDialect, PostgresDialect, SqliteDialect } from "kysely";
2
- import { NeonQueryFunction } from "@neondatabase/serverless";
3
2
  import * as zod0 from "zod";
4
3
  import { z } from "zod";
4
+ import { NeonQueryFunction } from "@neondatabase/serverless";
5
5
 
6
6
  //#region src/db/schema.d.ts
7
7
  declare const configsSchema: z.ZodObject<{
@@ -1900,6 +1900,42 @@ declare const schemas: {
1900
1900
  }, z.core.$strip>;
1901
1901
  };
1902
1902
  //#endregion
1903
+ //#region src/db/schema-sql.d.ts
1904
+ /**
1905
+ * Idempotent SQL Schema Generator
1906
+ *
1907
+ * Generates fully idempotent PostgreSQL schema SQL that can be run on every
1908
+ * server restart. Works in edge environments (no file system access needed).
1909
+ *
1910
+ * This is the programmatic version of the generate-schema-sql.ts script.
1911
+ */
1912
+ /**
1913
+ * Generate idempotent PostgreSQL schema SQL
1914
+ *
1915
+ * @param schemaName - Optional PostgreSQL schema name (e.g., 'llmops').
1916
+ * If not provided, tables are created in the current search_path.
1917
+ * @returns SQL string that can be executed to create/update the schema
1918
+ */
1919
+ declare function generatePostgresSchemaSQL(schemaName?: string): string;
1920
+ /**
1921
+ * Execute the schema SQL using a Neon SQL function
1922
+ *
1923
+ * @param sql - Neon sql function (from `neon()` or passed connection)
1924
+ * @param schemaName - Optional PostgreSQL schema name
1925
+ */
1926
+ declare function runSchemaSQL(sql: (query: string) => Promise<unknown>, schemaName?: string): Promise<void>;
1927
+ /**
1928
+ * Create a Neon SQL function from various connection types
1929
+ *
1930
+ * The Neon serverless library returns a tagged template function from neon(),
1931
+ * but for conventional string queries we need to use sql.query() instead.
1932
+ * This helper wraps the neon instance to provide a simple query function.
1933
+ *
1934
+ * @param rawConnection - neon() function, connection string, or undefined (uses env vars)
1935
+ * @returns SQL function that can be used with runSchemaSQL, or null if unable to create
1936
+ */
1937
+ declare function createNeonSqlFunction(rawConnection: unknown): Promise<((query: string) => Promise<unknown>) | null>;
1938
+ //#endregion
1903
1939
  //#region src/db/validation.d.ts
1904
1940
  /**
1905
1941
  * Validate data against table schema
@@ -2957,4 +2993,4 @@ declare function detectDatabaseType(db: unknown): DatabaseType | null;
2957
2993
  */
2958
2994
  declare function createDatabaseFromConnection(rawConnection: any, options?: DatabaseOptions): Promise<Kysely<Database> | null>;
2959
2995
  //#endregion
2960
- export { SCHEMA_METADATA as $, DatasetsTable as A, variantsSchema as At, LLMRequest as B, Dataset as C, playgroundRunsSchema as Ct, DatasetVersionRecord as D, schemas as Dt, DatasetVersion as E, providerGuardrailOverridesSchema as Et, GuardrailConfig as F, PlaygroundResultsTable as G, Playground as H, GuardrailConfigsTable as I, PlaygroundsTable as J, PlaygroundRun as K, GuardrailResult as L, EnvironmentSecret as M, EnvironmentSecretsTable as N, DatasetVersionRecordsTable as O, targetingRulesSchema as Ot, EnvironmentsTable as P, ProviderGuardrailOverridesTable as Q, GuardrailResults as R, Database as S, playgroundResultsSchema as St, DatasetRecordsTable as T, providerConfigsSchema as Tt, PlaygroundColumn as U, LLMRequestsTable as V, PlaygroundResult as W, ProviderConfigsTable as X, ProviderConfig as Y, ProviderGuardrailOverride as Z, validateTableData as _, environmentSecretsSchema as _t, createDatabaseFromConnection as a, Variant as at, ConfigVariantsTable as b, llmRequestsSchema as bt, executeWithSchema as c, VariantsTable as ct, getMigrations as d, configVariantsSchema as dt, Selectable as et, matchType as f, configsSchema as ft, validatePartialTableData as g, datasetsSchema as gt, parseTableData as h, datasetVersionsSchema as ht, createDatabase as i, Updateable as it, Environment as j, workspaceSettingsSchema as jt, DatasetVersionsTable as k, variantVersionsSchema as kt, MigrationOptions as l, WorkspaceSettings as lt, parsePartialTableData as m, datasetVersionRecordsSchema as mt, DatabaseOptions as n, TargetingRule as nt, detectDatabaseType as o, VariantVersion as ot, runAutoMigrations as p, datasetRecordsSchema as pt, PlaygroundRunsTable as q, DatabaseType as r, TargetingRulesTable as rt, createNeonDialect as s, VariantVersionsTable as st, DatabaseConnection as t, TableName as tt, MigrationResult as u, WorkspaceSettingsTable as ut, Config as v, environmentsSchema as vt, DatasetRecord as w, playgroundsSchema as wt, ConfigsTable as x, playgroundColumnSchema as xt, ConfigVariant as y, guardrailConfigsSchema as yt, Insertable as z };
2996
+ export { ProviderConfigsTable as $, DatasetVersionRecord as A, schemas as At, GuardrailResult as B, ConfigVariantsTable as C, llmRequestsSchema as Ct, DatasetRecord as D, playgroundsSchema as Dt, Dataset as E, playgroundRunsSchema as Et, EnvironmentSecret as F, Playground as G, Insertable as H, EnvironmentSecretsTable as I, PlaygroundResultsTable as J, PlaygroundColumn as K, EnvironmentsTable as L, DatasetVersionsTable as M, variantVersionsSchema as Mt, DatasetsTable as N, variantsSchema as Nt, DatasetRecordsTable as O, providerConfigsSchema as Ot, Environment as P, workspaceSettingsSchema as Pt, ProviderConfig as Q, GuardrailConfig as R, ConfigVariant as S, guardrailConfigsSchema as St, Database as T, playgroundResultsSchema as Tt, LLMRequest as U, GuardrailResults as V, LLMRequestsTable as W, PlaygroundRunsTable as X, PlaygroundRun as Y, PlaygroundsTable as Z, validateTableData as _, datasetVersionRecordsSchema as _t, createDatabaseFromConnection as a, TargetingRule as at, runSchemaSQL as b, environmentSecretsSchema as bt, executeWithSchema as c, Variant as ct, getMigrations as d, VariantsTable as dt, ProviderGuardrailOverride as et, matchType as f, WorkspaceSettings as ft, validatePartialTableData as g, datasetRecordsSchema as gt, parseTableData as h, configsSchema as ht, createDatabase as i, TableName as it, DatasetVersionRecordsTable as j, targetingRulesSchema as jt, DatasetVersion as k, providerGuardrailOverridesSchema as kt, MigrationOptions as l, VariantVersion as lt, parsePartialTableData as m, configVariantsSchema as mt, DatabaseOptions as n, SCHEMA_METADATA as nt, detectDatabaseType as o, TargetingRulesTable as ot, runAutoMigrations as p, WorkspaceSettingsTable as pt, PlaygroundResult as q, DatabaseType as r, Selectable as rt, createNeonDialect as s, Updateable as st, DatabaseConnection as t, ProviderGuardrailOverridesTable as tt, MigrationResult as u, VariantVersionsTable as ut, createNeonSqlFunction as v, datasetVersionsSchema as vt, ConfigsTable as w, playgroundColumnSchema as wt, Config as x, environmentsSchema as xt, generatePostgresSchemaSQL as y, datasetsSchema as yt, GuardrailConfigsTable as z };
@@ -1,7 +1,7 @@
1
1
  import { ColumnType, Dialect, Generated, Kysely, MssqlDialect, MysqlDialect, PostgresDialect, SqliteDialect } from "kysely";
2
+ import { NeonQueryFunction } from "@neondatabase/serverless";
2
3
  import * as zod0 from "zod";
3
4
  import { z } from "zod";
4
- import { NeonQueryFunction } from "@neondatabase/serverless";
5
5
 
6
6
  //#region src/db/schema.d.ts
7
7
  declare const configsSchema: z.ZodObject<{
@@ -1900,6 +1900,42 @@ declare const schemas: {
1900
1900
  }, z.core.$strip>;
1901
1901
  };
1902
1902
  //#endregion
1903
+ //#region src/db/schema-sql.d.ts
1904
+ /**
1905
+ * Idempotent SQL Schema Generator
1906
+ *
1907
+ * Generates fully idempotent PostgreSQL schema SQL that can be run on every
1908
+ * server restart. Works in edge environments (no file system access needed).
1909
+ *
1910
+ * This is the programmatic version of the generate-schema-sql.ts script.
1911
+ */
1912
+ /**
1913
+ * Generate idempotent PostgreSQL schema SQL
1914
+ *
1915
+ * @param schemaName - Optional PostgreSQL schema name (e.g., 'llmops').
1916
+ * If not provided, tables are created in the current search_path.
1917
+ * @returns SQL string that can be executed to create/update the schema
1918
+ */
1919
+ declare function generatePostgresSchemaSQL(schemaName?: string): string;
1920
+ /**
1921
+ * Execute the schema SQL using a Neon SQL function
1922
+ *
1923
+ * @param sql - Neon sql function (from `neon()` or passed connection)
1924
+ * @param schemaName - Optional PostgreSQL schema name
1925
+ */
1926
+ declare function runSchemaSQL(sql: (query: string) => Promise<unknown>, schemaName?: string): Promise<void>;
1927
+ /**
1928
+ * Create a Neon SQL function from various connection types
1929
+ *
1930
+ * The Neon serverless library returns a tagged template function from neon(),
1931
+ * but for conventional string queries we need to use sql.query() instead.
1932
+ * This helper wraps the neon instance to provide a simple query function.
1933
+ *
1934
+ * @param rawConnection - neon() function, connection string, or undefined (uses env vars)
1935
+ * @returns SQL function that can be used with runSchemaSQL, or null if unable to create
1936
+ */
1937
+ declare function createNeonSqlFunction(rawConnection: unknown): Promise<((query: string) => Promise<unknown>) | null>;
1938
+ //#endregion
1903
1939
  //#region src/db/validation.d.ts
1904
1940
  /**
1905
1941
  * Validate data against table schema
@@ -2957,4 +2993,4 @@ declare function detectDatabaseType(db: unknown): DatabaseType | null;
2957
2993
  */
2958
2994
  declare function createDatabaseFromConnection(rawConnection: any, options?: DatabaseOptions): Promise<Kysely<Database> | null>;
2959
2995
  //#endregion
2960
- export { SCHEMA_METADATA as $, DatasetsTable as A, variantsSchema as At, LLMRequest as B, Dataset as C, playgroundRunsSchema as Ct, DatasetVersionRecord as D, schemas as Dt, DatasetVersion as E, providerGuardrailOverridesSchema as Et, GuardrailConfig as F, PlaygroundResultsTable as G, Playground as H, GuardrailConfigsTable as I, PlaygroundsTable as J, PlaygroundRun as K, GuardrailResult as L, EnvironmentSecret as M, EnvironmentSecretsTable as N, DatasetVersionRecordsTable as O, targetingRulesSchema as Ot, EnvironmentsTable as P, ProviderGuardrailOverridesTable as Q, GuardrailResults as R, Database as S, playgroundResultsSchema as St, DatasetRecordsTable as T, providerConfigsSchema as Tt, PlaygroundColumn as U, LLMRequestsTable as V, PlaygroundResult as W, ProviderConfigsTable as X, ProviderConfig as Y, ProviderGuardrailOverride as Z, validateTableData as _, environmentSecretsSchema as _t, createDatabaseFromConnection as a, Variant as at, ConfigVariantsTable as b, llmRequestsSchema as bt, executeWithSchema as c, VariantsTable as ct, getMigrations as d, configVariantsSchema as dt, Selectable as et, matchType as f, configsSchema as ft, validatePartialTableData as g, datasetsSchema as gt, parseTableData as h, datasetVersionsSchema as ht, createDatabase as i, Updateable as it, Environment as j, workspaceSettingsSchema as jt, DatasetVersionsTable as k, variantVersionsSchema as kt, MigrationOptions as l, WorkspaceSettings as lt, parsePartialTableData as m, datasetVersionRecordsSchema as mt, DatabaseOptions as n, TargetingRule as nt, detectDatabaseType as o, VariantVersion as ot, runAutoMigrations as p, datasetRecordsSchema as pt, PlaygroundRunsTable as q, DatabaseType as r, TargetingRulesTable as rt, createNeonDialect as s, VariantVersionsTable as st, DatabaseConnection as t, TableName as tt, MigrationResult as u, WorkspaceSettingsTable as ut, Config as v, environmentsSchema as vt, DatasetRecord as w, playgroundsSchema as wt, ConfigsTable as x, playgroundColumnSchema as xt, ConfigVariant as y, guardrailConfigsSchema as yt, Insertable as z };
2996
+ export { ProviderConfigsTable as $, DatasetVersionRecord as A, schemas as At, GuardrailResult as B, ConfigVariantsTable as C, llmRequestsSchema as Ct, DatasetRecord as D, playgroundsSchema as Dt, Dataset as E, playgroundRunsSchema as Et, EnvironmentSecret as F, Playground as G, Insertable as H, EnvironmentSecretsTable as I, PlaygroundResultsTable as J, PlaygroundColumn as K, EnvironmentsTable as L, DatasetVersionsTable as M, variantVersionsSchema as Mt, DatasetsTable as N, variantsSchema as Nt, DatasetRecordsTable as O, providerConfigsSchema as Ot, Environment as P, workspaceSettingsSchema as Pt, ProviderConfig as Q, GuardrailConfig as R, ConfigVariant as S, guardrailConfigsSchema as St, Database as T, playgroundResultsSchema as Tt, LLMRequest as U, GuardrailResults as V, LLMRequestsTable as W, PlaygroundRunsTable as X, PlaygroundRun as Y, PlaygroundsTable as Z, validateTableData as _, datasetVersionRecordsSchema as _t, createDatabaseFromConnection as a, TargetingRule as at, runSchemaSQL as b, environmentSecretsSchema as bt, executeWithSchema as c, Variant as ct, getMigrations as d, VariantsTable as dt, ProviderGuardrailOverride as et, matchType as f, WorkspaceSettings as ft, validatePartialTableData as g, datasetRecordsSchema as gt, parseTableData as h, configsSchema as ht, createDatabase as i, TableName as it, DatasetVersionRecordsTable as j, targetingRulesSchema as jt, DatasetVersion as k, providerGuardrailOverridesSchema as kt, MigrationOptions as l, VariantVersion as lt, parsePartialTableData as m, configVariantsSchema as mt, DatabaseOptions as n, SCHEMA_METADATA as nt, detectDatabaseType as o, TargetingRulesTable as ot, runAutoMigrations as p, WorkspaceSettingsTable as pt, PlaygroundResult as q, DatabaseType as r, Selectable as rt, createNeonDialect as s, Updateable as st, DatabaseConnection as t, ProviderGuardrailOverridesTable as tt, MigrationResult as u, VariantVersionsTable as ut, createNeonSqlFunction as v, datasetVersionsSchema as vt, ConfigsTable as w, playgroundColumnSchema as wt, Config as x, environmentsSchema as xt, generatePostgresSchemaSQL as y, datasetsSchema as yt, GuardrailConfigsTable as z };
package/dist/index.cjs CHANGED
@@ -1,5 +1,5 @@
1
- const require_db = require('./db-B9jJgYNw.cjs');
2
- const require_neon_dialect = require('./neon-dialect-BBWePgOv.cjs');
1
+ const require_db = require('./db-C4vSSIoo.cjs');
2
+ const require_neon_dialect = require('./neon-dialect-COb-W-YR.cjs');
3
3
  let __llmops_gateway = require("@llmops/gateway");
4
4
  __llmops_gateway = require_db.__toESM(__llmops_gateway);
5
5
  let kysely = require("kysely");
@@ -3764,6 +3764,7 @@ exports.createEnvironmentSecretDataLayer = createEnvironmentSecretDataLayer;
3764
3764
  exports.createGuardrailConfigsDataLayer = createGuardrailConfigsDataLayer;
3765
3765
  exports.createLLMRequestsDataLayer = createLLMRequestsDataLayer;
3766
3766
  exports.createNeonDialect = require_neon_dialect.createNeonDialect;
3767
+ exports.createNeonSqlFunction = require_db.createNeonSqlFunction;
3767
3768
  exports.createPlaygroundDataLayer = createPlaygroundDataLayer;
3768
3769
  exports.createPlaygroundResultsDataLayer = createPlaygroundResultsDataLayer;
3769
3770
  exports.createPlaygroundRunsDataLayer = createPlaygroundRunsDataLayer;
@@ -3790,6 +3791,7 @@ Object.defineProperty(exports, 'gateway', {
3790
3791
  }
3791
3792
  });
3792
3793
  exports.generateId = generateId;
3794
+ exports.generatePostgresSchemaSQL = require_db.generatePostgresSchemaSQL;
3793
3795
  exports.getAuthClientOptions = require_db.getAuthClientOptions;
3794
3796
  exports.getDefaultPricingProvider = getDefaultPricingProvider;
3795
3797
  exports.getMigrations = require_db.getMigrations;
@@ -3808,6 +3810,7 @@ exports.playgroundsSchema = require_db.playgroundsSchema;
3808
3810
  exports.providerConfigsSchema = require_db.providerConfigsSchema;
3809
3811
  exports.providerGuardrailOverridesSchema = require_db.providerGuardrailOverridesSchema;
3810
3812
  exports.runAutoMigrations = require_db.runAutoMigrations;
3813
+ exports.runSchemaSQL = require_db.runSchemaSQL;
3811
3814
  exports.schemas = require_db.schemas;
3812
3815
  exports.targetingRulesSchema = require_db.targetingRulesSchema;
3813
3816
  exports.validateLLMOpsConfig = validateLLMOpsConfig;
package/dist/index.d.cts CHANGED
@@ -1,4 +1,4 @@
1
- import { $ as SCHEMA_METADATA, A as DatasetsTable, At as variantsSchema, B as LLMRequest, C as Dataset, Ct as playgroundRunsSchema, D as DatasetVersionRecord, Dt as schemas, E as DatasetVersion, Et as providerGuardrailOverridesSchema, F as GuardrailConfig, G as PlaygroundResultsTable, H as Playground, I as GuardrailConfigsTable, J as PlaygroundsTable, K as PlaygroundRun, L as GuardrailResult, M as EnvironmentSecret, N as EnvironmentSecretsTable, O as DatasetVersionRecordsTable, Ot as targetingRulesSchema, P as EnvironmentsTable, Q as ProviderGuardrailOverridesTable, R as GuardrailResults, S as Database, St as playgroundResultsSchema, T as DatasetRecordsTable, Tt as providerConfigsSchema, U as PlaygroundColumn, V as LLMRequestsTable, W as PlaygroundResult, X as ProviderConfigsTable, Y as ProviderConfig, Z as ProviderGuardrailOverride, _ as validateTableData, _t as environmentSecretsSchema, a as createDatabaseFromConnection, at as Variant, b as ConfigVariantsTable, bt as llmRequestsSchema, c as executeWithSchema, ct as VariantsTable, d as getMigrations, dt as configVariantsSchema, et as Selectable, f as matchType, ft as configsSchema, g as validatePartialTableData, gt as datasetsSchema, h as parseTableData, ht as datasetVersionsSchema, i as createDatabase, it as Updateable, j as Environment, jt as workspaceSettingsSchema, k as DatasetVersionsTable, kt as variantVersionsSchema, l as MigrationOptions, lt as WorkspaceSettings, m as parsePartialTableData, mt as datasetVersionRecordsSchema, n as DatabaseOptions, nt as TargetingRule, o as detectDatabaseType, ot as VariantVersion, p as runAutoMigrations, pt as datasetRecordsSchema, q as PlaygroundRunsTable, r as DatabaseType, rt as TargetingRulesTable, s as createNeonDialect, st as VariantVersionsTable, t as DatabaseConnection, tt as TableName, u as MigrationResult, ut as WorkspaceSettingsTable, v as Config, vt as environmentsSchema, w as DatasetRecord, wt as playgroundsSchema, x as ConfigsTable, xt as playgroundColumnSchema, y as ConfigVariant, yt as guardrailConfigsSchema, z as Insertable } from "./index-BtSgIKup.cjs";
1
+ import { $ as ProviderConfigsTable, A as DatasetVersionRecord, At as schemas, B as GuardrailResult, C as ConfigVariantsTable, Ct as llmRequestsSchema, D as DatasetRecord, Dt as playgroundsSchema, E as Dataset, Et as playgroundRunsSchema, F as EnvironmentSecret, G as Playground, H as Insertable, I as EnvironmentSecretsTable, J as PlaygroundResultsTable, K as PlaygroundColumn, L as EnvironmentsTable, M as DatasetVersionsTable, Mt as variantVersionsSchema, N as DatasetsTable, Nt as variantsSchema, O as DatasetRecordsTable, Ot as providerConfigsSchema, P as Environment, Pt as workspaceSettingsSchema, Q as ProviderConfig, R as GuardrailConfig, S as ConfigVariant, St as guardrailConfigsSchema, T as Database, Tt as playgroundResultsSchema, U as LLMRequest, V as GuardrailResults, W as LLMRequestsTable, X as PlaygroundRunsTable, Y as PlaygroundRun, Z as PlaygroundsTable, _ as validateTableData, _t as datasetVersionRecordsSchema, a as createDatabaseFromConnection, at as TargetingRule, b as runSchemaSQL, bt as environmentSecretsSchema, c as executeWithSchema, ct as Variant, d as getMigrations, dt as VariantsTable, et as ProviderGuardrailOverride, f as matchType, ft as WorkspaceSettings, g as validatePartialTableData, gt as datasetRecordsSchema, h as parseTableData, ht as configsSchema, i as createDatabase, it as TableName, j as DatasetVersionRecordsTable, jt as targetingRulesSchema, k as DatasetVersion, kt as providerGuardrailOverridesSchema, l as MigrationOptions, lt as VariantVersion, m as parsePartialTableData, mt as configVariantsSchema, n as DatabaseOptions, nt as SCHEMA_METADATA, o as detectDatabaseType, ot as TargetingRulesTable, p as runAutoMigrations, pt as WorkspaceSettingsTable, q as PlaygroundResult, r as DatabaseType, rt as Selectable, s as createNeonDialect, st as Updateable, t as DatabaseConnection, tt as ProviderGuardrailOverridesTable, u as MigrationResult, ut as VariantVersionsTable, v as createNeonSqlFunction, vt as datasetVersionsSchema, w as ConfigsTable, wt as playgroundColumnSchema, x as Config, xt as environmentsSchema, y as generatePostgresSchemaSQL, yt as datasetsSchema, z as GuardrailConfigsTable } from "./index-BYhMgUES.cjs";
2
2
  import * as kysely0 from "kysely";
3
3
  import { Kysely } from "kysely";
4
4
  import z$1, { z } from "zod";
@@ -3797,4 +3797,4 @@ declare class ManifestRouter {
3797
3797
  routeWithWeights(configIdOrSlug: string, environmentId: string, context?: RoutingContext): RoutingResult | null;
3798
3798
  }
3799
3799
  //#endregion
3800
- export { type AnthropicProviderConfig, type AnyProviderConfig, AuthClientDatabaseConfig, AuthClientOptions, type AzureAIProviderConfig, type AzureOpenAIProviderConfig, BaseCacheConfig, type BaseProviderConfig, type BedrockProviderConfig, CacheBackend, CacheBackendType, CacheConfig, CacheEntry, CacheOptions, CacheService, CacheStats, ChatCompletionCreateParamsBase, Config, ConfigVariant, ConfigVariantsDataLayer, ConfigVariantsTable, ConfigsDataLayer, ConfigsTable, type CortexProviderConfig, CostResult, DataLayer, Database, DatabaseConnection, DatabaseOptions, DatabaseType, Dataset, DatasetRecord, DatasetRecordsTable, DatasetVersion, DatasetVersionRecord, DatasetVersionRecordsTable, DatasetVersionsTable, DatasetsDataLayer, DatasetsTable, Environment, EnvironmentSecret, EnvironmentSecretsDataLayer, EnvironmentSecretsTable, EnvironmentsDataLayer, EnvironmentsTable, FileCacheBackend, FileCacheConfig, type FireworksAIProviderConfig, GatewayManifest, type GoogleProviderConfig, GuardrailConfig, GuardrailConfigsDataLayer, GuardrailConfigsTable, GuardrailResult, GuardrailResults, type HuggingFaceProviderConfig, Insertable, LLMOpsClient, LLMOpsConfig, type LLMOpsConfigInput, LLMRequest, LLMRequestInsert, LLMRequestsDataLayer, LLMRequestsTable, MS, ManifestBuilder, ManifestConfig, ManifestEnvironment, ManifestGuardrail, ManifestProviderGuardrailOverride, ManifestRouter, ManifestService, ManifestTargetingRule, ManifestVariantVersion, MemoryCacheBackend, MemoryCacheConfig, MigrationOptions, MigrationResult, type MistralAIProviderConfig, ModelPricing, ModelsDevPricingProvider, type OpenAIProviderConfig, type OracleProviderConfig, Playground, PlaygroundColumn, PlaygroundResult, PlaygroundResultsDataLayer, PlaygroundResultsTable, PlaygroundRun, PlaygroundRunsDataLayer, PlaygroundRunsTable, PlaygroundsDataLayer, PlaygroundsTable, Prettify, PricingProvider, ProviderConfig, type ProviderConfigMap, ProviderConfigsDataLayer, ProviderConfigsTable, ProviderGuardrailOverride, ProviderGuardrailOverridesDataLayer, ProviderGuardrailOverridesTable, type ProvidersConfig, RoutingContext, RoutingResult, SCHEMA_METADATA, type SagemakerProviderConfig, Selectable, type StabilityAIProviderConfig, SupportedProviders, TableName, TargetingRule, TargetingRulesDataLayer, TargetingRulesTable, Updateable, UsageData, type ValidatedLLMOpsConfig, Variant, VariantJsonData, VariantVersion, VariantVersionsDataLayer, VariantVersionsTable, VariantsDataLayer, VariantsTable, type VertexAIProviderConfig, type WorkersAIProviderConfig, WorkspaceSettings, WorkspaceSettingsDataLayer, WorkspaceSettingsTable, calculateCost, chatCompletionCreateParamsBaseSchema, configVariantsSchema, configsSchema, createConfigDataLayer, createConfigVariantDataLayer, createDataLayer, createDatabase, createDatabaseFromConnection, createDatasetsDataLayer, createEnvironmentDataLayer, createEnvironmentSecretDataLayer, createGuardrailConfigsDataLayer, createLLMRequestsDataLayer, createNeonDialect, createPlaygroundDataLayer, createPlaygroundResultsDataLayer, createPlaygroundRunsDataLayer, createProviderConfigsDataLayer, createProviderGuardrailOverridesDataLayer, createTargetingRulesDataLayer, createVariantDataLayer, createVariantVersionsDataLayer, createWorkspaceSettingsDataLayer, datasetRecordsSchema, datasetVersionRecordsSchema, datasetVersionsSchema, datasetsSchema, detectDatabaseType, dollarsToMicroDollars, environmentSecretsSchema, environmentsSchema, executeWithSchema, formatCost, gateway, generateId, getAuthClientOptions, getDefaultPricingProvider, getMigrations, guardrailConfigsSchema, llmRequestsSchema, llmopsConfigSchema, logger, matchType, microDollarsToDollars, parsePartialTableData, parseTableData, playgroundColumnSchema, playgroundResultsSchema, playgroundRunsSchema, playgroundsSchema, providerConfigsSchema, providerGuardrailOverridesSchema, runAutoMigrations, schemas, targetingRulesSchema, validateLLMOpsConfig, validatePartialTableData, validateTableData, variantJsonDataSchema, variantVersionsSchema, variantsSchema, workspaceSettingsSchema };
3800
+ export { type AnthropicProviderConfig, type AnyProviderConfig, AuthClientDatabaseConfig, AuthClientOptions, type AzureAIProviderConfig, type AzureOpenAIProviderConfig, BaseCacheConfig, type BaseProviderConfig, type BedrockProviderConfig, CacheBackend, CacheBackendType, CacheConfig, CacheEntry, CacheOptions, CacheService, CacheStats, ChatCompletionCreateParamsBase, Config, ConfigVariant, ConfigVariantsDataLayer, ConfigVariantsTable, ConfigsDataLayer, ConfigsTable, type CortexProviderConfig, CostResult, DataLayer, Database, DatabaseConnection, DatabaseOptions, DatabaseType, Dataset, DatasetRecord, DatasetRecordsTable, DatasetVersion, DatasetVersionRecord, DatasetVersionRecordsTable, DatasetVersionsTable, DatasetsDataLayer, DatasetsTable, Environment, EnvironmentSecret, EnvironmentSecretsDataLayer, EnvironmentSecretsTable, EnvironmentsDataLayer, EnvironmentsTable, FileCacheBackend, FileCacheConfig, type FireworksAIProviderConfig, GatewayManifest, type GoogleProviderConfig, GuardrailConfig, GuardrailConfigsDataLayer, GuardrailConfigsTable, GuardrailResult, GuardrailResults, type HuggingFaceProviderConfig, Insertable, LLMOpsClient, LLMOpsConfig, type LLMOpsConfigInput, LLMRequest, LLMRequestInsert, LLMRequestsDataLayer, LLMRequestsTable, MS, ManifestBuilder, ManifestConfig, ManifestEnvironment, ManifestGuardrail, ManifestProviderGuardrailOverride, ManifestRouter, ManifestService, ManifestTargetingRule, ManifestVariantVersion, MemoryCacheBackend, MemoryCacheConfig, MigrationOptions, MigrationResult, type MistralAIProviderConfig, ModelPricing, ModelsDevPricingProvider, type OpenAIProviderConfig, type OracleProviderConfig, Playground, PlaygroundColumn, PlaygroundResult, PlaygroundResultsDataLayer, PlaygroundResultsTable, PlaygroundRun, PlaygroundRunsDataLayer, PlaygroundRunsTable, PlaygroundsDataLayer, PlaygroundsTable, Prettify, PricingProvider, ProviderConfig, type ProviderConfigMap, ProviderConfigsDataLayer, ProviderConfigsTable, ProviderGuardrailOverride, ProviderGuardrailOverridesDataLayer, ProviderGuardrailOverridesTable, type ProvidersConfig, RoutingContext, RoutingResult, SCHEMA_METADATA, type SagemakerProviderConfig, Selectable, type StabilityAIProviderConfig, SupportedProviders, TableName, TargetingRule, TargetingRulesDataLayer, TargetingRulesTable, Updateable, UsageData, type ValidatedLLMOpsConfig, Variant, VariantJsonData, VariantVersion, VariantVersionsDataLayer, VariantVersionsTable, VariantsDataLayer, VariantsTable, type VertexAIProviderConfig, type WorkersAIProviderConfig, WorkspaceSettings, WorkspaceSettingsDataLayer, WorkspaceSettingsTable, calculateCost, chatCompletionCreateParamsBaseSchema, configVariantsSchema, configsSchema, createConfigDataLayer, createConfigVariantDataLayer, createDataLayer, createDatabase, createDatabaseFromConnection, createDatasetsDataLayer, createEnvironmentDataLayer, createEnvironmentSecretDataLayer, createGuardrailConfigsDataLayer, createLLMRequestsDataLayer, createNeonDialect, createNeonSqlFunction, createPlaygroundDataLayer, createPlaygroundResultsDataLayer, createPlaygroundRunsDataLayer, createProviderConfigsDataLayer, createProviderGuardrailOverridesDataLayer, createTargetingRulesDataLayer, createVariantDataLayer, createVariantVersionsDataLayer, createWorkspaceSettingsDataLayer, datasetRecordsSchema, datasetVersionRecordsSchema, datasetVersionsSchema, datasetsSchema, detectDatabaseType, dollarsToMicroDollars, environmentSecretsSchema, environmentsSchema, executeWithSchema, formatCost, gateway, generateId, generatePostgresSchemaSQL, getAuthClientOptions, getDefaultPricingProvider, getMigrations, guardrailConfigsSchema, llmRequestsSchema, llmopsConfigSchema, logger, matchType, microDollarsToDollars, parsePartialTableData, parseTableData, playgroundColumnSchema, playgroundResultsSchema, playgroundRunsSchema, playgroundsSchema, providerConfigsSchema, providerGuardrailOverridesSchema, runAutoMigrations, runSchemaSQL, schemas, targetingRulesSchema, validateLLMOpsConfig, validatePartialTableData, validateTableData, variantJsonDataSchema, variantVersionsSchema, variantsSchema, workspaceSettingsSchema };
package/dist/index.d.mts CHANGED
@@ -1,4 +1,4 @@
1
- import { $ as SCHEMA_METADATA, A as DatasetsTable, At as variantsSchema, B as LLMRequest, C as Dataset, Ct as playgroundRunsSchema, D as DatasetVersionRecord, Dt as schemas, E as DatasetVersion, Et as providerGuardrailOverridesSchema, F as GuardrailConfig, G as PlaygroundResultsTable, H as Playground, I as GuardrailConfigsTable, J as PlaygroundsTable, K as PlaygroundRun, L as GuardrailResult, M as EnvironmentSecret, N as EnvironmentSecretsTable, O as DatasetVersionRecordsTable, Ot as targetingRulesSchema, P as EnvironmentsTable, Q as ProviderGuardrailOverridesTable, R as GuardrailResults, S as Database, St as playgroundResultsSchema, T as DatasetRecordsTable, Tt as providerConfigsSchema, U as PlaygroundColumn, V as LLMRequestsTable, W as PlaygroundResult, X as ProviderConfigsTable, Y as ProviderConfig, Z as ProviderGuardrailOverride, _ as validateTableData, _t as environmentSecretsSchema, a as createDatabaseFromConnection, at as Variant, b as ConfigVariantsTable, bt as llmRequestsSchema, c as executeWithSchema, ct as VariantsTable, d as getMigrations, dt as configVariantsSchema, et as Selectable, f as matchType, ft as configsSchema, g as validatePartialTableData, gt as datasetsSchema, h as parseTableData, ht as datasetVersionsSchema, i as createDatabase, it as Updateable, j as Environment, jt as workspaceSettingsSchema, k as DatasetVersionsTable, kt as variantVersionsSchema, l as MigrationOptions, lt as WorkspaceSettings, m as parsePartialTableData, mt as datasetVersionRecordsSchema, n as DatabaseOptions, nt as TargetingRule, o as detectDatabaseType, ot as VariantVersion, p as runAutoMigrations, pt as datasetRecordsSchema, q as PlaygroundRunsTable, r as DatabaseType, rt as TargetingRulesTable, s as createNeonDialect, st as VariantVersionsTable, t as DatabaseConnection, tt as TableName, u as MigrationResult, ut as WorkspaceSettingsTable, v as Config, vt as environmentsSchema, w as DatasetRecord, wt as playgroundsSchema, x as ConfigsTable, xt as playgroundColumnSchema, y as ConfigVariant, yt as guardrailConfigsSchema, z as Insertable } from "./index-LRmy4sz9.mjs";
1
+ import { $ as ProviderConfigsTable, A as DatasetVersionRecord, At as schemas, B as GuardrailResult, C as ConfigVariantsTable, Ct as llmRequestsSchema, D as DatasetRecord, Dt as playgroundsSchema, E as Dataset, Et as playgroundRunsSchema, F as EnvironmentSecret, G as Playground, H as Insertable, I as EnvironmentSecretsTable, J as PlaygroundResultsTable, K as PlaygroundColumn, L as EnvironmentsTable, M as DatasetVersionsTable, Mt as variantVersionsSchema, N as DatasetsTable, Nt as variantsSchema, O as DatasetRecordsTable, Ot as providerConfigsSchema, P as Environment, Pt as workspaceSettingsSchema, Q as ProviderConfig, R as GuardrailConfig, S as ConfigVariant, St as guardrailConfigsSchema, T as Database, Tt as playgroundResultsSchema, U as LLMRequest, V as GuardrailResults, W as LLMRequestsTable, X as PlaygroundRunsTable, Y as PlaygroundRun, Z as PlaygroundsTable, _ as validateTableData, _t as datasetVersionRecordsSchema, a as createDatabaseFromConnection, at as TargetingRule, b as runSchemaSQL, bt as environmentSecretsSchema, c as executeWithSchema, ct as Variant, d as getMigrations, dt as VariantsTable, et as ProviderGuardrailOverride, f as matchType, ft as WorkspaceSettings, g as validatePartialTableData, gt as datasetRecordsSchema, h as parseTableData, ht as configsSchema, i as createDatabase, it as TableName, j as DatasetVersionRecordsTable, jt as targetingRulesSchema, k as DatasetVersion, kt as providerGuardrailOverridesSchema, l as MigrationOptions, lt as VariantVersion, m as parsePartialTableData, mt as configVariantsSchema, n as DatabaseOptions, nt as SCHEMA_METADATA, o as detectDatabaseType, ot as TargetingRulesTable, p as runAutoMigrations, pt as WorkspaceSettingsTable, q as PlaygroundResult, r as DatabaseType, rt as Selectable, s as createNeonDialect, st as Updateable, t as DatabaseConnection, tt as ProviderGuardrailOverridesTable, u as MigrationResult, ut as VariantVersionsTable, v as createNeonSqlFunction, vt as datasetVersionsSchema, w as ConfigsTable, wt as playgroundColumnSchema, x as Config, xt as environmentsSchema, y as generatePostgresSchemaSQL, yt as datasetsSchema, z as GuardrailConfigsTable } from "./index-BvU4Gv3C.mjs";
2
2
  import gateway from "@llmops/gateway";
3
3
  import * as kysely0 from "kysely";
4
4
  import { Kysely } from "kysely";
@@ -3797,4 +3797,4 @@ declare class ManifestRouter {
3797
3797
  routeWithWeights(configIdOrSlug: string, environmentId: string, context?: RoutingContext): RoutingResult | null;
3798
3798
  }
3799
3799
  //#endregion
3800
- export { type AnthropicProviderConfig, type AnyProviderConfig, AuthClientDatabaseConfig, AuthClientOptions, type AzureAIProviderConfig, type AzureOpenAIProviderConfig, BaseCacheConfig, type BaseProviderConfig, type BedrockProviderConfig, CacheBackend, CacheBackendType, CacheConfig, CacheEntry, CacheOptions, CacheService, CacheStats, ChatCompletionCreateParamsBase, type Config, type ConfigVariant, type ConfigVariantsDataLayer, type ConfigVariantsTable, type ConfigsDataLayer, type ConfigsTable, type CortexProviderConfig, CostResult, type DataLayer, type Database, DatabaseConnection, DatabaseOptions, DatabaseType, type Dataset, type DatasetRecord, DatasetRecordsTable, type DatasetVersion, type DatasetVersionRecord, DatasetVersionRecordsTable, DatasetVersionsTable, type DatasetsDataLayer, DatasetsTable, type Environment, type EnvironmentSecret, type EnvironmentSecretsDataLayer, type EnvironmentSecretsTable, type EnvironmentsDataLayer, type EnvironmentsTable, FileCacheBackend, FileCacheConfig, type FireworksAIProviderConfig, type GatewayManifest, type GoogleProviderConfig, type GuardrailConfig, type GuardrailConfigsDataLayer, GuardrailConfigsTable, type GuardrailResult, type GuardrailResults, type HuggingFaceProviderConfig, Insertable, LLMOpsClient, LLMOpsConfig, type LLMOpsConfigInput, type LLMRequest, type LLMRequestInsert, type LLMRequestsDataLayer, LLMRequestsTable, MS, ManifestBuilder, type ManifestConfig, type ManifestEnvironment, type ManifestGuardrail, type ManifestProviderGuardrailOverride, ManifestRouter, ManifestService, type ManifestTargetingRule, type ManifestVariantVersion, MemoryCacheBackend, MemoryCacheConfig, MigrationOptions, MigrationResult, type MistralAIProviderConfig, ModelPricing, ModelsDevPricingProvider, type OpenAIProviderConfig, type OracleProviderConfig, type Playground, type PlaygroundColumn, type PlaygroundResult, type PlaygroundResultsDataLayer, PlaygroundResultsTable, type PlaygroundRun, type PlaygroundRunsDataLayer, PlaygroundRunsTable, type PlaygroundsDataLayer, PlaygroundsTable, Prettify, PricingProvider, type ProviderConfig, type ProviderConfigMap, type ProviderConfigsDataLayer, ProviderConfigsTable, type ProviderGuardrailOverride, type ProviderGuardrailOverridesDataLayer, ProviderGuardrailOverridesTable, type ProvidersConfig, type RoutingContext, type RoutingResult, SCHEMA_METADATA, type SagemakerProviderConfig, Selectable, type StabilityAIProviderConfig, SupportedProviders, type TableName, type TargetingRule, type TargetingRulesDataLayer, type TargetingRulesTable, Updateable, UsageData, type ValidatedLLMOpsConfig, type Variant, VariantJsonData, type VariantVersion, type VariantVersionsDataLayer, VariantVersionsTable, type VariantsDataLayer, type VariantsTable, type VertexAIProviderConfig, type WorkersAIProviderConfig, type WorkspaceSettings, type WorkspaceSettingsDataLayer, WorkspaceSettingsTable, calculateCost, chatCompletionCreateParamsBaseSchema, configVariantsSchema, configsSchema, createConfigDataLayer, createConfigVariantDataLayer, createDataLayer, createDatabase, createDatabaseFromConnection, createDatasetsDataLayer, createEnvironmentDataLayer, createEnvironmentSecretDataLayer, createGuardrailConfigsDataLayer, createLLMRequestsDataLayer, createNeonDialect, createPlaygroundDataLayer, createPlaygroundResultsDataLayer, createPlaygroundRunsDataLayer, createProviderConfigsDataLayer, createProviderGuardrailOverridesDataLayer, createTargetingRulesDataLayer, createVariantDataLayer, createVariantVersionsDataLayer, createWorkspaceSettingsDataLayer, datasetRecordsSchema, datasetVersionRecordsSchema, datasetVersionsSchema, datasetsSchema, detectDatabaseType, dollarsToMicroDollars, environmentSecretsSchema, environmentsSchema, executeWithSchema, formatCost, gateway, generateId, getAuthClientOptions, getDefaultPricingProvider, getMigrations, guardrailConfigsSchema, llmRequestsSchema, llmopsConfigSchema, logger, matchType, microDollarsToDollars, parsePartialTableData, parseTableData, playgroundColumnSchema, playgroundResultsSchema, playgroundRunsSchema, playgroundsSchema, providerConfigsSchema, providerGuardrailOverridesSchema, runAutoMigrations, schemas, targetingRulesSchema, validateLLMOpsConfig, validatePartialTableData, validateTableData, variantJsonDataSchema, variantVersionsSchema, variantsSchema, workspaceSettingsSchema };
3800
+ export { type AnthropicProviderConfig, type AnyProviderConfig, AuthClientDatabaseConfig, AuthClientOptions, type AzureAIProviderConfig, type AzureOpenAIProviderConfig, BaseCacheConfig, type BaseProviderConfig, type BedrockProviderConfig, CacheBackend, CacheBackendType, CacheConfig, CacheEntry, CacheOptions, CacheService, CacheStats, ChatCompletionCreateParamsBase, type Config, type ConfigVariant, type ConfigVariantsDataLayer, type ConfigVariantsTable, type ConfigsDataLayer, type ConfigsTable, type CortexProviderConfig, CostResult, type DataLayer, type Database, DatabaseConnection, DatabaseOptions, DatabaseType, type Dataset, type DatasetRecord, DatasetRecordsTable, type DatasetVersion, type DatasetVersionRecord, DatasetVersionRecordsTable, DatasetVersionsTable, type DatasetsDataLayer, DatasetsTable, type Environment, type EnvironmentSecret, type EnvironmentSecretsDataLayer, type EnvironmentSecretsTable, type EnvironmentsDataLayer, type EnvironmentsTable, FileCacheBackend, FileCacheConfig, type FireworksAIProviderConfig, type GatewayManifest, type GoogleProviderConfig, type GuardrailConfig, type GuardrailConfigsDataLayer, GuardrailConfigsTable, type GuardrailResult, type GuardrailResults, type HuggingFaceProviderConfig, Insertable, LLMOpsClient, LLMOpsConfig, type LLMOpsConfigInput, type LLMRequest, type LLMRequestInsert, type LLMRequestsDataLayer, LLMRequestsTable, MS, ManifestBuilder, type ManifestConfig, type ManifestEnvironment, type ManifestGuardrail, type ManifestProviderGuardrailOverride, ManifestRouter, ManifestService, type ManifestTargetingRule, type ManifestVariantVersion, MemoryCacheBackend, MemoryCacheConfig, MigrationOptions, MigrationResult, type MistralAIProviderConfig, ModelPricing, ModelsDevPricingProvider, type OpenAIProviderConfig, type OracleProviderConfig, type Playground, type PlaygroundColumn, type PlaygroundResult, type PlaygroundResultsDataLayer, PlaygroundResultsTable, type PlaygroundRun, type PlaygroundRunsDataLayer, PlaygroundRunsTable, type PlaygroundsDataLayer, PlaygroundsTable, Prettify, PricingProvider, type ProviderConfig, type ProviderConfigMap, type ProviderConfigsDataLayer, ProviderConfigsTable, type ProviderGuardrailOverride, type ProviderGuardrailOverridesDataLayer, ProviderGuardrailOverridesTable, type ProvidersConfig, type RoutingContext, type RoutingResult, SCHEMA_METADATA, type SagemakerProviderConfig, Selectable, type StabilityAIProviderConfig, SupportedProviders, type TableName, type TargetingRule, type TargetingRulesDataLayer, type TargetingRulesTable, Updateable, UsageData, type ValidatedLLMOpsConfig, type Variant, VariantJsonData, type VariantVersion, type VariantVersionsDataLayer, VariantVersionsTable, type VariantsDataLayer, type VariantsTable, type VertexAIProviderConfig, type WorkersAIProviderConfig, type WorkspaceSettings, type WorkspaceSettingsDataLayer, WorkspaceSettingsTable, calculateCost, chatCompletionCreateParamsBaseSchema, configVariantsSchema, configsSchema, createConfigDataLayer, createConfigVariantDataLayer, createDataLayer, createDatabase, createDatabaseFromConnection, createDatasetsDataLayer, createEnvironmentDataLayer, createEnvironmentSecretDataLayer, createGuardrailConfigsDataLayer, createLLMRequestsDataLayer, createNeonDialect, createNeonSqlFunction, createPlaygroundDataLayer, createPlaygroundResultsDataLayer, createPlaygroundRunsDataLayer, createProviderConfigsDataLayer, createProviderGuardrailOverridesDataLayer, createTargetingRulesDataLayer, createVariantDataLayer, createVariantVersionsDataLayer, createWorkspaceSettingsDataLayer, datasetRecordsSchema, datasetVersionRecordsSchema, datasetVersionsSchema, datasetsSchema, detectDatabaseType, dollarsToMicroDollars, environmentSecretsSchema, environmentsSchema, executeWithSchema, formatCost, gateway, generateId, generatePostgresSchemaSQL, getAuthClientOptions, getDefaultPricingProvider, getMigrations, guardrailConfigsSchema, llmRequestsSchema, llmopsConfigSchema, logger, matchType, microDollarsToDollars, parsePartialTableData, parseTableData, playgroundColumnSchema, playgroundResultsSchema, playgroundRunsSchema, playgroundsSchema, providerConfigsSchema, providerGuardrailOverridesSchema, runAutoMigrations, runSchemaSQL, schemas, targetingRulesSchema, validateLLMOpsConfig, validatePartialTableData, validateTableData, variantJsonDataSchema, variantVersionsSchema, variantsSchema, workspaceSettingsSchema };
package/dist/index.mjs CHANGED
@@ -1,4 +1,4 @@
1
- import { A as schemas, B as literal, C as llmRequestsSchema, D as playgroundsSchema, E as playgroundRunsSchema, F as zod_default, G as union, H as object, I as _enum, K as unknown, L as any, M as variantVersionsSchema, N as variantsSchema, O as providerConfigsSchema, P as workspaceSettingsSchema, R as array, S as guardrailConfigsSchema, T as playgroundResultsSchema, U as record, V as number, W as string, _ as datasetVersionRecordsSchema, a as matchType, b as environmentSecretsSchema, c as logger, d as validatePartialTableData, f as validateTableData, g as datasetRecordsSchema, h as configsSchema, i as getMigrations, j as targetingRulesSchema, k as providerGuardrailOverridesSchema, l as parsePartialTableData, m as configVariantsSchema, n as createDatabaseFromConnection, o as runAutoMigrations, p as SCHEMA_METADATA, r as detectDatabaseType, s as getAuthClientOptions, t as createDatabase, u as parseTableData, v as datasetVersionsSchema, w as playgroundColumnSchema, x as environmentsSchema, y as datasetsSchema, z as boolean } from "./db-DX_QaIkx.mjs";
1
+ import { A as playgroundsSchema, B as any, C as environmentSecretsSchema, D as playgroundColumnSchema, E as llmRequestsSchema, F as variantVersionsSchema, G as object, H as boolean, I as variantsSchema, J as union, K as record, L as workspaceSettingsSchema, M as providerGuardrailOverridesSchema, N as schemas, O as playgroundResultsSchema, P as targetingRulesSchema, R as zod_default, S as datasetsSchema, T as guardrailConfigsSchema, U as literal, V as array, W as number, Y as unknown, _ as configVariantsSchema, a as matchType, b as datasetVersionRecordsSchema, c as logger, d as validatePartialTableData, f as validateTableData, g as SCHEMA_METADATA, h as runSchemaSQL, i as getMigrations, j as providerConfigsSchema, k as playgroundRunsSchema, l as parsePartialTableData, m as generatePostgresSchemaSQL, n as createDatabaseFromConnection, o as runAutoMigrations, p as createNeonSqlFunction, q as string, r as detectDatabaseType, s as getAuthClientOptions, t as createDatabase, u as parseTableData, v as configsSchema, w as environmentsSchema, x as datasetVersionsSchema, y as datasetRecordsSchema, z as _enum } from "./db-DNmuKhIK.mjs";
2
2
  import { n as executeWithSchema, t as createNeonDialect } from "./neon-dialect-DySGBYUi.mjs";
3
3
  import gateway from "@llmops/gateway";
4
4
  import { sql } from "kysely";
@@ -3735,4 +3735,4 @@ var ManifestRouter = class {
3735
3735
  };
3736
3736
 
3737
3737
  //#endregion
3738
- export { CacheService, FileCacheBackend, MS, ManifestBuilder, ManifestRouter, ManifestService, MemoryCacheBackend, ModelsDevPricingProvider, SCHEMA_METADATA, SupportedProviders, calculateCost, chatCompletionCreateParamsBaseSchema, configVariantsSchema, configsSchema, createConfigDataLayer, createConfigVariantDataLayer, createDataLayer, createDatabase, createDatabaseFromConnection, createDatasetsDataLayer, createEnvironmentDataLayer, createEnvironmentSecretDataLayer, createGuardrailConfigsDataLayer, createLLMRequestsDataLayer, createNeonDialect, createPlaygroundDataLayer, createPlaygroundResultsDataLayer, createPlaygroundRunsDataLayer, createProviderConfigsDataLayer, createProviderGuardrailOverridesDataLayer, createTargetingRulesDataLayer, createVariantDataLayer, createVariantVersionsDataLayer, createWorkspaceSettingsDataLayer, datasetRecordsSchema, datasetVersionRecordsSchema, datasetVersionsSchema, datasetsSchema, detectDatabaseType, dollarsToMicroDollars, environmentSecretsSchema, environmentsSchema, executeWithSchema, formatCost, gateway, generateId, getAuthClientOptions, getDefaultPricingProvider, getMigrations, guardrailConfigsSchema, llmRequestsSchema, llmopsConfigSchema, logger, matchType, microDollarsToDollars, parsePartialTableData, parseTableData, playgroundColumnSchema, playgroundResultsSchema, playgroundRunsSchema, playgroundsSchema, providerConfigsSchema, providerGuardrailOverridesSchema, runAutoMigrations, schemas, targetingRulesSchema, validateLLMOpsConfig, validatePartialTableData, validateTableData, variantJsonDataSchema, variantVersionsSchema, variantsSchema, workspaceSettingsSchema };
3738
+ export { CacheService, FileCacheBackend, MS, ManifestBuilder, ManifestRouter, ManifestService, MemoryCacheBackend, ModelsDevPricingProvider, SCHEMA_METADATA, SupportedProviders, calculateCost, chatCompletionCreateParamsBaseSchema, configVariantsSchema, configsSchema, createConfigDataLayer, createConfigVariantDataLayer, createDataLayer, createDatabase, createDatabaseFromConnection, createDatasetsDataLayer, createEnvironmentDataLayer, createEnvironmentSecretDataLayer, createGuardrailConfigsDataLayer, createLLMRequestsDataLayer, createNeonDialect, createNeonSqlFunction, createPlaygroundDataLayer, createPlaygroundResultsDataLayer, createPlaygroundRunsDataLayer, createProviderConfigsDataLayer, createProviderGuardrailOverridesDataLayer, createTargetingRulesDataLayer, createVariantDataLayer, createVariantVersionsDataLayer, createWorkspaceSettingsDataLayer, datasetRecordsSchema, datasetVersionRecordsSchema, datasetVersionsSchema, datasetsSchema, detectDatabaseType, dollarsToMicroDollars, environmentSecretsSchema, environmentsSchema, executeWithSchema, formatCost, gateway, generateId, generatePostgresSchemaSQL, getAuthClientOptions, getDefaultPricingProvider, getMigrations, guardrailConfigsSchema, llmRequestsSchema, llmopsConfigSchema, logger, matchType, microDollarsToDollars, parsePartialTableData, parseTableData, playgroundColumnSchema, playgroundResultsSchema, playgroundRunsSchema, playgroundsSchema, providerConfigsSchema, providerGuardrailOverridesSchema, runAutoMigrations, runSchemaSQL, schemas, targetingRulesSchema, validateLLMOpsConfig, validatePartialTableData, validateTableData, variantJsonDataSchema, variantVersionsSchema, variantsSchema, workspaceSettingsSchema };
@@ -1,4 +1,4 @@
1
- const require_db = require('./db-B9jJgYNw.cjs');
1
+ const require_db = require('./db-C4vSSIoo.cjs');
2
2
  let kysely_neon = require("kysely-neon");
3
3
  require("@neondatabase/serverless");
4
4
 
@@ -1,3 +1,3 @@
1
- const require_neon_dialect = require('./neon-dialect-BBWePgOv.cjs');
1
+ const require_neon_dialect = require('./neon-dialect-COb-W-YR.cjs');
2
2
 
3
3
  exports.createNeonDialect = require_neon_dialect.createNeonDialect;
@@ -1,4 +1,4 @@
1
- const require_db = require('./db-B9jJgYNw.cjs');
1
+ const require_db = require('./db-C4vSSIoo.cjs');
2
2
  let kysely = require("kysely");
3
3
 
4
4
  //#region src/db/node-sqlite-dialect.ts
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@llmops/core",
3
- "version": "0.4.8-beta.4",
3
+ "version": "0.4.8-beta.6",
4
4
  "description": "Core LLMOps functionality and utilities",
5
5
  "type": "module",
6
6
  "license": "Apache-2.0",
@@ -55,7 +55,7 @@
55
55
  "kysely": "^0.28.8",
56
56
  "kysely-neon": "^2.0.2",
57
57
  "pino": "^10.1.0",
58
- "@llmops/gateway": "^0.4.8-beta.4"
58
+ "@llmops/gateway": "^0.4.8-beta.6"
59
59
  },
60
60
  "devDependencies": {
61
61
  "@types/json-logic-js": "^2.0.8",
@@ -65,6 +65,7 @@
65
65
  "build": "tsdown",
66
66
  "clean": "rm -rf dist",
67
67
  "dev": "tsdown --watch",
68
+ "generate:schema": "tsx scripts/generate-schema-sql.ts",
68
69
  "test": "vitest",
69
70
  "typecheck": "tsc --noEmit"
70
71
  }