@cat-factory/worker 0.150.1 → 0.151.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/infrastructure/repositories/D1DocumentRepository.d.ts +8 -5
- package/dist/infrastructure/repositories/D1DocumentRepository.d.ts.map +1 -1
- package/dist/infrastructure/repositories/D1DocumentRepository.js +72 -1
- package/dist/infrastructure/repositories/D1DocumentRepository.js.map +1 -1
- package/dist/infrastructure/repositories/D1TaskRepository.d.ts.map +1 -1
- package/dist/infrastructure/repositories/D1TaskRepository.js +6 -1
- package/dist/infrastructure/repositories/D1TaskRepository.js.map +1 -1
- package/package.json +18 -18
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { DocKind, DocumentLinkRole, DocumentRecord,
|
|
1
|
+
import type { DocKind, DocumentLinkRole, DocumentOrigin, DocumentRecord, DocumentRef, DocumentRepository } from '@cat-factory/kernel';
|
|
2
2
|
import type { D1Database } from '@cloudflare/workers-types';
|
|
3
3
|
/** D1-backed store of imported document projections, across sources (migration 0012). */
|
|
4
4
|
export declare class D1DocumentRepository implements DocumentRepository {
|
|
@@ -7,16 +7,19 @@ export declare class D1DocumentRepository implements DocumentRepository {
|
|
|
7
7
|
db: D1Database;
|
|
8
8
|
});
|
|
9
9
|
upsert(record: DocumentRecord): Promise<void>;
|
|
10
|
-
get(workspaceId: string, source:
|
|
10
|
+
get(workspaceId: string, source: DocumentOrigin, externalId: string): Promise<DocumentRecord | null>;
|
|
11
|
+
listByRefs(workspaceId: string, refs: readonly DocumentRef[]): Promise<DocumentRecord[]>;
|
|
11
12
|
listByWorkspace(workspaceId: string): Promise<DocumentRecord[]>;
|
|
12
13
|
listByBlock(workspaceId: string, blockId: string): Promise<DocumentRecord[]>;
|
|
13
14
|
getByUrl(workspaceId: string, url: string): Promise<DocumentRecord | null>;
|
|
14
|
-
linkBlock(workspaceId: string, source:
|
|
15
|
+
linkBlock(workspaceId: string, source: DocumentOrigin, externalId: string, blockId: string | null): Promise<void>;
|
|
16
|
+
detachBlocks(workspaceId: string, blockIds: readonly string[]): Promise<void>;
|
|
17
|
+
linkBlockMany(workspaceId: string, refs: readonly DocumentRef[], blockId: string | null): Promise<void>;
|
|
15
18
|
getRoleLink(workspaceId: string, role: DocumentLinkRole, docKind: DocKind): Promise<DocumentRecord | null>;
|
|
16
19
|
listRoleLinks(workspaceId: string, role: DocumentLinkRole, docKind: DocKind): Promise<DocumentRecord[]>;
|
|
17
20
|
listRoleLinksByWorkspace(workspaceId: string): Promise<DocumentRecord[]>;
|
|
18
|
-
setRole(workspaceId: string, source:
|
|
19
|
-
clearRole(workspaceId: string, source:
|
|
21
|
+
setRole(workspaceId: string, source: DocumentOrigin, externalId: string, role: DocumentLinkRole, docKind: DocKind): Promise<void>;
|
|
22
|
+
clearRole(workspaceId: string, source: DocumentOrigin, externalId: string): Promise<void>;
|
|
20
23
|
clearRoleForKind(workspaceId: string, role: DocumentLinkRole, docKind: DocKind): Promise<void>;
|
|
21
24
|
}
|
|
22
25
|
//# sourceMappingURL=D1DocumentRepository.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"D1DocumentRepository.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/repositories/D1DocumentRepository.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,OAAO,EACP,gBAAgB,EAChB,cAAc,EACd,
|
|
1
|
+
{"version":3,"file":"D1DocumentRepository.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/repositories/D1DocumentRepository.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,OAAO,EACP,gBAAgB,EAChB,cAAc,EACd,cAAc,EACd,WAAW,EACX,kBAAkB,EACnB,MAAM,qBAAqB,CAAA;AAG5B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAA;AAmD3D,yFAAyF;AACzF,qBAAa,oBAAqB,YAAW,kBAAkB;IAC7D,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAY;IAE/B,YAAY,EAAE,EAAE,EAAE,EAAE;QAAE,EAAE,EAAE,UAAU,CAAA;KAAE,EAErC;IAEK,MAAM,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CA8BlD;IAEK,GAAG,CACP,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,cAAc,EACtB,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,CAQhC;IAEK,UAAU,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,WAAW,EAAE,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC,CAkB7F;IAEK,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC,CAQpE;IAEK,WAAW,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC,CAQjF;IAEK,QAAQ,CAAC,WAAW,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,CAa/E;IAEK,SAAS,CACb,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,cAAc,EACtB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,MAAM,GAAG,IAAI,GACrB,OAAO,CAAC,IAAI,CAAC,CAOf;IAEK,YAAY,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAWlF;IAEK,aAAa,CACjB,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,SAAS,WAAW,EAAE,EAC5B,OAAO,EAAE,MAAM,GAAG,IAAI,GACrB,OAAO,CAAC,IAAI,CAAC,CAqBf;IAEK,WAAW,CACf,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,gBAAgB,EACtB,OAAO,EAAE,OAAO,GACf,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,CAQhC;IAEK,aAAa,CACjB,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,gBAAgB,EACtB,OAAO,EAAE,OAAO,GACf,OAAO,CAAC,cAAc,EAAE,CAAC,CAQ3B;IAEK,wBAAwB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC,CAQ7E;IAEK,OAAO,CACX,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,cAAc,EACtB,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,gBAAgB,EACtB,OAAO,EAAE,OAAO,GACf,OAAO,CAAC,IAAI,CAAC,CAOf;IAEK,SAAS,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAO9F;IAEK,gBAAgB,CACpB,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,gBAAgB,EACtB,OAAO,EAAE,OAAO,GACf,OAAO,CAAC,IAAI,CAAC,CAOf;CACF"}
|
|
@@ -1,4 +1,21 @@
|
|
|
1
1
|
import { urlMatchCandidates } from '@cat-factory/kernel';
|
|
2
|
+
import { chunkForIn } from './chunk';
|
|
3
|
+
/**
|
|
4
|
+
* Group a ref list by origin so each origin becomes ONE chunked `IN` read/write rather than a
|
|
5
|
+
* statement per ref. A task attaches documents from at most a handful of origins, so this is a
|
|
6
|
+
* small, bounded number of statements. Mirrors `D1TaskRepository.listByRefs`.
|
|
7
|
+
*/
|
|
8
|
+
function groupRefsByOrigin(refs) {
|
|
9
|
+
const byOrigin = new Map();
|
|
10
|
+
for (const ref of refs) {
|
|
11
|
+
const ids = byOrigin.get(ref.source);
|
|
12
|
+
if (ids)
|
|
13
|
+
ids.push(ref.externalId);
|
|
14
|
+
else
|
|
15
|
+
byOrigin.set(ref.source, [ref.externalId]);
|
|
16
|
+
}
|
|
17
|
+
return byOrigin;
|
|
18
|
+
}
|
|
2
19
|
function rowToRecord(row) {
|
|
3
20
|
return {
|
|
4
21
|
workspaceId: row.workspace_id,
|
|
@@ -47,6 +64,25 @@ export class D1DocumentRepository {
|
|
|
47
64
|
.first();
|
|
48
65
|
return row ? rowToRecord(row) : null;
|
|
49
66
|
}
|
|
67
|
+
async listByRefs(workspaceId, refs) {
|
|
68
|
+
if (refs.length === 0)
|
|
69
|
+
return [];
|
|
70
|
+
const out = [];
|
|
71
|
+
for (const [source, externalIds] of groupRefsByOrigin(refs)) {
|
|
72
|
+
// Chunk the IN list to stay under D1's bound-parameter limit (the two leading params
|
|
73
|
+
// — workspace_id + source — are within chunkForIn's headroom).
|
|
74
|
+
for (const chunk of chunkForIn(externalIds)) {
|
|
75
|
+
const placeholders = chunk.map(() => '?').join(', ');
|
|
76
|
+
const { results } = await this.db
|
|
77
|
+
.prepare(`SELECT * FROM documents WHERE workspace_id = ? AND source = ? AND external_id IN (${placeholders}) AND deleted_at IS NULL`)
|
|
78
|
+
.bind(workspaceId, source, ...chunk)
|
|
79
|
+
.all();
|
|
80
|
+
for (const row of results ?? [])
|
|
81
|
+
out.push(rowToRecord(row));
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
return out;
|
|
85
|
+
}
|
|
50
86
|
async listByWorkspace(workspaceId) {
|
|
51
87
|
const { results } = await this.db
|
|
52
88
|
.prepare('SELECT * FROM documents WHERE workspace_id = ? AND deleted_at IS NULL ORDER BY synced_at DESC')
|
|
@@ -62,7 +98,12 @@ export class D1DocumentRepository {
|
|
|
62
98
|
return results.map(rowToRecord);
|
|
63
99
|
}
|
|
64
100
|
async getByUrl(workspaceId, url) {
|
|
65
|
-
|
|
101
|
+
// A needle that normalises to nothing is not a URL, and must never be matched (see
|
|
102
|
+
// `urlMatchCandidates`).
|
|
103
|
+
const candidates = urlMatchCandidates(url);
|
|
104
|
+
if (!candidates)
|
|
105
|
+
return null;
|
|
106
|
+
const [a, b] = candidates;
|
|
66
107
|
const row = await this.db
|
|
67
108
|
.prepare('SELECT * FROM documents WHERE workspace_id = ? AND url IN (?, ?) AND deleted_at IS NULL ORDER BY synced_at DESC LIMIT 1')
|
|
68
109
|
.bind(workspaceId, a, b)
|
|
@@ -75,6 +116,36 @@ export class D1DocumentRepository {
|
|
|
75
116
|
.bind(blockId, workspaceId, source, externalId)
|
|
76
117
|
.run();
|
|
77
118
|
}
|
|
119
|
+
async detachBlocks(workspaceId, blockIds) {
|
|
120
|
+
if (blockIds.length === 0)
|
|
121
|
+
return;
|
|
122
|
+
for (const chunk of chunkForIn([...blockIds])) {
|
|
123
|
+
const placeholders = chunk.map(() => '?').join(', ');
|
|
124
|
+
await this.db
|
|
125
|
+
.prepare(`UPDATE documents SET linked_block_id = NULL WHERE workspace_id = ? AND linked_block_id IN (${placeholders})`)
|
|
126
|
+
.bind(workspaceId, ...chunk)
|
|
127
|
+
.run();
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
async linkBlockMany(workspaceId, refs, blockId) {
|
|
131
|
+
if (refs.length === 0)
|
|
132
|
+
return;
|
|
133
|
+
// One statement per origin-chunk, submitted as a D1 BATCH: a task's documents attach
|
|
134
|
+
// together or not at all, so a failure part-way cannot leave the block holding a subset of
|
|
135
|
+
// the corpus it was created with (the exact half-attached state the public-API creation
|
|
136
|
+
// refuses to return). `db.batch` is D1's transaction — it is the Postgres `transaction`
|
|
137
|
+
// block's counterpart in the Drizzle mirror.
|
|
138
|
+
const statements = [];
|
|
139
|
+
for (const [source, externalIds] of groupRefsByOrigin(refs)) {
|
|
140
|
+
for (const chunk of chunkForIn(externalIds)) {
|
|
141
|
+
const placeholders = chunk.map(() => '?').join(', ');
|
|
142
|
+
statements.push(this.db
|
|
143
|
+
.prepare(`UPDATE documents SET linked_block_id = ? WHERE workspace_id = ? AND source = ? AND external_id IN (${placeholders})`)
|
|
144
|
+
.bind(blockId, workspaceId, source, ...chunk));
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
await this.db.batch(statements);
|
|
148
|
+
}
|
|
78
149
|
async getRoleLink(workspaceId, role, docKind) {
|
|
79
150
|
const row = await this.db
|
|
80
151
|
.prepare('SELECT * FROM documents WHERE workspace_id = ? AND role = ? AND doc_kind = ? AND deleted_at IS NULL ORDER BY synced_at DESC LIMIT 1')
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"D1DocumentRepository.js","sourceRoot":"","sources":["../../../src/infrastructure/repositories/D1DocumentRepository.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"D1DocumentRepository.js","sourceRoot":"","sources":["../../../src/infrastructure/repositories/D1DocumentRepository.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"D1TaskRepository.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/repositories/D1TaskRepository.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,UAAU,EACV,OAAO,EACP,cAAc,EACd,cAAc,EACf,MAAM,qBAAqB,CAAA;AAE5B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAA;AAsD3D,sFAAsF;AACtF,qBAAa,gBAAiB,YAAW,cAAc;IACrD,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAY;IAE/B,YAAY,EAAE,EAAE,EAAE,EAAE;QAAE,EAAE,EAAE,UAAU,CAAA;KAAE,EAErC;IAEK,MAAM,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAwC9C;IAEK,GAAG,CACP,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,cAAc,EACtB,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,CAQ5B;IAEK,UAAU,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,OAAO,EAAE,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,CA2BrF;IAEK,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,CAQhE;IAEK,WAAW,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,CAQ7E;IAEK,QAAQ,CAAC,WAAW,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"D1TaskRepository.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/repositories/D1TaskRepository.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,UAAU,EACV,OAAO,EACP,cAAc,EACd,cAAc,EACf,MAAM,qBAAqB,CAAA;AAE5B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAA;AAsD3D,sFAAsF;AACtF,qBAAa,gBAAiB,YAAW,cAAc;IACrD,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAY;IAE/B,YAAY,EAAE,EAAE,EAAE,EAAE;QAAE,EAAE,EAAE,UAAU,CAAA;KAAE,EAErC;IAEK,MAAM,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAwC9C;IAEK,GAAG,CACP,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,cAAc,EACtB,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,CAQ5B;IAEK,UAAU,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,OAAO,EAAE,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,CA2BrF;IAEK,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,CAQhE;IAEK,WAAW,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,CAQ7E;IAEK,QAAQ,CAAC,WAAW,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,CAa3E;IAEK,SAAS,CACb,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,cAAc,EACtB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,MAAM,GAAG,IAAI,GACrB,OAAO,CAAC,IAAI,CAAC,CAOf;IAEK,cAAc,CAClB,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,cAAc,EACtB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,OAAO,CAAC,CAYlB;IAEK,kBAAkB,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAO5E;CACF"}
|
|
@@ -113,7 +113,12 @@ export class D1TaskRepository {
|
|
|
113
113
|
return results.map(rowToRecord);
|
|
114
114
|
}
|
|
115
115
|
async getByUrl(workspaceId, url) {
|
|
116
|
-
|
|
116
|
+
// A needle that normalises to nothing is not a URL, and must never be matched (see
|
|
117
|
+
// `urlMatchCandidates`).
|
|
118
|
+
const candidates = urlMatchCandidates(url);
|
|
119
|
+
if (!candidates)
|
|
120
|
+
return null;
|
|
121
|
+
const [a, b] = candidates;
|
|
117
122
|
const row = await this.db
|
|
118
123
|
.prepare('SELECT * FROM tasks WHERE workspace_id = ? AND url IN (?, ?) AND deleted_at IS NULL ORDER BY synced_at DESC LIMIT 1')
|
|
119
124
|
.bind(workspaceId, a, b)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"D1TaskRepository.js","sourceRoot":"","sources":["../../../src/infrastructure/repositories/D1TaskRepository.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"D1TaskRepository.js","sourceRoot":"","sources":["../../../src/infrastructure/repositories/D1TaskRepository.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cat-factory/worker",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.151.0",
|
|
4
4
|
"description": "Reusable Cloudflare Worker library (Hono + D1) exposing the Agent Architecture Board core: the `createApp()` Hono factory, the default fetch/scheduled/queue handler, and the Durable Object + Workflow classes. Deployments (see deploy/backend) supply the wrangler.toml + config and re-export these.",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -42,22 +42,22 @@
|
|
|
42
42
|
"pino": "^10.3.1",
|
|
43
43
|
"valibot": "^1.4.2",
|
|
44
44
|
"workers-ai-provider": "^4.0.0",
|
|
45
|
-
"@cat-factory/agents": "0.110.
|
|
46
|
-
"@cat-factory/caching": "0.14.
|
|
47
|
-
"@cat-factory/consensus": "0.14.
|
|
48
|
-
"@cat-factory/contracts": "0.
|
|
49
|
-
"@cat-factory/eks": "0.1.
|
|
50
|
-
"@cat-factory/
|
|
51
|
-
"@cat-factory/
|
|
52
|
-
"@cat-factory/integrations": "0.
|
|
53
|
-
"@cat-factory/kernel": "0.
|
|
54
|
-
"@cat-factory/observability-
|
|
55
|
-
"@cat-factory/observability-
|
|
56
|
-
"@cat-factory/orchestration": "0.
|
|
57
|
-
"@cat-factory/prompt-fragments": "0.15.
|
|
58
|
-
"@cat-factory/provider-cloudflare": "0.7.
|
|
59
|
-
"@cat-factory/server": "0.
|
|
60
|
-
"@cat-factory/spend": "0.14.
|
|
45
|
+
"@cat-factory/agents": "0.110.5",
|
|
46
|
+
"@cat-factory/caching": "0.14.14",
|
|
47
|
+
"@cat-factory/consensus": "0.14.14",
|
|
48
|
+
"@cat-factory/contracts": "0.235.0",
|
|
49
|
+
"@cat-factory/eks": "0.1.224",
|
|
50
|
+
"@cat-factory/gates": "0.8.70",
|
|
51
|
+
"@cat-factory/gitlab": "0.15.29",
|
|
52
|
+
"@cat-factory/integrations": "0.126.0",
|
|
53
|
+
"@cat-factory/kernel": "0.235.0",
|
|
54
|
+
"@cat-factory/observability-langfuse": "0.9.67",
|
|
55
|
+
"@cat-factory/observability-otel": "0.9.4",
|
|
56
|
+
"@cat-factory/orchestration": "0.202.0",
|
|
57
|
+
"@cat-factory/prompt-fragments": "0.15.61",
|
|
58
|
+
"@cat-factory/provider-cloudflare": "0.7.376",
|
|
59
|
+
"@cat-factory/server": "0.214.0",
|
|
60
|
+
"@cat-factory/spend": "0.14.12"
|
|
61
61
|
},
|
|
62
62
|
"devDependencies": {
|
|
63
63
|
"@cloudflare/vitest-pool-workers": "^0.20.1",
|
|
@@ -65,7 +65,7 @@
|
|
|
65
65
|
"typescript": "7.0.2",
|
|
66
66
|
"vitest": "^4.1.10",
|
|
67
67
|
"wrangler": "^4.118.0",
|
|
68
|
-
"@cat-factory/conformance": "0.
|
|
68
|
+
"@cat-factory/conformance": "0.27.0"
|
|
69
69
|
},
|
|
70
70
|
"scripts": {
|
|
71
71
|
"build": "tsc -b tsconfig.build.json",
|