@agentplat/rooms-postgres 0.2.0-beta.1
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/LICENSE +202 -0
- package/README.md +76 -0
- package/dist/cli.d.ts +3 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +25 -0
- package/dist/cli.js.map +1 -0
- package/dist/index.d.ts +5 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +4 -0
- package/dist/index.js.map +1 -0
- package/dist/migrations.d.ts +7 -0
- package/dist/migrations.d.ts.map +1 -0
- package/dist/migrations.js +58 -0
- package/dist/migrations.js.map +1 -0
- package/dist/pool.d.ts +8 -0
- package/dist/pool.d.ts.map +1 -0
- package/dist/pool.js +9 -0
- package/dist/pool.js.map +1 -0
- package/dist/repository.d.ts +28 -0
- package/dist/repository.d.ts.map +1 -0
- package/dist/repository.js +830 -0
- package/dist/repository.js.map +1 -0
- package/migrations/001_agent_rooms.down.sql +25 -0
- package/migrations/001_agent_rooms.up.sql +360 -0
- package/package.json +46 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"repository.js","sourceRoot":"","sources":["../src/repository.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
BEGIN;
|
|
2
|
+
|
|
3
|
+
DROP TRIGGER IF EXISTS events_append_only_delete ON public.events;
|
|
4
|
+
DROP TRIGGER IF EXISTS events_append_only_update ON public.events;
|
|
5
|
+
DROP FUNCTION IF EXISTS public.agentplat_prevent_event_mutation();
|
|
6
|
+
DROP TABLE IF EXISTS public.events;
|
|
7
|
+
DROP TABLE IF EXISTS public.tool_calls;
|
|
8
|
+
DROP TABLE IF EXISTS public.context_snapshots;
|
|
9
|
+
DROP TABLE IF EXISTS public.runs;
|
|
10
|
+
DROP TABLE IF EXISTS public.memory_entries;
|
|
11
|
+
DROP TABLE IF EXISTS public.policies;
|
|
12
|
+
DROP TABLE IF EXISTS public.approvals;
|
|
13
|
+
DROP TRIGGER IF EXISTS artifact_versions_immutable_delete ON public.artifact_versions;
|
|
14
|
+
DROP TRIGGER IF EXISTS artifact_versions_immutable_update ON public.artifact_versions;
|
|
15
|
+
DROP FUNCTION IF EXISTS public.agentplat_prevent_artifact_version_mutation();
|
|
16
|
+
DROP TABLE IF EXISTS public.artifact_versions;
|
|
17
|
+
DROP TABLE IF EXISTS public.artifacts;
|
|
18
|
+
DROP TABLE IF EXISTS public.tasks;
|
|
19
|
+
DROP TABLE IF EXISTS public.messages;
|
|
20
|
+
DROP TABLE IF EXISTS public.room_participants;
|
|
21
|
+
DROP TABLE IF EXISTS public.participants;
|
|
22
|
+
DROP TABLE IF EXISTS public.rooms;
|
|
23
|
+
DELETE FROM public.agentplat_schema_migrations WHERE name = '001_agent_rooms';
|
|
24
|
+
|
|
25
|
+
COMMIT;
|
|
@@ -0,0 +1,360 @@
|
|
|
1
|
+
BEGIN;
|
|
2
|
+
|
|
3
|
+
CREATE TABLE IF NOT EXISTS public.agentplat_schema_migrations (
|
|
4
|
+
name text PRIMARY KEY,
|
|
5
|
+
applied_at timestamptz NOT NULL DEFAULT clock_timestamp()
|
|
6
|
+
);
|
|
7
|
+
|
|
8
|
+
CREATE TABLE public.rooms (
|
|
9
|
+
tenant_id text NOT NULL,
|
|
10
|
+
id text NOT NULL,
|
|
11
|
+
parent_room_id text,
|
|
12
|
+
title text NOT NULL,
|
|
13
|
+
goal text NOT NULL,
|
|
14
|
+
status text NOT NULL CHECK (status IN ('active', 'paused', 'completed', 'archived')),
|
|
15
|
+
metadata jsonb NOT NULL DEFAULT '{}'::jsonb,
|
|
16
|
+
created_by text,
|
|
17
|
+
created_at timestamptz NOT NULL,
|
|
18
|
+
updated_at timestamptz NOT NULL,
|
|
19
|
+
completed_at timestamptz,
|
|
20
|
+
archived_at timestamptz,
|
|
21
|
+
PRIMARY KEY (tenant_id, id),
|
|
22
|
+
FOREIGN KEY (tenant_id, parent_room_id) REFERENCES public.rooms (tenant_id, id) ON DELETE RESTRICT,
|
|
23
|
+
CHECK (parent_room_id IS NULL OR parent_room_id <> id)
|
|
24
|
+
);
|
|
25
|
+
|
|
26
|
+
CREATE INDEX rooms_tenant_status_idx
|
|
27
|
+
ON public.rooms (tenant_id, status, updated_at DESC);
|
|
28
|
+
CREATE INDEX rooms_tenant_parent_idx
|
|
29
|
+
ON public.rooms (tenant_id, parent_room_id) WHERE parent_room_id IS NOT NULL;
|
|
30
|
+
|
|
31
|
+
CREATE TABLE public.participants (
|
|
32
|
+
tenant_id text NOT NULL,
|
|
33
|
+
id text NOT NULL,
|
|
34
|
+
type text NOT NULL CHECK (type IN ('human', 'agent')),
|
|
35
|
+
display_name text NOT NULL,
|
|
36
|
+
role text NOT NULL,
|
|
37
|
+
authority_level integer NOT NULL CHECK (authority_level >= 0),
|
|
38
|
+
permissions jsonb NOT NULL DEFAULT '[]'::jsonb,
|
|
39
|
+
boundaries jsonb NOT NULL DEFAULT '[]'::jsonb,
|
|
40
|
+
memory_scope text CHECK (
|
|
41
|
+
memory_scope IS NULL OR
|
|
42
|
+
memory_scope IN ('ephemeral', 'agent', 'role', 'room', 'artifact', 'organization')
|
|
43
|
+
),
|
|
44
|
+
runtime jsonb,
|
|
45
|
+
metadata jsonb NOT NULL DEFAULT '{}'::jsonb,
|
|
46
|
+
created_at timestamptz NOT NULL,
|
|
47
|
+
updated_at timestamptz NOT NULL,
|
|
48
|
+
PRIMARY KEY (tenant_id, id)
|
|
49
|
+
);
|
|
50
|
+
|
|
51
|
+
CREATE TABLE public.room_participants (
|
|
52
|
+
tenant_id text NOT NULL,
|
|
53
|
+
room_id text NOT NULL,
|
|
54
|
+
participant_id text NOT NULL,
|
|
55
|
+
joined_at timestamptz NOT NULL,
|
|
56
|
+
PRIMARY KEY (tenant_id, room_id, participant_id),
|
|
57
|
+
FOREIGN KEY (tenant_id, room_id) REFERENCES public.rooms (tenant_id, id) ON DELETE CASCADE,
|
|
58
|
+
FOREIGN KEY (tenant_id, participant_id) REFERENCES public.participants (tenant_id, id) ON DELETE RESTRICT
|
|
59
|
+
);
|
|
60
|
+
|
|
61
|
+
CREATE INDEX room_participants_tenant_participant_idx
|
|
62
|
+
ON public.room_participants (tenant_id, participant_id, room_id);
|
|
63
|
+
|
|
64
|
+
CREATE TABLE public.messages (
|
|
65
|
+
tenant_id text NOT NULL,
|
|
66
|
+
id text NOT NULL,
|
|
67
|
+
room_id text NOT NULL,
|
|
68
|
+
author_participant_id text,
|
|
69
|
+
role text NOT NULL CHECK (role IN ('human', 'agent', 'system', 'tool')),
|
|
70
|
+
content text NOT NULL,
|
|
71
|
+
metadata jsonb NOT NULL DEFAULT '{}'::jsonb,
|
|
72
|
+
created_at timestamptz NOT NULL,
|
|
73
|
+
PRIMARY KEY (tenant_id, id),
|
|
74
|
+
FOREIGN KEY (tenant_id, room_id) REFERENCES public.rooms (tenant_id, id) ON DELETE CASCADE,
|
|
75
|
+
FOREIGN KEY (tenant_id, room_id, author_participant_id)
|
|
76
|
+
REFERENCES public.room_participants (tenant_id, room_id, participant_id) ON DELETE RESTRICT
|
|
77
|
+
);
|
|
78
|
+
|
|
79
|
+
CREATE INDEX messages_tenant_room_created_idx
|
|
80
|
+
ON public.messages (tenant_id, room_id, created_at, id);
|
|
81
|
+
|
|
82
|
+
CREATE TABLE public.tasks (
|
|
83
|
+
tenant_id text NOT NULL,
|
|
84
|
+
id text NOT NULL,
|
|
85
|
+
room_id text NOT NULL,
|
|
86
|
+
step_id text NOT NULL,
|
|
87
|
+
assigned_participant_id text,
|
|
88
|
+
assigned_role text,
|
|
89
|
+
instruction text NOT NULL,
|
|
90
|
+
expected_output text NOT NULL,
|
|
91
|
+
expected_artifact_kind text NOT NULL,
|
|
92
|
+
dependencies jsonb NOT NULL DEFAULT '[]'::jsonb,
|
|
93
|
+
acceptance_criteria jsonb NOT NULL DEFAULT '[]'::jsonb,
|
|
94
|
+
action_level text NOT NULL CHECK (action_level IN ('read', 'draft', 'execute', 'external_write')),
|
|
95
|
+
approval_required boolean NOT NULL DEFAULT false,
|
|
96
|
+
tool_ids jsonb NOT NULL DEFAULT '[]'::jsonb,
|
|
97
|
+
status text NOT NULL CHECK (status IN ('pending', 'running', 'completed', 'failed', 'canceled')),
|
|
98
|
+
error_message text,
|
|
99
|
+
metadata jsonb NOT NULL DEFAULT '{}'::jsonb,
|
|
100
|
+
created_at timestamptz NOT NULL,
|
|
101
|
+
updated_at timestamptz NOT NULL,
|
|
102
|
+
completed_at timestamptz,
|
|
103
|
+
PRIMARY KEY (tenant_id, id),
|
|
104
|
+
UNIQUE (tenant_id, room_id, step_id),
|
|
105
|
+
UNIQUE (tenant_id, room_id, id),
|
|
106
|
+
FOREIGN KEY (tenant_id, room_id) REFERENCES public.rooms (tenant_id, id) ON DELETE CASCADE,
|
|
107
|
+
FOREIGN KEY (tenant_id, room_id, assigned_participant_id)
|
|
108
|
+
REFERENCES public.room_participants (tenant_id, room_id, participant_id) ON DELETE RESTRICT
|
|
109
|
+
);
|
|
110
|
+
|
|
111
|
+
CREATE INDEX tasks_tenant_room_status_idx
|
|
112
|
+
ON public.tasks (tenant_id, room_id, status, created_at, id);
|
|
113
|
+
|
|
114
|
+
CREATE TABLE public.artifacts (
|
|
115
|
+
tenant_id text NOT NULL,
|
|
116
|
+
id text NOT NULL,
|
|
117
|
+
room_id text NOT NULL,
|
|
118
|
+
type text NOT NULL,
|
|
119
|
+
title text NOT NULL,
|
|
120
|
+
status text NOT NULL
|
|
121
|
+
CHECK (status IN ('draft', 'pending_approval', 'approved', 'rejected', 'needs_revision')),
|
|
122
|
+
current_version integer NOT NULL CHECK (current_version > 0),
|
|
123
|
+
authors jsonb NOT NULL DEFAULT '[]'::jsonb,
|
|
124
|
+
provenance jsonb NOT NULL DEFAULT '{}'::jsonb,
|
|
125
|
+
assumptions jsonb NOT NULL DEFAULT '[]'::jsonb,
|
|
126
|
+
risks jsonb NOT NULL DEFAULT '[]'::jsonb,
|
|
127
|
+
metadata jsonb NOT NULL DEFAULT '{}'::jsonb,
|
|
128
|
+
created_at timestamptz NOT NULL,
|
|
129
|
+
updated_at timestamptz NOT NULL,
|
|
130
|
+
PRIMARY KEY (tenant_id, id),
|
|
131
|
+
FOREIGN KEY (tenant_id, room_id) REFERENCES public.rooms (tenant_id, id) ON DELETE CASCADE
|
|
132
|
+
);
|
|
133
|
+
|
|
134
|
+
CREATE INDEX artifacts_tenant_room_status_idx
|
|
135
|
+
ON public.artifacts (tenant_id, room_id, status, updated_at DESC);
|
|
136
|
+
|
|
137
|
+
CREATE TABLE public.artifact_versions (
|
|
138
|
+
tenant_id text NOT NULL,
|
|
139
|
+
id text NOT NULL,
|
|
140
|
+
artifact_id text NOT NULL,
|
|
141
|
+
version integer NOT NULL CHECK (version > 0),
|
|
142
|
+
content jsonb NOT NULL,
|
|
143
|
+
content_type text NOT NULL,
|
|
144
|
+
created_by text,
|
|
145
|
+
created_at timestamptz NOT NULL,
|
|
146
|
+
PRIMARY KEY (tenant_id, id),
|
|
147
|
+
UNIQUE (tenant_id, artifact_id, version),
|
|
148
|
+
FOREIGN KEY (tenant_id, artifact_id) REFERENCES public.artifacts (tenant_id, id) ON DELETE CASCADE
|
|
149
|
+
);
|
|
150
|
+
|
|
151
|
+
CREATE INDEX artifact_versions_tenant_artifact_idx
|
|
152
|
+
ON public.artifact_versions (tenant_id, artifact_id, version DESC);
|
|
153
|
+
|
|
154
|
+
CREATE FUNCTION public.agentplat_prevent_artifact_version_mutation()
|
|
155
|
+
RETURNS trigger
|
|
156
|
+
LANGUAGE plpgsql
|
|
157
|
+
AS $$
|
|
158
|
+
BEGIN
|
|
159
|
+
RAISE EXCEPTION 'artifact versions are immutable';
|
|
160
|
+
END;
|
|
161
|
+
$$;
|
|
162
|
+
|
|
163
|
+
CREATE TRIGGER artifact_versions_immutable_update
|
|
164
|
+
BEFORE UPDATE ON public.artifact_versions
|
|
165
|
+
FOR EACH ROW EXECUTE FUNCTION public.agentplat_prevent_artifact_version_mutation();
|
|
166
|
+
CREATE TRIGGER artifact_versions_immutable_delete
|
|
167
|
+
BEFORE DELETE ON public.artifact_versions
|
|
168
|
+
FOR EACH ROW EXECUTE FUNCTION public.agentplat_prevent_artifact_version_mutation();
|
|
169
|
+
|
|
170
|
+
CREATE TABLE public.approvals (
|
|
171
|
+
tenant_id text NOT NULL,
|
|
172
|
+
id text NOT NULL,
|
|
173
|
+
room_id text NOT NULL,
|
|
174
|
+
target_type text NOT NULL CHECK (target_type IN ('room', 'task', 'artifact', 'action')),
|
|
175
|
+
target_id text NOT NULL,
|
|
176
|
+
target_version integer CHECK (target_version IS NULL OR target_version > 0),
|
|
177
|
+
action text,
|
|
178
|
+
status text NOT NULL CHECK (status IN ('requested', 'approved', 'rejected', 'needs_revision')),
|
|
179
|
+
requested_by text,
|
|
180
|
+
decided_by text,
|
|
181
|
+
comment text,
|
|
182
|
+
created_at timestamptz NOT NULL,
|
|
183
|
+
updated_at timestamptz NOT NULL,
|
|
184
|
+
decided_at timestamptz,
|
|
185
|
+
PRIMARY KEY (tenant_id, id),
|
|
186
|
+
FOREIGN KEY (tenant_id, room_id) REFERENCES public.rooms (tenant_id, id) ON DELETE CASCADE
|
|
187
|
+
);
|
|
188
|
+
|
|
189
|
+
CREATE INDEX approvals_tenant_room_status_idx
|
|
190
|
+
ON public.approvals (tenant_id, room_id, status, created_at, id);
|
|
191
|
+
CREATE INDEX approvals_tenant_target_idx
|
|
192
|
+
ON public.approvals (tenant_id, target_type, target_id, created_at DESC);
|
|
193
|
+
CREATE UNIQUE INDEX approvals_one_requested_target_idx
|
|
194
|
+
ON public.approvals (
|
|
195
|
+
tenant_id,
|
|
196
|
+
room_id,
|
|
197
|
+
target_type,
|
|
198
|
+
target_id,
|
|
199
|
+
COALESCE(target_version, 0),
|
|
200
|
+
COALESCE(action, '')
|
|
201
|
+
)
|
|
202
|
+
WHERE status = 'requested';
|
|
203
|
+
|
|
204
|
+
CREATE TABLE public.policies (
|
|
205
|
+
tenant_id text NOT NULL,
|
|
206
|
+
id text NOT NULL,
|
|
207
|
+
room_id text NOT NULL,
|
|
208
|
+
name text NOT NULL,
|
|
209
|
+
allowed_actions jsonb NOT NULL DEFAULT '[]'::jsonb,
|
|
210
|
+
denied_actions jsonb NOT NULL DEFAULT '[]'::jsonb,
|
|
211
|
+
required_approvals jsonb NOT NULL DEFAULT '[]'::jsonb,
|
|
212
|
+
escalation_rules jsonb NOT NULL DEFAULT '[]'::jsonb,
|
|
213
|
+
tool_permissions jsonb NOT NULL DEFAULT '[]'::jsonb,
|
|
214
|
+
memory_access_rules jsonb NOT NULL DEFAULT '[]'::jsonb,
|
|
215
|
+
created_at timestamptz NOT NULL,
|
|
216
|
+
updated_at timestamptz NOT NULL,
|
|
217
|
+
PRIMARY KEY (tenant_id, id),
|
|
218
|
+
FOREIGN KEY (tenant_id, room_id) REFERENCES public.rooms (tenant_id, id) ON DELETE CASCADE
|
|
219
|
+
);
|
|
220
|
+
|
|
221
|
+
CREATE INDEX policies_tenant_room_idx
|
|
222
|
+
ON public.policies (tenant_id, room_id, created_at, id);
|
|
223
|
+
|
|
224
|
+
CREATE TABLE public.memory_entries (
|
|
225
|
+
tenant_id text NOT NULL,
|
|
226
|
+
id text NOT NULL,
|
|
227
|
+
room_id text,
|
|
228
|
+
scope text NOT NULL
|
|
229
|
+
CHECK (scope IN ('ephemeral', 'agent', 'role', 'room', 'artifact', 'organization')),
|
|
230
|
+
scope_id text,
|
|
231
|
+
content jsonb NOT NULL,
|
|
232
|
+
source text NOT NULL,
|
|
233
|
+
confidence double precision NOT NULL CHECK (confidence >= 0 AND confidence <= 1),
|
|
234
|
+
retention text NOT NULL CHECK (retention IN ('transient', 'session', 'durable', 'until')),
|
|
235
|
+
retain_until timestamptz,
|
|
236
|
+
provenance jsonb NOT NULL DEFAULT '{}'::jsonb,
|
|
237
|
+
created_at timestamptz NOT NULL,
|
|
238
|
+
PRIMARY KEY (tenant_id, id),
|
|
239
|
+
FOREIGN KEY (tenant_id, room_id) REFERENCES public.rooms (tenant_id, id) ON DELETE CASCADE,
|
|
240
|
+
CHECK (retention <> 'until' OR retain_until IS NOT NULL)
|
|
241
|
+
);
|
|
242
|
+
|
|
243
|
+
CREATE INDEX memory_entries_tenant_scope_idx
|
|
244
|
+
ON public.memory_entries (tenant_id, scope, scope_id, created_at DESC);
|
|
245
|
+
CREATE INDEX memory_entries_tenant_room_idx
|
|
246
|
+
ON public.memory_entries (tenant_id, room_id, created_at DESC) WHERE room_id IS NOT NULL;
|
|
247
|
+
|
|
248
|
+
CREATE TABLE public.runs (
|
|
249
|
+
tenant_id text NOT NULL,
|
|
250
|
+
id text NOT NULL,
|
|
251
|
+
room_id text NOT NULL,
|
|
252
|
+
task_id text NOT NULL,
|
|
253
|
+
participant_id text NOT NULL,
|
|
254
|
+
runtime text NOT NULL,
|
|
255
|
+
status text NOT NULL CHECK (status IN ('running', 'completed', 'failed', 'canceled')),
|
|
256
|
+
output text,
|
|
257
|
+
error_message text,
|
|
258
|
+
token_usage jsonb,
|
|
259
|
+
latency_ms integer CHECK (latency_ms IS NULL OR latency_ms >= 0),
|
|
260
|
+
started_at timestamptz NOT NULL,
|
|
261
|
+
lease_expires_at timestamptz NOT NULL,
|
|
262
|
+
completed_at timestamptz,
|
|
263
|
+
PRIMARY KEY (tenant_id, id),
|
|
264
|
+
UNIQUE (tenant_id, room_id, id),
|
|
265
|
+
UNIQUE (tenant_id, room_id, task_id, id),
|
|
266
|
+
FOREIGN KEY (tenant_id, room_id) REFERENCES public.rooms (tenant_id, id) ON DELETE CASCADE,
|
|
267
|
+
FOREIGN KEY (tenant_id, room_id, task_id)
|
|
268
|
+
REFERENCES public.tasks (tenant_id, room_id, id) ON DELETE CASCADE,
|
|
269
|
+
FOREIGN KEY (tenant_id, room_id, participant_id)
|
|
270
|
+
REFERENCES public.room_participants (tenant_id, room_id, participant_id) ON DELETE RESTRICT
|
|
271
|
+
);
|
|
272
|
+
|
|
273
|
+
CREATE INDEX runs_tenant_room_started_idx
|
|
274
|
+
ON public.runs (tenant_id, room_id, started_at DESC);
|
|
275
|
+
CREATE INDEX runs_tenant_task_started_idx
|
|
276
|
+
ON public.runs (tenant_id, task_id, started_at DESC);
|
|
277
|
+
|
|
278
|
+
CREATE TABLE public.context_snapshots (
|
|
279
|
+
tenant_id text NOT NULL,
|
|
280
|
+
id text NOT NULL,
|
|
281
|
+
room_id text NOT NULL,
|
|
282
|
+
task_id text NOT NULL,
|
|
283
|
+
run_id text NOT NULL,
|
|
284
|
+
context jsonb NOT NULL,
|
|
285
|
+
created_at timestamptz NOT NULL,
|
|
286
|
+
PRIMARY KEY (tenant_id, id),
|
|
287
|
+
FOREIGN KEY (tenant_id, room_id) REFERENCES public.rooms (tenant_id, id) ON DELETE CASCADE,
|
|
288
|
+
FOREIGN KEY (tenant_id, room_id, task_id)
|
|
289
|
+
REFERENCES public.tasks (tenant_id, room_id, id) ON DELETE CASCADE,
|
|
290
|
+
FOREIGN KEY (tenant_id, room_id, task_id, run_id)
|
|
291
|
+
REFERENCES public.runs (tenant_id, room_id, task_id, id) ON DELETE CASCADE
|
|
292
|
+
);
|
|
293
|
+
|
|
294
|
+
CREATE INDEX context_snapshots_tenant_room_created_idx
|
|
295
|
+
ON public.context_snapshots (tenant_id, room_id, created_at DESC);
|
|
296
|
+
|
|
297
|
+
CREATE TABLE public.tool_calls (
|
|
298
|
+
tenant_id text NOT NULL,
|
|
299
|
+
id text NOT NULL,
|
|
300
|
+
room_id text NOT NULL,
|
|
301
|
+
run_id text NOT NULL,
|
|
302
|
+
tool_id text NOT NULL,
|
|
303
|
+
input jsonb NOT NULL DEFAULT '{}'::jsonb,
|
|
304
|
+
output jsonb,
|
|
305
|
+
status text NOT NULL CHECK (status IN ('requested', 'completed', 'failed', 'denied')),
|
|
306
|
+
latency_ms integer CHECK (latency_ms IS NULL OR latency_ms >= 0),
|
|
307
|
+
created_at timestamptz NOT NULL,
|
|
308
|
+
completed_at timestamptz,
|
|
309
|
+
PRIMARY KEY (tenant_id, id),
|
|
310
|
+
FOREIGN KEY (tenant_id, room_id) REFERENCES public.rooms (tenant_id, id) ON DELETE CASCADE,
|
|
311
|
+
FOREIGN KEY (tenant_id, room_id, run_id)
|
|
312
|
+
REFERENCES public.runs (tenant_id, room_id, id) ON DELETE CASCADE
|
|
313
|
+
);
|
|
314
|
+
|
|
315
|
+
CREATE INDEX tool_calls_tenant_run_created_idx
|
|
316
|
+
ON public.tool_calls (tenant_id, run_id, created_at, id);
|
|
317
|
+
|
|
318
|
+
CREATE TABLE public.events (
|
|
319
|
+
sequence bigint GENERATED ALWAYS AS IDENTITY,
|
|
320
|
+
tenant_id text NOT NULL,
|
|
321
|
+
id text NOT NULL,
|
|
322
|
+
room_id text NOT NULL,
|
|
323
|
+
type text NOT NULL,
|
|
324
|
+
source text NOT NULL,
|
|
325
|
+
subject jsonb,
|
|
326
|
+
payload jsonb NOT NULL DEFAULT '{}'::jsonb,
|
|
327
|
+
metadata jsonb NOT NULL DEFAULT '{}'::jsonb,
|
|
328
|
+
occurred_at timestamptz NOT NULL,
|
|
329
|
+
actor_id text,
|
|
330
|
+
PRIMARY KEY (tenant_id, id),
|
|
331
|
+
UNIQUE (tenant_id, sequence),
|
|
332
|
+
FOREIGN KEY (tenant_id, room_id) REFERENCES public.rooms (tenant_id, id) ON DELETE CASCADE
|
|
333
|
+
);
|
|
334
|
+
|
|
335
|
+
CREATE INDEX events_tenant_room_sequence_idx
|
|
336
|
+
ON public.events (tenant_id, room_id, sequence);
|
|
337
|
+
CREATE INDEX events_tenant_type_occurred_idx
|
|
338
|
+
ON public.events (tenant_id, type, occurred_at DESC);
|
|
339
|
+
|
|
340
|
+
CREATE FUNCTION public.agentplat_prevent_event_mutation()
|
|
341
|
+
RETURNS trigger
|
|
342
|
+
LANGUAGE plpgsql
|
|
343
|
+
AS $$
|
|
344
|
+
BEGIN
|
|
345
|
+
RAISE EXCEPTION 'events are append-only';
|
|
346
|
+
END;
|
|
347
|
+
$$;
|
|
348
|
+
|
|
349
|
+
CREATE TRIGGER events_append_only_update
|
|
350
|
+
BEFORE UPDATE ON public.events
|
|
351
|
+
FOR EACH ROW EXECUTE FUNCTION public.agentplat_prevent_event_mutation();
|
|
352
|
+
CREATE TRIGGER events_append_only_delete
|
|
353
|
+
BEFORE DELETE ON public.events
|
|
354
|
+
FOR EACH ROW EXECUTE FUNCTION public.agentplat_prevent_event_mutation();
|
|
355
|
+
|
|
356
|
+
INSERT INTO public.agentplat_schema_migrations (name)
|
|
357
|
+
VALUES ('001_agent_rooms')
|
|
358
|
+
ON CONFLICT (name) DO NOTHING;
|
|
359
|
+
|
|
360
|
+
COMMIT;
|
package/package.json
ADDED
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@agentplat/rooms-postgres",
|
|
3
|
+
"version": "0.2.0-beta.1",
|
|
4
|
+
"description": "PostgreSQL persistence adapter for Agentplat Agent Rooms.",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"license": "Apache-2.0",
|
|
7
|
+
"sideEffects": false,
|
|
8
|
+
"main": "./dist/index.js",
|
|
9
|
+
"types": "./dist/index.d.ts",
|
|
10
|
+
"exports": {
|
|
11
|
+
".": {
|
|
12
|
+
"types": "./dist/index.d.ts",
|
|
13
|
+
"import": "./dist/index.js"
|
|
14
|
+
}
|
|
15
|
+
},
|
|
16
|
+
"files": [
|
|
17
|
+
"dist",
|
|
18
|
+
"migrations",
|
|
19
|
+
"README.md"
|
|
20
|
+
],
|
|
21
|
+
"dependencies": {
|
|
22
|
+
"pg": "^8.13.1",
|
|
23
|
+
"@agentplat/core": "^0.2.0-beta.1",
|
|
24
|
+
"@agentplat/rooms": "^0.2.0-beta.1"
|
|
25
|
+
},
|
|
26
|
+
"devDependencies": {
|
|
27
|
+
"@types/node": "^20.10.0",
|
|
28
|
+
"@types/pg": "^8.11.10"
|
|
29
|
+
},
|
|
30
|
+
"publishConfig": {
|
|
31
|
+
"access": "public"
|
|
32
|
+
},
|
|
33
|
+
"repository": {
|
|
34
|
+
"type": "git",
|
|
35
|
+
"url": "git+https://github.com/Agentplat/agentplat.git",
|
|
36
|
+
"directory": "packages/rooms-postgres"
|
|
37
|
+
},
|
|
38
|
+
"scripts": {
|
|
39
|
+
"build": "tsc -p tsconfig.json",
|
|
40
|
+
"type-check": "tsc -p tsconfig.json --noEmit",
|
|
41
|
+
"test": "pnpm run build && node --test tests/*.test.mjs",
|
|
42
|
+
"migrate": "node dist/cli.js up",
|
|
43
|
+
"migrate:down": "node dist/cli.js down",
|
|
44
|
+
"clean": "node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\""
|
|
45
|
+
}
|
|
46
|
+
}
|