@inkeep/agents-api 0.0.0-dev-20260219033751 → 0.0.0-dev-20260219045007
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/.well-known/workflow/v1/manifest.json +34 -34
- package/dist/createApp.js +16 -90
- package/dist/data/db/manageDbClient.d.ts +2 -2
- package/dist/domains/evals/routes/datasetTriggers.d.ts +2 -2
- package/dist/domains/evals/routes/datasetTriggers.js +5 -2
- package/dist/domains/evals/routes/evaluationTriggers.js +9 -4
- package/dist/domains/evals/routes/index.d.ts +2 -2
- package/dist/domains/evals/workflow/routes.d.ts +2 -2
- package/dist/domains/manage/index.js +4 -0
- package/dist/domains/manage/routes/agent.js +16 -20
- package/dist/domains/manage/routes/agentFull.js +10 -17
- package/dist/domains/manage/routes/apiKeys.js +12 -14
- package/dist/domains/manage/routes/artifactComponents.js +12 -15
- package/dist/domains/manage/routes/availableAgents.d.ts +2 -2
- package/dist/domains/manage/routes/availableAgents.js +4 -2
- package/dist/domains/manage/routes/branches.js +12 -14
- package/dist/domains/manage/routes/cliAuth.js +4 -3
- package/dist/domains/manage/routes/contextConfigs.js +12 -15
- package/dist/domains/manage/routes/conversations.d.ts +2 -2
- package/dist/domains/manage/routes/conversations.js +5 -2
- package/dist/domains/manage/routes/credentialStores.js +7 -8
- package/dist/domains/manage/routes/credentials.js +12 -14
- package/dist/domains/manage/routes/dataComponents.js +12 -14
- package/dist/domains/manage/routes/evals/datasetItems.js +14 -19
- package/dist/domains/manage/routes/evals/datasetRunConfigs.js +13 -6
- package/dist/domains/manage/routes/evals/datasetRuns.js +7 -3
- package/dist/domains/manage/routes/evals/datasets.js +12 -14
- package/dist/domains/manage/routes/evals/evaluationJobConfigEvaluatorRelations.js +8 -8
- package/dist/domains/manage/routes/evals/evaluationJobConfigs.js +12 -14
- package/dist/domains/manage/routes/evals/evaluationResults.js +10 -13
- package/dist/domains/manage/routes/evals/evaluationRunConfigs.js +14 -15
- package/dist/domains/manage/routes/evals/evaluationSuiteConfigEvaluatorRelations.js +8 -8
- package/dist/domains/manage/routes/evals/evaluationSuiteConfigs.js +12 -14
- package/dist/domains/manage/routes/evals/evaluators.js +14 -15
- package/dist/domains/manage/routes/externalAgents.js +12 -14
- package/dist/domains/manage/routes/functionTools.js +12 -15
- package/dist/domains/manage/routes/functions.js +12 -15
- package/dist/domains/manage/routes/github.js +16 -8
- package/dist/domains/manage/routes/index.d.ts +2 -2
- package/dist/domains/manage/routes/index.js +0 -4
- package/dist/domains/manage/routes/invitations.d.ts +2 -2
- package/dist/domains/manage/routes/mcpCatalog.js +5 -2
- package/dist/domains/manage/routes/mcpToolGithubAccess.js +6 -4
- package/dist/domains/manage/routes/oauth.js +6 -66
- package/dist/domains/manage/routes/passwordResetLinks.d.ts +2 -2
- package/dist/domains/manage/routes/playgroundToken.js +4 -2
- package/dist/domains/manage/routes/projectFull.js +13 -26
- package/dist/domains/manage/routes/projectGithubAccess.js +7 -3
- package/dist/domains/manage/routes/projectMembers.js +14 -13
- package/dist/domains/manage/routes/projectPermissions.js +5 -2
- package/dist/domains/manage/routes/projects.js +12 -16
- package/dist/domains/manage/routes/ref.js +5 -2
- package/dist/domains/manage/routes/scheduledTriggers.js +24 -21
- package/dist/domains/manage/routes/signoz.d.ts +2 -2
- package/dist/domains/manage/routes/skills.js +12 -15
- package/dist/domains/manage/routes/subAgentArtifactComponents.js +12 -14
- package/dist/domains/manage/routes/subAgentDataComponents.js +12 -14
- package/dist/domains/manage/routes/subAgentExternalAgentRelations.js +12 -15
- package/dist/domains/manage/routes/subAgentFunctionTools.js +12 -14
- package/dist/domains/manage/routes/subAgentRelations.js +12 -15
- package/dist/domains/manage/routes/subAgentSkills.js +8 -12
- package/dist/domains/manage/routes/subAgentTeamAgentRelations.js +12 -15
- package/dist/domains/manage/routes/subAgentToolRelations.js +14 -16
- package/dist/domains/manage/routes/subAgents.js +12 -15
- package/dist/domains/manage/routes/thirdPartyMCPServers.js +7 -3
- package/dist/domains/manage/routes/tools.js +79 -16
- package/dist/domains/manage/routes/triggers.js +18 -22
- package/dist/domains/manage/routes/userProjectMemberships.js +5 -3
- package/dist/domains/manage/routes/users.d.ts +2 -2
- package/dist/domains/mcp/routes/mcp.d.ts +2 -2
- package/dist/domains/run/agents/relationTools.d.ts +2 -2
- package/dist/domains/run/routes/agents.js +4 -2
- package/dist/domains/run/routes/chat.js +4 -2
- package/dist/domains/run/routes/chatDataStream.js +6 -3
- package/dist/domains/run/routes/mcp.js +4 -2
- package/dist/domains/run/routes/webhooks.js +5 -3
- package/dist/domains/run/tools/distill-conversation-history-tool.d.ts +1 -1
- package/dist/domains/run/types/chat.d.ts +4 -4
- package/dist/domains/run/utils/token-estimator.d.ts +2 -2
- package/dist/domains/run/workflow/steps/scheduledTriggerSteps.d.ts +5 -5
- package/dist/factory.d.ts +21 -21
- package/dist/index.d.ts +18 -18
- package/dist/middleware/evalsAuth.d.ts +2 -2
- package/dist/middleware/evalsAuth.js +37 -32
- package/dist/middleware/index.d.ts +2 -3
- package/dist/middleware/index.js +3 -4
- package/dist/middleware/manageAuth.d.ts +9 -4
- package/dist/middleware/manageAuth.js +24 -2
- package/dist/middleware/projectAccess.d.ts +4 -3
- package/dist/middleware/projectAccess.js +78 -64
- package/dist/middleware/projectConfig.d.ts +3 -3
- package/dist/middleware/ref.d.ts +1 -5
- package/dist/middleware/ref.js +1 -21
- package/dist/middleware/requirePermission.d.ts +2 -2
- package/dist/middleware/requirePermission.js +64 -64
- package/dist/middleware/runAuth.d.ts +4 -4
- package/dist/middleware/sessionAuth.d.ts +3 -3
- package/dist/middleware/sessionAuth.js +23 -18
- package/dist/middleware/tenantAccess.d.ts +3 -2
- package/dist/middleware/tenantAccess.js +12 -1
- package/dist/middleware/tracing.d.ts +3 -3
- package/dist/middleware/tracing.js +1 -1
- package/dist/routes/capabilities.d.ts +10 -0
- package/dist/routes/capabilities.js +35 -0
- package/dist/routes/healthChecks.js +6 -3
- package/dist/routes/workflowProcess.d.ts +10 -0
- package/dist/routes/workflowProcess.js +23 -0
- package/dist/types/app.d.ts +3 -3
- package/package.json +4 -4
|
@@ -1,24 +1,18 @@
|
|
|
1
1
|
import { requireProjectPermission } from "../../../middleware/projectAccess.js";
|
|
2
2
|
import { speakeasyOffsetLimitPagination } from "../../../utils/speakeasy.js";
|
|
3
|
-
import { OpenAPIHono
|
|
3
|
+
import { OpenAPIHono } from "@hono/zod-openapi";
|
|
4
4
|
import { DataComponentApiInsertSchema, DataComponentApiUpdateSchema, DataComponentListResponse, DataComponentResponse, ErrorResponseSchema, PaginationQueryParamsSchema, TenantProjectIdParamsSchema, TenantProjectParamsSchema, commonGetErrorResponses, createApiError, createDataComponent, deleteDataComponent, getDataComponent, listDataComponentsPaginated, updateDataComponent, validatePropsAsJsonSchema } from "@inkeep/agents-core";
|
|
5
|
+
import { createProtectedRoute } from "@inkeep/agents-core/middleware";
|
|
5
6
|
|
|
6
7
|
//#region src/domains/manage/routes/dataComponents.ts
|
|
7
8
|
const app = new OpenAPIHono();
|
|
8
|
-
app.
|
|
9
|
-
if (c.req.method === "POST") return requireProjectPermission("edit")(c, next);
|
|
10
|
-
return next();
|
|
11
|
-
});
|
|
12
|
-
app.use("/:id", async (c, next) => {
|
|
13
|
-
if (c.req.method === "PUT" || c.req.method === "DELETE") return requireProjectPermission("edit")(c, next);
|
|
14
|
-
return next();
|
|
15
|
-
});
|
|
16
|
-
app.openapi(createRoute({
|
|
9
|
+
app.openapi(createProtectedRoute({
|
|
17
10
|
method: "get",
|
|
18
11
|
path: "/",
|
|
19
12
|
summary: "List Data Components",
|
|
20
13
|
operationId: "list-data-components",
|
|
21
14
|
tags: ["Data Components"],
|
|
15
|
+
permission: requireProjectPermission("view"),
|
|
22
16
|
request: {
|
|
23
17
|
params: TenantProjectParamsSchema,
|
|
24
18
|
query: PaginationQueryParamsSchema
|
|
@@ -48,12 +42,13 @@ app.openapi(createRoute({
|
|
|
48
42
|
});
|
|
49
43
|
return c.json(result);
|
|
50
44
|
});
|
|
51
|
-
app.openapi(
|
|
45
|
+
app.openapi(createProtectedRoute({
|
|
52
46
|
method: "get",
|
|
53
47
|
path: "/{id}",
|
|
54
48
|
summary: "Get Data Component",
|
|
55
49
|
operationId: "get-data-component-by-id",
|
|
56
50
|
tags: ["Data Components"],
|
|
51
|
+
permission: requireProjectPermission("view"),
|
|
57
52
|
request: { params: TenantProjectIdParamsSchema },
|
|
58
53
|
responses: {
|
|
59
54
|
200: {
|
|
@@ -78,12 +73,13 @@ app.openapi(createRoute({
|
|
|
78
73
|
});
|
|
79
74
|
return c.json({ data: dataComponent });
|
|
80
75
|
});
|
|
81
|
-
app.openapi(
|
|
76
|
+
app.openapi(createProtectedRoute({
|
|
82
77
|
method: "post",
|
|
83
78
|
path: "/",
|
|
84
79
|
summary: "Create Data Component",
|
|
85
80
|
operationId: "create-data-component",
|
|
86
81
|
tags: ["Data Components"],
|
|
82
|
+
permission: requireProjectPermission("edit"),
|
|
87
83
|
request: {
|
|
88
84
|
params: TenantProjectParamsSchema,
|
|
89
85
|
body: { content: { "application/json": { schema: DataComponentApiInsertSchema } } }
|
|
@@ -114,12 +110,13 @@ app.openapi(createRoute({
|
|
|
114
110
|
const dataComponent = await createDataComponent(db)(dataComponentData);
|
|
115
111
|
return c.json({ data: dataComponent }, 201);
|
|
116
112
|
});
|
|
117
|
-
app.openapi(
|
|
113
|
+
app.openapi(createProtectedRoute({
|
|
118
114
|
method: "put",
|
|
119
115
|
path: "/{id}",
|
|
120
116
|
summary: "Update Data Component",
|
|
121
117
|
operationId: "update-data-component",
|
|
122
118
|
tags: ["Data Components"],
|
|
119
|
+
permission: requireProjectPermission("edit"),
|
|
123
120
|
request: {
|
|
124
121
|
params: TenantProjectIdParamsSchema,
|
|
125
122
|
body: { content: { "application/json": { schema: DataComponentApiUpdateSchema } } }
|
|
@@ -156,12 +153,13 @@ app.openapi(createRoute({
|
|
|
156
153
|
});
|
|
157
154
|
return c.json({ data: updatedDataComponent });
|
|
158
155
|
});
|
|
159
|
-
app.openapi(
|
|
156
|
+
app.openapi(createProtectedRoute({
|
|
160
157
|
method: "delete",
|
|
161
158
|
path: "/{id}",
|
|
162
159
|
summary: "Delete Data Component",
|
|
163
160
|
operationId: "delete-data-component",
|
|
164
161
|
tags: ["Data Components"],
|
|
162
|
+
permission: requireProjectPermission("edit"),
|
|
165
163
|
request: { params: TenantProjectIdParamsSchema },
|
|
166
164
|
responses: {
|
|
167
165
|
204: { description: "Data component deleted successfully" },
|
|
@@ -1,29 +1,19 @@
|
|
|
1
1
|
import { getLogger as getLogger$1 } from "../../../../logger.js";
|
|
2
2
|
import { requireProjectPermission } from "../../../../middleware/projectAccess.js";
|
|
3
|
-
import { OpenAPIHono,
|
|
3
|
+
import { OpenAPIHono, z } from "@hono/zod-openapi";
|
|
4
4
|
import { DatasetItemApiInsertSchema, DatasetItemApiSelectSchema, DatasetItemApiUpdateSchema, ListResponseSchema, SingleResponseSchema, TenantProjectParamsSchema, commonGetErrorResponses, createApiError, createDatasetItem, createDatasetItems, deleteDatasetItem, generateId, getDatasetItemById, listDatasetItems, updateDatasetItem } from "@inkeep/agents-core";
|
|
5
|
+
import { createProtectedRoute } from "@inkeep/agents-core/middleware";
|
|
5
6
|
|
|
6
7
|
//#region src/domains/manage/routes/evals/datasetItems.ts
|
|
7
8
|
const app = new OpenAPIHono();
|
|
8
9
|
const logger = getLogger$1("datasetItems");
|
|
9
|
-
app.
|
|
10
|
-
if (c.req.method === "POST") return requireProjectPermission("edit")(c, next);
|
|
11
|
-
return next();
|
|
12
|
-
});
|
|
13
|
-
app.use("/:datasetId/items/bulk", async (c, next) => {
|
|
14
|
-
if (c.req.method === "POST") return requireProjectPermission("edit")(c, next);
|
|
15
|
-
return next();
|
|
16
|
-
});
|
|
17
|
-
app.use("/:datasetId/items/:itemId", async (c, next) => {
|
|
18
|
-
if (["PATCH", "DELETE"].includes(c.req.method)) return requireProjectPermission("edit")(c, next);
|
|
19
|
-
return next();
|
|
20
|
-
});
|
|
21
|
-
app.openapi(createRoute({
|
|
10
|
+
app.openapi(createProtectedRoute({
|
|
22
11
|
method: "get",
|
|
23
12
|
path: "/{datasetId}",
|
|
24
13
|
summary: "List Dataset Items by Dataset ID",
|
|
25
14
|
operationId: "list-dataset-items",
|
|
26
15
|
tags: ["Evaluations"],
|
|
16
|
+
permission: requireProjectPermission("view"),
|
|
27
17
|
request: { params: TenantProjectParamsSchema.extend({ datasetId: z.string() }) },
|
|
28
18
|
responses: {
|
|
29
19
|
200: {
|
|
@@ -63,12 +53,13 @@ app.openapi(createRoute({
|
|
|
63
53
|
}), 500);
|
|
64
54
|
}
|
|
65
55
|
});
|
|
66
|
-
app.openapi(
|
|
56
|
+
app.openapi(createProtectedRoute({
|
|
67
57
|
method: "get",
|
|
68
58
|
path: "/{datasetId}/items/{itemId}",
|
|
69
59
|
summary: "Get Dataset Item by ID",
|
|
70
60
|
operationId: "get-dataset-item",
|
|
71
61
|
tags: ["Evaluations"],
|
|
62
|
+
permission: requireProjectPermission("view"),
|
|
72
63
|
request: { params: TenantProjectParamsSchema.extend({
|
|
73
64
|
datasetId: z.string(),
|
|
74
65
|
itemId: z.string()
|
|
@@ -107,12 +98,13 @@ app.openapi(createRoute({
|
|
|
107
98
|
}), 500);
|
|
108
99
|
}
|
|
109
100
|
});
|
|
110
|
-
app.openapi(
|
|
101
|
+
app.openapi(createProtectedRoute({
|
|
111
102
|
method: "post",
|
|
112
103
|
path: "/{datasetId}/items",
|
|
113
104
|
summary: "Create Dataset Item",
|
|
114
105
|
operationId: "create-dataset-item",
|
|
115
106
|
tags: ["Evaluations"],
|
|
107
|
+
permission: requireProjectPermission("edit"),
|
|
116
108
|
request: {
|
|
117
109
|
params: TenantProjectParamsSchema.extend({ datasetId: z.string() }),
|
|
118
110
|
body: { content: { "application/json": { schema: DatasetItemApiInsertSchema } } }
|
|
@@ -158,12 +150,13 @@ app.openapi(createRoute({
|
|
|
158
150
|
}), 500);
|
|
159
151
|
}
|
|
160
152
|
});
|
|
161
|
-
app.openapi(
|
|
153
|
+
app.openapi(createProtectedRoute({
|
|
162
154
|
method: "post",
|
|
163
155
|
path: "/{datasetId}/items/bulk",
|
|
164
156
|
summary: "Create Multiple Dataset Items",
|
|
165
157
|
operationId: "create-dataset-items-bulk",
|
|
166
158
|
tags: ["Evaluations"],
|
|
159
|
+
permission: requireProjectPermission("edit"),
|
|
167
160
|
request: {
|
|
168
161
|
params: TenantProjectParamsSchema.extend({ datasetId: z.string() }),
|
|
169
162
|
body: { content: { "application/json": { schema: z.array(DatasetItemApiInsertSchema) } } }
|
|
@@ -216,12 +209,13 @@ app.openapi(createRoute({
|
|
|
216
209
|
}), 500);
|
|
217
210
|
}
|
|
218
211
|
});
|
|
219
|
-
app.openapi(
|
|
212
|
+
app.openapi(createProtectedRoute({
|
|
220
213
|
method: "patch",
|
|
221
214
|
path: "/{datasetId}/items/{itemId}",
|
|
222
215
|
summary: "Update Dataset Item",
|
|
223
216
|
operationId: "update-dataset-item",
|
|
224
217
|
tags: ["Evaluations"],
|
|
218
|
+
permission: requireProjectPermission("edit"),
|
|
225
219
|
request: {
|
|
226
220
|
params: TenantProjectParamsSchema.extend({
|
|
227
221
|
datasetId: z.string(),
|
|
@@ -272,12 +266,13 @@ app.openapi(createRoute({
|
|
|
272
266
|
}), 500);
|
|
273
267
|
}
|
|
274
268
|
});
|
|
275
|
-
app.openapi(
|
|
269
|
+
app.openapi(createProtectedRoute({
|
|
276
270
|
method: "delete",
|
|
277
271
|
path: "/{datasetId}/items/{itemId}",
|
|
278
272
|
summary: "Delete Dataset Item by ID",
|
|
279
273
|
operationId: "delete-dataset-item",
|
|
280
274
|
tags: ["Evaluations"],
|
|
275
|
+
permission: requireProjectPermission("edit"),
|
|
281
276
|
request: { params: TenantProjectParamsSchema.extend({
|
|
282
277
|
datasetId: z.string(),
|
|
283
278
|
itemId: z.string()
|
|
@@ -1,18 +1,21 @@
|
|
|
1
1
|
import { getLogger as getLogger$1 } from "../../../../logger.js";
|
|
2
2
|
import runDbClient_default from "../../../../data/db/runDbClient.js";
|
|
3
3
|
import { queueDatasetRunItems } from "../../../evals/services/datasetRun.js";
|
|
4
|
-
import {
|
|
4
|
+
import { requireProjectPermission } from "../../../../middleware/projectAccess.js";
|
|
5
|
+
import { OpenAPIHono, z } from "@hono/zod-openapi";
|
|
5
6
|
import { DatasetRunConfigApiInsertSchema, DatasetRunConfigApiSelectSchema, DatasetRunConfigApiUpdateSchema, ListResponseSchema, SingleResponseSchema, TenantProjectParamsSchema, commonGetErrorResponses, createApiError, createDatasetRun, createDatasetRunConfig, createDatasetRunConfigAgentRelation, createEvaluationJobConfig, createEvaluationJobConfigEvaluatorRelation, createEvaluationRun, deleteDatasetRunConfig, deleteDatasetRunConfigAgentRelation, generateId, getDatasetRunConfigAgentRelations, getDatasetRunConfigById, linkDatasetRunToEvaluationJobConfig, listDatasetItems, listDatasetRunConfigs, updateDatasetRunConfig } from "@inkeep/agents-core";
|
|
7
|
+
import { createProtectedRoute } from "@inkeep/agents-core/middleware";
|
|
6
8
|
|
|
7
9
|
//#region src/domains/manage/routes/evals/datasetRunConfigs.ts
|
|
8
10
|
const app = new OpenAPIHono();
|
|
9
11
|
const logger = getLogger$1("datasetRunConfigs");
|
|
10
|
-
app.openapi(
|
|
12
|
+
app.openapi(createProtectedRoute({
|
|
11
13
|
method: "get",
|
|
12
14
|
path: "/by-dataset/{datasetId}",
|
|
13
15
|
summary: "List Dataset Run Configs by Dataset ID",
|
|
14
16
|
operationId: "list-dataset-run-configs",
|
|
15
17
|
tags: ["Evaluations"],
|
|
18
|
+
permission: requireProjectPermission("view"),
|
|
16
19
|
request: { params: TenantProjectParamsSchema.extend({ datasetId: z.string() }) },
|
|
17
20
|
responses: {
|
|
18
21
|
200: {
|
|
@@ -50,12 +53,13 @@ app.openapi(createRoute({
|
|
|
50
53
|
}), 500);
|
|
51
54
|
}
|
|
52
55
|
});
|
|
53
|
-
app.openapi(
|
|
56
|
+
app.openapi(createProtectedRoute({
|
|
54
57
|
method: "get",
|
|
55
58
|
path: "/{runConfigId}",
|
|
56
59
|
summary: "Get Dataset Run Config by ID",
|
|
57
60
|
operationId: "get-dataset-run-config",
|
|
58
61
|
tags: ["Evaluations"],
|
|
62
|
+
permission: requireProjectPermission("view"),
|
|
59
63
|
request: { params: TenantProjectParamsSchema.extend({ runConfigId: z.string() }) },
|
|
60
64
|
responses: {
|
|
61
65
|
200: {
|
|
@@ -91,12 +95,13 @@ app.openapi(createRoute({
|
|
|
91
95
|
}), 500);
|
|
92
96
|
}
|
|
93
97
|
});
|
|
94
|
-
app.openapi(
|
|
98
|
+
app.openapi(createProtectedRoute({
|
|
95
99
|
method: "post",
|
|
96
100
|
path: "/",
|
|
97
101
|
summary: "Create Dataset Run Config",
|
|
98
102
|
operationId: "create-dataset-run-config",
|
|
99
103
|
tags: ["Evaluations"],
|
|
104
|
+
permission: requireProjectPermission("edit"),
|
|
100
105
|
request: {
|
|
101
106
|
params: TenantProjectParamsSchema,
|
|
102
107
|
body: { content: { "application/json": { schema: DatasetRunConfigApiInsertSchema.extend({
|
|
@@ -269,12 +274,13 @@ app.openapi(createRoute({
|
|
|
269
274
|
}), 500);
|
|
270
275
|
}
|
|
271
276
|
});
|
|
272
|
-
app.openapi(
|
|
277
|
+
app.openapi(createProtectedRoute({
|
|
273
278
|
method: "patch",
|
|
274
279
|
path: "/{runConfigId}",
|
|
275
280
|
summary: "Update Dataset Run Config",
|
|
276
281
|
operationId: "update-dataset-run-config",
|
|
277
282
|
tags: ["Evaluations"],
|
|
283
|
+
permission: requireProjectPermission("edit"),
|
|
278
284
|
request: {
|
|
279
285
|
params: TenantProjectParamsSchema.extend({ runConfigId: z.string() }),
|
|
280
286
|
body: { content: { "application/json": { schema: DatasetRunConfigApiUpdateSchema.extend({
|
|
@@ -350,12 +356,13 @@ app.openapi(createRoute({
|
|
|
350
356
|
}), 500);
|
|
351
357
|
}
|
|
352
358
|
});
|
|
353
|
-
app.openapi(
|
|
359
|
+
app.openapi(createProtectedRoute({
|
|
354
360
|
method: "delete",
|
|
355
361
|
path: "/{runConfigId}",
|
|
356
362
|
summary: "Delete Dataset Run Config",
|
|
357
363
|
operationId: "delete-dataset-run-config",
|
|
358
364
|
tags: ["Evaluations"],
|
|
365
|
+
permission: requireProjectPermission("edit"),
|
|
359
366
|
request: { params: TenantProjectParamsSchema.extend({ runConfigId: z.string() }) },
|
|
360
367
|
responses: {
|
|
361
368
|
204: { description: "Dataset run config deleted" },
|
|
@@ -1,17 +1,20 @@
|
|
|
1
1
|
import { getLogger as getLogger$1 } from "../../../../logger.js";
|
|
2
2
|
import runDbClient_default from "../../../../data/db/runDbClient.js";
|
|
3
|
-
import {
|
|
3
|
+
import { requireProjectPermission } from "../../../../middleware/projectAccess.js";
|
|
4
|
+
import { OpenAPIHono, z } from "@hono/zod-openapi";
|
|
4
5
|
import { DatasetRunApiSelectSchema, ListResponseSchema, SingleResponseSchema, TenantProjectParamsSchema, commonGetErrorResponses, createApiError, getConversation, getDatasetRunById, getDatasetRunConfigById, getDatasetRunConversationRelations, getMessagesByConversation, listDatasetItems, listDatasetRuns } from "@inkeep/agents-core";
|
|
6
|
+
import { createProtectedRoute } from "@inkeep/agents-core/middleware";
|
|
5
7
|
|
|
6
8
|
//#region src/domains/manage/routes/evals/datasetRuns.ts
|
|
7
9
|
const app = new OpenAPIHono();
|
|
8
10
|
const logger = getLogger$1("datasetRuns");
|
|
9
|
-
app.openapi(
|
|
11
|
+
app.openapi(createProtectedRoute({
|
|
10
12
|
method: "get",
|
|
11
13
|
path: "/by-dataset/{datasetId}",
|
|
12
14
|
summary: "List Dataset Runs by Dataset ID",
|
|
13
15
|
operationId: "list-dataset-runs",
|
|
14
16
|
tags: ["Evaluations"],
|
|
17
|
+
permission: requireProjectPermission("view"),
|
|
15
18
|
request: { params: TenantProjectParamsSchema.extend({ datasetId: z.string() }) },
|
|
16
19
|
responses: {
|
|
17
20
|
200: {
|
|
@@ -67,12 +70,13 @@ app.openapi(createRoute({
|
|
|
67
70
|
}), 500);
|
|
68
71
|
}
|
|
69
72
|
});
|
|
70
|
-
app.openapi(
|
|
73
|
+
app.openapi(createProtectedRoute({
|
|
71
74
|
method: "get",
|
|
72
75
|
path: "/{runId}",
|
|
73
76
|
summary: "Get Dataset Run by ID",
|
|
74
77
|
operationId: "get-dataset-run",
|
|
75
78
|
tags: ["Evaluations"],
|
|
79
|
+
permission: requireProjectPermission("view"),
|
|
76
80
|
request: { params: TenantProjectParamsSchema.extend({ runId: z.string() }) },
|
|
77
81
|
responses: {
|
|
78
82
|
200: {
|
|
@@ -1,25 +1,19 @@
|
|
|
1
1
|
import { getLogger as getLogger$1 } from "../../../../logger.js";
|
|
2
2
|
import { requireProjectPermission } from "../../../../middleware/projectAccess.js";
|
|
3
|
-
import { OpenAPIHono,
|
|
3
|
+
import { OpenAPIHono, z } from "@hono/zod-openapi";
|
|
4
4
|
import { DatasetApiInsertSchema, DatasetApiSelectSchema, DatasetApiUpdateSchema, ListResponseSchema, SingleResponseSchema, TenantProjectParamsSchema, commonGetErrorResponses, createApiError, createDataset, deleteDataset, generateId, getDatasetById, listDatasets, updateDataset } from "@inkeep/agents-core";
|
|
5
|
+
import { createProtectedRoute } from "@inkeep/agents-core/middleware";
|
|
5
6
|
|
|
6
7
|
//#region src/domains/manage/routes/evals/datasets.ts
|
|
7
8
|
const app = new OpenAPIHono();
|
|
8
9
|
const logger = getLogger$1("datasets");
|
|
9
|
-
app.
|
|
10
|
-
if (c.req.method === "POST") return requireProjectPermission("edit")(c, next);
|
|
11
|
-
return next();
|
|
12
|
-
});
|
|
13
|
-
app.use("/:datasetId", async (c, next) => {
|
|
14
|
-
if (["PATCH", "DELETE"].includes(c.req.method)) return requireProjectPermission("edit")(c, next);
|
|
15
|
-
return next();
|
|
16
|
-
});
|
|
17
|
-
app.openapi(createRoute({
|
|
10
|
+
app.openapi(createProtectedRoute({
|
|
18
11
|
method: "get",
|
|
19
12
|
path: "/",
|
|
20
13
|
summary: "List all Datasets",
|
|
21
14
|
operationId: "list-datasets",
|
|
22
15
|
tags: ["Evaluations"],
|
|
16
|
+
permission: requireProjectPermission("view"),
|
|
23
17
|
request: { params: TenantProjectParamsSchema },
|
|
24
18
|
responses: {
|
|
25
19
|
200: {
|
|
@@ -57,12 +51,13 @@ app.openapi(createRoute({
|
|
|
57
51
|
}), 500);
|
|
58
52
|
}
|
|
59
53
|
});
|
|
60
|
-
app.openapi(
|
|
54
|
+
app.openapi(createProtectedRoute({
|
|
61
55
|
method: "get",
|
|
62
56
|
path: "/{datasetId}",
|
|
63
57
|
summary: "Get Dataset by ID",
|
|
64
58
|
operationId: "get-dataset",
|
|
65
59
|
tags: ["Evaluations"],
|
|
60
|
+
permission: requireProjectPermission("view"),
|
|
66
61
|
request: { params: TenantProjectParamsSchema.extend({ datasetId: z.string() }) },
|
|
67
62
|
responses: {
|
|
68
63
|
200: {
|
|
@@ -98,12 +93,13 @@ app.openapi(createRoute({
|
|
|
98
93
|
}), 500);
|
|
99
94
|
}
|
|
100
95
|
});
|
|
101
|
-
app.openapi(
|
|
96
|
+
app.openapi(createProtectedRoute({
|
|
102
97
|
method: "post",
|
|
103
98
|
path: "/",
|
|
104
99
|
summary: "Create Dataset",
|
|
105
100
|
operationId: "create-dataset",
|
|
106
101
|
tags: ["Evaluations"],
|
|
102
|
+
permission: requireProjectPermission("edit"),
|
|
107
103
|
request: {
|
|
108
104
|
params: TenantProjectParamsSchema,
|
|
109
105
|
body: { content: { "application/json": { schema: DatasetApiInsertSchema } } }
|
|
@@ -146,12 +142,13 @@ app.openapi(createRoute({
|
|
|
146
142
|
}), 500);
|
|
147
143
|
}
|
|
148
144
|
});
|
|
149
|
-
app.openapi(
|
|
145
|
+
app.openapi(createProtectedRoute({
|
|
150
146
|
method: "patch",
|
|
151
147
|
path: "/{datasetId}",
|
|
152
148
|
summary: "Update Dataset by ID",
|
|
153
149
|
operationId: "update-dataset",
|
|
154
150
|
tags: ["Evaluations"],
|
|
151
|
+
permission: requireProjectPermission("edit"),
|
|
155
152
|
request: {
|
|
156
153
|
params: TenantProjectParamsSchema.extend({ datasetId: z.string() }),
|
|
157
154
|
body: { content: { "application/json": { schema: DatasetApiUpdateSchema } } }
|
|
@@ -199,12 +196,13 @@ app.openapi(createRoute({
|
|
|
199
196
|
}), 500);
|
|
200
197
|
}
|
|
201
198
|
});
|
|
202
|
-
app.openapi(
|
|
199
|
+
app.openapi(createProtectedRoute({
|
|
203
200
|
method: "delete",
|
|
204
201
|
path: "/{datasetId}",
|
|
205
202
|
summary: "Delete Dataset by ID",
|
|
206
203
|
operationId: "delete-dataset",
|
|
207
204
|
tags: ["Evaluations"],
|
|
205
|
+
permission: requireProjectPermission("edit"),
|
|
208
206
|
request: { params: TenantProjectParamsSchema.extend({ datasetId: z.string() }) },
|
|
209
207
|
responses: {
|
|
210
208
|
204: { description: "Dataset deleted" },
|
|
@@ -1,21 +1,19 @@
|
|
|
1
1
|
import { getLogger as getLogger$1 } from "../../../../logger.js";
|
|
2
2
|
import { requireProjectPermission } from "../../../../middleware/projectAccess.js";
|
|
3
|
-
import { OpenAPIHono,
|
|
3
|
+
import { OpenAPIHono, z } from "@hono/zod-openapi";
|
|
4
4
|
import { TenantProjectParamsSchema, commonGetErrorResponses, createApiError, createEvaluationJobConfigEvaluatorRelation, deleteEvaluationJobConfigEvaluatorRelation, generateId, getEvaluationJobConfigEvaluatorRelations } from "@inkeep/agents-core";
|
|
5
|
+
import { createProtectedRoute } from "@inkeep/agents-core/middleware";
|
|
5
6
|
|
|
6
7
|
//#region src/domains/manage/routes/evals/evaluationJobConfigEvaluatorRelations.ts
|
|
7
8
|
const app = new OpenAPIHono();
|
|
8
9
|
const logger = getLogger$1("evaluationJobConfigEvaluatorRelations");
|
|
9
|
-
app.
|
|
10
|
-
if (["POST", "DELETE"].includes(c.req.method)) return requireProjectPermission("edit")(c, next);
|
|
11
|
-
return next();
|
|
12
|
-
});
|
|
13
|
-
app.openapi(createRoute({
|
|
10
|
+
app.openapi(createProtectedRoute({
|
|
14
11
|
method: "get",
|
|
15
12
|
path: "/{configId}/evaluators",
|
|
16
13
|
summary: "List Evaluators for Evaluation Job Config",
|
|
17
14
|
operationId: "list-evaluation-job-config-evaluators",
|
|
18
15
|
tags: ["Evaluations"],
|
|
16
|
+
permission: requireProjectPermission("view"),
|
|
19
17
|
request: { params: TenantProjectParamsSchema.extend({ configId: z.string() }) },
|
|
20
18
|
responses: {
|
|
21
19
|
200: {
|
|
@@ -47,12 +45,13 @@ app.openapi(createRoute({
|
|
|
47
45
|
}), 500);
|
|
48
46
|
}
|
|
49
47
|
});
|
|
50
|
-
app.openapi(
|
|
48
|
+
app.openapi(createProtectedRoute({
|
|
51
49
|
method: "post",
|
|
52
50
|
path: "/{configId}/evaluators/{evaluatorId}",
|
|
53
51
|
summary: "Add Evaluator to Evaluation Job Config",
|
|
54
52
|
operationId: "add-evaluator-to-job-config",
|
|
55
53
|
tags: ["Evaluations"],
|
|
54
|
+
permission: requireProjectPermission("edit"),
|
|
56
55
|
request: { params: TenantProjectParamsSchema.extend({
|
|
57
56
|
configId: z.string(),
|
|
58
57
|
evaluatorId: z.string()
|
|
@@ -97,12 +96,13 @@ app.openapi(createRoute({
|
|
|
97
96
|
}), 500);
|
|
98
97
|
}
|
|
99
98
|
});
|
|
100
|
-
app.openapi(
|
|
99
|
+
app.openapi(createProtectedRoute({
|
|
101
100
|
method: "delete",
|
|
102
101
|
path: "/{configId}/evaluators/{evaluatorId}",
|
|
103
102
|
summary: "Remove Evaluator from Evaluation Job Config",
|
|
104
103
|
operationId: "remove-evaluator-from-job-config",
|
|
105
104
|
tags: ["Evaluations"],
|
|
105
|
+
permission: requireProjectPermission("edit"),
|
|
106
106
|
request: { params: TenantProjectParamsSchema.extend({
|
|
107
107
|
configId: z.string(),
|
|
108
108
|
evaluatorId: z.string()
|
|
@@ -2,20 +2,13 @@ import { getLogger as getLogger$1 } from "../../../../logger.js";
|
|
|
2
2
|
import runDbClient_default from "../../../../data/db/runDbClient.js";
|
|
3
3
|
import { queueEvaluationJobConversations } from "../../../evals/services/evaluationJob.js";
|
|
4
4
|
import { requireProjectPermission } from "../../../../middleware/projectAccess.js";
|
|
5
|
-
import { OpenAPIHono,
|
|
5
|
+
import { OpenAPIHono, z } from "@hono/zod-openapi";
|
|
6
6
|
import { EvaluationJobConfigApiInsertSchema, EvaluationJobConfigApiSelectSchema, EvaluationResultApiSelectSchema, ListResponseSchema, SingleResponseSchema, TenantProjectParamsSchema, commonGetErrorResponses, createApiError, createEvaluationJobConfig, createEvaluationJobConfigEvaluatorRelation, deleteEvaluationJobConfig, generateId, getConversation, getEvaluationJobConfigById, getMessagesByConversation, listEvaluationJobConfigs, listEvaluationResultsByRun, listEvaluationRuns } from "@inkeep/agents-core";
|
|
7
|
+
import { createProtectedRoute } from "@inkeep/agents-core/middleware";
|
|
7
8
|
|
|
8
9
|
//#region src/domains/manage/routes/evals/evaluationJobConfigs.ts
|
|
9
10
|
const app = new OpenAPIHono();
|
|
10
11
|
const logger = getLogger$1("evaluationJobConfigs");
|
|
11
|
-
app.use("/", async (c, next) => {
|
|
12
|
-
if (c.req.method === "POST") return requireProjectPermission("edit")(c, next);
|
|
13
|
-
return next();
|
|
14
|
-
});
|
|
15
|
-
app.use("/:configId", async (c, next) => {
|
|
16
|
-
if (c.req.method === "DELETE") return requireProjectPermission("edit")(c, next);
|
|
17
|
-
return next();
|
|
18
|
-
});
|
|
19
12
|
/**
|
|
20
13
|
* Extract plain filter criteria from a potential Filter wrapper.
|
|
21
14
|
* Returns null if the filter is a complex and/or combinator.
|
|
@@ -25,12 +18,13 @@ function getPlainJobFilters(filter) {
|
|
|
25
18
|
if ("and" in filter || "or" in filter) return null;
|
|
26
19
|
return filter;
|
|
27
20
|
}
|
|
28
|
-
app.openapi(
|
|
21
|
+
app.openapi(createProtectedRoute({
|
|
29
22
|
method: "get",
|
|
30
23
|
path: "/",
|
|
31
24
|
summary: "List Evaluation Job Configs",
|
|
32
25
|
operationId: "list-evaluation-job-configs",
|
|
33
26
|
tags: ["Evaluations"],
|
|
27
|
+
permission: requireProjectPermission("view"),
|
|
34
28
|
request: { params: TenantProjectParamsSchema },
|
|
35
29
|
responses: {
|
|
36
30
|
200: {
|
|
@@ -68,12 +62,13 @@ app.openapi(createRoute({
|
|
|
68
62
|
}), 500);
|
|
69
63
|
}
|
|
70
64
|
});
|
|
71
|
-
app.openapi(
|
|
65
|
+
app.openapi(createProtectedRoute({
|
|
72
66
|
method: "get",
|
|
73
67
|
path: "/{configId}",
|
|
74
68
|
summary: "Get Evaluation Job Config by ID",
|
|
75
69
|
operationId: "get-evaluation-job-config",
|
|
76
70
|
tags: ["Evaluations"],
|
|
71
|
+
permission: requireProjectPermission("view"),
|
|
77
72
|
request: { params: TenantProjectParamsSchema.extend({ configId: z.string() }) },
|
|
78
73
|
responses: {
|
|
79
74
|
200: {
|
|
@@ -109,12 +104,13 @@ app.openapi(createRoute({
|
|
|
109
104
|
}), 500);
|
|
110
105
|
}
|
|
111
106
|
});
|
|
112
|
-
app.openapi(
|
|
107
|
+
app.openapi(createProtectedRoute({
|
|
113
108
|
method: "post",
|
|
114
109
|
path: "/",
|
|
115
110
|
summary: "Create Evaluation Job Config",
|
|
116
111
|
operationId: "create-evaluation-job-config",
|
|
117
112
|
tags: ["Evaluations"],
|
|
113
|
+
permission: requireProjectPermission("edit"),
|
|
118
114
|
request: {
|
|
119
115
|
params: TenantProjectParamsSchema,
|
|
120
116
|
body: { content: { "application/json": { schema: EvaluationJobConfigApiInsertSchema } } }
|
|
@@ -194,12 +190,13 @@ app.openapi(createRoute({
|
|
|
194
190
|
}), 500);
|
|
195
191
|
}
|
|
196
192
|
});
|
|
197
|
-
app.openapi(
|
|
193
|
+
app.openapi(createProtectedRoute({
|
|
198
194
|
method: "delete",
|
|
199
195
|
path: "/{configId}",
|
|
200
196
|
summary: "Delete Evaluation Job Config",
|
|
201
197
|
operationId: "delete-evaluation-job-config",
|
|
202
198
|
tags: ["Evaluations"],
|
|
199
|
+
permission: requireProjectPermission("edit"),
|
|
203
200
|
request: { params: TenantProjectParamsSchema.extend({ configId: z.string() }) },
|
|
204
201
|
responses: {
|
|
205
202
|
204: { description: "Evaluation job config deleted" },
|
|
@@ -236,12 +233,13 @@ app.openapi(createRoute({
|
|
|
236
233
|
}), 500);
|
|
237
234
|
}
|
|
238
235
|
});
|
|
239
|
-
app.openapi(
|
|
236
|
+
app.openapi(createProtectedRoute({
|
|
240
237
|
method: "get",
|
|
241
238
|
path: "/{configId}/results",
|
|
242
239
|
summary: "Get Evaluation Results by Job Config ID",
|
|
243
240
|
operationId: "get-evaluation-job-config-results",
|
|
244
241
|
tags: ["Evaluations"],
|
|
242
|
+
permission: requireProjectPermission("view"),
|
|
245
243
|
request: { params: TenantProjectParamsSchema.extend({ configId: z.string() }) },
|
|
246
244
|
responses: {
|
|
247
245
|
200: {
|
|
@@ -1,26 +1,20 @@
|
|
|
1
1
|
import { getLogger as getLogger$1 } from "../../../../logger.js";
|
|
2
2
|
import runDbClient_default from "../../../../data/db/runDbClient.js";
|
|
3
3
|
import { requireProjectPermission } from "../../../../middleware/projectAccess.js";
|
|
4
|
-
import { OpenAPIHono,
|
|
4
|
+
import { OpenAPIHono, z } from "@hono/zod-openapi";
|
|
5
5
|
import { EvaluationResultApiInsertSchema, EvaluationResultApiSelectSchema, EvaluationResultApiUpdateSchema, SingleResponseSchema, TenantProjectParamsSchema, commonGetErrorResponses, createApiError, createEvaluationResult, deleteEvaluationResult, generateId, getEvaluationResultById, updateEvaluationResult } from "@inkeep/agents-core";
|
|
6
|
+
import { createProtectedRoute } from "@inkeep/agents-core/middleware";
|
|
6
7
|
|
|
7
8
|
//#region src/domains/manage/routes/evals/evaluationResults.ts
|
|
8
9
|
const app = new OpenAPIHono();
|
|
9
10
|
const logger = getLogger$1("evaluationResults");
|
|
10
|
-
app.
|
|
11
|
-
if (c.req.method === "POST") return requireProjectPermission("edit")(c, next);
|
|
12
|
-
return next();
|
|
13
|
-
});
|
|
14
|
-
app.use("/:resultId", async (c, next) => {
|
|
15
|
-
if (["PATCH", "DELETE"].includes(c.req.method)) return requireProjectPermission("edit")(c, next);
|
|
16
|
-
return next();
|
|
17
|
-
});
|
|
18
|
-
app.openapi(createRoute({
|
|
11
|
+
app.openapi(createProtectedRoute({
|
|
19
12
|
method: "get",
|
|
20
13
|
path: "/{resultId}",
|
|
21
14
|
summary: "Get Evaluation Result by ID",
|
|
22
15
|
operationId: "get-evaluation-result",
|
|
23
16
|
tags: ["Evaluations"],
|
|
17
|
+
permission: requireProjectPermission("view"),
|
|
24
18
|
request: { params: TenantProjectParamsSchema.extend({ resultId: z.string() }) },
|
|
25
19
|
responses: {
|
|
26
20
|
200: {
|
|
@@ -55,12 +49,13 @@ app.openapi(createRoute({
|
|
|
55
49
|
}), 500);
|
|
56
50
|
}
|
|
57
51
|
});
|
|
58
|
-
app.openapi(
|
|
52
|
+
app.openapi(createProtectedRoute({
|
|
59
53
|
method: "post",
|
|
60
54
|
path: "/",
|
|
61
55
|
summary: "Create Evaluation Result",
|
|
62
56
|
operationId: "create-evaluation-result",
|
|
63
57
|
tags: ["Evaluations"],
|
|
58
|
+
permission: requireProjectPermission("edit"),
|
|
64
59
|
request: {
|
|
65
60
|
params: TenantProjectParamsSchema,
|
|
66
61
|
body: { content: { "application/json": { schema: EvaluationResultApiInsertSchema } } }
|
|
@@ -102,12 +97,13 @@ app.openapi(createRoute({
|
|
|
102
97
|
}), 500);
|
|
103
98
|
}
|
|
104
99
|
});
|
|
105
|
-
app.openapi(
|
|
100
|
+
app.openapi(createProtectedRoute({
|
|
106
101
|
method: "patch",
|
|
107
102
|
path: "/{resultId}",
|
|
108
103
|
summary: "Update Evaluation Result",
|
|
109
104
|
operationId: "update-evaluation-result",
|
|
110
105
|
tags: ["Evaluations"],
|
|
106
|
+
permission: requireProjectPermission("edit"),
|
|
111
107
|
request: {
|
|
112
108
|
params: TenantProjectParamsSchema.extend({ resultId: z.string() }),
|
|
113
109
|
body: { content: { "application/json": { schema: EvaluationResultApiUpdateSchema } } }
|
|
@@ -154,12 +150,13 @@ app.openapi(createRoute({
|
|
|
154
150
|
}), 500);
|
|
155
151
|
}
|
|
156
152
|
});
|
|
157
|
-
app.openapi(
|
|
153
|
+
app.openapi(createProtectedRoute({
|
|
158
154
|
method: "delete",
|
|
159
155
|
path: "/{resultId}",
|
|
160
156
|
summary: "Delete Evaluation Result",
|
|
161
157
|
operationId: "delete-evaluation-result",
|
|
162
158
|
tags: ["Evaluations"],
|
|
159
|
+
permission: requireProjectPermission("edit"),
|
|
163
160
|
request: { params: TenantProjectParamsSchema.extend({ resultId: z.string() }) },
|
|
164
161
|
responses: {
|
|
165
162
|
204: { description: "Evaluation result deleted" },
|