@relaycast/engine 4.1.6 → 5.0.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/adapters/node/index.d.ts.map +1 -1
- package/dist/adapters/node/index.js +23 -1
- package/dist/adapters/node/index.js.map +1 -1
- package/dist/adapters/node/presence.d.ts +7 -3
- package/dist/adapters/node/presence.d.ts.map +1 -1
- package/dist/adapters/node/presence.js +10 -8
- package/dist/adapters/node/presence.js.map +1 -1
- package/dist/adapters/node/realtime.d.ts.map +1 -1
- package/dist/adapters/node/realtime.js +8 -3
- package/dist/adapters/node/realtime.js.map +1 -1
- package/dist/bin/serve.js +2 -4
- package/dist/bin/serve.js.map +1 -1
- package/dist/db/migrations/0021_node_delivery_contracts.sql +70 -0
- package/dist/db/migrations/0022_http_push_redrive.sql +13 -0
- package/dist/db/migrations/0023_direct_ws_nodes.sql +124 -0
- package/dist/db/migrations/0024_binding_workspace_constraints.sql +109 -0
- package/dist/db/schema.d.ts +339 -0
- package/dist/db/schema.d.ts.map +1 -1
- package/dist/db/schema.js +48 -1
- package/dist/db/schema.js.map +1 -1
- package/dist/engine/action.d.ts +0 -7
- package/dist/engine/action.d.ts.map +1 -1
- package/dist/engine/action.js +0 -7
- package/dist/engine/action.js.map +1 -1
- package/dist/engine/agent.d.ts.map +1 -1
- package/dist/engine/agent.js +7 -1
- package/dist/engine/agent.js.map +1 -1
- package/dist/engine/delivery.d.ts +24 -0
- package/dist/engine/delivery.d.ts.map +1 -1
- package/dist/engine/delivery.js +190 -74
- package/dist/engine/delivery.js.map +1 -1
- package/dist/engine/deliveryWrites.d.ts +5 -0
- package/dist/engine/deliveryWrites.d.ts.map +1 -1
- package/dist/engine/deliveryWrites.js +51 -11
- package/dist/engine/deliveryWrites.js.map +1 -1
- package/dist/engine/invocationCompletion.d.ts +1 -1
- package/dist/engine/invocationCompletion.d.ts.map +1 -1
- package/dist/engine/invocationCompletion.js +1 -16
- package/dist/engine/invocationCompletion.js.map +1 -1
- package/dist/engine/message.d.ts.map +1 -1
- package/dist/engine/message.js +1 -0
- package/dist/engine/message.js.map +1 -1
- package/dist/engine/node.d.ts +85 -0
- package/dist/engine/node.d.ts.map +1 -1
- package/dist/engine/node.js +473 -14
- package/dist/engine/node.js.map +1 -1
- package/dist/engine/nodeContext.d.ts +22 -0
- package/dist/engine/nodeContext.d.ts.map +1 -0
- package/dist/engine/nodeContext.js +104 -0
- package/dist/engine/nodeContext.js.map +1 -0
- package/dist/engine/thread.d.ts.map +1 -1
- package/dist/engine/thread.js +37 -17
- package/dist/engine/thread.js.map +1 -1
- package/dist/engine/wsAuth.d.ts +36 -0
- package/dist/engine/wsAuth.d.ts.map +1 -0
- package/dist/engine/wsAuth.js +57 -0
- package/dist/engine/wsAuth.js.map +1 -0
- package/dist/engine.d.ts.map +1 -1
- package/dist/engine.js +46 -74
- package/dist/engine.js.map +1 -1
- package/dist/entrypoints/node.d.ts.map +1 -1
- package/dist/entrypoints/node.js +27 -51
- package/dist/entrypoints/node.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -0
- package/dist/index.js.map +1 -1
- package/dist/lib/httpError.d.ts +5 -1
- package/dist/lib/httpError.d.ts.map +1 -1
- package/dist/lib/httpError.js +9 -5
- package/dist/lib/httpError.js.map +1 -1
- package/dist/lib/httpQuery.d.ts +28 -0
- package/dist/lib/httpQuery.d.ts.map +1 -0
- package/dist/lib/httpQuery.js +32 -0
- package/dist/lib/httpQuery.js.map +1 -0
- package/dist/lib/httpResponse.d.ts +116 -0
- package/dist/lib/httpResponse.d.ts.map +1 -0
- package/dist/lib/httpResponse.js +65 -0
- package/dist/lib/httpResponse.js.map +1 -0
- package/dist/middleware/auth.d.ts.map +1 -1
- package/dist/middleware/auth.js +3 -2
- package/dist/middleware/auth.js.map +1 -1
- package/dist/middleware/idempotency.d.ts +30 -0
- package/dist/middleware/idempotency.d.ts.map +1 -1
- package/dist/middleware/idempotency.js +14 -0
- package/dist/middleware/idempotency.js.map +1 -1
- package/dist/middleware/planLimits.d.ts.map +1 -1
- package/dist/middleware/planLimits.js +2 -7
- package/dist/middleware/planLimits.js.map +1 -1
- package/dist/middleware/rateLimit.d.ts.map +1 -1
- package/dist/middleware/rateLimit.js +2 -7
- package/dist/middleware/rateLimit.js.map +1 -1
- package/dist/ports/index.d.ts +0 -14
- package/dist/ports/index.d.ts.map +1 -1
- package/dist/routes/a2a.d.ts.map +1 -1
- package/dist/routes/a2a.js +41 -83
- package/dist/routes/a2a.js.map +1 -1
- package/dist/routes/action.d.ts.map +1 -1
- package/dist/routes/action.js +32 -37
- package/dist/routes/action.js.map +1 -1
- package/dist/routes/agent.d.ts.map +1 -1
- package/dist/routes/agent.js +69 -73
- package/dist/routes/agent.js.map +1 -1
- package/dist/routes/certify.d.ts.map +1 -1
- package/dist/routes/certify.js +21 -35
- package/dist/routes/certify.js.map +1 -1
- package/dist/routes/channel.d.ts.map +1 -1
- package/dist/routes/channel.js +33 -71
- package/dist/routes/channel.js.map +1 -1
- package/dist/routes/console.d.ts.map +1 -1
- package/dist/routes/console.js +22 -32
- package/dist/routes/console.js.map +1 -1
- package/dist/routes/delivery.d.ts.map +1 -1
- package/dist/routes/delivery.js +22 -54
- package/dist/routes/delivery.js.map +1 -1
- package/dist/routes/deliveryRouting.d.ts +6 -0
- package/dist/routes/deliveryRouting.d.ts.map +1 -1
- package/dist/routes/deliveryRouting.js +289 -35
- package/dist/routes/deliveryRouting.js.map +1 -1
- package/dist/routes/directory.d.ts.map +1 -1
- package/dist/routes/directory.js +47 -63
- package/dist/routes/directory.js.map +1 -1
- package/dist/routes/dm.d.ts.map +1 -1
- package/dist/routes/dm.js +21 -42
- package/dist/routes/dm.js.map +1 -1
- package/dist/routes/eventSubscription.d.ts.map +1 -1
- package/dist/routes/eventSubscription.js +15 -21
- package/dist/routes/eventSubscription.js.map +1 -1
- package/dist/routes/fanout.d.ts +2 -1
- package/dist/routes/fanout.d.ts.map +1 -1
- package/dist/routes/fanout.js +25 -15
- package/dist/routes/fanout.js.map +1 -1
- package/dist/routes/file.d.ts.map +1 -1
- package/dist/routes/file.js +34 -40
- package/dist/routes/file.js.map +1 -1
- package/dist/routes/groupDm.d.ts.map +1 -1
- package/dist/routes/groupDm.js +23 -48
- package/dist/routes/groupDm.js.map +1 -1
- package/dist/routes/inboundWebhook.d.ts.map +1 -1
- package/dist/routes/inboundWebhook.js +17 -35
- package/dist/routes/inboundWebhook.js.map +1 -1
- package/dist/routes/inbox.d.ts.map +1 -1
- package/dist/routes/inbox.js +2 -1
- package/dist/routes/inbox.js.map +1 -1
- package/dist/routes/message.d.ts.map +1 -1
- package/dist/routes/message.js +39 -50
- package/dist/routes/message.js.map +1 -1
- package/dist/routes/node.d.ts.map +1 -1
- package/dist/routes/node.js +125 -12
- package/dist/routes/node.js.map +1 -1
- package/dist/routes/presence.d.ts.map +1 -1
- package/dist/routes/presence.js +4 -3
- package/dist/routes/presence.js.map +1 -1
- package/dist/routes/reaction.d.ts.map +1 -1
- package/dist/routes/reaction.js +10 -21
- package/dist/routes/reaction.js.map +1 -1
- package/dist/routes/receipt.d.ts.map +1 -1
- package/dist/routes/receipt.js +7 -15
- package/dist/routes/receipt.js.map +1 -1
- package/dist/routes/routing.d.ts.map +1 -1
- package/dist/routes/routing.js +38 -51
- package/dist/routes/routing.js.map +1 -1
- package/dist/routes/search.d.ts.map +1 -1
- package/dist/routes/search.js +15 -12
- package/dist/routes/search.js.map +1 -1
- package/dist/routes/systemPrompt.d.ts.map +1 -1
- package/dist/routes/systemPrompt.js +8 -13
- package/dist/routes/systemPrompt.js.map +1 -1
- package/dist/routes/thread.d.ts.map +1 -1
- package/dist/routes/thread.js +17 -35
- package/dist/routes/thread.js.map +1 -1
- package/dist/routes/trigger.d.ts.map +1 -1
- package/dist/routes/trigger.js +15 -14
- package/dist/routes/trigger.js.map +1 -1
- package/dist/routes/workspace.d.ts.map +1 -1
- package/dist/routes/workspace.js +39 -220
- package/dist/routes/workspace.js.map +1 -1
- package/package.json +3 -3
- package/dist/lib/fleetNodes.d.ts +0 -9
- package/dist/lib/fleetNodes.d.ts.map +0 -1
- package/dist/lib/fleetNodes.js +0 -66
- package/dist/lib/fleetNodes.js.map +0 -1
- package/dist/lib/workspaceStream.d.ts +0 -9
- package/dist/lib/workspaceStream.d.ts.map +0 -1
- package/dist/lib/workspaceStream.js +0 -53
- package/dist/lib/workspaceStream.js.map +0 -1
- package/dist/middleware/fleetNodes.d.ts +0 -10
- package/dist/middleware/fleetNodes.d.ts.map +0 -1
- package/dist/middleware/fleetNodes.js +0 -18
- package/dist/middleware/fleetNodes.js.map +0 -1
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
-- Additive follow-up for environments that already ran 0021 before
|
|
2
|
+
-- workspace-consistent binding constraints were introduced.
|
|
3
|
+
|
|
4
|
+
CREATE UNIQUE INDEX IF NOT EXISTS agents_workspace_id_unique
|
|
5
|
+
ON agents(workspace_id, id);
|
|
6
|
+
|
|
7
|
+
CREATE UNIQUE INDEX IF NOT EXISTS nodes_workspace_id_unique
|
|
8
|
+
ON nodes(workspace_id, id);
|
|
9
|
+
|
|
10
|
+
CREATE TABLE IF NOT EXISTS agent_node_bindings_constrained (
|
|
11
|
+
id TEXT PRIMARY KEY,
|
|
12
|
+
workspace_id TEXT NOT NULL REFERENCES workspaces(id) ON DELETE CASCADE,
|
|
13
|
+
agent_id TEXT NOT NULL REFERENCES agents(id) ON DELETE CASCADE,
|
|
14
|
+
node_id TEXT NOT NULL REFERENCES nodes(id) ON DELETE CASCADE,
|
|
15
|
+
status TEXT NOT NULL DEFAULT 'active',
|
|
16
|
+
session_ref TEXT,
|
|
17
|
+
priority INTEGER NOT NULL DEFAULT 0,
|
|
18
|
+
created_at INTEGER NOT NULL DEFAULT (unixepoch()),
|
|
19
|
+
updated_at INTEGER,
|
|
20
|
+
FOREIGN KEY(workspace_id, agent_id) REFERENCES agents(workspace_id, id) ON DELETE CASCADE,
|
|
21
|
+
FOREIGN KEY(workspace_id, node_id) REFERENCES nodes(workspace_id, id) ON DELETE CASCADE,
|
|
22
|
+
UNIQUE(agent_id, node_id)
|
|
23
|
+
);
|
|
24
|
+
|
|
25
|
+
INSERT OR IGNORE INTO agent_node_bindings_constrained (
|
|
26
|
+
id,
|
|
27
|
+
workspace_id,
|
|
28
|
+
agent_id,
|
|
29
|
+
node_id,
|
|
30
|
+
status,
|
|
31
|
+
session_ref,
|
|
32
|
+
priority,
|
|
33
|
+
created_at,
|
|
34
|
+
updated_at
|
|
35
|
+
)
|
|
36
|
+
SELECT
|
|
37
|
+
b.id,
|
|
38
|
+
b.workspace_id,
|
|
39
|
+
b.agent_id,
|
|
40
|
+
b.node_id,
|
|
41
|
+
b.status,
|
|
42
|
+
b.session_ref,
|
|
43
|
+
b.priority,
|
|
44
|
+
b.created_at,
|
|
45
|
+
b.updated_at
|
|
46
|
+
FROM agent_node_bindings b
|
|
47
|
+
INNER JOIN agents a
|
|
48
|
+
ON a.workspace_id = b.workspace_id
|
|
49
|
+
AND a.id = b.agent_id
|
|
50
|
+
INNER JOIN nodes n
|
|
51
|
+
ON n.workspace_id = b.workspace_id
|
|
52
|
+
AND n.id = b.node_id;
|
|
53
|
+
|
|
54
|
+
DROP TABLE agent_node_bindings;
|
|
55
|
+
|
|
56
|
+
ALTER TABLE agent_node_bindings_constrained RENAME TO agent_node_bindings;
|
|
57
|
+
|
|
58
|
+
CREATE INDEX IF NOT EXISTS idx_agent_node_bindings_workspace
|
|
59
|
+
ON agent_node_bindings(workspace_id, status);
|
|
60
|
+
|
|
61
|
+
CREATE INDEX IF NOT EXISTS idx_agent_node_bindings_agent
|
|
62
|
+
ON agent_node_bindings(workspace_id, agent_id, status);
|
|
63
|
+
|
|
64
|
+
CREATE INDEX IF NOT EXISTS idx_agent_node_bindings_node
|
|
65
|
+
ON agent_node_bindings(workspace_id, node_id, status);
|
|
66
|
+
|
|
67
|
+
CREATE TRIGGER IF NOT EXISTS agent_node_bindings_workspace_agent_insert
|
|
68
|
+
BEFORE INSERT ON agent_node_bindings
|
|
69
|
+
WHEN NOT EXISTS (
|
|
70
|
+
SELECT 1 FROM agents a
|
|
71
|
+
WHERE a.workspace_id = NEW.workspace_id
|
|
72
|
+
AND a.id = NEW.agent_id
|
|
73
|
+
)
|
|
74
|
+
BEGIN
|
|
75
|
+
SELECT RAISE(ABORT, 'agent_node_bindings workspace/agent mismatch');
|
|
76
|
+
END;
|
|
77
|
+
|
|
78
|
+
CREATE TRIGGER IF NOT EXISTS agent_node_bindings_workspace_node_insert
|
|
79
|
+
BEFORE INSERT ON agent_node_bindings
|
|
80
|
+
WHEN NOT EXISTS (
|
|
81
|
+
SELECT 1 FROM nodes n
|
|
82
|
+
WHERE n.workspace_id = NEW.workspace_id
|
|
83
|
+
AND n.id = NEW.node_id
|
|
84
|
+
)
|
|
85
|
+
BEGIN
|
|
86
|
+
SELECT RAISE(ABORT, 'agent_node_bindings workspace/node mismatch');
|
|
87
|
+
END;
|
|
88
|
+
|
|
89
|
+
CREATE TRIGGER IF NOT EXISTS agent_node_bindings_workspace_agent_update
|
|
90
|
+
BEFORE UPDATE OF workspace_id, agent_id ON agent_node_bindings
|
|
91
|
+
WHEN NOT EXISTS (
|
|
92
|
+
SELECT 1 FROM agents a
|
|
93
|
+
WHERE a.workspace_id = NEW.workspace_id
|
|
94
|
+
AND a.id = NEW.agent_id
|
|
95
|
+
)
|
|
96
|
+
BEGIN
|
|
97
|
+
SELECT RAISE(ABORT, 'agent_node_bindings workspace/agent mismatch');
|
|
98
|
+
END;
|
|
99
|
+
|
|
100
|
+
CREATE TRIGGER IF NOT EXISTS agent_node_bindings_workspace_node_update
|
|
101
|
+
BEFORE UPDATE OF workspace_id, node_id ON agent_node_bindings
|
|
102
|
+
WHEN NOT EXISTS (
|
|
103
|
+
SELECT 1 FROM nodes n
|
|
104
|
+
WHERE n.workspace_id = NEW.workspace_id
|
|
105
|
+
AND n.id = NEW.node_id
|
|
106
|
+
)
|
|
107
|
+
BEGIN
|
|
108
|
+
SELECT RAISE(ABORT, 'agent_node_bindings workspace/node mismatch');
|
|
109
|
+
END;
|
package/dist/db/schema.d.ts
CHANGED
|
@@ -586,6 +586,63 @@ export declare const nodes: import("drizzle-orm/sqlite-core").SQLiteTableWithCol
|
|
|
586
586
|
}, {}, {
|
|
587
587
|
length: number | undefined;
|
|
588
588
|
}>;
|
|
589
|
+
kind: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
590
|
+
name: "kind";
|
|
591
|
+
tableName: "nodes";
|
|
592
|
+
dataType: "string";
|
|
593
|
+
columnType: "SQLiteText";
|
|
594
|
+
data: string;
|
|
595
|
+
driverParam: string;
|
|
596
|
+
notNull: true;
|
|
597
|
+
hasDefault: true;
|
|
598
|
+
isPrimaryKey: false;
|
|
599
|
+
isAutoincrement: false;
|
|
600
|
+
hasRuntimeDefault: false;
|
|
601
|
+
enumValues: [string, ...string[]];
|
|
602
|
+
baseColumn: never;
|
|
603
|
+
identity: undefined;
|
|
604
|
+
generated: undefined;
|
|
605
|
+
}, {}, {
|
|
606
|
+
length: number | undefined;
|
|
607
|
+
}>;
|
|
608
|
+
deliveryAdapter: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
609
|
+
name: "delivery_adapter";
|
|
610
|
+
tableName: "nodes";
|
|
611
|
+
dataType: "string";
|
|
612
|
+
columnType: "SQLiteText";
|
|
613
|
+
data: string;
|
|
614
|
+
driverParam: string;
|
|
615
|
+
notNull: true;
|
|
616
|
+
hasDefault: true;
|
|
617
|
+
isPrimaryKey: false;
|
|
618
|
+
isAutoincrement: false;
|
|
619
|
+
hasRuntimeDefault: false;
|
|
620
|
+
enumValues: [string, ...string[]];
|
|
621
|
+
baseColumn: never;
|
|
622
|
+
identity: undefined;
|
|
623
|
+
generated: undefined;
|
|
624
|
+
}, {}, {
|
|
625
|
+
length: number | undefined;
|
|
626
|
+
}>;
|
|
627
|
+
deliveryConfig: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
628
|
+
name: "delivery_config";
|
|
629
|
+
tableName: "nodes";
|
|
630
|
+
dataType: "json";
|
|
631
|
+
columnType: "SQLiteTextJson";
|
|
632
|
+
data: Record<string, unknown>;
|
|
633
|
+
driverParam: string;
|
|
634
|
+
notNull: false;
|
|
635
|
+
hasDefault: false;
|
|
636
|
+
isPrimaryKey: false;
|
|
637
|
+
isAutoincrement: false;
|
|
638
|
+
hasRuntimeDefault: false;
|
|
639
|
+
enumValues: undefined;
|
|
640
|
+
baseColumn: never;
|
|
641
|
+
identity: undefined;
|
|
642
|
+
generated: undefined;
|
|
643
|
+
}, {}, {
|
|
644
|
+
$type: Record<string, unknown>;
|
|
645
|
+
}>;
|
|
589
646
|
capabilities: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
590
647
|
name: "capabilities";
|
|
591
648
|
tableName: "nodes";
|
|
@@ -792,6 +849,178 @@ export declare const nodes: import("drizzle-orm/sqlite-core").SQLiteTableWithCol
|
|
|
792
849
|
};
|
|
793
850
|
dialect: "sqlite";
|
|
794
851
|
}>;
|
|
852
|
+
export declare const agentNodeBindings: import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{
|
|
853
|
+
name: "agent_node_bindings";
|
|
854
|
+
schema: undefined;
|
|
855
|
+
columns: {
|
|
856
|
+
id: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
857
|
+
name: "id";
|
|
858
|
+
tableName: "agent_node_bindings";
|
|
859
|
+
dataType: "string";
|
|
860
|
+
columnType: "SQLiteText";
|
|
861
|
+
data: string;
|
|
862
|
+
driverParam: string;
|
|
863
|
+
notNull: true;
|
|
864
|
+
hasDefault: false;
|
|
865
|
+
isPrimaryKey: true;
|
|
866
|
+
isAutoincrement: false;
|
|
867
|
+
hasRuntimeDefault: false;
|
|
868
|
+
enumValues: [string, ...string[]];
|
|
869
|
+
baseColumn: never;
|
|
870
|
+
identity: undefined;
|
|
871
|
+
generated: undefined;
|
|
872
|
+
}, {}, {
|
|
873
|
+
length: number | undefined;
|
|
874
|
+
}>;
|
|
875
|
+
workspaceId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
876
|
+
name: "workspace_id";
|
|
877
|
+
tableName: "agent_node_bindings";
|
|
878
|
+
dataType: "string";
|
|
879
|
+
columnType: "SQLiteText";
|
|
880
|
+
data: string;
|
|
881
|
+
driverParam: string;
|
|
882
|
+
notNull: true;
|
|
883
|
+
hasDefault: false;
|
|
884
|
+
isPrimaryKey: false;
|
|
885
|
+
isAutoincrement: false;
|
|
886
|
+
hasRuntimeDefault: false;
|
|
887
|
+
enumValues: [string, ...string[]];
|
|
888
|
+
baseColumn: never;
|
|
889
|
+
identity: undefined;
|
|
890
|
+
generated: undefined;
|
|
891
|
+
}, {}, {
|
|
892
|
+
length: number | undefined;
|
|
893
|
+
}>;
|
|
894
|
+
agentId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
895
|
+
name: "agent_id";
|
|
896
|
+
tableName: "agent_node_bindings";
|
|
897
|
+
dataType: "string";
|
|
898
|
+
columnType: "SQLiteText";
|
|
899
|
+
data: string;
|
|
900
|
+
driverParam: string;
|
|
901
|
+
notNull: true;
|
|
902
|
+
hasDefault: false;
|
|
903
|
+
isPrimaryKey: false;
|
|
904
|
+
isAutoincrement: false;
|
|
905
|
+
hasRuntimeDefault: false;
|
|
906
|
+
enumValues: [string, ...string[]];
|
|
907
|
+
baseColumn: never;
|
|
908
|
+
identity: undefined;
|
|
909
|
+
generated: undefined;
|
|
910
|
+
}, {}, {
|
|
911
|
+
length: number | undefined;
|
|
912
|
+
}>;
|
|
913
|
+
nodeId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
914
|
+
name: "node_id";
|
|
915
|
+
tableName: "agent_node_bindings";
|
|
916
|
+
dataType: "string";
|
|
917
|
+
columnType: "SQLiteText";
|
|
918
|
+
data: string;
|
|
919
|
+
driverParam: string;
|
|
920
|
+
notNull: true;
|
|
921
|
+
hasDefault: false;
|
|
922
|
+
isPrimaryKey: false;
|
|
923
|
+
isAutoincrement: false;
|
|
924
|
+
hasRuntimeDefault: false;
|
|
925
|
+
enumValues: [string, ...string[]];
|
|
926
|
+
baseColumn: never;
|
|
927
|
+
identity: undefined;
|
|
928
|
+
generated: undefined;
|
|
929
|
+
}, {}, {
|
|
930
|
+
length: number | undefined;
|
|
931
|
+
}>;
|
|
932
|
+
status: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
933
|
+
name: "status";
|
|
934
|
+
tableName: "agent_node_bindings";
|
|
935
|
+
dataType: "string";
|
|
936
|
+
columnType: "SQLiteText";
|
|
937
|
+
data: string;
|
|
938
|
+
driverParam: string;
|
|
939
|
+
notNull: true;
|
|
940
|
+
hasDefault: true;
|
|
941
|
+
isPrimaryKey: false;
|
|
942
|
+
isAutoincrement: false;
|
|
943
|
+
hasRuntimeDefault: false;
|
|
944
|
+
enumValues: [string, ...string[]];
|
|
945
|
+
baseColumn: never;
|
|
946
|
+
identity: undefined;
|
|
947
|
+
generated: undefined;
|
|
948
|
+
}, {}, {
|
|
949
|
+
length: number | undefined;
|
|
950
|
+
}>;
|
|
951
|
+
sessionRef: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
952
|
+
name: "session_ref";
|
|
953
|
+
tableName: "agent_node_bindings";
|
|
954
|
+
dataType: "string";
|
|
955
|
+
columnType: "SQLiteText";
|
|
956
|
+
data: string;
|
|
957
|
+
driverParam: string;
|
|
958
|
+
notNull: false;
|
|
959
|
+
hasDefault: false;
|
|
960
|
+
isPrimaryKey: false;
|
|
961
|
+
isAutoincrement: false;
|
|
962
|
+
hasRuntimeDefault: false;
|
|
963
|
+
enumValues: [string, ...string[]];
|
|
964
|
+
baseColumn: never;
|
|
965
|
+
identity: undefined;
|
|
966
|
+
generated: undefined;
|
|
967
|
+
}, {}, {
|
|
968
|
+
length: number | undefined;
|
|
969
|
+
}>;
|
|
970
|
+
priority: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
971
|
+
name: "priority";
|
|
972
|
+
tableName: "agent_node_bindings";
|
|
973
|
+
dataType: "number";
|
|
974
|
+
columnType: "SQLiteInteger";
|
|
975
|
+
data: number;
|
|
976
|
+
driverParam: number;
|
|
977
|
+
notNull: true;
|
|
978
|
+
hasDefault: true;
|
|
979
|
+
isPrimaryKey: false;
|
|
980
|
+
isAutoincrement: false;
|
|
981
|
+
hasRuntimeDefault: false;
|
|
982
|
+
enumValues: undefined;
|
|
983
|
+
baseColumn: never;
|
|
984
|
+
identity: undefined;
|
|
985
|
+
generated: undefined;
|
|
986
|
+
}, {}, {}>;
|
|
987
|
+
createdAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
988
|
+
name: "created_at";
|
|
989
|
+
tableName: "agent_node_bindings";
|
|
990
|
+
dataType: "date";
|
|
991
|
+
columnType: "SQLiteTimestamp";
|
|
992
|
+
data: Date;
|
|
993
|
+
driverParam: number;
|
|
994
|
+
notNull: true;
|
|
995
|
+
hasDefault: true;
|
|
996
|
+
isPrimaryKey: false;
|
|
997
|
+
isAutoincrement: false;
|
|
998
|
+
hasRuntimeDefault: false;
|
|
999
|
+
enumValues: undefined;
|
|
1000
|
+
baseColumn: never;
|
|
1001
|
+
identity: undefined;
|
|
1002
|
+
generated: undefined;
|
|
1003
|
+
}, {}, {}>;
|
|
1004
|
+
updatedAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
1005
|
+
name: "updated_at";
|
|
1006
|
+
tableName: "agent_node_bindings";
|
|
1007
|
+
dataType: "date";
|
|
1008
|
+
columnType: "SQLiteTimestamp";
|
|
1009
|
+
data: Date;
|
|
1010
|
+
driverParam: number;
|
|
1011
|
+
notNull: false;
|
|
1012
|
+
hasDefault: false;
|
|
1013
|
+
isPrimaryKey: false;
|
|
1014
|
+
isAutoincrement: false;
|
|
1015
|
+
hasRuntimeDefault: false;
|
|
1016
|
+
enumValues: undefined;
|
|
1017
|
+
baseColumn: never;
|
|
1018
|
+
identity: undefined;
|
|
1019
|
+
generated: undefined;
|
|
1020
|
+
}, {}, {}>;
|
|
1021
|
+
};
|
|
1022
|
+
dialect: "sqlite";
|
|
1023
|
+
}>;
|
|
795
1024
|
export declare const a2aAgents: import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{
|
|
796
1025
|
name: "a2a_agents";
|
|
797
1026
|
schema: undefined;
|
|
@@ -5272,6 +5501,116 @@ export declare const deliveries: import("drizzle-orm/sqlite-core").SQLiteTableWi
|
|
|
5272
5501
|
}, {}, {
|
|
5273
5502
|
length: number | undefined;
|
|
5274
5503
|
}>;
|
|
5504
|
+
routeNodeId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
5505
|
+
name: "route_node_id";
|
|
5506
|
+
tableName: "deliveries";
|
|
5507
|
+
dataType: "string";
|
|
5508
|
+
columnType: "SQLiteText";
|
|
5509
|
+
data: string;
|
|
5510
|
+
driverParam: string;
|
|
5511
|
+
notNull: false;
|
|
5512
|
+
hasDefault: false;
|
|
5513
|
+
isPrimaryKey: false;
|
|
5514
|
+
isAutoincrement: false;
|
|
5515
|
+
hasRuntimeDefault: false;
|
|
5516
|
+
enumValues: [string, ...string[]];
|
|
5517
|
+
baseColumn: never;
|
|
5518
|
+
identity: undefined;
|
|
5519
|
+
generated: undefined;
|
|
5520
|
+
}, {}, {
|
|
5521
|
+
length: number | undefined;
|
|
5522
|
+
}>;
|
|
5523
|
+
routeNodeKind: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
5524
|
+
name: "route_node_kind";
|
|
5525
|
+
tableName: "deliveries";
|
|
5526
|
+
dataType: "string";
|
|
5527
|
+
columnType: "SQLiteText";
|
|
5528
|
+
data: string;
|
|
5529
|
+
driverParam: string;
|
|
5530
|
+
notNull: false;
|
|
5531
|
+
hasDefault: false;
|
|
5532
|
+
isPrimaryKey: false;
|
|
5533
|
+
isAutoincrement: false;
|
|
5534
|
+
hasRuntimeDefault: false;
|
|
5535
|
+
enumValues: [string, ...string[]];
|
|
5536
|
+
baseColumn: never;
|
|
5537
|
+
identity: undefined;
|
|
5538
|
+
generated: undefined;
|
|
5539
|
+
}, {}, {
|
|
5540
|
+
length: number | undefined;
|
|
5541
|
+
}>;
|
|
5542
|
+
deliveryAdapter: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
5543
|
+
name: "delivery_adapter";
|
|
5544
|
+
tableName: "deliveries";
|
|
5545
|
+
dataType: "string";
|
|
5546
|
+
columnType: "SQLiteText";
|
|
5547
|
+
data: string;
|
|
5548
|
+
driverParam: string;
|
|
5549
|
+
notNull: false;
|
|
5550
|
+
hasDefault: false;
|
|
5551
|
+
isPrimaryKey: false;
|
|
5552
|
+
isAutoincrement: false;
|
|
5553
|
+
hasRuntimeDefault: false;
|
|
5554
|
+
enumValues: [string, ...string[]];
|
|
5555
|
+
baseColumn: never;
|
|
5556
|
+
identity: undefined;
|
|
5557
|
+
generated: undefined;
|
|
5558
|
+
}, {}, {
|
|
5559
|
+
length: number | undefined;
|
|
5560
|
+
}>;
|
|
5561
|
+
dispatchAttempts: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
5562
|
+
name: "dispatch_attempts";
|
|
5563
|
+
tableName: "deliveries";
|
|
5564
|
+
dataType: "number";
|
|
5565
|
+
columnType: "SQLiteInteger";
|
|
5566
|
+
data: number;
|
|
5567
|
+
driverParam: number;
|
|
5568
|
+
notNull: true;
|
|
5569
|
+
hasDefault: true;
|
|
5570
|
+
isPrimaryKey: false;
|
|
5571
|
+
isAutoincrement: false;
|
|
5572
|
+
hasRuntimeDefault: false;
|
|
5573
|
+
enumValues: undefined;
|
|
5574
|
+
baseColumn: never;
|
|
5575
|
+
identity: undefined;
|
|
5576
|
+
generated: undefined;
|
|
5577
|
+
}, {}, {}>;
|
|
5578
|
+
nextAttemptAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
5579
|
+
name: "next_attempt_at";
|
|
5580
|
+
tableName: "deliveries";
|
|
5581
|
+
dataType: "date";
|
|
5582
|
+
columnType: "SQLiteTimestamp";
|
|
5583
|
+
data: Date;
|
|
5584
|
+
driverParam: number;
|
|
5585
|
+
notNull: false;
|
|
5586
|
+
hasDefault: false;
|
|
5587
|
+
isPrimaryKey: false;
|
|
5588
|
+
isAutoincrement: false;
|
|
5589
|
+
hasRuntimeDefault: false;
|
|
5590
|
+
enumValues: undefined;
|
|
5591
|
+
baseColumn: never;
|
|
5592
|
+
identity: undefined;
|
|
5593
|
+
generated: undefined;
|
|
5594
|
+
}, {}, {}>;
|
|
5595
|
+
lastDispatchError: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
5596
|
+
name: "last_dispatch_error";
|
|
5597
|
+
tableName: "deliveries";
|
|
5598
|
+
dataType: "string";
|
|
5599
|
+
columnType: "SQLiteText";
|
|
5600
|
+
data: string;
|
|
5601
|
+
driverParam: string;
|
|
5602
|
+
notNull: false;
|
|
5603
|
+
hasDefault: false;
|
|
5604
|
+
isPrimaryKey: false;
|
|
5605
|
+
isAutoincrement: false;
|
|
5606
|
+
hasRuntimeDefault: false;
|
|
5607
|
+
enumValues: [string, ...string[]];
|
|
5608
|
+
baseColumn: never;
|
|
5609
|
+
identity: undefined;
|
|
5610
|
+
generated: undefined;
|
|
5611
|
+
}, {}, {
|
|
5612
|
+
length: number | undefined;
|
|
5613
|
+
}>;
|
|
5275
5614
|
expiresAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
5276
5615
|
name: "expires_at";
|
|
5277
5616
|
tableName: "deliveries";
|
package/dist/db/schema.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/db/schema.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/db/schema.ts"],"names":[],"mappings":"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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAqBpB,CAAC;AAKF,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAqBzB,CAAC;AAKF,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA+CtB,CAAC;AAKF,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAqBzB,CAAC"}
|
package/dist/db/schema.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { sqliteTable, text, integer, real, index, uniqueIndex, primaryKey, } from 'drizzle-orm/sqlite-core';
|
|
1
|
+
import { sqliteTable, text, integer, real, index, uniqueIndex, primaryKey, foreignKey, } from 'drizzle-orm/sqlite-core';
|
|
2
2
|
import { sql } from 'drizzle-orm';
|
|
3
3
|
export const workspaces = sqliteTable('workspaces', {
|
|
4
4
|
id: text('id').primaryKey(),
|
|
@@ -36,6 +36,7 @@ export const agents = sqliteTable('agents', {
|
|
|
36
36
|
lastSeen: integer('last_seen', { mode: 'timestamp' }).notNull().default(sql `(unixepoch())`),
|
|
37
37
|
}, (table) => [
|
|
38
38
|
uniqueIndex('agents_workspace_name_unique').on(table.workspaceId, table.name),
|
|
39
|
+
uniqueIndex('agents_workspace_id_unique').on(table.workspaceId, table.id),
|
|
39
40
|
index('idx_agents_workspace').on(table.workspaceId),
|
|
40
41
|
index('idx_agents_token').on(table.tokenHash),
|
|
41
42
|
]);
|
|
@@ -49,6 +50,9 @@ export const nodes = sqliteTable('nodes', {
|
|
|
49
50
|
.references(() => workspaces.id, { onDelete: 'cascade' }),
|
|
50
51
|
name: text('name').notNull(),
|
|
51
52
|
tokenHash: text('token_hash').notNull().unique(),
|
|
53
|
+
kind: text('kind').notNull().default('fleet_ws'),
|
|
54
|
+
deliveryAdapter: text('delivery_adapter').notNull().default('fleet.ws.v1'),
|
|
55
|
+
deliveryConfig: text('delivery_config', { mode: 'json' }).$type(),
|
|
52
56
|
capabilities: text('capabilities', { mode: 'json' }).$type().notNull().default([]),
|
|
53
57
|
maxAgents: integer('max_agents').notNull().default(0),
|
|
54
58
|
activeAgents: integer('active_agents').notNull().default(0),
|
|
@@ -62,11 +66,47 @@ export const nodes = sqliteTable('nodes', {
|
|
|
62
66
|
createdAt: integer('created_at', { mode: 'timestamp' }).notNull().default(sql `(unixepoch())`),
|
|
63
67
|
}, (table) => [
|
|
64
68
|
uniqueIndex('nodes_workspace_name_unique').on(table.workspaceId, table.name),
|
|
69
|
+
uniqueIndex('nodes_workspace_id_unique').on(table.workspaceId, table.id),
|
|
65
70
|
index('idx_nodes_workspace').on(table.workspaceId),
|
|
66
71
|
index('idx_nodes_token').on(table.tokenHash),
|
|
67
72
|
index('idx_nodes_status').on(table.workspaceId, table.status),
|
|
68
73
|
]);
|
|
69
74
|
// ============================================
|
|
75
|
+
// Agent Node Bindings
|
|
76
|
+
// ============================================
|
|
77
|
+
export const agentNodeBindings = sqliteTable('agent_node_bindings', {
|
|
78
|
+
id: text('id').primaryKey(),
|
|
79
|
+
workspaceId: text('workspace_id')
|
|
80
|
+
.notNull()
|
|
81
|
+
.references(() => workspaces.id, { onDelete: 'cascade' }),
|
|
82
|
+
agentId: text('agent_id')
|
|
83
|
+
.notNull()
|
|
84
|
+
.references(() => agents.id, { onDelete: 'cascade' }),
|
|
85
|
+
nodeId: text('node_id')
|
|
86
|
+
.notNull()
|
|
87
|
+
.references(() => nodes.id, { onDelete: 'cascade' }),
|
|
88
|
+
status: text('status').notNull().default('active'),
|
|
89
|
+
sessionRef: text('session_ref'),
|
|
90
|
+
priority: integer('priority').notNull().default(0),
|
|
91
|
+
createdAt: integer('created_at', { mode: 'timestamp' }).notNull().default(sql `(unixepoch())`),
|
|
92
|
+
updatedAt: integer('updated_at', { mode: 'timestamp' }),
|
|
93
|
+
}, (table) => [
|
|
94
|
+
uniqueIndex('agent_node_bindings_agent_node_unique').on(table.agentId, table.nodeId),
|
|
95
|
+
foreignKey({
|
|
96
|
+
columns: [table.workspaceId, table.agentId],
|
|
97
|
+
foreignColumns: [agents.workspaceId, agents.id],
|
|
98
|
+
name: 'agent_node_bindings_agent_workspace_fk',
|
|
99
|
+
}).onDelete('cascade'),
|
|
100
|
+
foreignKey({
|
|
101
|
+
columns: [table.workspaceId, table.nodeId],
|
|
102
|
+
foreignColumns: [nodes.workspaceId, nodes.id],
|
|
103
|
+
name: 'agent_node_bindings_node_workspace_fk',
|
|
104
|
+
}).onDelete('cascade'),
|
|
105
|
+
index('idx_agent_node_bindings_workspace').on(table.workspaceId, table.status),
|
|
106
|
+
index('idx_agent_node_bindings_agent').on(table.workspaceId, table.agentId, table.status),
|
|
107
|
+
index('idx_agent_node_bindings_node').on(table.workspaceId, table.nodeId, table.status),
|
|
108
|
+
]);
|
|
109
|
+
// ============================================
|
|
70
110
|
// A2A Agents
|
|
71
111
|
// ============================================
|
|
72
112
|
export const a2aAgents = sqliteTable('a2a_agents', {
|
|
@@ -603,6 +643,12 @@ export const deliveries = sqliteTable('deliveries', {
|
|
|
603
643
|
seq: integer('seq').notNull().default(0),
|
|
604
644
|
locationType: text('location_type').notNull().default('self_connected'),
|
|
605
645
|
locationNodeId: text('location_node_id').references(() => nodes.id, { onDelete: 'set null' }),
|
|
646
|
+
routeNodeId: text('route_node_id').references(() => nodes.id, { onDelete: 'set null' }),
|
|
647
|
+
routeNodeKind: text('route_node_kind'),
|
|
648
|
+
deliveryAdapter: text('delivery_adapter'),
|
|
649
|
+
dispatchAttempts: integer('dispatch_attempts').notNull().default(0),
|
|
650
|
+
nextAttemptAt: integer('next_attempt_at', { mode: 'timestamp' }),
|
|
651
|
+
lastDispatchError: text('last_dispatch_error'),
|
|
606
652
|
expiresAt: integer('expires_at', { mode: 'timestamp' }),
|
|
607
653
|
deliveredAt: integer('delivered_at', { mode: 'timestamp' }),
|
|
608
654
|
ackedAt: integer('acked_at', { mode: 'timestamp' }),
|
|
@@ -620,6 +666,7 @@ export const deliveries = sqliteTable('deliveries', {
|
|
|
620
666
|
index('idx_deliveries_agent_status_seq').on(table.workspaceId, table.agentId, table.status, table.seq),
|
|
621
667
|
index('idx_deliveries_expires').on(table.workspaceId, table.status, table.expiresAt),
|
|
622
668
|
index('idx_deliveries_status').on(table.workspaceId, table.status, table.createdAt),
|
|
669
|
+
index('idx_deliveries_http_push_due').on(table.workspaceId, table.routeNodeKind, table.status, table.nextAttemptAt),
|
|
623
670
|
]);
|
|
624
671
|
// ============================================
|
|
625
672
|
// Pending Events (durable event queue)
|