@inkeep/agents-core 0.41.2 → 0.43.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/api-client/base-client.d.ts +87 -8
- package/dist/api-client/base-client.js +174 -1
- package/dist/api-client/eval-api-client.d.ts +47 -0
- package/dist/api-client/eval-api-client.js +65 -0
- package/dist/api-client/index.d.ts +4 -0
- package/dist/api-client/index.js +5 -0
- package/dist/api-client/manage-api-client.d.ts +34 -0
- package/dist/api-client/manage-api-client.js +104 -0
- package/dist/auth/auth.d.ts +86 -20
- package/dist/auth/auth.js +60 -2
- package/dist/auth/authz/client.d.ts +87 -0
- package/dist/auth/authz/client.js +196 -0
- package/dist/auth/authz/config.d.ts +103 -0
- package/dist/auth/authz/config.js +93 -0
- package/dist/auth/authz/index.d.ts +5 -0
- package/dist/auth/authz/index.js +6 -0
- package/dist/auth/authz/permissions.d.ts +53 -0
- package/dist/auth/authz/permissions.js +83 -0
- package/dist/auth/authz/sync.d.ts +106 -0
- package/dist/auth/authz/sync.js +321 -0
- package/dist/auth/permissions.d.ts +13 -13
- package/dist/auth/permissions.js +2 -181
- package/dist/client-exports.d.ts +9 -3
- package/dist/client-exports.js +4 -2
- package/dist/constants/context-breakdown.d.ts +61 -0
- package/dist/constants/context-breakdown.js +124 -0
- package/dist/constants/execution-limits-shared/defaults.d.ts +1 -1
- package/dist/constants/execution-limits-shared/defaults.js +1 -1
- package/dist/constants/execution-limits-shared/index.d.ts +1 -1
- package/dist/constants/otel-attributes.d.ts +4 -0
- package/dist/constants/otel-attributes.js +4 -0
- package/dist/context/ContextConfig.d.ts +2 -2
- package/dist/context/ContextConfig.js +3 -3
- package/dist/context/TemplateEngine.d.ts +0 -6
- package/dist/context/TemplateEngine.js +4 -19
- package/dist/context/index.d.ts +1 -5
- package/dist/context/index.js +1 -5
- package/dist/credential-stores/keychain-store.d.ts +20 -8
- package/dist/credential-stores/keychain-store.js +107 -43
- package/dist/credential-stuffer/CredentialStuffer.d.ts +1 -1
- package/dist/data-access/index.d.ts +34 -26
- package/dist/data-access/index.js +34 -26
- package/dist/data-access/manage/agentFull.d.ts +36 -0
- package/dist/data-access/{agentFull.js → manage/agentFull.js} +209 -7
- package/dist/data-access/{agents.d.ts → manage/agents.d.ts} +64 -63
- package/dist/data-access/{agents.js → manage/agents.js} +80 -27
- package/dist/data-access/{artifactComponents.d.ts → manage/artifactComponents.d.ts} +33 -33
- package/dist/data-access/{artifactComponents.js → manage/artifactComponents.js} +5 -5
- package/dist/data-access/{contextConfigs.d.ts → manage/contextConfigs.d.ts} +26 -26
- package/dist/data-access/{contextConfigs.js → manage/contextConfigs.js} +3 -3
- package/dist/data-access/{credentialReferences.d.ts → manage/credentialReferences.d.ts} +17 -17
- package/dist/data-access/{credentialReferences.js → manage/credentialReferences.js} +2 -2
- package/dist/data-access/{dataComponents.d.ts → manage/dataComponents.d.ts} +26 -26
- package/dist/data-access/{dataComponents.js → manage/dataComponents.js} +7 -7
- package/dist/data-access/manage/evalConfig.d.ts +221 -0
- package/dist/data-access/manage/evalConfig.js +275 -0
- package/dist/data-access/{externalAgents.d.ts → manage/externalAgents.d.ts} +16 -16
- package/dist/data-access/{externalAgents.js → manage/externalAgents.js} +2 -2
- package/dist/data-access/manage/functionTools.d.ts +242 -0
- package/dist/data-access/{functionTools.js → manage/functionTools.js} +124 -30
- package/dist/data-access/{functions.d.ts → manage/functions.d.ts} +9 -9
- package/dist/data-access/{functions.js → manage/functions.js} +3 -3
- package/dist/data-access/manage/projectFull.d.ts +38 -0
- package/dist/data-access/{projectFull.js → manage/projectFull.js} +64 -65
- package/dist/data-access/manage/projectLifecycle.d.ts +119 -0
- package/dist/data-access/manage/projectLifecycle.js +234 -0
- package/dist/data-access/manage/projects.d.ts +75 -0
- package/dist/data-access/{projects.js → manage/projects.js} +15 -16
- package/dist/data-access/{subAgentExternalAgentRelations.d.ts → manage/subAgentExternalAgentRelations.d.ts} +43 -43
- package/dist/data-access/{subAgentExternalAgentRelations.js → manage/subAgentExternalAgentRelations.js} +2 -2
- package/dist/data-access/{subAgentRelations.d.ts → manage/subAgentRelations.d.ts} +65 -65
- package/dist/data-access/{subAgentRelations.js → manage/subAgentRelations.js} +3 -3
- package/dist/data-access/{subAgentTeamAgentRelations.d.ts → manage/subAgentTeamAgentRelations.d.ts} +43 -43
- package/dist/data-access/{subAgentTeamAgentRelations.js → manage/subAgentTeamAgentRelations.js} +2 -2
- package/dist/data-access/{subAgents.d.ts → manage/subAgents.d.ts} +28 -28
- package/dist/data-access/{subAgents.js → manage/subAgents.js} +4 -4
- package/dist/data-access/{tools.d.ts → manage/tools.d.ts} +65 -52
- package/dist/data-access/{tools.js → manage/tools.js} +109 -64
- package/dist/data-access/manage/triggers.d.ts +106 -0
- package/dist/data-access/manage/triggers.js +81 -0
- package/dist/data-access/{apiKeys.d.ts → runtime/apiKeys.d.ts} +37 -37
- package/dist/data-access/{apiKeys.js → runtime/apiKeys.js} +3 -3
- package/dist/data-access/runtime/cascade-delete.d.ts +77 -0
- package/dist/data-access/runtime/cascade-delete.js +111 -0
- package/dist/data-access/{contextCache.d.ts → runtime/contextCache.d.ts} +13 -13
- package/dist/data-access/{contextCache.js → runtime/contextCache.js} +5 -5
- package/dist/data-access/{conversations.d.ts → runtime/conversations.d.ts} +80 -31
- package/dist/data-access/{conversations.js → runtime/conversations.js} +13 -7
- package/dist/data-access/runtime/evalRuns.d.ts +120 -0
- package/dist/data-access/runtime/evalRuns.js +168 -0
- package/dist/data-access/{ledgerArtifacts.d.ts → runtime/ledgerArtifacts.d.ts} +13 -13
- package/dist/data-access/{ledgerArtifacts.js → runtime/ledgerArtifacts.js} +3 -3
- package/dist/data-access/{messages.d.ts → runtime/messages.d.ts} +24 -24
- package/dist/data-access/{messages.js → runtime/messages.js} +2 -2
- package/dist/data-access/{organizations.d.ts → runtime/organizations.d.ts} +16 -7
- package/dist/data-access/{organizations.js → runtime/organizations.js} +16 -4
- package/dist/data-access/runtime/projects.d.ts +62 -0
- package/dist/data-access/runtime/projects.js +90 -0
- package/dist/data-access/runtime/tasks.d.ts +55 -0
- package/dist/data-access/{tasks.js → runtime/tasks.js} +2 -2
- package/dist/data-access/runtime/triggerInvocations.d.ts +62 -0
- package/dist/data-access/runtime/triggerInvocations.js +54 -0
- package/dist/data-access/runtime/users.d.ts +19 -0
- package/dist/data-access/{users.js → runtime/users.js} +2 -2
- package/dist/data-access/validation.d.ts +4 -4
- package/dist/data-access/validation.js +1 -1
- package/dist/db/clean.d.ts +8 -4
- package/dist/db/clean.js +14 -105
- package/dist/db/delete.d.ts +1 -1
- package/dist/db/delete.js +7 -10
- package/dist/db/manage/dolt-cleanup.d.ts +51 -0
- package/dist/db/manage/dolt-cleanup.js +132 -0
- package/dist/db/manage/manage-client.d.ts +26 -0
- package/dist/db/manage/manage-client.js +68 -0
- package/dist/db/{schema.d.ts → manage/manage-schema.d.ts} +1257 -969
- package/dist/db/{schema.js → manage/manage-schema.js} +436 -334
- package/dist/db/manage/test-manage-client.d.ts +27 -0
- package/dist/db/manage/test-manage-client.js +68 -0
- package/dist/db/runtime/runtime-client.d.ts +20 -0
- package/dist/db/runtime/runtime-client.js +30 -0
- package/dist/db/runtime/runtime-schema.d.ts +2834 -0
- package/dist/db/runtime/runtime-schema.js +483 -0
- package/dist/db/runtime/test-runtime-client.d.ts +27 -0
- package/dist/db/{test-client.js → runtime/test-runtime-client.js} +11 -25
- package/dist/db/utils.d.ts +6 -0
- package/dist/db/utils.js +42 -0
- package/dist/dolt/branch.d.ts +62 -0
- package/dist/dolt/branch.js +82 -0
- package/dist/dolt/branches-api.d.ts +108 -0
- package/dist/dolt/branches-api.js +162 -0
- package/dist/dolt/commit.d.ts +94 -0
- package/dist/dolt/commit.js +103 -0
- package/dist/dolt/diff.d.ts +27 -0
- package/dist/dolt/diff.js +21 -0
- package/dist/dolt/index.d.ts +10 -0
- package/dist/dolt/index.js +11 -0
- package/dist/dolt/merge.d.ts +63 -0
- package/dist/dolt/merge.js +81 -0
- package/dist/dolt/migrate-all-branches.d.ts +4 -0
- package/dist/dolt/migrate-all-branches.js +83 -0
- package/dist/dolt/migrate-dolt.d.ts +1 -0
- package/dist/dolt/migrate-dolt.js +25 -0
- package/dist/dolt/ref-helpers.d.ts +19 -0
- package/dist/dolt/ref-helpers.js +65 -0
- package/dist/dolt/ref-middleware.d.ts +82 -0
- package/dist/dolt/ref-middleware.js +217 -0
- package/dist/dolt/ref-scope.d.ts +101 -0
- package/dist/dolt/ref-scope.js +231 -0
- package/dist/dolt/schema-sync.d.ts +135 -0
- package/dist/dolt/schema-sync.js +255 -0
- package/dist/env.d.ts +6 -4
- package/dist/env.js +3 -2
- package/dist/index.d.ts +73 -46
- package/dist/index.js +76 -49
- package/dist/types/@napi-rs__keyring/index.d.ts +14 -0
- package/dist/types/entities.d.ts +81 -2
- package/dist/types/index.d.ts +3 -3
- package/dist/types/utility.d.ts +46 -5
- package/dist/types/utility.js +2 -1
- package/dist/utils/JsonTransformer.d.ts +42 -0
- package/dist/utils/JsonTransformer.js +103 -0
- package/dist/utils/apiKeys.d.ts +5 -1
- package/dist/utils/apiKeys.js +11 -1
- package/dist/utils/colors.d.ts +34 -0
- package/dist/utils/colors.js +49 -0
- package/dist/utils/credential-store-utils.d.ts +1 -1
- package/dist/utils/format-messages.d.ts +1 -1
- package/dist/utils/index.d.ts +8 -4
- package/dist/utils/index.js +8 -4
- package/dist/utils/internal-service-auth.d.ts +79 -0
- package/dist/utils/internal-service-auth.js +140 -0
- package/dist/utils/jmespath-utils.d.ts +152 -0
- package/dist/utils/jmespath-utils.js +213 -0
- package/dist/utils/jwt-helpers.d.ts +56 -0
- package/dist/utils/jwt-helpers.js +90 -0
- package/dist/utils/mcp-client.d.ts +1 -1
- package/dist/utils/mcp-client.js +1 -1
- package/dist/utils/service-token-auth.d.ts +9 -27
- package/dist/utils/service-token-auth.js +48 -96
- package/dist/utils/signature-validation.d.ts +2 -0
- package/dist/utils/signature-validation.js +3 -0
- package/dist/utils/template-interpolation.d.ts +22 -0
- package/dist/utils/template-interpolation.js +62 -0
- package/dist/utils/third-party-mcp-servers/composio-client.d.ts +13 -1
- package/dist/utils/third-party-mcp-servers/composio-client.js +47 -29
- package/dist/utils/third-party-mcp-servers/index.d.ts +2 -2
- package/dist/utils/third-party-mcp-servers/index.js +2 -2
- package/dist/utils/trigger-auth.d.ts +85 -0
- package/dist/utils/trigger-auth.js +233 -0
- package/dist/validation/agentFull.js +2 -4
- package/dist/validation/dolt-schemas.d.ts +49 -0
- package/dist/validation/dolt-schemas.js +44 -0
- package/dist/validation/drizzle-schema-helpers.d.ts +4 -26
- package/dist/validation/drizzle-schema-helpers.js +5 -151
- package/dist/validation/index.d.ts +5 -4
- package/dist/validation/index.js +4 -3
- package/dist/validation/render-validation.js +19 -0
- package/dist/validation/schemas.d.ts +18223 -5148
- package/dist/validation/schemas.js +559 -12
- package/dist/validation/stream-event-schemas.d.ts +96 -1
- package/dist/validation/stream-event-schemas.js +67 -2
- package/drizzle/manage/0000_tearful_rhodey.sql +414 -0
- package/drizzle/manage/0001_broken_wendell_vaughn.sql +19 -0
- package/drizzle/manage/0002_bent_sunfire.sql +1 -0
- package/drizzle/manage/0003_tiny_captain_universe.sql +8 -0
- package/drizzle/manage/0004_curious_phil_sheldon.sql +2 -0
- package/drizzle/manage/0005_silent_shatterstar.sql +53 -0
- package/drizzle/manage/meta/0000_snapshot.json +2987 -0
- package/drizzle/manage/meta/0001_snapshot.json +3115 -0
- package/drizzle/manage/meta/0002_snapshot.json +3115 -0
- package/drizzle/manage/meta/0003_snapshot.json +3134 -0
- package/drizzle/manage/meta/0004_snapshot.json +3141 -0
- package/drizzle/manage/meta/0005_snapshot.json +3141 -0
- package/drizzle/manage/meta/_journal.json +48 -0
- package/drizzle/runtime/0008_silly_preak.sql +127 -0
- package/drizzle/runtime/0009_freezing_leo.sql +17 -0
- package/drizzle/runtime/meta/0008_snapshot.json +2263 -0
- package/drizzle/runtime/meta/0009_snapshot.json +2397 -0
- package/drizzle/{meta → runtime/meta}/_journal.json +14 -0
- package/package.json +56 -18
- package/spicedb/schema.zed +114 -0
- package/dist/context/ContextFetcher.d.ts +0 -73
- package/dist/context/ContextFetcher.js +0 -291
- package/dist/context/ContextResolver.d.ts +0 -60
- package/dist/context/ContextResolver.js +0 -278
- package/dist/context/context.d.ts +0 -27
- package/dist/context/context.js +0 -128
- package/dist/context/contextCache.d.ts +0 -58
- package/dist/context/contextCache.js +0 -177
- package/dist/data-access/agentFull.d.ts +0 -33
- package/dist/data-access/functionTools.d.ts +0 -169
- package/dist/data-access/projectFull.d.ts +0 -32
- package/dist/data-access/projects.d.ts +0 -71
- package/dist/data-access/tasks.d.ts +0 -45
- package/dist/data-access/users.d.ts +0 -19
- package/dist/db/client.d.ts +0 -20
- package/dist/db/client.js +0 -28
- package/dist/db/test-client.d.ts +0 -31
- package/dist/middleware/contextValidation.d.ts +0 -46
- package/dist/middleware/contextValidation.js +0 -280
- package/dist/middleware/index.d.ts +0 -2
- package/dist/middleware/index.js +0 -3
- package/dist/utils/execution.d.ts +0 -22
- package/dist/utils/execution.js +0 -25
- /package/drizzle/{0000_exotic_mysterio.sql → runtime/0000_exotic_mysterio.sql} +0 -0
- /package/drizzle/{0001_calm_sheva_callister.sql → runtime/0001_calm_sheva_callister.sql} +0 -0
- /package/drizzle/{0002_puzzling_goblin_queen.sql → runtime/0002_puzzling_goblin_queen.sql} +0 -0
- /package/drizzle/{0003_sweet_human_robot.sql → runtime/0003_sweet_human_robot.sql} +0 -0
- /package/drizzle/{0004_cuddly_shooting_star.sql → runtime/0004_cuddly_shooting_star.sql} +0 -0
- /package/drizzle/{0005_reflective_starfox.sql → runtime/0005_reflective_starfox.sql} +0 -0
- /package/drizzle/{0006_stale_thaddeus_ross.sql → runtime/0006_stale_thaddeus_ross.sql} +0 -0
- /package/drizzle/{0007_slim_karma.sql → runtime/0007_slim_karma.sql} +0 -0
- /package/drizzle/{meta → runtime/meta}/0000_snapshot.json +0 -0
- /package/drizzle/{meta → runtime/meta}/0001_snapshot.json +0 -0
- /package/drizzle/{meta → runtime/meta}/0003_snapshot.json +0 -0
- /package/drizzle/{meta → runtime/meta}/0005_snapshot.json +0 -0
- /package/drizzle/{meta → runtime/meta}/0006_snapshot.json +0 -0
- /package/drizzle/{meta → runtime/meta}/0007_snapshot.json +0 -0
|
@@ -1,46 +1,39 @@
|
|
|
1
|
-
import { __exportAll } from "
|
|
2
|
-
import { account, deviceCode, invitation, member, organization, session, ssoProvider, user, verification } from "../auth/auth-schema.js";
|
|
1
|
+
import { __exportAll } from "../../_virtual/rolldown_runtime.js";
|
|
3
2
|
import { relations } from "drizzle-orm";
|
|
4
|
-
import {
|
|
3
|
+
import { boolean, doublePrecision, foreignKey, jsonb, pgTable, primaryKey, text, timestamp, unique, varchar } from "drizzle-orm/pg-core";
|
|
5
4
|
|
|
6
|
-
//#region src/db/schema.ts
|
|
7
|
-
var
|
|
8
|
-
account: () => account,
|
|
5
|
+
//#region src/db/manage/manage-schema.ts
|
|
6
|
+
var manage_schema_exports = /* @__PURE__ */ __exportAll({
|
|
9
7
|
agentRelations: () => agentRelations,
|
|
10
8
|
agentToolRelationsRelations: () => agentToolRelationsRelations,
|
|
11
9
|
agents: () => agents,
|
|
12
|
-
apiKeys: () => apiKeys,
|
|
13
|
-
apiKeysRelations: () => apiKeysRelations,
|
|
14
10
|
artifactComponents: () => artifactComponents,
|
|
15
11
|
artifactComponentsRelations: () => artifactComponentsRelations,
|
|
16
|
-
contextCache: () => contextCache,
|
|
17
|
-
contextCacheRelations: () => contextCacheRelations,
|
|
18
12
|
contextConfigs: () => contextConfigs,
|
|
19
13
|
contextConfigsRelations: () => contextConfigsRelations,
|
|
20
|
-
conversations: () => conversations,
|
|
21
|
-
conversationsRelations: () => conversationsRelations,
|
|
22
14
|
credentialReferences: () => credentialReferences,
|
|
23
15
|
credentialReferencesRelations: () => credentialReferencesRelations,
|
|
24
16
|
dataComponents: () => dataComponents,
|
|
25
17
|
dataComponentsRelations: () => dataComponentsRelations,
|
|
26
|
-
|
|
18
|
+
dataset: () => dataset,
|
|
19
|
+
datasetItem: () => datasetItem,
|
|
20
|
+
datasetRunConfig: () => datasetRunConfig,
|
|
21
|
+
datasetRunConfigAgentRelations: () => datasetRunConfigAgentRelations,
|
|
22
|
+
evaluationJobConfig: () => evaluationJobConfig,
|
|
23
|
+
evaluationJobConfigEvaluatorRelations: () => evaluationJobConfigEvaluatorRelations,
|
|
24
|
+
evaluationRunConfig: () => evaluationRunConfig,
|
|
25
|
+
evaluationRunConfigEvaluationSuiteConfigRelations: () => evaluationRunConfigEvaluationSuiteConfigRelations,
|
|
26
|
+
evaluationSuiteConfig: () => evaluationSuiteConfig,
|
|
27
|
+
evaluationSuiteConfigEvaluatorRelations: () => evaluationSuiteConfigEvaluatorRelations,
|
|
28
|
+
evaluator: () => evaluator,
|
|
27
29
|
externalAgents: () => externalAgents,
|
|
28
30
|
externalAgentsRelations: () => externalAgentsRelations,
|
|
29
31
|
functionTools: () => functionTools,
|
|
30
32
|
functionToolsRelations: () => functionToolsRelations,
|
|
31
33
|
functions: () => functions,
|
|
32
34
|
functionsRelations: () => functionsRelations,
|
|
33
|
-
invitation: () => invitation,
|
|
34
|
-
ledgerArtifacts: () => ledgerArtifacts,
|
|
35
|
-
ledgerArtifactsRelations: () => ledgerArtifactsRelations,
|
|
36
|
-
member: () => member,
|
|
37
|
-
messages: () => messages,
|
|
38
|
-
messagesRelations: () => messagesRelations,
|
|
39
|
-
organization: () => organization,
|
|
40
35
|
projects: () => projects,
|
|
41
36
|
projectsRelations: () => projectsRelations,
|
|
42
|
-
session: () => session,
|
|
43
|
-
ssoProvider: () => ssoProvider,
|
|
44
37
|
subAgentArtifactComponents: () => subAgentArtifactComponents,
|
|
45
38
|
subAgentArtifactComponentsRelations: () => subAgentArtifactComponentsRelations,
|
|
46
39
|
subAgentDataComponents: () => subAgentDataComponents,
|
|
@@ -56,14 +49,9 @@ var schema_exports = /* @__PURE__ */ __exportAll({
|
|
|
56
49
|
subAgentToolRelations: () => subAgentToolRelations,
|
|
57
50
|
subAgents: () => subAgents,
|
|
58
51
|
subAgentsRelations: () => subAgentsRelations,
|
|
59
|
-
taskRelations: () => taskRelations,
|
|
60
|
-
taskRelationsRelations: () => taskRelationsRelations,
|
|
61
|
-
tasks: () => tasks,
|
|
62
|
-
tasksRelations: () => tasksRelations,
|
|
63
52
|
tools: () => tools,
|
|
64
53
|
toolsRelations: () => toolsRelations,
|
|
65
|
-
|
|
66
|
-
verification: () => verification
|
|
54
|
+
triggers: () => triggers
|
|
67
55
|
});
|
|
68
56
|
const tenantScoped = {
|
|
69
57
|
tenantId: varchar("tenant_id", { length: 256 }).notNull(),
|
|
@@ -95,11 +83,7 @@ const projects = pgTable("projects", {
|
|
|
95
83
|
models: jsonb("models").$type(),
|
|
96
84
|
stopWhen: jsonb("stop_when").$type(),
|
|
97
85
|
...timestamps
|
|
98
|
-
}, (table) => [primaryKey({ columns: [table.tenantId, table.id] })
|
|
99
|
-
columns: [table.tenantId],
|
|
100
|
-
foreignColumns: [organization.id],
|
|
101
|
-
name: "projects_tenant_id_fk"
|
|
102
|
-
}).onDelete("cascade")]);
|
|
86
|
+
}, (table) => [primaryKey({ columns: [table.tenantId, table.id] })]);
|
|
103
87
|
const agents = pgTable("agent", {
|
|
104
88
|
...projectScoped,
|
|
105
89
|
name: varchar("name", { length: 256 }).notNull(),
|
|
@@ -143,29 +127,42 @@ const contextConfigs = pgTable("context_configs", {
|
|
|
143
127
|
],
|
|
144
128
|
name: "context_configs_agent_fk"
|
|
145
129
|
}).onDelete("cascade")]);
|
|
146
|
-
const
|
|
147
|
-
...
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
130
|
+
const triggers = pgTable("triggers", {
|
|
131
|
+
...agentScoped,
|
|
132
|
+
...uiProperties,
|
|
133
|
+
enabled: boolean("enabled").notNull().default(true),
|
|
134
|
+
inputSchema: jsonb("input_schema").$type(),
|
|
135
|
+
outputTransform: jsonb("output_transform").$type(),
|
|
136
|
+
messageTemplate: text("message_template"),
|
|
137
|
+
authentication: jsonb("authentication").$type(),
|
|
138
|
+
signingSecretCredentialReferenceId: varchar("signing_secret_credential_reference_id", { length: 256 }),
|
|
139
|
+
signatureVerification: jsonb("signature_verification").$type().default(null),
|
|
156
140
|
...timestamps
|
|
157
141
|
}, (table) => [
|
|
158
142
|
primaryKey({ columns: [
|
|
159
143
|
table.tenantId,
|
|
160
144
|
table.projectId,
|
|
145
|
+
table.agentId,
|
|
161
146
|
table.id
|
|
162
147
|
] }),
|
|
163
148
|
foreignKey({
|
|
164
|
-
columns: [
|
|
165
|
-
|
|
166
|
-
|
|
149
|
+
columns: [
|
|
150
|
+
table.tenantId,
|
|
151
|
+
table.projectId,
|
|
152
|
+
table.agentId
|
|
153
|
+
],
|
|
154
|
+
foreignColumns: [
|
|
155
|
+
agents.tenantId,
|
|
156
|
+
agents.projectId,
|
|
157
|
+
agents.id
|
|
158
|
+
],
|
|
159
|
+
name: "triggers_agent_fk"
|
|
167
160
|
}).onDelete("cascade"),
|
|
168
|
-
|
|
161
|
+
foreignKey({
|
|
162
|
+
columns: [table.signingSecretCredentialReferenceId],
|
|
163
|
+
foreignColumns: [credentialReferences.id],
|
|
164
|
+
name: "triggers_credential_reference_fk"
|
|
165
|
+
}).onDelete("set null")
|
|
169
166
|
]);
|
|
170
167
|
const subAgents = pgTable("sub_agents", {
|
|
171
168
|
...agentScoped,
|
|
@@ -246,46 +243,6 @@ const externalAgents = pgTable("external_agents", {
|
|
|
246
243
|
name: "external_agents_credential_reference_fk"
|
|
247
244
|
}).onDelete("set null")
|
|
248
245
|
]);
|
|
249
|
-
const tasks = pgTable("tasks", {
|
|
250
|
-
...subAgentScoped,
|
|
251
|
-
contextId: varchar("context_id", { length: 256 }).notNull(),
|
|
252
|
-
status: varchar("status", { length: 256 }).notNull(),
|
|
253
|
-
metadata: jsonb("metadata").$type(),
|
|
254
|
-
...timestamps
|
|
255
|
-
}, (table) => [primaryKey({ columns: [
|
|
256
|
-
table.tenantId,
|
|
257
|
-
table.projectId,
|
|
258
|
-
table.id
|
|
259
|
-
] }), foreignKey({
|
|
260
|
-
columns: [
|
|
261
|
-
table.tenantId,
|
|
262
|
-
table.projectId,
|
|
263
|
-
table.agentId,
|
|
264
|
-
table.subAgentId
|
|
265
|
-
],
|
|
266
|
-
foreignColumns: [
|
|
267
|
-
subAgents.tenantId,
|
|
268
|
-
subAgents.projectId,
|
|
269
|
-
subAgents.agentId,
|
|
270
|
-
subAgents.id
|
|
271
|
-
],
|
|
272
|
-
name: "tasks_sub_agent_fk"
|
|
273
|
-
}).onDelete("cascade")]);
|
|
274
|
-
const taskRelations = pgTable("task_relations", {
|
|
275
|
-
...projectScoped,
|
|
276
|
-
parentTaskId: varchar("parent_task_id", { length: 256 }).notNull(),
|
|
277
|
-
childTaskId: varchar("child_task_id", { length: 256 }).notNull(),
|
|
278
|
-
relationType: varchar("relation_type", { length: 256 }).default("parent_child"),
|
|
279
|
-
...timestamps
|
|
280
|
-
}, (table) => [primaryKey({ columns: [
|
|
281
|
-
table.tenantId,
|
|
282
|
-
table.projectId,
|
|
283
|
-
table.id
|
|
284
|
-
] }), foreignKey({
|
|
285
|
-
columns: [table.tenantId, table.projectId],
|
|
286
|
-
foreignColumns: [projects.tenantId, projects.id],
|
|
287
|
-
name: "task_relations_project_fk"
|
|
288
|
-
}).onDelete("cascade")]);
|
|
289
246
|
const dataComponents = pgTable("data_components", {
|
|
290
247
|
...projectScoped,
|
|
291
248
|
...uiProperties,
|
|
@@ -360,13 +317,16 @@ const subAgentArtifactComponents = pgTable("sub_agent_artifact_components", {
|
|
|
360
317
|
artifactComponentId: varchar("artifact_component_id", { length: 256 }).notNull(),
|
|
361
318
|
createdAt: timestamp("created_at", { mode: "string" }).notNull().defaultNow()
|
|
362
319
|
}, (table) => [
|
|
363
|
-
primaryKey({
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
320
|
+
primaryKey({
|
|
321
|
+
columns: [
|
|
322
|
+
table.tenantId,
|
|
323
|
+
table.projectId,
|
|
324
|
+
table.agentId,
|
|
325
|
+
table.subAgentId,
|
|
326
|
+
table.id
|
|
327
|
+
],
|
|
328
|
+
name: "sub_agent_artifact_components_pk"
|
|
329
|
+
}),
|
|
370
330
|
foreignKey({
|
|
371
331
|
columns: [
|
|
372
332
|
table.tenantId,
|
|
@@ -529,12 +489,15 @@ const subAgentExternalAgentRelations = pgTable("sub_agent_external_agent_relatio
|
|
|
529
489
|
headers: jsonb("headers").$type(),
|
|
530
490
|
...timestamps
|
|
531
491
|
}, (table) => [
|
|
532
|
-
primaryKey({
|
|
533
|
-
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
|
|
537
|
-
|
|
492
|
+
primaryKey({
|
|
493
|
+
columns: [
|
|
494
|
+
table.tenantId,
|
|
495
|
+
table.projectId,
|
|
496
|
+
table.agentId,
|
|
497
|
+
table.id
|
|
498
|
+
],
|
|
499
|
+
name: "sub_agent_external_agent_relations_pk"
|
|
500
|
+
}),
|
|
538
501
|
foreignKey({
|
|
539
502
|
columns: [
|
|
540
503
|
table.tenantId,
|
|
@@ -570,12 +533,15 @@ const subAgentTeamAgentRelations = pgTable("sub_agent_team_agent_relations", {
|
|
|
570
533
|
headers: jsonb("headers").$type(),
|
|
571
534
|
...timestamps
|
|
572
535
|
}, (table) => [
|
|
573
|
-
primaryKey({
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
536
|
+
primaryKey({
|
|
537
|
+
columns: [
|
|
538
|
+
table.tenantId,
|
|
539
|
+
table.projectId,
|
|
540
|
+
table.agentId,
|
|
541
|
+
table.id
|
|
542
|
+
],
|
|
543
|
+
name: "sub_agent_team_agent_relations_pk"
|
|
544
|
+
}),
|
|
579
545
|
foreignKey({
|
|
580
546
|
columns: [
|
|
581
547
|
table.tenantId,
|
|
@@ -608,14 +574,18 @@ const subAgentTeamAgentRelations = pgTable("sub_agent_team_agent_relations", {
|
|
|
608
574
|
const subAgentFunctionToolRelations = pgTable("sub_agent_function_tool_relations", {
|
|
609
575
|
...subAgentScoped,
|
|
610
576
|
functionToolId: varchar("function_tool_id", { length: 256 }).notNull(),
|
|
577
|
+
toolPolicies: jsonb("tool_policies").$type(),
|
|
611
578
|
...timestamps
|
|
612
579
|
}, (table) => [
|
|
613
|
-
primaryKey({
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
|
|
617
|
-
|
|
618
|
-
|
|
580
|
+
primaryKey({
|
|
581
|
+
columns: [
|
|
582
|
+
table.tenantId,
|
|
583
|
+
table.projectId,
|
|
584
|
+
table.agentId,
|
|
585
|
+
table.id
|
|
586
|
+
],
|
|
587
|
+
name: "sub_agent_function_tool_relations_pk"
|
|
588
|
+
}),
|
|
619
589
|
foreignKey({
|
|
620
590
|
columns: [
|
|
621
591
|
table.tenantId,
|
|
@@ -647,13 +617,43 @@ const subAgentFunctionToolRelations = pgTable("sub_agent_function_tool_relations
|
|
|
647
617
|
name: "sub_agent_function_tool_relations_function_tool_fk"
|
|
648
618
|
}).onDelete("cascade")
|
|
649
619
|
]);
|
|
650
|
-
const
|
|
620
|
+
const credentialReferences = pgTable("credential_references", {
|
|
651
621
|
...projectScoped,
|
|
622
|
+
name: varchar("name", { length: 256 }).notNull(),
|
|
623
|
+
type: varchar("type", { length: 256 }).notNull(),
|
|
624
|
+
credentialStoreId: varchar("credential_store_id", { length: 256 }).notNull(),
|
|
625
|
+
retrievalParams: jsonb("retrieval_params").$type(),
|
|
626
|
+
toolId: varchar("tool_id", { length: 256 }),
|
|
652
627
|
userId: varchar("user_id", { length: 256 }),
|
|
653
|
-
|
|
654
|
-
|
|
655
|
-
|
|
656
|
-
|
|
628
|
+
createdBy: varchar("created_by", { length: 256 }),
|
|
629
|
+
...timestamps
|
|
630
|
+
}, (t) => [
|
|
631
|
+
primaryKey({ columns: [
|
|
632
|
+
t.tenantId,
|
|
633
|
+
t.projectId,
|
|
634
|
+
t.id
|
|
635
|
+
] }),
|
|
636
|
+
foreignKey({
|
|
637
|
+
columns: [t.tenantId, t.projectId],
|
|
638
|
+
foreignColumns: [projects.tenantId, projects.id],
|
|
639
|
+
name: "credential_references_project_fk"
|
|
640
|
+
}).onDelete("cascade"),
|
|
641
|
+
unique("credential_references_id_unique").on(t.id),
|
|
642
|
+
unique("credential_references_tool_user_unique").on(t.toolId, t.userId)
|
|
643
|
+
]);
|
|
644
|
+
/**
|
|
645
|
+
* A collection of test cases/items used for evaluation. Contains dataset items
|
|
646
|
+
* that define input/output pairs for testing agents. Used for batch evaluation
|
|
647
|
+
* runs where conversations are created from dataset items. Each datasetRun
|
|
648
|
+
* specifies which agent to use when executing the dataset.
|
|
649
|
+
*
|
|
650
|
+
* one to many relationship with datasetItem
|
|
651
|
+
*
|
|
652
|
+
* Includes: name and timestamps
|
|
653
|
+
*/
|
|
654
|
+
const dataset = pgTable("dataset", {
|
|
655
|
+
...projectScoped,
|
|
656
|
+
name: varchar("name", { length: 256 }).notNull(),
|
|
657
657
|
...timestamps
|
|
658
658
|
}, (table) => [primaryKey({ columns: [
|
|
659
659
|
table.tenantId,
|
|
@@ -662,26 +662,50 @@ const conversations = pgTable("conversations", {
|
|
|
662
662
|
] }), foreignKey({
|
|
663
663
|
columns: [table.tenantId, table.projectId],
|
|
664
664
|
foreignColumns: [projects.tenantId, projects.id],
|
|
665
|
-
name: "
|
|
665
|
+
name: "dataset_project_fk"
|
|
666
|
+
}).onDelete("cascade")]);
|
|
667
|
+
/**
|
|
668
|
+
*
|
|
669
|
+
* Individual test case within a dataset. Contains the input messages to send
|
|
670
|
+
* to an agent and optionally expected output or simulation configuration.
|
|
671
|
+
* When a dataset run executes, it creates conversations from these items.
|
|
672
|
+
*
|
|
673
|
+
*
|
|
674
|
+
* Includes: input (messages array with optional headers), expected output (array of messages),
|
|
675
|
+
* simulation agent (stopWhen conditions, prompt/modelConfig), and timestamps
|
|
676
|
+
* simulationAgent is for when a user wants to create a multi-turn simulation aka a simulating agent is creating input messages based on a persona
|
|
677
|
+
*/
|
|
678
|
+
const datasetItem = pgTable("dataset_item", {
|
|
679
|
+
...projectScoped,
|
|
680
|
+
datasetId: varchar("dataset_id", { length: 256 }).notNull(),
|
|
681
|
+
input: jsonb("input").$type().notNull(),
|
|
682
|
+
expectedOutput: jsonb("expected_output").$type(),
|
|
683
|
+
simulationAgent: jsonb("simulation_agent").$type(),
|
|
684
|
+
...timestamps
|
|
685
|
+
}, (table) => [primaryKey({ columns: [
|
|
686
|
+
table.tenantId,
|
|
687
|
+
table.projectId,
|
|
688
|
+
table.id
|
|
689
|
+
] }), foreignKey({
|
|
690
|
+
columns: [
|
|
691
|
+
table.tenantId,
|
|
692
|
+
table.projectId,
|
|
693
|
+
table.datasetId
|
|
694
|
+
],
|
|
695
|
+
foreignColumns: [
|
|
696
|
+
dataset.tenantId,
|
|
697
|
+
dataset.projectId,
|
|
698
|
+
dataset.id
|
|
699
|
+
],
|
|
700
|
+
name: "dataset_item_dataset_fk"
|
|
666
701
|
}).onDelete("cascade")]);
|
|
667
|
-
const
|
|
702
|
+
const evaluator = pgTable("evaluator", {
|
|
668
703
|
...projectScoped,
|
|
669
|
-
|
|
670
|
-
|
|
671
|
-
|
|
672
|
-
|
|
673
|
-
|
|
674
|
-
toExternalAgentId: varchar("to_external_sub_agent_id", { length: 256 }),
|
|
675
|
-
fromTeamAgentId: varchar("from_team_agent_id", { length: 256 }),
|
|
676
|
-
toTeamAgentId: varchar("to_team_agent_id", { length: 256 }),
|
|
677
|
-
content: jsonb("content").$type().notNull(),
|
|
678
|
-
visibility: varchar("visibility", { length: 256 }).notNull().default("user-facing"),
|
|
679
|
-
messageType: varchar("message_type", { length: 256 }).notNull().default("chat"),
|
|
680
|
-
taskId: varchar("task_id", { length: 256 }),
|
|
681
|
-
parentMessageId: varchar("parent_message_id", { length: 256 }),
|
|
682
|
-
a2aTaskId: varchar("a2a_task_id", { length: 256 }),
|
|
683
|
-
a2aSessionId: varchar("a2a_session_id", { length: 256 }),
|
|
684
|
-
metadata: jsonb("metadata").$type(),
|
|
704
|
+
...uiProperties,
|
|
705
|
+
prompt: text("prompt").notNull(),
|
|
706
|
+
schema: jsonb("schema").$type().notNull(),
|
|
707
|
+
model: jsonb("model").$type().notNull(),
|
|
708
|
+
passCriteria: jsonb("pass_criteria").$type(),
|
|
685
709
|
...timestamps
|
|
686
710
|
}, (table) => [primaryKey({ columns: [
|
|
687
711
|
table.tenantId,
|
|
@@ -690,116 +714,265 @@ const messages = pgTable("messages", {
|
|
|
690
714
|
] }), foreignKey({
|
|
691
715
|
columns: [table.tenantId, table.projectId],
|
|
692
716
|
foreignColumns: [projects.tenantId, projects.id],
|
|
693
|
-
name: "
|
|
717
|
+
name: "evaluator_project_fk"
|
|
694
718
|
}).onDelete("cascade")]);
|
|
695
|
-
const
|
|
719
|
+
const datasetRunConfig = pgTable("dataset_run_config", {
|
|
696
720
|
...projectScoped,
|
|
697
|
-
|
|
698
|
-
|
|
699
|
-
contextId: varchar("context_id", { length: 256 }).notNull(),
|
|
700
|
-
type: varchar("type", { length: 256 }).notNull().default("source"),
|
|
701
|
-
name: varchar("name", { length: 256 }),
|
|
702
|
-
description: text("description"),
|
|
703
|
-
parts: jsonb("parts").$type(),
|
|
704
|
-
metadata: jsonb("metadata").$type(),
|
|
705
|
-
summary: text("summary"),
|
|
706
|
-
mime: jsonb("mime").$type(),
|
|
707
|
-
visibility: varchar("visibility", { length: 256 }).default("context"),
|
|
708
|
-
allowedAgents: jsonb("allowed_agents").$type(),
|
|
709
|
-
derivedFrom: varchar("derived_from", { length: 256 }),
|
|
721
|
+
...uiProperties,
|
|
722
|
+
datasetId: varchar("dataset_id", { length: 256 }).notNull(),
|
|
710
723
|
...timestamps
|
|
711
724
|
}, (table) => [
|
|
712
725
|
primaryKey({ columns: [
|
|
713
726
|
table.tenantId,
|
|
714
727
|
table.projectId,
|
|
715
|
-
table.id
|
|
716
|
-
table.taskId
|
|
728
|
+
table.id
|
|
717
729
|
] }),
|
|
718
730
|
foreignKey({
|
|
719
731
|
columns: [table.tenantId, table.projectId],
|
|
720
732
|
foreignColumns: [projects.tenantId, projects.id],
|
|
721
|
-
name: "
|
|
733
|
+
name: "dataset_run_config_project_fk"
|
|
722
734
|
}).onDelete("cascade"),
|
|
723
|
-
|
|
724
|
-
|
|
725
|
-
|
|
726
|
-
|
|
735
|
+
foreignKey({
|
|
736
|
+
columns: [
|
|
737
|
+
table.tenantId,
|
|
738
|
+
table.projectId,
|
|
739
|
+
table.datasetId
|
|
740
|
+
],
|
|
741
|
+
foreignColumns: [
|
|
742
|
+
dataset.tenantId,
|
|
743
|
+
dataset.projectId,
|
|
744
|
+
dataset.id
|
|
745
|
+
],
|
|
746
|
+
name: "dataset_run_config_dataset_fk"
|
|
747
|
+
}).onDelete("cascade")
|
|
727
748
|
]);
|
|
728
|
-
|
|
729
|
-
|
|
730
|
-
|
|
731
|
-
|
|
732
|
-
|
|
733
|
-
|
|
734
|
-
|
|
735
|
-
|
|
749
|
+
/**
|
|
750
|
+
* Configuration that defines what to evaluate. Contains filters and evaluators.
|
|
751
|
+
* Example: "Evaluate conversations for agentId X with filters Y"
|
|
752
|
+
*
|
|
753
|
+
* Linked to one or more evaluationRunConfigs (via join table) that define when to run.
|
|
754
|
+
* When triggered, creates an evaluationRun with computed filters based on the criteria.
|
|
755
|
+
*
|
|
756
|
+
* Configuration-level filters:
|
|
757
|
+
* - Filters stored in filters JSONB field
|
|
758
|
+
*
|
|
759
|
+
* many to many relationship with evaluationRunConfig
|
|
760
|
+
*
|
|
761
|
+
* Includes: name, description, filters (JSONB for evaluation criteria),
|
|
762
|
+
* sampleRate for sampling, and timestamps
|
|
763
|
+
*/
|
|
764
|
+
const evaluationSuiteConfig = pgTable("evaluation_suite_config", {
|
|
765
|
+
...projectScoped,
|
|
766
|
+
filters: jsonb("filters").$type(),
|
|
767
|
+
sampleRate: doublePrecision("sample_rate"),
|
|
736
768
|
...timestamps
|
|
737
|
-
}, (
|
|
769
|
+
}, (table) => [primaryKey({ columns: [
|
|
770
|
+
table.tenantId,
|
|
771
|
+
table.projectId,
|
|
772
|
+
table.id
|
|
773
|
+
] }), foreignKey({
|
|
774
|
+
columns: [table.tenantId, table.projectId],
|
|
775
|
+
foreignColumns: [projects.tenantId, projects.id],
|
|
776
|
+
name: "evaluation_suite_config_project_fk"
|
|
777
|
+
}).onDelete("cascade")]);
|
|
778
|
+
/**
|
|
779
|
+
* Links evaluators to evaluation suite configs. Many-to-many relationship that
|
|
780
|
+
* attaches evaluators to an evaluation suite configuration. Each evaluator must
|
|
781
|
+
* have its own model configuration defined.
|
|
782
|
+
*
|
|
783
|
+
* Includes: evaluationSuiteConfigId, evaluatorId, and timestamps
|
|
784
|
+
*/
|
|
785
|
+
const evaluationSuiteConfigEvaluatorRelations = pgTable("evaluation_suite_config_evaluator_relations", {
|
|
786
|
+
...projectScoped,
|
|
787
|
+
evaluationSuiteConfigId: varchar("evaluation_suite_config_id", { length: 256 }).notNull(),
|
|
788
|
+
evaluatorId: varchar("evaluator_id", { length: 256 }).notNull(),
|
|
789
|
+
...timestamps
|
|
790
|
+
}, (table) => [
|
|
791
|
+
primaryKey({
|
|
792
|
+
columns: [
|
|
793
|
+
table.tenantId,
|
|
794
|
+
table.projectId,
|
|
795
|
+
table.id
|
|
796
|
+
],
|
|
797
|
+
name: "eval_suite_cfg_evaluator_rel_pk"
|
|
798
|
+
}),
|
|
738
799
|
foreignKey({
|
|
739
|
-
columns: [
|
|
740
|
-
|
|
741
|
-
|
|
800
|
+
columns: [
|
|
801
|
+
table.tenantId,
|
|
802
|
+
table.projectId,
|
|
803
|
+
table.evaluationSuiteConfigId
|
|
804
|
+
],
|
|
805
|
+
foreignColumns: [
|
|
806
|
+
evaluationSuiteConfig.tenantId,
|
|
807
|
+
evaluationSuiteConfig.projectId,
|
|
808
|
+
evaluationSuiteConfig.id
|
|
809
|
+
],
|
|
810
|
+
name: "eval_suite_cfg_evaluator_rel_suite_cfg_fk"
|
|
742
811
|
}).onDelete("cascade"),
|
|
743
812
|
foreignKey({
|
|
744
|
-
columns: [
|
|
745
|
-
|
|
746
|
-
|
|
747
|
-
|
|
813
|
+
columns: [
|
|
814
|
+
table.tenantId,
|
|
815
|
+
table.projectId,
|
|
816
|
+
table.evaluatorId
|
|
817
|
+
],
|
|
818
|
+
foreignColumns: [
|
|
819
|
+
evaluator.tenantId,
|
|
820
|
+
evaluator.projectId,
|
|
821
|
+
evaluator.id
|
|
822
|
+
],
|
|
823
|
+
name: "eval_suite_cfg_evaluator_rel_evaluator_fk"
|
|
824
|
+
}).onDelete("cascade")
|
|
825
|
+
]);
|
|
826
|
+
/**
|
|
827
|
+
* Links evaluation run configs to evaluation suite configs. Many-to-many relationship that
|
|
828
|
+
* allows one suite config to have multiple run schedules, and one run config to be used
|
|
829
|
+
* by multiple suite configs.
|
|
830
|
+
*
|
|
831
|
+
* Includes: evaluationRunConfigId, evaluationSuiteConfigId, and timestamps
|
|
832
|
+
*/
|
|
833
|
+
const evaluationRunConfigEvaluationSuiteConfigRelations = pgTable("evaluation_run_config_evaluation_suite_config_relations", {
|
|
834
|
+
...projectScoped,
|
|
835
|
+
evaluationRunConfigId: varchar("evaluation_run_config_id", { length: 256 }).notNull(),
|
|
836
|
+
evaluationSuiteConfigId: varchar("evaluation_suite_config_id", { length: 256 }).notNull(),
|
|
837
|
+
...timestamps
|
|
838
|
+
}, (table) => [
|
|
839
|
+
primaryKey({
|
|
840
|
+
columns: [
|
|
841
|
+
table.tenantId,
|
|
842
|
+
table.projectId,
|
|
843
|
+
table.id
|
|
844
|
+
],
|
|
845
|
+
name: "eval_run_cfg_eval_suite_cfg_rel_pk"
|
|
846
|
+
}),
|
|
748
847
|
foreignKey({
|
|
749
848
|
columns: [
|
|
750
|
-
|
|
751
|
-
|
|
752
|
-
|
|
849
|
+
table.tenantId,
|
|
850
|
+
table.projectId,
|
|
851
|
+
table.evaluationRunConfigId
|
|
753
852
|
],
|
|
754
853
|
foreignColumns: [
|
|
755
|
-
|
|
756
|
-
|
|
757
|
-
|
|
854
|
+
evaluationRunConfig.tenantId,
|
|
855
|
+
evaluationRunConfig.projectId,
|
|
856
|
+
evaluationRunConfig.id
|
|
758
857
|
],
|
|
759
|
-
name: "
|
|
858
|
+
name: "eval_run_cfg_eval_suite_rel_run_cfg_fk"
|
|
760
859
|
}).onDelete("cascade"),
|
|
761
|
-
|
|
762
|
-
|
|
763
|
-
|
|
860
|
+
foreignKey({
|
|
861
|
+
columns: [
|
|
862
|
+
table.tenantId,
|
|
863
|
+
table.projectId,
|
|
864
|
+
table.evaluationSuiteConfigId
|
|
865
|
+
],
|
|
866
|
+
foreignColumns: [
|
|
867
|
+
evaluationSuiteConfig.tenantId,
|
|
868
|
+
evaluationSuiteConfig.projectId,
|
|
869
|
+
evaluationSuiteConfig.id
|
|
870
|
+
],
|
|
871
|
+
name: "eval_run_cfg_eval_suite_rel_suite_cfg_fk"
|
|
872
|
+
}).onDelete("cascade")
|
|
764
873
|
]);
|
|
765
|
-
|
|
874
|
+
/**
|
|
875
|
+
* Configuration for automated evaluation runs. Trigger policies is conversation end.
|
|
876
|
+
* Can be linked to multiple evaluation suite configs via join table.
|
|
877
|
+
* many to many relationship with evaluationSuiteConfig
|
|
878
|
+
*
|
|
879
|
+
* Evaluations are automatically triggered when regular conversations complete.
|
|
880
|
+
* When a conversation ends, creates an evaluationRun that evaluates that conversation.
|
|
881
|
+
*
|
|
882
|
+
* NOTE: Evaluation run configs ONLY run on regular conversations, NOT dataset run conversations.
|
|
883
|
+
* Dataset runs create their own evaluationJobConfig with specific evaluators at run-time.
|
|
884
|
+
*
|
|
885
|
+
* one to many relationship with evaluationRun
|
|
886
|
+
*/
|
|
887
|
+
const evaluationRunConfig = pgTable("evaluation_run_config", {
|
|
766
888
|
...projectScoped,
|
|
767
|
-
|
|
768
|
-
|
|
769
|
-
credentialStoreId: varchar("credential_store_id", { length: 256 }).notNull(),
|
|
770
|
-
retrievalParams: jsonb("retrieval_params").$type(),
|
|
771
|
-
toolId: varchar("tool_id", { length: 256 }),
|
|
772
|
-
userId: varchar("user_id", { length: 256 }),
|
|
773
|
-
createdBy: varchar("created_by", { length: 256 }),
|
|
889
|
+
...uiProperties,
|
|
890
|
+
isActive: boolean("is_active").notNull().default(true),
|
|
774
891
|
...timestamps
|
|
775
|
-
}, (
|
|
776
|
-
|
|
777
|
-
|
|
778
|
-
|
|
779
|
-
|
|
780
|
-
|
|
892
|
+
}, (table) => [primaryKey({ columns: [
|
|
893
|
+
table.tenantId,
|
|
894
|
+
table.projectId,
|
|
895
|
+
table.id
|
|
896
|
+
] }), foreignKey({
|
|
897
|
+
columns: [table.tenantId, table.projectId],
|
|
898
|
+
foreignColumns: [projects.tenantId, projects.id],
|
|
899
|
+
name: "evaluation_run_config_project_fk"
|
|
900
|
+
}).onDelete("cascade")]);
|
|
901
|
+
/**
|
|
902
|
+
* Configuration for a one-off evaluation job to be executed.
|
|
903
|
+
* Example: "Evaluate all conversations in datasetRunId 1234"
|
|
904
|
+
*
|
|
905
|
+
* Created manually or by external systems. Contains job-specific filters like
|
|
906
|
+
* datasetRunIds, conversationIds, and absolute dateRange.
|
|
907
|
+
*
|
|
908
|
+
* one to many relationship with evaluationRun
|
|
909
|
+
*
|
|
910
|
+
* When a job completes, an evaluationRun is created with evaluationJobConfigId set.
|
|
911
|
+
*
|
|
912
|
+
* Includes: jobFilters (specific filters for this job execution: datasetRunIds, conversationIds,
|
|
913
|
+
* dateRange with absolute dates), and timestamps
|
|
914
|
+
*/
|
|
915
|
+
const evaluationJobConfig = pgTable("evaluation_job_config", {
|
|
916
|
+
...projectScoped,
|
|
917
|
+
jobFilters: jsonb("job_filters").$type(),
|
|
918
|
+
...timestamps
|
|
919
|
+
}, (table) => [primaryKey({ columns: [
|
|
920
|
+
table.tenantId,
|
|
921
|
+
table.projectId,
|
|
922
|
+
table.id
|
|
923
|
+
] }), foreignKey({
|
|
924
|
+
columns: [table.tenantId, table.projectId],
|
|
925
|
+
foreignColumns: [projects.tenantId, projects.id],
|
|
926
|
+
name: "evaluation_job_config_project_fk"
|
|
927
|
+
}).onDelete("cascade")]);
|
|
928
|
+
/**
|
|
929
|
+
* Links evaluators to evaluation job configs. Many-to-many relationship that
|
|
930
|
+
* attaches evaluators to an evaluation job configuration. Each evaluator must
|
|
931
|
+
* have its own model configuration defined.
|
|
932
|
+
*
|
|
933
|
+
* Includes: evaluationJobConfigId, evaluatorId, and timestamps
|
|
934
|
+
*/
|
|
935
|
+
const evaluationJobConfigEvaluatorRelations = pgTable("evaluation_job_config_evaluator_relations", {
|
|
936
|
+
...projectScoped,
|
|
937
|
+
evaluationJobConfigId: varchar("evaluation_job_config_id", { length: 256 }).notNull(),
|
|
938
|
+
evaluatorId: varchar("evaluator_id", { length: 256 }).notNull(),
|
|
939
|
+
...timestamps
|
|
940
|
+
}, (table) => [
|
|
941
|
+
primaryKey({
|
|
942
|
+
columns: [
|
|
943
|
+
table.tenantId,
|
|
944
|
+
table.projectId,
|
|
945
|
+
table.id
|
|
946
|
+
],
|
|
947
|
+
name: "eval_job_cfg_evaluator_rel_pk"
|
|
948
|
+
}),
|
|
781
949
|
foreignKey({
|
|
782
|
-
columns: [
|
|
783
|
-
|
|
784
|
-
|
|
950
|
+
columns: [
|
|
951
|
+
table.tenantId,
|
|
952
|
+
table.projectId,
|
|
953
|
+
table.evaluationJobConfigId
|
|
954
|
+
],
|
|
955
|
+
foreignColumns: [
|
|
956
|
+
evaluationJobConfig.tenantId,
|
|
957
|
+
evaluationJobConfig.projectId,
|
|
958
|
+
evaluationJobConfig.id
|
|
959
|
+
],
|
|
960
|
+
name: "eval_job_cfg_evaluator_rel_job_cfg_fk"
|
|
785
961
|
}).onDelete("cascade"),
|
|
786
|
-
|
|
787
|
-
|
|
962
|
+
foreignKey({
|
|
963
|
+
columns: [
|
|
964
|
+
table.tenantId,
|
|
965
|
+
table.projectId,
|
|
966
|
+
table.evaluatorId
|
|
967
|
+
],
|
|
968
|
+
foreignColumns: [
|
|
969
|
+
evaluator.tenantId,
|
|
970
|
+
evaluator.projectId,
|
|
971
|
+
evaluator.id
|
|
972
|
+
],
|
|
973
|
+
name: "eval_job_cfg_evaluator_rel_evaluator_fk"
|
|
974
|
+
}).onDelete("cascade")
|
|
788
975
|
]);
|
|
789
|
-
const tasksRelations = relations(tasks, ({ one, many }) => ({
|
|
790
|
-
project: one(projects, {
|
|
791
|
-
fields: [tasks.tenantId, tasks.projectId],
|
|
792
|
-
references: [projects.tenantId, projects.id]
|
|
793
|
-
}),
|
|
794
|
-
parentRelations: many(taskRelations, { relationName: "childTask" }),
|
|
795
|
-
childRelations: many(taskRelations, { relationName: "parentTask" }),
|
|
796
|
-
subAgent: one(subAgents, {
|
|
797
|
-
fields: [tasks.subAgentId],
|
|
798
|
-
references: [subAgents.id]
|
|
799
|
-
}),
|
|
800
|
-
messages: many(messages),
|
|
801
|
-
ledgerArtifacts: many(ledgerArtifacts)
|
|
802
|
-
}));
|
|
803
976
|
const projectsRelations = relations(projects, ({ many }) => ({
|
|
804
977
|
subAgents: many(subAgents),
|
|
805
978
|
agents: many(agents),
|
|
@@ -807,48 +980,25 @@ const projectsRelations = relations(projects, ({ many }) => ({
|
|
|
807
980
|
functions: many(functions),
|
|
808
981
|
contextConfigs: many(contextConfigs),
|
|
809
982
|
externalAgents: many(externalAgents),
|
|
810
|
-
conversations: many(conversations),
|
|
811
|
-
tasks: many(tasks),
|
|
812
983
|
dataComponents: many(dataComponents),
|
|
813
984
|
artifactComponents: many(artifactComponents),
|
|
814
|
-
ledgerArtifacts: many(ledgerArtifacts),
|
|
815
985
|
credentialReferences: many(credentialReferences)
|
|
816
986
|
}));
|
|
817
|
-
const taskRelationsRelations = relations(taskRelations, ({ one }) => ({
|
|
818
|
-
parentTask: one(tasks, {
|
|
819
|
-
fields: [taskRelations.parentTaskId],
|
|
820
|
-
references: [tasks.id],
|
|
821
|
-
relationName: "parentTask"
|
|
822
|
-
}),
|
|
823
|
-
childTask: one(tasks, {
|
|
824
|
-
fields: [taskRelations.childTaskId],
|
|
825
|
-
references: [tasks.id],
|
|
826
|
-
relationName: "childTask"
|
|
827
|
-
})
|
|
828
|
-
}));
|
|
829
987
|
const contextConfigsRelations = relations(contextConfigs, ({ many, one }) => ({
|
|
830
988
|
project: one(projects, {
|
|
831
989
|
fields: [contextConfigs.tenantId, contextConfigs.projectId],
|
|
832
990
|
references: [projects.tenantId, projects.id]
|
|
833
991
|
}),
|
|
834
|
-
agents: many(agents)
|
|
835
|
-
cache: many(contextCache)
|
|
992
|
+
agents: many(agents)
|
|
836
993
|
}));
|
|
837
|
-
const contextCacheRelations = relations(contextCache, ({ one }) => ({ contextConfig: one(contextConfigs, {
|
|
838
|
-
fields: [contextCache.contextConfigId],
|
|
839
|
-
references: [contextConfigs.id]
|
|
840
|
-
}) }));
|
|
841
994
|
const subAgentsRelations = relations(subAgents, ({ many, one }) => ({
|
|
842
995
|
project: one(projects, {
|
|
843
996
|
fields: [subAgents.tenantId, subAgents.projectId],
|
|
844
997
|
references: [projects.tenantId, projects.id]
|
|
845
998
|
}),
|
|
846
|
-
tasks: many(tasks),
|
|
847
999
|
defaultForAgents: many(agents),
|
|
848
1000
|
sourceRelations: many(subAgentRelations, { relationName: "sourceRelations" }),
|
|
849
1001
|
targetRelations: many(subAgentRelations, { relationName: "targetRelations" }),
|
|
850
|
-
sentMessages: many(messages, { relationName: "sentMessages" }),
|
|
851
|
-
receivedMessages: many(messages, { relationName: "receivedMessages" }),
|
|
852
1002
|
toolRelations: many(subAgentToolRelations),
|
|
853
1003
|
functionToolRelations: many(subAgentFunctionToolRelations),
|
|
854
1004
|
dataComponentRelations: many(subAgentDataComponents),
|
|
@@ -880,16 +1030,6 @@ const externalAgentsRelations = relations(externalAgents, ({ one, many }) => ({
|
|
|
880
1030
|
references: [credentialReferences.id]
|
|
881
1031
|
})
|
|
882
1032
|
}));
|
|
883
|
-
const apiKeysRelations = relations(apiKeys, ({ one }) => ({
|
|
884
|
-
project: one(projects, {
|
|
885
|
-
fields: [apiKeys.tenantId, apiKeys.projectId],
|
|
886
|
-
references: [projects.tenantId, projects.id]
|
|
887
|
-
}),
|
|
888
|
-
agent: one(agents, {
|
|
889
|
-
fields: [apiKeys.agentId],
|
|
890
|
-
references: [agents.id]
|
|
891
|
-
})
|
|
892
|
-
}));
|
|
893
1033
|
const agentToolRelationsRelations = relations(subAgentToolRelations, ({ one }) => ({
|
|
894
1034
|
subAgent: one(subAgents, {
|
|
895
1035
|
fields: [subAgentToolRelations.subAgentId],
|
|
@@ -919,79 +1059,6 @@ const toolsRelations = relations(tools, ({ one, many }) => ({
|
|
|
919
1059
|
references: [credentialReferences.id]
|
|
920
1060
|
})
|
|
921
1061
|
}));
|
|
922
|
-
const conversationsRelations = relations(conversations, ({ one, many }) => ({
|
|
923
|
-
project: one(projects, {
|
|
924
|
-
fields: [conversations.tenantId, conversations.projectId],
|
|
925
|
-
references: [projects.tenantId, projects.id]
|
|
926
|
-
}),
|
|
927
|
-
messages: many(messages),
|
|
928
|
-
activeSubAgent: one(subAgents, {
|
|
929
|
-
fields: [conversations.activeSubAgentId],
|
|
930
|
-
references: [subAgents.id]
|
|
931
|
-
})
|
|
932
|
-
}));
|
|
933
|
-
const messagesRelations = relations(messages, ({ one, many }) => ({
|
|
934
|
-
conversation: one(conversations, {
|
|
935
|
-
fields: [messages.conversationId],
|
|
936
|
-
references: [conversations.id]
|
|
937
|
-
}),
|
|
938
|
-
fromSubAgent: one(subAgents, {
|
|
939
|
-
fields: [messages.fromSubAgentId],
|
|
940
|
-
references: [subAgents.id],
|
|
941
|
-
relationName: "sentMessages"
|
|
942
|
-
}),
|
|
943
|
-
toSubAgent: one(subAgents, {
|
|
944
|
-
fields: [messages.toSubAgentId],
|
|
945
|
-
references: [subAgents.id],
|
|
946
|
-
relationName: "receivedMessages"
|
|
947
|
-
}),
|
|
948
|
-
fromTeamAgent: one(agents, {
|
|
949
|
-
fields: [messages.fromTeamAgentId],
|
|
950
|
-
references: [agents.id],
|
|
951
|
-
relationName: "receivedTeamMessages"
|
|
952
|
-
}),
|
|
953
|
-
toTeamAgent: one(agents, {
|
|
954
|
-
fields: [messages.toTeamAgentId],
|
|
955
|
-
references: [agents.id],
|
|
956
|
-
relationName: "sentTeamMessages"
|
|
957
|
-
}),
|
|
958
|
-
fromExternalAgent: one(externalAgents, {
|
|
959
|
-
fields: [
|
|
960
|
-
messages.tenantId,
|
|
961
|
-
messages.projectId,
|
|
962
|
-
messages.fromExternalAgentId
|
|
963
|
-
],
|
|
964
|
-
references: [
|
|
965
|
-
externalAgents.tenantId,
|
|
966
|
-
externalAgents.projectId,
|
|
967
|
-
externalAgents.id
|
|
968
|
-
],
|
|
969
|
-
relationName: "receivedExternalMessages"
|
|
970
|
-
}),
|
|
971
|
-
toExternalAgent: one(externalAgents, {
|
|
972
|
-
fields: [
|
|
973
|
-
messages.tenantId,
|
|
974
|
-
messages.projectId,
|
|
975
|
-
messages.toExternalAgentId
|
|
976
|
-
],
|
|
977
|
-
references: [
|
|
978
|
-
externalAgents.tenantId,
|
|
979
|
-
externalAgents.projectId,
|
|
980
|
-
externalAgents.id
|
|
981
|
-
],
|
|
982
|
-
relationName: "sentExternalMessages"
|
|
983
|
-
}),
|
|
984
|
-
task: one(tasks, {
|
|
985
|
-
fields: [messages.taskId],
|
|
986
|
-
references: [tasks.id]
|
|
987
|
-
}),
|
|
988
|
-
parentMessage: one(messages, {
|
|
989
|
-
fields: [messages.parentMessageId],
|
|
990
|
-
references: [messages.id],
|
|
991
|
-
relationName: "parentChild"
|
|
992
|
-
}),
|
|
993
|
-
childMessages: many(messages, { relationName: "parentChild" })
|
|
994
|
-
}));
|
|
995
1062
|
const artifactComponentsRelations = relations(artifactComponents, ({ many, one }) => ({
|
|
996
1063
|
project: one(projects, {
|
|
997
1064
|
fields: [artifactComponents.tenantId, artifactComponents.projectId],
|
|
@@ -1026,16 +1093,6 @@ const subAgentDataComponentsRelations = relations(subAgentDataComponents, ({ one
|
|
|
1026
1093
|
references: [dataComponents.id]
|
|
1027
1094
|
})
|
|
1028
1095
|
}));
|
|
1029
|
-
const ledgerArtifactsRelations = relations(ledgerArtifacts, ({ one }) => ({
|
|
1030
|
-
project: one(projects, {
|
|
1031
|
-
fields: [ledgerArtifacts.tenantId, ledgerArtifacts.projectId],
|
|
1032
|
-
references: [projects.tenantId, projects.id]
|
|
1033
|
-
}),
|
|
1034
|
-
task: one(tasks, {
|
|
1035
|
-
fields: [ledgerArtifacts.taskId],
|
|
1036
|
-
references: [tasks.id]
|
|
1037
|
-
})
|
|
1038
|
-
}));
|
|
1039
1096
|
const functionsRelations = relations(functions, ({ many, one }) => ({
|
|
1040
1097
|
functionTools: many(functionTools),
|
|
1041
1098
|
project: one(projects, {
|
|
@@ -1156,6 +1213,51 @@ const subAgentTeamAgentRelationsRelations = relations(subAgentTeamAgentRelations
|
|
|
1156
1213
|
]
|
|
1157
1214
|
})
|
|
1158
1215
|
}));
|
|
1216
|
+
/**
|
|
1217
|
+
* Links agents to dataset run configs. Many-to-many relationship that
|
|
1218
|
+
* allows one dataset run config to use multiple agents, and one agent to be used
|
|
1219
|
+
* by multiple dataset run configs.
|
|
1220
|
+
*
|
|
1221
|
+
* Includes: datasetRunConfigId, agentId, and timestamps
|
|
1222
|
+
*/
|
|
1223
|
+
const datasetRunConfigAgentRelations = pgTable("dataset_run_config_agent_relations", {
|
|
1224
|
+
...projectScoped,
|
|
1225
|
+
datasetRunConfigId: varchar("dataset_run_config_id", { length: 256 }).notNull(),
|
|
1226
|
+
agentId: varchar("agent_id", { length: 256 }).notNull(),
|
|
1227
|
+
...timestamps
|
|
1228
|
+
}, (table) => [
|
|
1229
|
+
primaryKey({ columns: [
|
|
1230
|
+
table.tenantId,
|
|
1231
|
+
table.projectId,
|
|
1232
|
+
table.id
|
|
1233
|
+
] }),
|
|
1234
|
+
foreignKey({
|
|
1235
|
+
columns: [
|
|
1236
|
+
table.tenantId,
|
|
1237
|
+
table.projectId,
|
|
1238
|
+
table.datasetRunConfigId
|
|
1239
|
+
],
|
|
1240
|
+
foreignColumns: [
|
|
1241
|
+
datasetRunConfig.tenantId,
|
|
1242
|
+
datasetRunConfig.projectId,
|
|
1243
|
+
datasetRunConfig.id
|
|
1244
|
+
],
|
|
1245
|
+
name: "dataset_run_config_agent_relations_dataset_run_config_fk"
|
|
1246
|
+
}).onDelete("cascade"),
|
|
1247
|
+
foreignKey({
|
|
1248
|
+
columns: [
|
|
1249
|
+
table.tenantId,
|
|
1250
|
+
table.projectId,
|
|
1251
|
+
table.agentId
|
|
1252
|
+
],
|
|
1253
|
+
foreignColumns: [
|
|
1254
|
+
agents.tenantId,
|
|
1255
|
+
agents.projectId,
|
|
1256
|
+
agents.id
|
|
1257
|
+
],
|
|
1258
|
+
name: "dataset_run_config_agent_relations_agent_fk"
|
|
1259
|
+
}).onDelete("cascade")
|
|
1260
|
+
]);
|
|
1159
1261
|
|
|
1160
1262
|
//#endregion
|
|
1161
|
-
export {
|
|
1263
|
+
export { agentRelations, agentToolRelationsRelations, agents, artifactComponents, artifactComponentsRelations, contextConfigs, contextConfigsRelations, credentialReferences, credentialReferencesRelations, dataComponents, dataComponentsRelations, dataset, datasetItem, datasetRunConfig, datasetRunConfigAgentRelations, evaluationJobConfig, evaluationJobConfigEvaluatorRelations, evaluationRunConfig, evaluationRunConfigEvaluationSuiteConfigRelations, evaluationSuiteConfig, evaluationSuiteConfigEvaluatorRelations, evaluator, externalAgents, externalAgentsRelations, functionTools, functionToolsRelations, functions, functionsRelations, manage_schema_exports, projects, projectsRelations, subAgentArtifactComponents, subAgentArtifactComponentsRelations, subAgentDataComponents, subAgentDataComponentsRelations, subAgentExternalAgentRelations, subAgentExternalAgentRelationsRelations, subAgentFunctionToolRelations, subAgentFunctionToolRelationsRelations, subAgentRelations, subAgentRelationsRelations, subAgentTeamAgentRelations, subAgentTeamAgentRelationsRelations, subAgentToolRelations, subAgents, subAgentsRelations, tools, toolsRelations, triggers };
|