@ykurilov/agent-chat-storage-postgres 0.56.0 → 0.57.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.
@@ -1,4 +1,4 @@
1
- import type { AnswerStatus, ChatClosure, ChatErrorKind, MemoryMergeGroup, MemoryOptimizationStatus, TokenUsage, UsageSource, VoiceCut } from "@ykurilov/agent-chat-core";
1
+ import type { AnswerStatus, ChatClosure, ChatErrorKind, MemoryMergeGroup, MemoryOptimizationStatus, TokenUsage, TurnRequestContext, UsageSource, VoiceCut } from "@ykurilov/agent-chat-core";
2
2
  /** Своя схема базы: у приложения могут быть свои `chats` и `messages`. */
3
3
  export declare const agentChatSchema: import("drizzle-orm/pg-core").PgSchema<"agent_chat">;
4
4
  export declare const chats: import("drizzle-orm/pg-core").PgTableWithColumns<{
@@ -1376,6 +1376,138 @@ export declare const chatTurnLeases: import("drizzle-orm/pg-core").PgTableWithCo
1376
1376
  };
1377
1377
  dialect: 'pg';
1378
1378
  }>;
1379
+ /**
1380
+ * Ждущие пачки сообщений человека: одна запись на чат. Сроки — по часам службы. Внешним ключом с чатом не связана:
1381
+ * удаление чата снимает её само.
1382
+ */
1383
+ export declare const pendingBursts: import("drizzle-orm/pg-core").PgTableWithColumns<{
1384
+ name: "pending_bursts";
1385
+ schema: "agent_chat";
1386
+ columns: {
1387
+ chatId: import("drizzle-orm/pg-core").PgColumn<{
1388
+ name: "chat_id";
1389
+ tableName: "pending_bursts";
1390
+ dataType: "string";
1391
+ columnType: "PgText";
1392
+ data: string;
1393
+ driverParam: string;
1394
+ notNull: true;
1395
+ hasDefault: false;
1396
+ isPrimaryKey: true;
1397
+ isAutoincrement: false;
1398
+ hasRuntimeDefault: false;
1399
+ enumValues: [string, ...string[]];
1400
+ baseColumn: never;
1401
+ identity: undefined;
1402
+ generated: undefined;
1403
+ }, {}, {}>;
1404
+ ownerId: import("drizzle-orm/pg-core").PgColumn<{
1405
+ name: "owner_id";
1406
+ tableName: "pending_bursts";
1407
+ dataType: "string";
1408
+ columnType: "PgText";
1409
+ data: string;
1410
+ driverParam: string;
1411
+ notNull: true;
1412
+ hasDefault: false;
1413
+ isPrimaryKey: false;
1414
+ isAutoincrement: false;
1415
+ hasRuntimeDefault: false;
1416
+ enumValues: [string, ...string[]];
1417
+ baseColumn: never;
1418
+ identity: undefined;
1419
+ generated: undefined;
1420
+ }, {}, {}>;
1421
+ messageId: import("drizzle-orm/pg-core").PgColumn<{
1422
+ name: "message_id";
1423
+ tableName: "pending_bursts";
1424
+ dataType: "string";
1425
+ columnType: "PgText";
1426
+ data: string;
1427
+ driverParam: string;
1428
+ notNull: true;
1429
+ hasDefault: false;
1430
+ isPrimaryKey: false;
1431
+ isAutoincrement: false;
1432
+ hasRuntimeDefault: false;
1433
+ enumValues: [string, ...string[]];
1434
+ baseColumn: never;
1435
+ identity: undefined;
1436
+ generated: undefined;
1437
+ }, {}, {}>;
1438
+ dueAt: import("drizzle-orm/pg-core").PgColumn<{
1439
+ name: "due_at";
1440
+ tableName: "pending_bursts";
1441
+ dataType: "date";
1442
+ columnType: "PgTimestamp";
1443
+ data: Date;
1444
+ driverParam: string;
1445
+ notNull: true;
1446
+ hasDefault: false;
1447
+ isPrimaryKey: false;
1448
+ isAutoincrement: false;
1449
+ hasRuntimeDefault: false;
1450
+ enumValues: undefined;
1451
+ baseColumn: never;
1452
+ identity: undefined;
1453
+ generated: undefined;
1454
+ }, {}, {}>;
1455
+ holder: import("drizzle-orm/pg-core").PgColumn<{
1456
+ name: "holder";
1457
+ tableName: "pending_bursts";
1458
+ dataType: "string";
1459
+ columnType: "PgText";
1460
+ data: string;
1461
+ driverParam: string;
1462
+ notNull: true;
1463
+ hasDefault: false;
1464
+ isPrimaryKey: false;
1465
+ isAutoincrement: false;
1466
+ hasRuntimeDefault: false;
1467
+ enumValues: [string, ...string[]];
1468
+ baseColumn: never;
1469
+ identity: undefined;
1470
+ generated: undefined;
1471
+ }, {}, {}>;
1472
+ heldUntil: import("drizzle-orm/pg-core").PgColumn<{
1473
+ name: "held_until";
1474
+ tableName: "pending_bursts";
1475
+ dataType: "date";
1476
+ columnType: "PgTimestamp";
1477
+ data: Date;
1478
+ driverParam: string;
1479
+ notNull: true;
1480
+ hasDefault: false;
1481
+ isPrimaryKey: false;
1482
+ isAutoincrement: false;
1483
+ hasRuntimeDefault: false;
1484
+ enumValues: undefined;
1485
+ baseColumn: never;
1486
+ identity: undefined;
1487
+ generated: undefined;
1488
+ }, {}, {}>;
1489
+ page: import("drizzle-orm/pg-core").PgColumn<{
1490
+ name: "page";
1491
+ tableName: "pending_bursts";
1492
+ dataType: "json";
1493
+ columnType: "PgJsonb";
1494
+ data: TurnRequestContext;
1495
+ driverParam: unknown;
1496
+ notNull: false;
1497
+ hasDefault: false;
1498
+ isPrimaryKey: false;
1499
+ isAutoincrement: false;
1500
+ hasRuntimeDefault: false;
1501
+ enumValues: undefined;
1502
+ baseColumn: never;
1503
+ identity: undefined;
1504
+ generated: undefined;
1505
+ }, {}, {
1506
+ $type: TurnRequestContext;
1507
+ }>;
1508
+ };
1509
+ dialect: 'pg';
1510
+ }>;
1379
1511
  /**
1380
1512
  * Долгая память: записи принадлежат человеку и с чатами не связаны внешним ключом, чтобы переживать их удаление.
1381
1513
  * `version` — замок правки и удаления: растёт на 1 при каждой правке.
@@ -0,0 +1,9 @@
1
+ CREATE TABLE "agent_chat"."pending_bursts" (
2
+ "chat_id" text PRIMARY KEY NOT NULL,
3
+ "owner_id" text NOT NULL,
4
+ "message_id" text NOT NULL,
5
+ "due_at" timestamp with time zone NOT NULL,
6
+ "holder" text NOT NULL,
7
+ "held_until" timestamp with time zone NOT NULL,
8
+ "page" jsonb
9
+ );