@polpo-ai/server 0.15.143 → 0.15.144
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/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/routes/data-openapi.d.ts +4 -0
- package/dist/routes/data-openapi.d.ts.map +1 -0
- package/dist/routes/data-openapi.js +156 -0
- package/dist/routes/data-openapi.js.map +1 -0
- package/dist/routes/data.d.ts +6 -0
- package/dist/routes/data.d.ts.map +1 -0
- package/dist/routes/data.js +102 -0
- package/dist/routes/data.js.map +1 -0
- package/dist/routes/data.test.d.ts +2 -0
- package/dist/routes/data.test.d.ts.map +1 -0
- package/dist/routes/data.test.js +51 -0
- package/dist/routes/data.test.js.map +1 -0
- package/dist/schemas.d.ts +12 -12
- package/package.json +7 -7
package/dist/index.d.ts
CHANGED
|
@@ -7,6 +7,7 @@
|
|
|
7
7
|
* For routes that require Node.js (completions, files, agents avatar),
|
|
8
8
|
* import from "polpo-ai" instead.
|
|
9
9
|
*/
|
|
10
|
+
export { dataRoutes, type DataServiceResolver } from "./routes/data.js";
|
|
10
11
|
export { taskRoutes } from "./routes/tasks.js";
|
|
11
12
|
export { missionRoutes } from "./routes/missions.js";
|
|
12
13
|
export { playbookRoutes } from "./routes/playbooks.js";
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,EAAE,UAAU,EAAE,KAAK,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACxE,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EACL,eAAe,EACf,oBAAoB,EACpB,KAAK,0BAA0B,EAC/B,KAAK,wBAAwB,EAC7B,KAAK,sBAAsB,GAC5B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,uBAAuB,EACvB,6BAA6B,EAC7B,KAAK,0BAA0B,EAC/B,KAAK,0BAA0B,EAC/B,KAAK,6BAA6B,EAClC,KAAK,4BAA4B,EACjC,KAAK,4BAA4B,EACjC,KAAK,2BAA2B,GACjC,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EACL,WAAW,EACX,KAAK,cAAc,GACpB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACpB,qBAAqB,EACrB,8BAA8B,EAC9B,mBAAmB,EACnB,iBAAiB,EACjB,sBAAsB,EACtB,KAAK,sBAAsB,EAC3B,KAAK,wBAAwB,EAC7B,KAAK,oBAAoB,EACzB,KAAK,wBAAwB,EAC7B,KAAK,mBAAmB,EACxB,KAAK,2BAA2B,EAChC,KAAK,mCAAmC,EACxC,KAAK,2BAA2B,EAChC,KAAK,0BAA0B,EAC/B,KAAK,sBAAsB,EAC3B,KAAK,2BAA2B,GACjC,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,wBAAwB,EACxB,oCAAoC,EACpC,KAAK,kCAAkC,EACvC,KAAK,+BAA+B,EACpC,KAAK,8BAA8B,EACnC,KAAK,0BAA0B,EAC/B,KAAK,2BAA2B,EAChC,KAAK,+BAA+B,EACpC,KAAK,yBAAyB,EAC9B,KAAK,0BAA0B,EAC/B,KAAK,2BAA2B,EAChC,KAAK,gCAAgC,GACtC,MAAM,mCAAmC,CAAC;AAC3C,YAAY,EAAE,mCAAmC,EAAE,MAAM,yCAAyC,CAAC;AACnG,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,KAAK,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,KAAK,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAC7E,OAAO,EACL,iBAAiB,EACjB,KAAK,oBAAoB,GAC1B,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,iBAAiB,EACjB,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,GAC1B,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,WAAW,EAAE,KAAK,WAAW,EAAE,KAAK,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACrF,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,KAAK,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,KAAK,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACtE,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EACL,gBAAgB,EAChB,KAAK,kBAAkB,EACvB,KAAK,wBAAwB,EAC7B,KAAK,sBAAsB,EAC3B,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,GACtB,MAAM,0BAA0B,CAAC;AAElC,YAAY,EACV,aAAa,EACb,gBAAgB,EAChB,iBAAiB,EACjB,iBAAiB,EACjB,aAAa,EACb,cAAc,EACd,iBAAiB,EACjB,gBAAgB,EAChB,cAAc,EACd,eAAe,EACf,aAAa,EACb,cAAc,EACd,gBAAgB,EAChB,0BAA0B,EAC1B,eAAe,GAChB,MAAM,WAAW,CAAC;AAGnB,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,+BAA+B,EAAE,MAAM,cAAc,CAAC;AAC1I,OAAO,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAC;AAC9E,OAAO,EACL,4BAA4B,EAC5B,KAAK,4BAA4B,EACjC,KAAK,+BAA+B,EACpC,KAAK,6BAA6B,GACnC,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAGhF,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1E,YAAY,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -8,6 +8,7 @@
|
|
|
8
8
|
* import from "polpo-ai" instead.
|
|
9
9
|
*/
|
|
10
10
|
// Route factories
|
|
11
|
+
export { dataRoutes } from "./routes/data.js";
|
|
11
12
|
export { taskRoutes } from "./routes/tasks.js";
|
|
12
13
|
export { missionRoutes } from "./routes/missions.js";
|
|
13
14
|
export { playbookRoutes } from "./routes/playbooks.js";
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,kBAAkB;AAClB,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EACL,eAAe,EACf,oBAAoB,GAIrB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,uBAAuB,EACvB,6BAA6B,GAO9B,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EACL,WAAW,GAEZ,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACpB,qBAAqB,EACrB,8BAA8B,EAC9B,mBAAmB,EACnB,iBAAiB,EACjB,sBAAsB,GAYvB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,wBAAwB,EACxB,oCAAoC,GAWrC,MAAM,mCAAmC,CAAC;AAE3C,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAsB,MAAM,mBAAmB,CAAC;AACnE,OAAO,EAAE,aAAa,EAAyB,MAAM,uBAAuB,CAAC;AAC7E,OAAO,EACL,iBAAiB,GAElB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,iBAAiB,GAGlB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,WAAW,EAAsC,MAAM,oBAAoB,CAAC;AACrF,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAsB,MAAM,mBAAmB,CAAC;AACnE,OAAO,EAAE,WAAW,EAAuB,MAAM,oBAAoB,CAAC;AACtE,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EACL,gBAAgB,GAMjB,MAAM,0BAA0B,CAAC;AAoBlC,uEAAuE;AACvE,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,+BAA+B,EAAE,MAAM,cAAc,CAAC;AAC1I,OAAO,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAC;AAC9E,OAAO,EACL,4BAA4B,GAI7B,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAEhF,mDAAmD;AACnD,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,kBAAkB;AAClB,OAAO,EAAE,UAAU,EAA4B,MAAM,kBAAkB,CAAC;AACxE,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EACL,eAAe,EACf,oBAAoB,GAIrB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,uBAAuB,EACvB,6BAA6B,GAO9B,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EACL,WAAW,GAEZ,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACpB,qBAAqB,EACrB,8BAA8B,EAC9B,mBAAmB,EACnB,iBAAiB,EACjB,sBAAsB,GAYvB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,wBAAwB,EACxB,oCAAoC,GAWrC,MAAM,mCAAmC,CAAC;AAE3C,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAsB,MAAM,mBAAmB,CAAC;AACnE,OAAO,EAAE,aAAa,EAAyB,MAAM,uBAAuB,CAAC;AAC7E,OAAO,EACL,iBAAiB,GAElB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,iBAAiB,GAGlB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,WAAW,EAAsC,MAAM,oBAAoB,CAAC;AACrF,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAsB,MAAM,mBAAmB,CAAC;AACnE,OAAO,EAAE,WAAW,EAAuB,MAAM,oBAAoB,CAAC;AACtE,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EACL,gBAAgB,GAMjB,MAAM,0BAA0B,CAAC;AAoBlC,uEAAuE;AACvE,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,+BAA+B,EAAE,MAAM,cAAc,CAAC;AAC1I,OAAO,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAC;AAC9E,OAAO,EACL,4BAA4B,GAI7B,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAEhF,mDAAmD;AACnD,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"data-openapi.d.ts","sourceRoot":"","sources":["../../src/routes/data-openapi.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAK,MAAM,mBAAmB,CAAC;AAYnD,kFAAkF;AAClF,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,WAAW,QAgKnD"}
|
|
@@ -0,0 +1,156 @@
|
|
|
1
|
+
import { z } from "@hono/zod-openapi";
|
|
2
|
+
import { CreateDataSchema, DataBatchSchema, DataValueSchema, DataQuerySchema, DataSchema, DataSqlMigrationSchema, MigrateDataSchema, RenameDataSchema, } from "@polpo-ai/core/data";
|
|
3
|
+
/** Register the schemas used by DataService without adding a second validator. */
|
|
4
|
+
export function registerDataOpenApi(app) {
|
|
5
|
+
// JSON is recursive, but any JSON value is represented by these six types.
|
|
6
|
+
// Explicit metadata avoids both infinite lazy expansion and a nullable $ref
|
|
7
|
+
// being wrapped in oneOf(null, ref-that-already-allows-null).
|
|
8
|
+
// Use public Zod metadata rather than .openapi(): canonical schemas may
|
|
9
|
+
// have been created before the host initialized its OpenAPI extension.
|
|
10
|
+
DataValueSchema.register(z.globalRegistry, {
|
|
11
|
+
type: ["string", "number", "boolean", "object", "array", "null"],
|
|
12
|
+
description: "Any JSON value; arrays and objects may contain nested JSON values.",
|
|
13
|
+
});
|
|
14
|
+
const resource = z.object({
|
|
15
|
+
id: z.string().uuid(),
|
|
16
|
+
name: z.string(),
|
|
17
|
+
schema: DataSchema,
|
|
18
|
+
schemaVersion: z.number().int(),
|
|
19
|
+
createdAt: z.string(),
|
|
20
|
+
});
|
|
21
|
+
const row = z.record(z.string(), z.unknown());
|
|
22
|
+
const queryResult = z.object({
|
|
23
|
+
rows: z.array(row),
|
|
24
|
+
rowCount: z.number().int(),
|
|
25
|
+
truncated: z.boolean(),
|
|
26
|
+
});
|
|
27
|
+
const batchResult = z.array(z.object({
|
|
28
|
+
rows: z.array(row),
|
|
29
|
+
total: z.number().int().optional(),
|
|
30
|
+
nextOffset: z.number().int().nullable().optional(),
|
|
31
|
+
}));
|
|
32
|
+
const history = z.array(z.object({
|
|
33
|
+
id: z.string(),
|
|
34
|
+
checksum: z.string(),
|
|
35
|
+
schemaVersion: z.number().int(),
|
|
36
|
+
appliedAt: z.string(),
|
|
37
|
+
}));
|
|
38
|
+
const error = z.object({
|
|
39
|
+
ok: z.literal(false),
|
|
40
|
+
code: z.string(),
|
|
41
|
+
error: z.string(),
|
|
42
|
+
});
|
|
43
|
+
const definitions = [
|
|
44
|
+
{
|
|
45
|
+
method: "get",
|
|
46
|
+
path: "/",
|
|
47
|
+
summary: "List accessible databases",
|
|
48
|
+
result: z.array(resource),
|
|
49
|
+
},
|
|
50
|
+
{
|
|
51
|
+
method: "post",
|
|
52
|
+
path: "/",
|
|
53
|
+
summary: "Create a database and its tables",
|
|
54
|
+
body: CreateDataSchema,
|
|
55
|
+
result: resource,
|
|
56
|
+
status: 201,
|
|
57
|
+
},
|
|
58
|
+
{
|
|
59
|
+
method: "get",
|
|
60
|
+
path: "/{resource}",
|
|
61
|
+
summary: "Describe a database",
|
|
62
|
+
result: resource,
|
|
63
|
+
},
|
|
64
|
+
{
|
|
65
|
+
method: "patch",
|
|
66
|
+
path: "/{resource}",
|
|
67
|
+
summary: "Rename a database",
|
|
68
|
+
body: RenameDataSchema,
|
|
69
|
+
result: resource,
|
|
70
|
+
},
|
|
71
|
+
{
|
|
72
|
+
method: "put",
|
|
73
|
+
path: "/{resource}/schema",
|
|
74
|
+
summary: "Apply an additive table schema migration",
|
|
75
|
+
body: MigrateDataSchema,
|
|
76
|
+
result: resource,
|
|
77
|
+
},
|
|
78
|
+
{
|
|
79
|
+
method: "delete",
|
|
80
|
+
path: "/{resource}",
|
|
81
|
+
summary: "Delete a database and its records",
|
|
82
|
+
result: z.object({ deleted: z.literal(true) }),
|
|
83
|
+
query: z.object({ expectedVersion: z.string().regex(/^[1-9][0-9]*$/) }),
|
|
84
|
+
},
|
|
85
|
+
{
|
|
86
|
+
method: "post",
|
|
87
|
+
path: "/{resource}/transactions",
|
|
88
|
+
summary: "Run an atomic batch of structured record operations",
|
|
89
|
+
body: DataBatchSchema,
|
|
90
|
+
result: batchResult,
|
|
91
|
+
},
|
|
92
|
+
{
|
|
93
|
+
method: "post",
|
|
94
|
+
path: "/{resource}/query",
|
|
95
|
+
summary: "Run a scoped SQL query or mutation",
|
|
96
|
+
body: DataQuerySchema,
|
|
97
|
+
result: queryResult,
|
|
98
|
+
},
|
|
99
|
+
{
|
|
100
|
+
method: "get",
|
|
101
|
+
path: "/{resource}/migrations",
|
|
102
|
+
summary: "List applied SQL migrations (manage grant)",
|
|
103
|
+
result: history,
|
|
104
|
+
},
|
|
105
|
+
{
|
|
106
|
+
method: "post",
|
|
107
|
+
path: "/{resource}/migrations",
|
|
108
|
+
summary: "Apply an atomic SQL migration (manage grant)",
|
|
109
|
+
body: DataSqlMigrationSchema,
|
|
110
|
+
result: resource,
|
|
111
|
+
},
|
|
112
|
+
];
|
|
113
|
+
for (const definition of definitions)
|
|
114
|
+
app.openAPIRegistry.registerPath({
|
|
115
|
+
method: definition.method,
|
|
116
|
+
path: definition.path,
|
|
117
|
+
tags: ["Databases"],
|
|
118
|
+
summary: definition.summary,
|
|
119
|
+
description: "Requires host authentication and current database grants. Names and stable UUIDs are accepted as resource references. SQL availability and dialect depend on the provider; the PostgreSQL adapter supports a bounded subset, not arbitrary server SQL.",
|
|
120
|
+
request: {
|
|
121
|
+
...(definition.path.includes("{resource}")
|
|
122
|
+
? { params: z.object({ resource: z.string().min(1).max(128) }) }
|
|
123
|
+
: {}),
|
|
124
|
+
...("body" in definition
|
|
125
|
+
? {
|
|
126
|
+
body: {
|
|
127
|
+
required: true,
|
|
128
|
+
content: { "application/json": { schema: definition.body } },
|
|
129
|
+
},
|
|
130
|
+
}
|
|
131
|
+
: {}),
|
|
132
|
+
...("query" in definition ? { query: definition.query } : {}),
|
|
133
|
+
},
|
|
134
|
+
responses: {
|
|
135
|
+
["status" in definition ? definition.status : 200]: {
|
|
136
|
+
description: "Success",
|
|
137
|
+
content: {
|
|
138
|
+
"application/json": {
|
|
139
|
+
schema: z.object({
|
|
140
|
+
ok: z.literal(true),
|
|
141
|
+
data: definition.result,
|
|
142
|
+
}),
|
|
143
|
+
},
|
|
144
|
+
},
|
|
145
|
+
},
|
|
146
|
+
...Object.fromEntries([400, 401, 403, 404, 409, 413, 422, 503].map((status) => [
|
|
147
|
+
status,
|
|
148
|
+
{
|
|
149
|
+
description: "Invalid, denied, conflicting, bounded or unavailable request",
|
|
150
|
+
content: { "application/json": { schema: error } },
|
|
151
|
+
},
|
|
152
|
+
])),
|
|
153
|
+
},
|
|
154
|
+
});
|
|
155
|
+
}
|
|
156
|
+
//# sourceMappingURL=data-openapi.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"data-openapi.js","sourceRoot":"","sources":["../../src/routes/data-openapi.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { OpenAPIHono } from "@hono/zod-openapi";
|
|
2
|
+
import { type DataService } from "@polpo-ai/core/data";
|
|
3
|
+
export type DataServiceResolver = (request: Request) => DataService | Promise<DataService>;
|
|
4
|
+
/** The host authenticates requests and resolves grants afresh before each operation. */
|
|
5
|
+
export declare function dataRoutes(resolve: DataServiceResolver): OpenAPIHono;
|
|
6
|
+
//# sourceMappingURL=data.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"data.d.ts","sourceRoot":"","sources":["../../src/routes/data.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAa,KAAK,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAGlE,MAAM,MAAM,mBAAmB,GAAG,CAChC,OAAO,EAAE,OAAO,KACb,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;AACxC,wFAAwF;AACxF,wBAAgB,UAAU,CAAC,OAAO,EAAE,mBAAmB,GAAG,WAAW,CA+HpE"}
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
import { OpenAPIHono } from "@hono/zod-openapi";
|
|
2
|
+
import { bodyLimit } from "hono/body-limit";
|
|
3
|
+
import { DataError } from "@polpo-ai/core/data";
|
|
4
|
+
import { registerDataOpenApi } from "./data-openapi.js";
|
|
5
|
+
/** The host authenticates requests and resolves grants afresh before each operation. */
|
|
6
|
+
export function dataRoutes(resolve) {
|
|
7
|
+
const app = new OpenAPIHono();
|
|
8
|
+
registerDataOpenApi(app);
|
|
9
|
+
app.use("*", bodyLimit({
|
|
10
|
+
maxSize: 262144,
|
|
11
|
+
onError: (c) => c.json({
|
|
12
|
+
ok: false,
|
|
13
|
+
code: "data_limit",
|
|
14
|
+
error: "Data request exceeds 256 KiB",
|
|
15
|
+
}, 413),
|
|
16
|
+
}));
|
|
17
|
+
app.onError((error, c) => {
|
|
18
|
+
const known = error instanceof DataError;
|
|
19
|
+
const code = known ? error.code : "data_unavailable";
|
|
20
|
+
const statuses = {
|
|
21
|
+
data_invalid: 400,
|
|
22
|
+
data_forbidden: 403,
|
|
23
|
+
data_not_found: 404,
|
|
24
|
+
data_conflict: 409,
|
|
25
|
+
data_constraint: 422,
|
|
26
|
+
data_limit: 413,
|
|
27
|
+
data_unavailable: 503,
|
|
28
|
+
};
|
|
29
|
+
return c.json({
|
|
30
|
+
ok: false,
|
|
31
|
+
code,
|
|
32
|
+
error: known ? error.message : "Data service unavailable",
|
|
33
|
+
}, statuses[code]);
|
|
34
|
+
});
|
|
35
|
+
const body = async (c) => {
|
|
36
|
+
try {
|
|
37
|
+
return await c.req.json();
|
|
38
|
+
}
|
|
39
|
+
catch (error) {
|
|
40
|
+
if (error instanceof Error && error.name === "BodyLimitError")
|
|
41
|
+
throw error;
|
|
42
|
+
throw new DataError("data_invalid", "Expected a JSON request body");
|
|
43
|
+
}
|
|
44
|
+
};
|
|
45
|
+
app.get("/", async (c) => c.json({ ok: true, data: await (await resolve(c.req.raw)).list() }));
|
|
46
|
+
app.post("/", async (c) => {
|
|
47
|
+
const input = await body(c);
|
|
48
|
+
return c.json({ ok: true, data: await (await resolve(c.req.raw)).create(input) }, 201);
|
|
49
|
+
});
|
|
50
|
+
app.get("/:resource", async (c) => c.json({
|
|
51
|
+
ok: true,
|
|
52
|
+
data: await (await resolve(c.req.raw)).describe(c.req.param("resource")),
|
|
53
|
+
}));
|
|
54
|
+
app.patch("/:resource", async (c) => {
|
|
55
|
+
const input = await body(c);
|
|
56
|
+
return c.json({
|
|
57
|
+
ok: true,
|
|
58
|
+
data: await (await resolve(c.req.raw)).rename(c.req.param("resource"), input),
|
|
59
|
+
});
|
|
60
|
+
});
|
|
61
|
+
app.put("/:resource/schema", async (c) => {
|
|
62
|
+
const input = await body(c);
|
|
63
|
+
return c.json({
|
|
64
|
+
ok: true,
|
|
65
|
+
data: await (await resolve(c.req.raw)).migrate(c.req.param("resource"), input),
|
|
66
|
+
});
|
|
67
|
+
});
|
|
68
|
+
app.delete("/:resource", async (c) => {
|
|
69
|
+
const version = c.req.query("expectedVersion");
|
|
70
|
+
if (!version || !/^[1-9][0-9]*$/.test(version))
|
|
71
|
+
throw new DataError("data_invalid", "expectedVersion is required");
|
|
72
|
+
await (await resolve(c.req.raw)).remove(c.req.param("resource"), Number(version));
|
|
73
|
+
return c.json({ ok: true, data: { deleted: true } });
|
|
74
|
+
});
|
|
75
|
+
app.post("/:resource/transactions", async (c) => {
|
|
76
|
+
const input = await body(c);
|
|
77
|
+
return c.json({
|
|
78
|
+
ok: true,
|
|
79
|
+
data: await (await resolve(c.req.raw)).execute(c.req.param("resource"), input),
|
|
80
|
+
});
|
|
81
|
+
});
|
|
82
|
+
app.post("/:resource/query", async (c) => {
|
|
83
|
+
const input = await body(c);
|
|
84
|
+
return c.json({
|
|
85
|
+
ok: true,
|
|
86
|
+
data: await (await resolve(c.req.raw)).query(c.req.param("resource"), input),
|
|
87
|
+
});
|
|
88
|
+
});
|
|
89
|
+
app.get("/:resource/migrations", async (c) => c.json({
|
|
90
|
+
ok: true,
|
|
91
|
+
data: await (await resolve(c.req.raw)).migrations(c.req.param("resource")),
|
|
92
|
+
}));
|
|
93
|
+
app.post("/:resource/migrations", async (c) => {
|
|
94
|
+
const input = await body(c);
|
|
95
|
+
return c.json({
|
|
96
|
+
ok: true,
|
|
97
|
+
data: await (await resolve(c.req.raw)).migrateSql(c.req.param("resource"), input),
|
|
98
|
+
});
|
|
99
|
+
});
|
|
100
|
+
return app;
|
|
101
|
+
}
|
|
102
|
+
//# sourceMappingURL=data.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"data.js","sourceRoot":"","sources":["../../src/routes/data.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"data.test.d.ts","sourceRoot":"","sources":["../../src/routes/data.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { describe, expect, it, vi } from "vitest";
|
|
2
|
+
import { DataError } from "@polpo-ai/core/data";
|
|
3
|
+
import { dataRoutes } from "./data.js";
|
|
4
|
+
describe("Data HTTP boundary", () => {
|
|
5
|
+
it("requires an authenticated host resolver and sanitizes unexpected errors", async () => {
|
|
6
|
+
const app = dataRoutes(async () => {
|
|
7
|
+
throw new Error("postgres://secret@private");
|
|
8
|
+
});
|
|
9
|
+
const response = await app.request("/");
|
|
10
|
+
expect(response.status).toBe(503);
|
|
11
|
+
expect(await response.text()).not.toContain("secret");
|
|
12
|
+
});
|
|
13
|
+
it("preserves scoped denial without invoking another service operation", async () => {
|
|
14
|
+
const execute = vi
|
|
15
|
+
.fn()
|
|
16
|
+
.mockRejectedValue(new DataError("data_forbidden", "Data access is not granted"));
|
|
17
|
+
const app = dataRoutes(async () => ({ execute }));
|
|
18
|
+
const response = await app.request("/crm/transactions", {
|
|
19
|
+
method: "POST",
|
|
20
|
+
body: JSON.stringify({
|
|
21
|
+
operations: [{ op: "list", table: "customers" }],
|
|
22
|
+
}),
|
|
23
|
+
headers: { "Content-Type": "application/json" },
|
|
24
|
+
});
|
|
25
|
+
expect(response.status).toBe(403);
|
|
26
|
+
expect(await response.json()).toMatchObject({
|
|
27
|
+
ok: false,
|
|
28
|
+
code: "data_forbidden",
|
|
29
|
+
});
|
|
30
|
+
});
|
|
31
|
+
it("rejects malformed and oversized JSON before service resolution", async () => {
|
|
32
|
+
const resolve = vi.fn();
|
|
33
|
+
const app = dataRoutes(resolve);
|
|
34
|
+
const malformed = await app.request("/", { method: "POST", body: "{" });
|
|
35
|
+
expect(malformed.status).toBe(400);
|
|
36
|
+
const oversized = await app.request("/", {
|
|
37
|
+
method: "POST",
|
|
38
|
+
body: "x".repeat(262145),
|
|
39
|
+
});
|
|
40
|
+
expect(oversized.status).toBe(413);
|
|
41
|
+
expect(resolve).not.toHaveBeenCalled();
|
|
42
|
+
});
|
|
43
|
+
it("uses the canonical success envelope", async () => {
|
|
44
|
+
const app = dataRoutes(async () => ({ list: async () => [] }));
|
|
45
|
+
expect(await (await app.request("/")).json()).toEqual({
|
|
46
|
+
ok: true,
|
|
47
|
+
data: [],
|
|
48
|
+
});
|
|
49
|
+
});
|
|
50
|
+
});
|
|
51
|
+
//# sourceMappingURL=data.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"data.test.js","sourceRoot":"","sources":["../../src/routes/data.test.ts"],"names":[],"mappings":"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"}
|
package/dist/schemas.d.ts
CHANGED
|
@@ -73,9 +73,9 @@ export declare const CreateTaskSchema: z.ZodObject<{
|
|
|
73
73
|
expectedOutcomes: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
74
74
|
type: z.ZodEnum<{
|
|
75
75
|
file: "file";
|
|
76
|
+
json: "json";
|
|
76
77
|
text: "text";
|
|
77
78
|
url: "url";
|
|
78
|
-
json: "json";
|
|
79
79
|
media: "media";
|
|
80
80
|
}>;
|
|
81
81
|
label: z.ZodString;
|
|
@@ -110,9 +110,9 @@ export declare const CreateTaskSchema: z.ZodObject<{
|
|
|
110
110
|
includeOutcomes: z.ZodOptional<z.ZodBoolean>;
|
|
111
111
|
outcomeFilter: z.ZodOptional<z.ZodArray<z.ZodEnum<{
|
|
112
112
|
file: "file";
|
|
113
|
+
json: "json";
|
|
113
114
|
text: "text";
|
|
114
115
|
url: "url";
|
|
115
|
-
json: "json";
|
|
116
116
|
media: "media";
|
|
117
117
|
}>>>;
|
|
118
118
|
maxAttachmentSize: z.ZodOptional<z.ZodNumber>;
|
|
@@ -205,9 +205,9 @@ export declare const CreateMissionSchema: z.ZodObject<{
|
|
|
205
205
|
includeOutcomes: z.ZodOptional<z.ZodBoolean>;
|
|
206
206
|
outcomeFilter: z.ZodOptional<z.ZodArray<z.ZodEnum<{
|
|
207
207
|
file: "file";
|
|
208
|
+
json: "json";
|
|
208
209
|
text: "text";
|
|
209
210
|
url: "url";
|
|
210
|
-
json: "json";
|
|
211
211
|
media: "media";
|
|
212
212
|
}>>>;
|
|
213
213
|
maxAttachmentSize: z.ZodOptional<z.ZodNumber>;
|
|
@@ -364,9 +364,9 @@ export declare const UpdateMissionNotificationsSchema: z.ZodObject<{
|
|
|
364
364
|
includeOutcomes: z.ZodOptional<z.ZodBoolean>;
|
|
365
365
|
outcomeFilter: z.ZodOptional<z.ZodArray<z.ZodEnum<{
|
|
366
366
|
file: "file";
|
|
367
|
+
json: "json";
|
|
367
368
|
text: "text";
|
|
368
369
|
url: "url";
|
|
369
|
-
json: "json";
|
|
370
370
|
media: "media";
|
|
371
371
|
}>>>;
|
|
372
372
|
maxAttachmentSize: z.ZodOptional<z.ZodNumber>;
|
|
@@ -495,10 +495,10 @@ export declare const AddAgentSchema: z.ZodIntersection<z.ZodObject<{
|
|
|
495
495
|
"invocation-user": "invocation-user";
|
|
496
496
|
}>>;
|
|
497
497
|
writableKinds: z.ZodOptional<z.ZodArray<z.ZodEnum<{
|
|
498
|
+
style: "style";
|
|
498
499
|
fact: "fact";
|
|
499
500
|
preference: "preference";
|
|
500
501
|
open_thread: "open_thread";
|
|
501
|
-
style: "style";
|
|
502
502
|
failure_pattern: "failure_pattern";
|
|
503
503
|
successful_episode: "successful_episode";
|
|
504
504
|
procedure_hint: "procedure_hint";
|
|
@@ -515,10 +515,10 @@ export declare const AddAgentSchema: z.ZodIntersection<z.ZodObject<{
|
|
|
515
515
|
chat: "chat";
|
|
516
516
|
}>>>;
|
|
517
517
|
kinds: z.ZodOptional<z.ZodArray<z.ZodEnum<{
|
|
518
|
+
style: "style";
|
|
518
519
|
fact: "fact";
|
|
519
520
|
preference: "preference";
|
|
520
521
|
open_thread: "open_thread";
|
|
521
|
-
style: "style";
|
|
522
522
|
failure_pattern: "failure_pattern";
|
|
523
523
|
successful_episode: "successful_episode";
|
|
524
524
|
procedure_hint: "procedure_hint";
|
|
@@ -599,10 +599,10 @@ export declare const AddAgentSchema: z.ZodIntersection<z.ZodObject<{
|
|
|
599
599
|
webhook: "webhook";
|
|
600
600
|
}>>>;
|
|
601
601
|
sources: z.ZodOptional<z.ZodArray<z.ZodEnum<{
|
|
602
|
+
request: "request";
|
|
602
603
|
schedule: "schedule";
|
|
603
604
|
task: "task";
|
|
604
605
|
channel: "channel";
|
|
605
|
-
request: "request";
|
|
606
606
|
"loop-step": "loop-step";
|
|
607
607
|
internal: "internal";
|
|
608
608
|
}>>>;
|
|
@@ -622,10 +622,10 @@ export declare const AddAgentSchema: z.ZodIntersection<z.ZodObject<{
|
|
|
622
622
|
webhook: "webhook";
|
|
623
623
|
}>>>;
|
|
624
624
|
sources: z.ZodOptional<z.ZodArray<z.ZodEnum<{
|
|
625
|
+
request: "request";
|
|
625
626
|
schedule: "schedule";
|
|
626
627
|
task: "task";
|
|
627
628
|
channel: "channel";
|
|
628
|
-
request: "request";
|
|
629
629
|
"loop-step": "loop-step";
|
|
630
630
|
internal: "internal";
|
|
631
631
|
}>>>;
|
|
@@ -727,10 +727,10 @@ export declare const UpdateAgentSchema: z.ZodIntersection<z.ZodObject<{
|
|
|
727
727
|
"invocation-user": "invocation-user";
|
|
728
728
|
}>>;
|
|
729
729
|
writableKinds: z.ZodOptional<z.ZodArray<z.ZodEnum<{
|
|
730
|
+
style: "style";
|
|
730
731
|
fact: "fact";
|
|
731
732
|
preference: "preference";
|
|
732
733
|
open_thread: "open_thread";
|
|
733
|
-
style: "style";
|
|
734
734
|
failure_pattern: "failure_pattern";
|
|
735
735
|
successful_episode: "successful_episode";
|
|
736
736
|
procedure_hint: "procedure_hint";
|
|
@@ -747,10 +747,10 @@ export declare const UpdateAgentSchema: z.ZodIntersection<z.ZodObject<{
|
|
|
747
747
|
chat: "chat";
|
|
748
748
|
}>>>;
|
|
749
749
|
kinds: z.ZodOptional<z.ZodArray<z.ZodEnum<{
|
|
750
|
+
style: "style";
|
|
750
751
|
fact: "fact";
|
|
751
752
|
preference: "preference";
|
|
752
753
|
open_thread: "open_thread";
|
|
753
|
-
style: "style";
|
|
754
754
|
failure_pattern: "failure_pattern";
|
|
755
755
|
successful_episode: "successful_episode";
|
|
756
756
|
procedure_hint: "procedure_hint";
|
|
@@ -831,10 +831,10 @@ export declare const UpdateAgentSchema: z.ZodIntersection<z.ZodObject<{
|
|
|
831
831
|
webhook: "webhook";
|
|
832
832
|
}>>>;
|
|
833
833
|
sources: z.ZodOptional<z.ZodArray<z.ZodEnum<{
|
|
834
|
+
request: "request";
|
|
834
835
|
schedule: "schedule";
|
|
835
836
|
task: "task";
|
|
836
837
|
channel: "channel";
|
|
837
|
-
request: "request";
|
|
838
838
|
"loop-step": "loop-step";
|
|
839
839
|
internal: "internal";
|
|
840
840
|
}>>>;
|
|
@@ -854,10 +854,10 @@ export declare const UpdateAgentSchema: z.ZodIntersection<z.ZodObject<{
|
|
|
854
854
|
webhook: "webhook";
|
|
855
855
|
}>>>;
|
|
856
856
|
sources: z.ZodOptional<z.ZodArray<z.ZodEnum<{
|
|
857
|
+
request: "request";
|
|
857
858
|
schedule: "schedule";
|
|
858
859
|
task: "task";
|
|
859
860
|
channel: "channel";
|
|
860
|
-
request: "request";
|
|
861
861
|
"loop-step": "loop-step";
|
|
862
862
|
internal: "internal";
|
|
863
863
|
}>>>;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@polpo-ai/server",
|
|
3
|
-
"version": "0.15.
|
|
3
|
+
"version": "0.15.144",
|
|
4
4
|
"description": "Polpo API route factories — edge-compatible Hono routes for tasks, agents, missions, vault, and more",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -20,12 +20,12 @@
|
|
|
20
20
|
"hono": ">=4.0.0",
|
|
21
21
|
"nanoid": ">=5.0.0",
|
|
22
22
|
"typescript": "^5.7.3",
|
|
23
|
-
"@polpo-ai/connect": "0.15.
|
|
24
|
-
"@polpo-ai/channels": "0.15.
|
|
25
|
-
"@polpo-ai/core": "0.15.
|
|
26
|
-
"@polpo-ai/
|
|
27
|
-
"@polpo-ai/
|
|
28
|
-
"@polpo-ai/
|
|
23
|
+
"@polpo-ai/connect": "0.15.144",
|
|
24
|
+
"@polpo-ai/channels": "0.15.144",
|
|
25
|
+
"@polpo-ai/core": "0.15.144",
|
|
26
|
+
"@polpo-ai/llm": "0.15.144",
|
|
27
|
+
"@polpo-ai/tools": "0.15.144",
|
|
28
|
+
"@polpo-ai/connect-server": "0.15.144"
|
|
29
29
|
},
|
|
30
30
|
"peerDependencies": {
|
|
31
31
|
"ai": ">=6.0.182 <7",
|