@amaster.ai/pi-storage 0.1.0-beta.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/LICENSE +201 -0
- package/README.md +56 -0
- package/dist/artifact-stores.d.ts +13 -0
- package/dist/artifact-stores.d.ts.map +1 -0
- package/dist/artifact-stores.js +84 -0
- package/dist/artifact-stores.js.map +1 -0
- package/dist/db-migrations.d.ts +12 -0
- package/dist/db-migrations.d.ts.map +1 -0
- package/dist/db-migrations.js +151 -0
- package/dist/db-migrations.js.map +1 -0
- package/dist/db-runtime-storage.d.ts +15 -0
- package/dist/db-runtime-storage.d.ts.map +1 -0
- package/dist/db-runtime-storage.js +1051 -0
- package/dist/db-runtime-storage.js.map +1 -0
- package/dist/db.d.ts +3 -0
- package/dist/db.d.ts.map +1 -0
- package/dist/db.js +3 -0
- package/dist/db.js.map +1 -0
- package/dist/event-stores.d.ts +69 -0
- package/dist/event-stores.d.ts.map +1 -0
- package/dist/event-stores.js +196 -0
- package/dist/event-stores.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -0
- package/dist/internal.d.ts +4 -0
- package/dist/internal.d.ts.map +1 -0
- package/dist/internal.js +4 -0
- package/dist/internal.js.map +1 -0
- package/dist/json-file.d.ts +4 -0
- package/dist/json-file.d.ts.map +1 -0
- package/dist/json-file.js +59 -0
- package/dist/json-file.js.map +1 -0
- package/dist/json.d.ts +5 -0
- package/dist/json.d.ts.map +1 -0
- package/dist/json.js +5 -0
- package/dist/json.js.map +1 -0
- package/dist/migration-main.d.ts +2 -0
- package/dist/migration-main.d.ts.map +1 -0
- package/dist/migration-main.js +12 -0
- package/dist/migration-main.js.map +1 -0
- package/dist/redis-locks.d.ts +18 -0
- package/dist/redis-locks.d.ts.map +1 -0
- package/dist/redis-locks.js +76 -0
- package/dist/redis-locks.js.map +1 -0
- package/dist/runtime-scope.d.ts +2 -0
- package/dist/runtime-scope.d.ts.map +1 -0
- package/dist/runtime-scope.js +2 -0
- package/dist/runtime-scope.js.map +1 -0
- package/dist/runtime-storage.d.ts +30 -0
- package/dist/runtime-storage.d.ts.map +1 -0
- package/dist/runtime-storage.js +60 -0
- package/dist/runtime-storage.js.map +1 -0
- package/dist/scheduled-task-stores.d.ts +49 -0
- package/dist/scheduled-task-stores.d.ts.map +1 -0
- package/dist/scheduled-task-stores.js +381 -0
- package/dist/scheduled-task-stores.js.map +1 -0
- package/dist/scheduler.d.ts +2 -0
- package/dist/scheduler.d.ts.map +1 -0
- package/dist/scheduler.js +2 -0
- package/dist/scheduler.js.map +1 -0
- package/dist/session-stores.d.ts +47 -0
- package/dist/session-stores.d.ts.map +1 -0
- package/dist/session-stores.js +260 -0
- package/dist/session-stores.js.map +1 -0
- package/dist/subagent-store.d.ts +26 -0
- package/dist/subagent-store.d.ts.map +1 -0
- package/dist/subagent-store.js +167 -0
- package/dist/subagent-store.js.map +1 -0
- package/package.json +70 -0
- package/prisma/migrations/mysql/20260514113000_init_runtime/migration.sql +351 -0
- package/prisma/schema.prisma +351 -0
|
@@ -0,0 +1,351 @@
|
|
|
1
|
+
-- CreateTable
|
|
2
|
+
CREATE TABLE `pi_agent_sessions` (
|
|
3
|
+
`id` VARCHAR(64) NOT NULL,
|
|
4
|
+
`tenant_id` VARCHAR(64) NOT NULL,
|
|
5
|
+
`user_id` VARCHAR(64) NOT NULL,
|
|
6
|
+
`workspace_id` VARCHAR(128) NULL,
|
|
7
|
+
`session_id` VARCHAR(160) NOT NULL,
|
|
8
|
+
`conversation_id` VARCHAR(160) NOT NULL,
|
|
9
|
+
`root_session_id` VARCHAR(160) NULL,
|
|
10
|
+
`parent_session_id` VARCHAR(160) NULL,
|
|
11
|
+
`child_session_id` VARCHAR(160) NULL,
|
|
12
|
+
`task_run_id` VARCHAR(64) NULL,
|
|
13
|
+
`run_id` VARCHAR(64) NULL,
|
|
14
|
+
`spawn_batch_id` VARCHAR(64) NULL,
|
|
15
|
+
`trigger_type` VARCHAR(32) NOT NULL,
|
|
16
|
+
`status` VARCHAR(32) NOT NULL,
|
|
17
|
+
`title` VARCHAR(255) NULL,
|
|
18
|
+
`turn_count` BIGINT NOT NULL DEFAULT 0,
|
|
19
|
+
`first_user_message` TEXT NULL,
|
|
20
|
+
`last_user_message` TEXT NULL,
|
|
21
|
+
`last_assistant_message` TEXT NULL,
|
|
22
|
+
`last_message_at` DATETIME(6) NULL,
|
|
23
|
+
`model_provider` VARCHAR(64) NOT NULL,
|
|
24
|
+
`model_name` VARCHAR(128) NOT NULL,
|
|
25
|
+
`thinking_level` VARCHAR(32) NULL,
|
|
26
|
+
`tool_policy_profile` VARCHAR(64) NOT NULL,
|
|
27
|
+
`sandbox_session_id` VARCHAR(160) NULL,
|
|
28
|
+
`sandbox_status` VARCHAR(32) NULL,
|
|
29
|
+
`pi_session_ref` VARCHAR(512) NULL,
|
|
30
|
+
`metadata_json` JSON NULL,
|
|
31
|
+
`created_at` DATETIME(6) NOT NULL,
|
|
32
|
+
`updated_at` DATETIME(6) NOT NULL,
|
|
33
|
+
`last_active_at` DATETIME(6) NULL,
|
|
34
|
+
`archived_at` DATETIME(6) NULL,
|
|
35
|
+
`deleted_at` DATETIME(6) NULL,
|
|
36
|
+
|
|
37
|
+
INDEX `idx_pi_agent_sessions_user_updated`(`tenant_id`, `user_id`, `updated_at`),
|
|
38
|
+
INDEX `idx_pi_agent_sessions_workspace_updated`(`tenant_id`, `workspace_id`, `updated_at`),
|
|
39
|
+
INDEX `idx_pi_agent_sessions_user_last_message`(`tenant_id`, `user_id`, `last_message_at`),
|
|
40
|
+
INDEX `idx_pi_agent_sessions_user_visible`(`tenant_id`, `user_id`, `deleted_at`, `last_message_at`),
|
|
41
|
+
INDEX `idx_pi_agent_sessions_parent`(`tenant_id`, `parent_session_id`),
|
|
42
|
+
INDEX `idx_pi_agent_sessions_status`(`tenant_id`, `status`),
|
|
43
|
+
UNIQUE INDEX `uq_pi_agent_sessions_session`(`session_id`),
|
|
44
|
+
UNIQUE INDEX `uq_pi_agent_sessions_tenant_session`(`tenant_id`, `session_id`),
|
|
45
|
+
PRIMARY KEY (`id`)
|
|
46
|
+
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
|
47
|
+
|
|
48
|
+
-- CreateTable
|
|
49
|
+
CREATE TABLE `pi_agent_turns` (
|
|
50
|
+
`id` VARCHAR(64) NOT NULL,
|
|
51
|
+
`tenant_id` VARCHAR(64) NOT NULL,
|
|
52
|
+
`user_id` VARCHAR(64) NOT NULL,
|
|
53
|
+
`workspace_id` VARCHAR(128) NULL,
|
|
54
|
+
`session_id` VARCHAR(160) NOT NULL,
|
|
55
|
+
`conversation_id` VARCHAR(160) NOT NULL,
|
|
56
|
+
`trace_id` VARCHAR(64) NULL,
|
|
57
|
+
`turn_seq` BIGINT NOT NULL,
|
|
58
|
+
`source_type` VARCHAR(32) NOT NULL,
|
|
59
|
+
`status` VARCHAR(32) NOT NULL,
|
|
60
|
+
`input_text` LONGTEXT NULL,
|
|
61
|
+
`input_json` JSON NULL,
|
|
62
|
+
`output_text` LONGTEXT NULL,
|
|
63
|
+
`output_json` JSON NULL,
|
|
64
|
+
`error_json` JSON NULL,
|
|
65
|
+
`model_json` JSON NULL,
|
|
66
|
+
`tool_policy_profile` VARCHAR(64) NULL,
|
|
67
|
+
`started_at` DATETIME(6) NULL,
|
|
68
|
+
`completed_at` DATETIME(6) NULL,
|
|
69
|
+
`created_at` DATETIME(6) NOT NULL,
|
|
70
|
+
`updated_at` DATETIME(6) NOT NULL,
|
|
71
|
+
|
|
72
|
+
INDEX `idx_pi_agent_turns_session_seq`(`tenant_id`, `session_id`, `turn_seq`),
|
|
73
|
+
INDEX `idx_pi_agent_turns_user_created`(`tenant_id`, `user_id`, `created_at`),
|
|
74
|
+
INDEX `idx_pi_agent_turns_trace`(`tenant_id`, `trace_id`),
|
|
75
|
+
INDEX `idx_pi_agent_turns_status`(`tenant_id`, `status`, `created_at`),
|
|
76
|
+
UNIQUE INDEX `uq_pi_agent_turns_tenant_session_seq`(`tenant_id`, `session_id`, `turn_seq`),
|
|
77
|
+
PRIMARY KEY (`id`)
|
|
78
|
+
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
|
79
|
+
|
|
80
|
+
-- CreateTable
|
|
81
|
+
CREATE TABLE `pi_agent_messages` (
|
|
82
|
+
`id` VARCHAR(64) NOT NULL,
|
|
83
|
+
`tenant_id` VARCHAR(64) NOT NULL,
|
|
84
|
+
`user_id` VARCHAR(64) NOT NULL,
|
|
85
|
+
`workspace_id` VARCHAR(128) NULL,
|
|
86
|
+
`session_id` VARCHAR(160) NOT NULL,
|
|
87
|
+
`conversation_id` VARCHAR(160) NOT NULL,
|
|
88
|
+
`turn_id` VARCHAR(64) NULL,
|
|
89
|
+
`role` VARCHAR(32) NOT NULL,
|
|
90
|
+
`agent_id` VARCHAR(160) NULL,
|
|
91
|
+
`content_text` LONGTEXT NULL,
|
|
92
|
+
`content_json` JSON NULL,
|
|
93
|
+
`thoughts_json` JSON NULL,
|
|
94
|
+
`tool_calls_json` JSON NULL,
|
|
95
|
+
`token_usage_json` JSON NULL,
|
|
96
|
+
`model_provider` VARCHAR(64) NULL,
|
|
97
|
+
`model_name` VARCHAR(128) NULL,
|
|
98
|
+
`message_seq` BIGINT NOT NULL,
|
|
99
|
+
`created_at` DATETIME(6) NOT NULL,
|
|
100
|
+
`deleted_at` DATETIME(6) NULL,
|
|
101
|
+
|
|
102
|
+
INDEX `idx_pi_agent_messages_session_seq`(`tenant_id`, `session_id`, `message_seq`),
|
|
103
|
+
INDEX `idx_pi_agent_messages_turn`(`tenant_id`, `turn_id`),
|
|
104
|
+
INDEX `idx_pi_agent_messages_user_created`(`tenant_id`, `user_id`, `created_at`),
|
|
105
|
+
UNIQUE INDEX `uq_pi_agent_messages_tenant_session_seq`(`tenant_id`, `session_id`, `message_seq`),
|
|
106
|
+
PRIMARY KEY (`id`)
|
|
107
|
+
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
|
108
|
+
|
|
109
|
+
-- CreateTable
|
|
110
|
+
CREATE TABLE `pi_agent_turn_queue` (
|
|
111
|
+
`id` VARCHAR(64) NOT NULL,
|
|
112
|
+
`tenant_id` VARCHAR(64) NOT NULL,
|
|
113
|
+
`user_id` VARCHAR(64) NOT NULL,
|
|
114
|
+
`workspace_id` VARCHAR(128) NULL,
|
|
115
|
+
`session_id` VARCHAR(160) NOT NULL,
|
|
116
|
+
`turn_id` VARCHAR(64) NOT NULL,
|
|
117
|
+
`source_type` VARCHAR(32) NOT NULL,
|
|
118
|
+
`status` VARCHAR(32) NOT NULL,
|
|
119
|
+
`priority` INTEGER NOT NULL DEFAULT 0,
|
|
120
|
+
`lease_owner` VARCHAR(128) NULL,
|
|
121
|
+
`lease_expires_at` DATETIME(6) NULL,
|
|
122
|
+
`attempt_count` INTEGER NOT NULL DEFAULT 0,
|
|
123
|
+
`available_at` DATETIME(6) NOT NULL,
|
|
124
|
+
`created_at` DATETIME(6) NOT NULL,
|
|
125
|
+
`updated_at` DATETIME(6) NOT NULL,
|
|
126
|
+
|
|
127
|
+
INDEX `idx_pi_agent_turn_queue_ready`(`tenant_id`, `status`, `priority`, `available_at`),
|
|
128
|
+
INDEX `idx_pi_agent_turn_queue_ready_order`(`tenant_id`, `status`, `priority`, `available_at`, `created_at`),
|
|
129
|
+
INDEX `idx_pi_agent_turn_queue_session`(`tenant_id`, `session_id`, `status`),
|
|
130
|
+
INDEX `idx_pi_agent_turn_queue_source`(`tenant_id`, `source_type`, `status`),
|
|
131
|
+
INDEX `idx_pi_agent_turn_queue_lease`(`tenant_id`, `lease_owner`, `lease_expires_at`),
|
|
132
|
+
UNIQUE INDEX `uq_pi_agent_turn_queue_turn`(`tenant_id`, `turn_id`),
|
|
133
|
+
PRIMARY KEY (`id`)
|
|
134
|
+
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
|
135
|
+
|
|
136
|
+
-- CreateTable
|
|
137
|
+
CREATE TABLE `pi_agent_turn_signals` (
|
|
138
|
+
`id` VARCHAR(64) NOT NULL,
|
|
139
|
+
`tenant_id` VARCHAR(64) NOT NULL,
|
|
140
|
+
`user_id` VARCHAR(64) NOT NULL,
|
|
141
|
+
`actor_user_id` VARCHAR(64) NULL,
|
|
142
|
+
`session_id` VARCHAR(160) NOT NULL,
|
|
143
|
+
`turn_id` VARCHAR(64) NULL,
|
|
144
|
+
`signal_type` VARCHAR(32) NOT NULL,
|
|
145
|
+
`status` VARCHAR(32) NOT NULL,
|
|
146
|
+
`payload_json` JSON NULL,
|
|
147
|
+
`reason` VARCHAR(512) NULL,
|
|
148
|
+
`created_at` DATETIME(6) NOT NULL,
|
|
149
|
+
`delivered_at` DATETIME(6) NULL,
|
|
150
|
+
`acknowledged_at` DATETIME(6) NULL,
|
|
151
|
+
|
|
152
|
+
INDEX `idx_pi_agent_turn_signals_session`(`tenant_id`, `session_id`, `status`, `created_at`),
|
|
153
|
+
INDEX `idx_pi_agent_turn_signals_turn`(`tenant_id`, `turn_id`, `status`),
|
|
154
|
+
INDEX `idx_pi_agent_turn_signals_actor`(`tenant_id`, `actor_user_id`, `created_at`),
|
|
155
|
+
PRIMARY KEY (`id`)
|
|
156
|
+
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
|
157
|
+
|
|
158
|
+
-- CreateTable
|
|
159
|
+
CREATE TABLE `pi_agent_events` (
|
|
160
|
+
`id` VARCHAR(64) NOT NULL,
|
|
161
|
+
`tenant_id` VARCHAR(64) NOT NULL,
|
|
162
|
+
`user_id` VARCHAR(64) NULL,
|
|
163
|
+
`workspace_id` VARCHAR(128) NULL,
|
|
164
|
+
`session_id` VARCHAR(160) NULL,
|
|
165
|
+
`turn_id` VARCHAR(64) NULL,
|
|
166
|
+
`trace_id` VARCHAR(64) NULL,
|
|
167
|
+
`event_seq` BIGINT NOT NULL,
|
|
168
|
+
`event_source` VARCHAR(32) NOT NULL,
|
|
169
|
+
`event_type` VARCHAR(64) NOT NULL,
|
|
170
|
+
`event_name` VARCHAR(64) NOT NULL,
|
|
171
|
+
`severity` VARCHAR(16) NOT NULL DEFAULT 'info',
|
|
172
|
+
`payload_json` JSON NULL,
|
|
173
|
+
`created_at` DATETIME(6) NOT NULL,
|
|
174
|
+
|
|
175
|
+
INDEX `idx_pi_agent_events_session_seq`(`tenant_id`, `session_id`, `event_seq`),
|
|
176
|
+
INDEX `idx_pi_agent_events_session_created`(`tenant_id`, `session_id`, `created_at`),
|
|
177
|
+
INDEX `idx_pi_agent_events_turn_seq`(`tenant_id`, `turn_id`, `event_seq`),
|
|
178
|
+
INDEX `idx_pi_agent_events_turn_created`(`tenant_id`, `turn_id`, `created_at`),
|
|
179
|
+
INDEX `idx_pi_agent_events_trace_created`(`tenant_id`, `trace_id`, `created_at`),
|
|
180
|
+
INDEX `idx_pi_agent_events_type_created`(`tenant_id`, `event_type`, `created_at`),
|
|
181
|
+
INDEX `idx_pi_agent_events_source_session_seq`(`tenant_id`, `event_source`, `session_id`, `event_seq`),
|
|
182
|
+
INDEX `idx_pi_agent_events_source_trace_created`(`tenant_id`, `event_source`, `trace_id`, `created_at`),
|
|
183
|
+
INDEX `idx_pi_agent_events_source_type_created`(`tenant_id`, `event_source`, `event_type`, `created_at`),
|
|
184
|
+
UNIQUE INDEX `uq_pi_agent_events_tenant_session_seq`(`tenant_id`, `session_id`, `event_seq`),
|
|
185
|
+
PRIMARY KEY (`id`)
|
|
186
|
+
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
|
187
|
+
|
|
188
|
+
-- CreateTable
|
|
189
|
+
CREATE TABLE `pi_agent_subagent_runs` (
|
|
190
|
+
`id` VARCHAR(64) NOT NULL,
|
|
191
|
+
`tenant_id` VARCHAR(64) NOT NULL,
|
|
192
|
+
`user_id` VARCHAR(64) NOT NULL,
|
|
193
|
+
`workspace_id` VARCHAR(128) NULL,
|
|
194
|
+
`run_id` VARCHAR(64) NOT NULL,
|
|
195
|
+
`task_run_id` VARCHAR(64) NULL,
|
|
196
|
+
`spawn_batch_id` VARCHAR(64) NULL,
|
|
197
|
+
`trace_id` VARCHAR(64) NULL,
|
|
198
|
+
`parent_session_id` VARCHAR(160) NOT NULL,
|
|
199
|
+
`child_session_id` VARCHAR(160) NOT NULL,
|
|
200
|
+
`parent_turn_id` VARCHAR(64) NULL,
|
|
201
|
+
`parent_tool_call_id` VARCHAR(160) NULL,
|
|
202
|
+
`agent_name` VARCHAR(128) NULL,
|
|
203
|
+
`label` VARCHAR(255) NULL,
|
|
204
|
+
`task_text` LONGTEXT NOT NULL,
|
|
205
|
+
`status` VARCHAR(32) NOT NULL,
|
|
206
|
+
`depth` INTEGER NOT NULL DEFAULT 0,
|
|
207
|
+
`model_json` JSON NULL,
|
|
208
|
+
`tool_policy_profile` VARCHAR(64) NULL,
|
|
209
|
+
`result_text` LONGTEXT NULL,
|
|
210
|
+
`error_json` JSON NULL,
|
|
211
|
+
`created_at` DATETIME(6) NOT NULL,
|
|
212
|
+
`started_at` DATETIME(6) NULL,
|
|
213
|
+
`ended_at` DATETIME(6) NULL,
|
|
214
|
+
`updated_at` DATETIME(6) NOT NULL,
|
|
215
|
+
|
|
216
|
+
INDEX `idx_pi_agent_subagent_runs_parent`(`tenant_id`, `parent_session_id`, `status`),
|
|
217
|
+
INDEX `idx_pi_agent_subagent_runs_child`(`tenant_id`, `child_session_id`),
|
|
218
|
+
INDEX `idx_pi_agent_subagent_runs_trace`(`tenant_id`, `trace_id`),
|
|
219
|
+
UNIQUE INDEX `uq_pi_agent_subagent_runs_run_global`(`run_id`),
|
|
220
|
+
UNIQUE INDEX `uq_pi_agent_subagent_runs_run`(`tenant_id`, `run_id`),
|
|
221
|
+
PRIMARY KEY (`id`)
|
|
222
|
+
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
|
223
|
+
|
|
224
|
+
-- CreateTable
|
|
225
|
+
CREATE TABLE `pi_agent_approvals` (
|
|
226
|
+
`id` VARCHAR(64) NOT NULL,
|
|
227
|
+
`tenant_id` VARCHAR(64) NOT NULL,
|
|
228
|
+
`user_id` VARCHAR(64) NOT NULL,
|
|
229
|
+
`actor_user_id` VARCHAR(64) NULL,
|
|
230
|
+
`workspace_id` VARCHAR(128) NULL,
|
|
231
|
+
`session_id` VARCHAR(160) NOT NULL,
|
|
232
|
+
`turn_id` VARCHAR(64) NULL,
|
|
233
|
+
`tool_call_id` VARCHAR(160) NULL,
|
|
234
|
+
`approval_type` VARCHAR(64) NOT NULL,
|
|
235
|
+
`status` VARCHAR(32) NOT NULL,
|
|
236
|
+
`request_json` JSON NOT NULL,
|
|
237
|
+
`decision_json` JSON NULL,
|
|
238
|
+
`requested_at` DATETIME(6) NOT NULL,
|
|
239
|
+
`decided_at` DATETIME(6) NULL,
|
|
240
|
+
`expires_at` DATETIME(6) NULL,
|
|
241
|
+
|
|
242
|
+
INDEX `idx_pi_agent_approvals_session`(`tenant_id`, `session_id`, `status`, `requested_at`),
|
|
243
|
+
INDEX `idx_pi_agent_approvals_actor`(`tenant_id`, `actor_user_id`, `requested_at`),
|
|
244
|
+
INDEX `idx_pi_agent_approvals_expiry`(`tenant_id`, `status`, `expires_at`),
|
|
245
|
+
PRIMARY KEY (`id`)
|
|
246
|
+
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
|
247
|
+
|
|
248
|
+
-- CreateTable
|
|
249
|
+
CREATE TABLE `pi_agent_memory` (
|
|
250
|
+
`id` VARCHAR(64) NOT NULL,
|
|
251
|
+
`tenant_id` VARCHAR(64) NOT NULL,
|
|
252
|
+
`user_id` VARCHAR(64) NOT NULL,
|
|
253
|
+
`workspace_id` VARCHAR(128) NULL,
|
|
254
|
+
`session_id` VARCHAR(160) NULL,
|
|
255
|
+
`scope` VARCHAR(32) NOT NULL,
|
|
256
|
+
`text` LONGTEXT NOT NULL,
|
|
257
|
+
`tags_json` JSON NULL,
|
|
258
|
+
`metadata_json` JSON NULL,
|
|
259
|
+
`embedding_ref` VARCHAR(256) NULL,
|
|
260
|
+
`created_at` DATETIME(6) NOT NULL,
|
|
261
|
+
`updated_at` DATETIME(6) NOT NULL,
|
|
262
|
+
`deleted_at` DATETIME(6) NULL,
|
|
263
|
+
|
|
264
|
+
INDEX `idx_pi_agent_memory_session`(`tenant_id`, `session_id`, `created_at`),
|
|
265
|
+
INDEX `idx_pi_agent_memory_user_scope`(`tenant_id`, `user_id`, `scope`, `created_at`),
|
|
266
|
+
INDEX `idx_pi_agent_memory_workspace_scope`(`tenant_id`, `workspace_id`, `scope`, `created_at`),
|
|
267
|
+
PRIMARY KEY (`id`)
|
|
268
|
+
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
|
269
|
+
|
|
270
|
+
-- CreateTable
|
|
271
|
+
CREATE TABLE `pi_agent_scheduled_tasks` (
|
|
272
|
+
`id` VARCHAR(64) NOT NULL,
|
|
273
|
+
`tenant_id` VARCHAR(64) NOT NULL,
|
|
274
|
+
`user_id` VARCHAR(64) NOT NULL,
|
|
275
|
+
`workspace_id` VARCHAR(128) NULL,
|
|
276
|
+
`session_id` VARCHAR(160) NOT NULL,
|
|
277
|
+
`name` VARCHAR(255) NULL,
|
|
278
|
+
`description` TEXT NULL,
|
|
279
|
+
`prompt` LONGTEXT NOT NULL,
|
|
280
|
+
`task_type` VARCHAR(32) NOT NULL,
|
|
281
|
+
`schedule` VARCHAR(255) NULL,
|
|
282
|
+
`interval_seconds` INTEGER NULL,
|
|
283
|
+
`enabled` BOOLEAN NOT NULL DEFAULT true,
|
|
284
|
+
`model_json` JSON NULL,
|
|
285
|
+
`tool_policy_profile` VARCHAR(64) NULL,
|
|
286
|
+
`workspace_dir` VARCHAR(1024) NULL,
|
|
287
|
+
`last_run_at` DATETIME(6) NULL,
|
|
288
|
+
`next_run_at` DATETIME(6) NULL,
|
|
289
|
+
`run_count` BIGINT NOT NULL DEFAULT 0,
|
|
290
|
+
`last_status` VARCHAR(32) NULL,
|
|
291
|
+
`last_error` TEXT NULL,
|
|
292
|
+
`created_at` DATETIME(6) NOT NULL,
|
|
293
|
+
`updated_at` DATETIME(6) NOT NULL,
|
|
294
|
+
`deleted_at` DATETIME(6) NULL,
|
|
295
|
+
|
|
296
|
+
INDEX `idx_pi_agent_scheduled_tasks_due`(`tenant_id`, `enabled`, `next_run_at`),
|
|
297
|
+
INDEX `idx_pi_agent_scheduled_tasks_user`(`tenant_id`, `user_id`, `updated_at`),
|
|
298
|
+
INDEX `idx_pi_agent_scheduled_tasks_user_visible`(`tenant_id`, `user_id`, `deleted_at`, `updated_at`),
|
|
299
|
+
INDEX `idx_pi_agent_scheduled_tasks_session`(`tenant_id`, `session_id`),
|
|
300
|
+
PRIMARY KEY (`id`)
|
|
301
|
+
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
|
302
|
+
|
|
303
|
+
-- CreateTable
|
|
304
|
+
CREATE TABLE `pi_agent_task_runs` (
|
|
305
|
+
`id` VARCHAR(64) NOT NULL,
|
|
306
|
+
`tenant_id` VARCHAR(64) NOT NULL,
|
|
307
|
+
`user_id` VARCHAR(64) NOT NULL,
|
|
308
|
+
`workspace_id` VARCHAR(128) NULL,
|
|
309
|
+
`task_id` VARCHAR(64) NOT NULL,
|
|
310
|
+
`session_id` VARCHAR(160) NOT NULL,
|
|
311
|
+
`turn_id` VARCHAR(64) NULL,
|
|
312
|
+
`status` VARCHAR(32) NOT NULL,
|
|
313
|
+
`message` TEXT NULL,
|
|
314
|
+
`error_json` JSON NULL,
|
|
315
|
+
`started_at` DATETIME(6) NULL,
|
|
316
|
+
`ended_at` DATETIME(6) NULL,
|
|
317
|
+
`created_at` DATETIME(6) NOT NULL,
|
|
318
|
+
|
|
319
|
+
INDEX `idx_pi_agent_task_runs_task_created`(`tenant_id`, `task_id`, `created_at`),
|
|
320
|
+
INDEX `idx_pi_agent_task_runs_status_created`(`tenant_id`, `status`, `created_at`),
|
|
321
|
+
INDEX `idx_pi_agent_task_runs_turn`(`tenant_id`, `turn_id`),
|
|
322
|
+
PRIMARY KEY (`id`)
|
|
323
|
+
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
|
324
|
+
|
|
325
|
+
-- CreateTable
|
|
326
|
+
CREATE TABLE `pi_agent_artifacts` (
|
|
327
|
+
`id` VARCHAR(64) NOT NULL,
|
|
328
|
+
`tenant_id` VARCHAR(64) NOT NULL,
|
|
329
|
+
`user_id` VARCHAR(64) NOT NULL,
|
|
330
|
+
`workspace_id` VARCHAR(128) NULL,
|
|
331
|
+
`session_id` VARCHAR(160) NOT NULL,
|
|
332
|
+
`turn_id` VARCHAR(64) NULL,
|
|
333
|
+
`tool_call_id` VARCHAR(160) NULL,
|
|
334
|
+
`artifact_type` VARCHAR(64) NOT NULL,
|
|
335
|
+
`name` VARCHAR(512) NULL,
|
|
336
|
+
`mime_type` VARCHAR(128) NULL,
|
|
337
|
+
`size_bytes` BIGINT NULL,
|
|
338
|
+
`sha256` VARCHAR(64) NULL,
|
|
339
|
+
`storage_uri` VARCHAR(1024) NOT NULL,
|
|
340
|
+
`preview_uri` VARCHAR(1024) NULL,
|
|
341
|
+
`metadata_json` JSON NULL,
|
|
342
|
+
`created_at` DATETIME(6) NOT NULL,
|
|
343
|
+
`deleted_at` DATETIME(6) NULL,
|
|
344
|
+
|
|
345
|
+
INDEX `idx_pi_agent_artifacts_session_created`(`tenant_id`, `session_id`, `created_at`),
|
|
346
|
+
INDEX `idx_pi_agent_artifacts_user_session_visible`(`tenant_id`, `user_id`, `deleted_at`, `session_id`, `created_at`),
|
|
347
|
+
INDEX `idx_pi_agent_artifacts_turn_created`(`tenant_id`, `turn_id`, `created_at`),
|
|
348
|
+
INDEX `idx_pi_agent_artifacts_tool_call`(`tenant_id`, `tool_call_id`),
|
|
349
|
+
INDEX `idx_pi_agent_artifacts_hash`(`tenant_id`, `sha256`),
|
|
350
|
+
PRIMARY KEY (`id`)
|
|
351
|
+
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|