@axiom-lattice/pg-stores 2.0.9 → 3.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/.turbo/turbo-build.log +10 -10
- package/CHANGELOG.md +56 -0
- package/dist/index.d.mts +23 -2
- package/dist/index.d.ts +23 -2
- package/dist/index.js +576 -22
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +576 -22
- package/dist/index.mjs.map +1 -1
- package/package.json +3 -3
- package/src/__tests__/PostgreSQLA2AApiKeyStore.migrations.test.ts +76 -0
- package/src/__tests__/PostgreSQLA2AApiKeyStore.test.ts +133 -0
- package/src/__tests__/PostgreSQLChannelInstallationStore.test.ts +37 -2
- package/src/__tests__/PostgreSQLTaskStore.integration.test.ts +90 -0
- package/src/__tests__/PostgreSQLTaskStore.test.ts +287 -0
- package/src/__tests__/PostgreSQLTaskWorkItemStore.test.ts +104 -0
- package/src/__tests__/add_a2a_key_assistant_ids.test.ts +34 -0
- package/src/__tests__/workspace-project-store.test.ts +48 -0
- package/src/createPgStoreConfig.ts +6 -1
- package/src/migrations/add_a2a_key_assistant_ids.ts +24 -0
- package/src/migrations/add_project_kind_column.ts +29 -0
- package/src/migrations/task_work_items_migration.ts +15 -0
- package/src/stores/PostgreSQLA2AApiKeyStore.ts +23 -8
- package/src/stores/PostgreSQLProjectStore.ts +31 -8
- package/src/stores/PostgreSQLTaskStore.ts +272 -7
- package/src/stores/PostgreSQLTaskWorkItemStore.ts +42 -2
package/.turbo/turbo-build.log
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
|
|
2
|
-
> @axiom-lattice/pg-stores@
|
|
2
|
+
> @axiom-lattice/pg-stores@3.0.0 build /home/runner/work/agentic/agentic/packages/pg-stores
|
|
3
3
|
> tsup src/index.ts --format cjs,esm --dts --sourcemap
|
|
4
4
|
|
|
5
5
|
[34mCLI[39m Building entry: src/index.ts
|
|
@@ -8,13 +8,13 @@
|
|
|
8
8
|
[34mCLI[39m Target: es2020
|
|
9
9
|
[34mCJS[39m Build start
|
|
10
10
|
[34mESM[39m Build start
|
|
11
|
-
[
|
|
12
|
-
[
|
|
13
|
-
[
|
|
14
|
-
[
|
|
15
|
-
[
|
|
16
|
-
[
|
|
11
|
+
[32mCJS[39m [1mdist/index.js [22m[32m299.27 KB[39m
|
|
12
|
+
[32mCJS[39m [1mdist/index.js.map [22m[32m554.12 KB[39m
|
|
13
|
+
[32mCJS[39m ⚡️ Build success in 628ms
|
|
14
|
+
[32mESM[39m [1mdist/index.mjs [22m[32m292.60 KB[39m
|
|
15
|
+
[32mESM[39m [1mdist/index.mjs.map [22m[32m553.82 KB[39m
|
|
16
|
+
[32mESM[39m ⚡️ Build success in 628ms
|
|
17
17
|
[34mDTS[39m Build start
|
|
18
|
-
[32mDTS[39m ⚡️ Build success in
|
|
19
|
-
[32mDTS[39m [1mdist/index.d.ts [22m[
|
|
20
|
-
[32mDTS[39m [1mdist/index.d.mts [22m[
|
|
18
|
+
[32mDTS[39m ⚡️ Build success in 13752ms
|
|
19
|
+
[32mDTS[39m [1mdist/index.d.ts [22m[32m63.85 KB[39m
|
|
20
|
+
[32mDTS[39m [1mdist/index.d.mts [22m[32m63.85 KB[39m
|
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,61 @@
|
|
|
1
1
|
# @axiom-lattice/pg-stores
|
|
2
2
|
|
|
3
|
+
## 3.0.0
|
|
4
|
+
|
|
5
|
+
### Major Changes
|
|
6
|
+
|
|
7
|
+
- 1c783d0: Align A2A with the standard 0.3 protocol.
|
|
8
|
+
|
|
9
|
+
**Standard A2A 0.3 server (gateway):** per-assistant discovery and execution via
|
|
10
|
+
`GET /api/a2a/agents/:assistantId/.well-known/agent-card.json` and
|
|
11
|
+
`POST /api/a2a/agents/:assistantId/jsonrpc` (`message/send`, `message/stream`,
|
|
12
|
+
`tasks/get`, `tasks/cancel`), plus an internal `test-call` management route.
|
|
13
|
+
Every inbound task is persisted as a `TaskItem` (single-ID projection:
|
|
14
|
+
`TaskItem.id === A2A taskId`). File `bytes` parts are ingested into workspace
|
|
15
|
+
storage and referenced by URI.
|
|
16
|
+
|
|
17
|
+
**API key scope model:** keys are now `tenant + projectId (required) +
|
|
18
|
+
assistantIds[]` whitelist. Added `client.a2aKeys.*` (list/create/delete/disable/
|
|
19
|
+
enable/rotate) and UI (`A2AKeyList`, `A2AExposureSection` with agent-card preview
|
|
20
|
+
and dual-mode try-call).
|
|
21
|
+
|
|
22
|
+
**Breaking changes:**
|
|
23
|
+
|
|
24
|
+
- The legacy custom REST endpoints (`/api/a2a/tasks/send`,
|
|
25
|
+
`/api/a2a/tasks/:taskId`, `/api/a2a/tasks/:taskId/stream`,
|
|
26
|
+
`/api/a2a/tasks/:taskId/cancel`) are removed; use the JSON-RPC endpoint instead.
|
|
27
|
+
- The `A2A_API_KEYS` env format is simplified to `key:tenant:project,...`
|
|
28
|
+
(no workspace segment); `workspaceId` is removed from the key model and
|
|
29
|
+
creation flow.
|
|
30
|
+
- The `x-a2a-agent-id` request header is removed (the assistant is derived from
|
|
31
|
+
the URL path).
|
|
32
|
+
- `protocols` self-maintained A2A types are replaced by re-exports of
|
|
33
|
+
`@a2a-js/sdk` 0.3 types; `A2AApiKeyRecord`/`CreateA2AApiKeyInput` drop
|
|
34
|
+
`workspaceId` and gain `assistantIds`.
|
|
35
|
+
|
|
36
|
+
### Patch Changes
|
|
37
|
+
|
|
38
|
+
- 4de3e59: Harden A2A task persistence with caller-provided local IDs, atomic canceled-state guards across task stores, and request leases that prevent active scoped runtimes from being evicted before or during stream consumption.
|
|
39
|
+
- 1ed2a67: up issues
|
|
40
|
+
- 83e1d5d: Add ProjectKind (business/training/personal) with a per-workspace shared training project. Gateway ensures a default training project exists idempotently on project list and protects the last training project from deletion; personal assistant spaces are marked `personal`; client-sdk `listProjects` accepts a `kind` filter; react-sdk splits business and training projects in WorkspaceContext and pins learning rounds to the read-only shared Training Context via TrainingContextCard. No TrainingWorkspace entity — training isolation reuses the existing projectId scope.
|
|
41
|
+
- e501a4b: Add optional Markdown belief traces and append-only task activities, return recent task work-item history, and align scoped task work-item ordering and filtering across stores.
|
|
42
|
+
- Updated dependencies [4de3e59]
|
|
43
|
+
- Updated dependencies [1c783d0]
|
|
44
|
+
- Updated dependencies [1ed2a67]
|
|
45
|
+
- Updated dependencies [a44c80b]
|
|
46
|
+
- Updated dependencies [83e1d5d]
|
|
47
|
+
- Updated dependencies [139e8f0]
|
|
48
|
+
- Updated dependencies [e501a4b]
|
|
49
|
+
- @axiom-lattice/protocols@4.0.0
|
|
50
|
+
- @axiom-lattice/core@4.0.0
|
|
51
|
+
|
|
52
|
+
## 2.0.10
|
|
53
|
+
|
|
54
|
+
### Patch Changes
|
|
55
|
+
|
|
56
|
+
- Updated dependencies [f298373]
|
|
57
|
+
- @axiom-lattice/core@3.1.2
|
|
58
|
+
|
|
3
59
|
## 2.0.9
|
|
4
60
|
|
|
5
61
|
### Patch Changes
|
package/dist/index.d.mts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Pool, PoolConfig, PoolClient } from 'pg';
|
|
2
2
|
export { Pool, PoolConfig } from 'pg';
|
|
3
|
-
import { ThreadStore, Thread, CreateThreadRequest, AssistantStore, Assistant, CreateAssistantRequest, DatabaseConfigStore, DatabaseConfigEntry, CreateDatabaseConfigRequest, UpdateDatabaseConfigRequest, ConnectionStore, ConnectionEntry, MetricsServerConfigStore, MetricsServerConfigEntry, CreateMetricsServerConfigRequest, UpdateMetricsServerConfigRequest, McpServerConfigStore, McpServerConfigEntry, CreateMcpServerConfigRequest, UpdateMcpServerConfigRequest, WorkspaceStore, Workspace, CreateWorkspaceRequest, UpdateWorkspaceRequest, ProjectStore, Project, CreateProjectRequest, UpdateProjectRequest, UserStore, User, CreateUserRequest, UpdateUserRequest, TenantStore, Tenant, CreateTenantRequest, UpdateTenantRequest, UserTenantLinkStore, UserTenantLink, CreateUserTenantLinkRequest, UpdateUserTenantLinkRequest, WorkflowTrackingStore, CreateWorkflowRunRequest, WorkflowRun, UpdateWorkflowRunRequest, QueryWorkflowRunsOptions, QueryWorkflowRunsResult, CreateRunStepRequest, RunStep, UpdateRunStepRequest, StepType, EvalStore, EvalProject, CreateEvalProjectRequest, EvalSuite, CreateEvalSuiteRequest, EvalCase, CreateEvalCaseRequest, EvalRun, CreateEvalRunRequest, EvalRunResult, EvalProjectReport, BindingRegistry, Binding, CreateBindingInput, ChannelInstallationStore, ChannelInstallation, ChannelInstallationType, CreateChannelInstallationRequest, UpdateChannelInstallationRequest, A2AApiKeyStore, A2AApiKeyRecord, CreateA2AApiKeyInput, A2AApiKeyEntry, ScheduleStorage, ScheduledTaskDefinition, ScheduledTaskStatus, ScheduleExecutionType, TaskStore, CreateTaskRequest, TaskItem, TaskListFilter, UpdateTaskRequest, TaskWorkItemStore, CreateWorkItemRequest, TaskWorkItem, TaskWorkItemListFilter, MenuRegistry, MenuItem, CreateMenuItemInput, UpdateMenuItemInput, SharedResourceStore, ShareRecord, CollectionStore, Collection, CreateCollectionRequest, UpdateCollectionRequest, VectorStoreProvider, VectorStoreCreateParams, SkillStore, Skill, CreateSkillRequest } from '@axiom-lattice/protocols';
|
|
3
|
+
import { ThreadStore, Thread, CreateThreadRequest, AssistantStore, Assistant, CreateAssistantRequest, DatabaseConfigStore, DatabaseConfigEntry, CreateDatabaseConfigRequest, UpdateDatabaseConfigRequest, ConnectionStore, ConnectionEntry, MetricsServerConfigStore, MetricsServerConfigEntry, CreateMetricsServerConfigRequest, UpdateMetricsServerConfigRequest, McpServerConfigStore, McpServerConfigEntry, CreateMcpServerConfigRequest, UpdateMcpServerConfigRequest, WorkspaceStore, Workspace, CreateWorkspaceRequest, UpdateWorkspaceRequest, ProjectStore, ProjectFilter, Project, CreateProjectRequest, UpdateProjectRequest, UserStore, User, CreateUserRequest, UpdateUserRequest, TenantStore, Tenant, CreateTenantRequest, UpdateTenantRequest, UserTenantLinkStore, UserTenantLink, CreateUserTenantLinkRequest, UpdateUserTenantLinkRequest, WorkflowTrackingStore, CreateWorkflowRunRequest, WorkflowRun, UpdateWorkflowRunRequest, QueryWorkflowRunsOptions, QueryWorkflowRunsResult, CreateRunStepRequest, RunStep, UpdateRunStepRequest, StepType, EvalStore, EvalProject, CreateEvalProjectRequest, EvalSuite, CreateEvalSuiteRequest, EvalCase, CreateEvalCaseRequest, EvalRun, CreateEvalRunRequest, EvalRunResult, EvalProjectReport, BindingRegistry, Binding, CreateBindingInput, ChannelInstallationStore, ChannelInstallation, ChannelInstallationType, CreateChannelInstallationRequest, UpdateChannelInstallationRequest, A2AApiKeyStore, A2AApiKeyRecord, CreateA2AApiKeyInput, A2AApiKeyEntry, ScheduleStorage, ScheduledTaskDefinition, ScheduledTaskStatus, ScheduleExecutionType, TaskStore, CreateTaskRequest, TaskItem, TaskListFilter, UpdateTaskRequest, TaskWorkItemStore, CreateWorkItemRequest, TaskWorkItem, CreateWorkItemIfAbsentRequest, TaskWorkItemListFilter, MenuRegistry, MenuItem, CreateMenuItemInput, UpdateMenuItemInput, SharedResourceStore, ShareRecord, CollectionStore, Collection, CreateCollectionRequest, UpdateCollectionRequest, VectorStoreProvider, VectorStoreCreateParams, SkillStore, Skill, CreateSkillRequest } from '@axiom-lattice/protocols';
|
|
4
4
|
export { Assistant, AssistantStore, Binding, BindingRegistry, ChannelInstallation, ChannelInstallationStore, ConnectionEntry, ConnectionStore, CreateAssistantRequest, CreateBindingInput, CreateChannelInstallationRequest, CreateDatabaseConfigRequest, CreateEvalCaseRequest, CreateEvalProjectRequest, CreateEvalRunRequest, CreateEvalSuiteRequest, CreateMcpServerConfigRequest, CreateMenuItemInput, CreateMetricsServerConfigRequest, CreateProjectRequest, CreateRunStepRequest, CreateShareRequest, CreateSkillRequest, CreateTenantRequest, CreateThreadRequest, CreateUserRequest, CreateUserTenantLinkRequest, CreateWorkflowRunRequest, CreateWorkspaceRequest, DatabaseConfig, DatabaseConfigEntry, DatabaseConfigStore, DatabaseType, EvalCase, EvalProject, EvalProjectReport, EvalRun, EvalRunResult, EvalStore, EvalSuite, LarkChannelInstallationConfig, McpServerConfigEntry, McpServerConfigStore, MenuItem, MenuRegistry, MetricsServerConfig, MetricsServerConfigEntry, MetricsServerConfigStore, Project, ProjectStore, ResourceAddress, RunStep, ScheduleExecutionType, ScheduleStorage, ScheduledTaskDefinition, ScheduledTaskStatus, ShareRecord, ShareResult, ShareVisibility, SharedResourceStore, Skill, SkillStore, StorageType, Tenant, TenantStatus, TenantStore, Thread, ThreadStore, UpdateChannelInstallationRequest, UpdateDatabaseConfigRequest, UpdateMcpServerConfigRequest, UpdateMetricsServerConfigRequest, UpdateProjectRequest, UpdateRunStepRequest, UpdateTenantRequest, UpdateUserRequest, UpdateUserTenantLinkRequest, UpdateWorkflowRunRequest, UpdateWorkspaceRequest, User, UserStore, UserTenantLink, UserTenantLinkStore, UserTenantRole, WorkflowRun, WorkflowTrackingStore, Workspace, WorkspaceStore } from '@axiom-lattice/protocols';
|
|
5
5
|
import { IMessageQueueStore, AddMessageParams, PendingMessage, ThreadInfo } from '@axiom-lattice/core';
|
|
6
6
|
export { AddMessageParams, PendingMessage, ThreadInfo } from '@axiom-lattice/core';
|
|
@@ -599,7 +599,7 @@ declare class PostgreSQLProjectStore implements ProjectStore {
|
|
|
599
599
|
/**
|
|
600
600
|
* Get all projects for a specific workspace
|
|
601
601
|
*/
|
|
602
|
-
getProjectsByWorkspace(tenantId: string, workspaceId: string): Promise<Project[]>;
|
|
602
|
+
getProjectsByWorkspace(tenantId: string, workspaceId: string, filter?: ProjectFilter): Promise<Project[]>;
|
|
603
603
|
/**
|
|
604
604
|
* Get a project by ID for a specific tenant
|
|
605
605
|
*/
|
|
@@ -1035,6 +1035,7 @@ declare class PostgreSQLA2AApiKeyStore implements A2AApiKeyStore {
|
|
|
1035
1035
|
dispose(): Promise<void>;
|
|
1036
1036
|
private ensureInitialized;
|
|
1037
1037
|
findByKey(key: string): Promise<A2AApiKeyRecord | null>;
|
|
1038
|
+
findById(id: string): Promise<A2AApiKeyRecord | null>;
|
|
1038
1039
|
list(params: {
|
|
1039
1040
|
tenantId?: string;
|
|
1040
1041
|
limit?: number;
|
|
@@ -1195,6 +1196,22 @@ declare class PostgreSQLTaskStore implements TaskStore {
|
|
|
1195
1196
|
getById(tenantId: string, id: string): Promise<TaskItem | null>;
|
|
1196
1197
|
list(filter: TaskListFilter): Promise<TaskItem[]>;
|
|
1197
1198
|
update(tenantId: string, id: string, updates: UpdateTaskRequest): Promise<TaskItem | null>;
|
|
1199
|
+
/**
|
|
1200
|
+
* Atomically update a task unless its current status is blocked.
|
|
1201
|
+
*
|
|
1202
|
+
* @param tenantId Tenant identifier.
|
|
1203
|
+
* @param id Task identifier.
|
|
1204
|
+
* @param updates Partial task data to update.
|
|
1205
|
+
* @param blockedStatuses Current statuses that prevent the update.
|
|
1206
|
+
* @returns The updated task, or `null` when missing or blocked.
|
|
1207
|
+
*/
|
|
1208
|
+
updateIfStatusNotIn(tenantId: string, id: string, updates: UpdateTaskRequest, blockedStatuses: TaskItem["status"][]): Promise<TaskItem | null>;
|
|
1209
|
+
/** Atomically update a task only when its current status is expected. */
|
|
1210
|
+
updateIfStatusIn(tenantId: string, id: string, updates: UpdateTaskRequest, expectedStatuses: TaskItem["status"][]): Promise<TaskItem | null>;
|
|
1211
|
+
/** Atomically update a task only when status and updatedAt match a read snapshot. */
|
|
1212
|
+
updateIfStatusAndUpdatedAt(tenantId: string, id: string, updates: UpdateTaskRequest, expectedStatuses: TaskItem["status"][], expectedUpdatedAt: Date | string): Promise<TaskItem | null>;
|
|
1213
|
+
/** Atomically update a child only when both child and parent snapshots match. */
|
|
1214
|
+
updateIfStatusUpdatedAtAndParentUpdatedAt(tenantId: string, id: string, updates: UpdateTaskRequest, expectedStatuses: TaskItem["status"][], expectedUpdatedAt: Date | string, parentId: string, expectedParentUpdatedAt: Date | string): Promise<TaskItem | null>;
|
|
1198
1215
|
delete(tenantId: string, id: string): Promise<boolean>;
|
|
1199
1216
|
dispose(): Promise<void>;
|
|
1200
1217
|
private ensureInitialized;
|
|
@@ -1204,6 +1221,10 @@ declare class PostgreSQLTaskWorkItemStore implements TaskWorkItemStore {
|
|
|
1204
1221
|
private pool;
|
|
1205
1222
|
constructor(pool: Pool);
|
|
1206
1223
|
create(params: CreateWorkItemRequest): Promise<TaskWorkItem>;
|
|
1224
|
+
/** Find an event by its tenant- and task-scoped key without pagination. */
|
|
1225
|
+
findByEventKey(tenantId: string, taskId: string, eventKey: string): Promise<TaskWorkItem | null>;
|
|
1226
|
+
/** Atomically return an existing event or create it once. */
|
|
1227
|
+
createIfAbsentByEventKey(params: CreateWorkItemIfAbsentRequest): Promise<TaskWorkItem>;
|
|
1207
1228
|
list(filter: TaskWorkItemListFilter): Promise<TaskWorkItem[]>;
|
|
1208
1229
|
private rowToItem;
|
|
1209
1230
|
}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Pool, PoolConfig, PoolClient } from 'pg';
|
|
2
2
|
export { Pool, PoolConfig } from 'pg';
|
|
3
|
-
import { ThreadStore, Thread, CreateThreadRequest, AssistantStore, Assistant, CreateAssistantRequest, DatabaseConfigStore, DatabaseConfigEntry, CreateDatabaseConfigRequest, UpdateDatabaseConfigRequest, ConnectionStore, ConnectionEntry, MetricsServerConfigStore, MetricsServerConfigEntry, CreateMetricsServerConfigRequest, UpdateMetricsServerConfigRequest, McpServerConfigStore, McpServerConfigEntry, CreateMcpServerConfigRequest, UpdateMcpServerConfigRequest, WorkspaceStore, Workspace, CreateWorkspaceRequest, UpdateWorkspaceRequest, ProjectStore, Project, CreateProjectRequest, UpdateProjectRequest, UserStore, User, CreateUserRequest, UpdateUserRequest, TenantStore, Tenant, CreateTenantRequest, UpdateTenantRequest, UserTenantLinkStore, UserTenantLink, CreateUserTenantLinkRequest, UpdateUserTenantLinkRequest, WorkflowTrackingStore, CreateWorkflowRunRequest, WorkflowRun, UpdateWorkflowRunRequest, QueryWorkflowRunsOptions, QueryWorkflowRunsResult, CreateRunStepRequest, RunStep, UpdateRunStepRequest, StepType, EvalStore, EvalProject, CreateEvalProjectRequest, EvalSuite, CreateEvalSuiteRequest, EvalCase, CreateEvalCaseRequest, EvalRun, CreateEvalRunRequest, EvalRunResult, EvalProjectReport, BindingRegistry, Binding, CreateBindingInput, ChannelInstallationStore, ChannelInstallation, ChannelInstallationType, CreateChannelInstallationRequest, UpdateChannelInstallationRequest, A2AApiKeyStore, A2AApiKeyRecord, CreateA2AApiKeyInput, A2AApiKeyEntry, ScheduleStorage, ScheduledTaskDefinition, ScheduledTaskStatus, ScheduleExecutionType, TaskStore, CreateTaskRequest, TaskItem, TaskListFilter, UpdateTaskRequest, TaskWorkItemStore, CreateWorkItemRequest, TaskWorkItem, TaskWorkItemListFilter, MenuRegistry, MenuItem, CreateMenuItemInput, UpdateMenuItemInput, SharedResourceStore, ShareRecord, CollectionStore, Collection, CreateCollectionRequest, UpdateCollectionRequest, VectorStoreProvider, VectorStoreCreateParams, SkillStore, Skill, CreateSkillRequest } from '@axiom-lattice/protocols';
|
|
3
|
+
import { ThreadStore, Thread, CreateThreadRequest, AssistantStore, Assistant, CreateAssistantRequest, DatabaseConfigStore, DatabaseConfigEntry, CreateDatabaseConfigRequest, UpdateDatabaseConfigRequest, ConnectionStore, ConnectionEntry, MetricsServerConfigStore, MetricsServerConfigEntry, CreateMetricsServerConfigRequest, UpdateMetricsServerConfigRequest, McpServerConfigStore, McpServerConfigEntry, CreateMcpServerConfigRequest, UpdateMcpServerConfigRequest, WorkspaceStore, Workspace, CreateWorkspaceRequest, UpdateWorkspaceRequest, ProjectStore, ProjectFilter, Project, CreateProjectRequest, UpdateProjectRequest, UserStore, User, CreateUserRequest, UpdateUserRequest, TenantStore, Tenant, CreateTenantRequest, UpdateTenantRequest, UserTenantLinkStore, UserTenantLink, CreateUserTenantLinkRequest, UpdateUserTenantLinkRequest, WorkflowTrackingStore, CreateWorkflowRunRequest, WorkflowRun, UpdateWorkflowRunRequest, QueryWorkflowRunsOptions, QueryWorkflowRunsResult, CreateRunStepRequest, RunStep, UpdateRunStepRequest, StepType, EvalStore, EvalProject, CreateEvalProjectRequest, EvalSuite, CreateEvalSuiteRequest, EvalCase, CreateEvalCaseRequest, EvalRun, CreateEvalRunRequest, EvalRunResult, EvalProjectReport, BindingRegistry, Binding, CreateBindingInput, ChannelInstallationStore, ChannelInstallation, ChannelInstallationType, CreateChannelInstallationRequest, UpdateChannelInstallationRequest, A2AApiKeyStore, A2AApiKeyRecord, CreateA2AApiKeyInput, A2AApiKeyEntry, ScheduleStorage, ScheduledTaskDefinition, ScheduledTaskStatus, ScheduleExecutionType, TaskStore, CreateTaskRequest, TaskItem, TaskListFilter, UpdateTaskRequest, TaskWorkItemStore, CreateWorkItemRequest, TaskWorkItem, CreateWorkItemIfAbsentRequest, TaskWorkItemListFilter, MenuRegistry, MenuItem, CreateMenuItemInput, UpdateMenuItemInput, SharedResourceStore, ShareRecord, CollectionStore, Collection, CreateCollectionRequest, UpdateCollectionRequest, VectorStoreProvider, VectorStoreCreateParams, SkillStore, Skill, CreateSkillRequest } from '@axiom-lattice/protocols';
|
|
4
4
|
export { Assistant, AssistantStore, Binding, BindingRegistry, ChannelInstallation, ChannelInstallationStore, ConnectionEntry, ConnectionStore, CreateAssistantRequest, CreateBindingInput, CreateChannelInstallationRequest, CreateDatabaseConfigRequest, CreateEvalCaseRequest, CreateEvalProjectRequest, CreateEvalRunRequest, CreateEvalSuiteRequest, CreateMcpServerConfigRequest, CreateMenuItemInput, CreateMetricsServerConfigRequest, CreateProjectRequest, CreateRunStepRequest, CreateShareRequest, CreateSkillRequest, CreateTenantRequest, CreateThreadRequest, CreateUserRequest, CreateUserTenantLinkRequest, CreateWorkflowRunRequest, CreateWorkspaceRequest, DatabaseConfig, DatabaseConfigEntry, DatabaseConfigStore, DatabaseType, EvalCase, EvalProject, EvalProjectReport, EvalRun, EvalRunResult, EvalStore, EvalSuite, LarkChannelInstallationConfig, McpServerConfigEntry, McpServerConfigStore, MenuItem, MenuRegistry, MetricsServerConfig, MetricsServerConfigEntry, MetricsServerConfigStore, Project, ProjectStore, ResourceAddress, RunStep, ScheduleExecutionType, ScheduleStorage, ScheduledTaskDefinition, ScheduledTaskStatus, ShareRecord, ShareResult, ShareVisibility, SharedResourceStore, Skill, SkillStore, StorageType, Tenant, TenantStatus, TenantStore, Thread, ThreadStore, UpdateChannelInstallationRequest, UpdateDatabaseConfigRequest, UpdateMcpServerConfigRequest, UpdateMetricsServerConfigRequest, UpdateProjectRequest, UpdateRunStepRequest, UpdateTenantRequest, UpdateUserRequest, UpdateUserTenantLinkRequest, UpdateWorkflowRunRequest, UpdateWorkspaceRequest, User, UserStore, UserTenantLink, UserTenantLinkStore, UserTenantRole, WorkflowRun, WorkflowTrackingStore, Workspace, WorkspaceStore } from '@axiom-lattice/protocols';
|
|
5
5
|
import { IMessageQueueStore, AddMessageParams, PendingMessage, ThreadInfo } from '@axiom-lattice/core';
|
|
6
6
|
export { AddMessageParams, PendingMessage, ThreadInfo } from '@axiom-lattice/core';
|
|
@@ -599,7 +599,7 @@ declare class PostgreSQLProjectStore implements ProjectStore {
|
|
|
599
599
|
/**
|
|
600
600
|
* Get all projects for a specific workspace
|
|
601
601
|
*/
|
|
602
|
-
getProjectsByWorkspace(tenantId: string, workspaceId: string): Promise<Project[]>;
|
|
602
|
+
getProjectsByWorkspace(tenantId: string, workspaceId: string, filter?: ProjectFilter): Promise<Project[]>;
|
|
603
603
|
/**
|
|
604
604
|
* Get a project by ID for a specific tenant
|
|
605
605
|
*/
|
|
@@ -1035,6 +1035,7 @@ declare class PostgreSQLA2AApiKeyStore implements A2AApiKeyStore {
|
|
|
1035
1035
|
dispose(): Promise<void>;
|
|
1036
1036
|
private ensureInitialized;
|
|
1037
1037
|
findByKey(key: string): Promise<A2AApiKeyRecord | null>;
|
|
1038
|
+
findById(id: string): Promise<A2AApiKeyRecord | null>;
|
|
1038
1039
|
list(params: {
|
|
1039
1040
|
tenantId?: string;
|
|
1040
1041
|
limit?: number;
|
|
@@ -1195,6 +1196,22 @@ declare class PostgreSQLTaskStore implements TaskStore {
|
|
|
1195
1196
|
getById(tenantId: string, id: string): Promise<TaskItem | null>;
|
|
1196
1197
|
list(filter: TaskListFilter): Promise<TaskItem[]>;
|
|
1197
1198
|
update(tenantId: string, id: string, updates: UpdateTaskRequest): Promise<TaskItem | null>;
|
|
1199
|
+
/**
|
|
1200
|
+
* Atomically update a task unless its current status is blocked.
|
|
1201
|
+
*
|
|
1202
|
+
* @param tenantId Tenant identifier.
|
|
1203
|
+
* @param id Task identifier.
|
|
1204
|
+
* @param updates Partial task data to update.
|
|
1205
|
+
* @param blockedStatuses Current statuses that prevent the update.
|
|
1206
|
+
* @returns The updated task, or `null` when missing or blocked.
|
|
1207
|
+
*/
|
|
1208
|
+
updateIfStatusNotIn(tenantId: string, id: string, updates: UpdateTaskRequest, blockedStatuses: TaskItem["status"][]): Promise<TaskItem | null>;
|
|
1209
|
+
/** Atomically update a task only when its current status is expected. */
|
|
1210
|
+
updateIfStatusIn(tenantId: string, id: string, updates: UpdateTaskRequest, expectedStatuses: TaskItem["status"][]): Promise<TaskItem | null>;
|
|
1211
|
+
/** Atomically update a task only when status and updatedAt match a read snapshot. */
|
|
1212
|
+
updateIfStatusAndUpdatedAt(tenantId: string, id: string, updates: UpdateTaskRequest, expectedStatuses: TaskItem["status"][], expectedUpdatedAt: Date | string): Promise<TaskItem | null>;
|
|
1213
|
+
/** Atomically update a child only when both child and parent snapshots match. */
|
|
1214
|
+
updateIfStatusUpdatedAtAndParentUpdatedAt(tenantId: string, id: string, updates: UpdateTaskRequest, expectedStatuses: TaskItem["status"][], expectedUpdatedAt: Date | string, parentId: string, expectedParentUpdatedAt: Date | string): Promise<TaskItem | null>;
|
|
1198
1215
|
delete(tenantId: string, id: string): Promise<boolean>;
|
|
1199
1216
|
dispose(): Promise<void>;
|
|
1200
1217
|
private ensureInitialized;
|
|
@@ -1204,6 +1221,10 @@ declare class PostgreSQLTaskWorkItemStore implements TaskWorkItemStore {
|
|
|
1204
1221
|
private pool;
|
|
1205
1222
|
constructor(pool: Pool);
|
|
1206
1223
|
create(params: CreateWorkItemRequest): Promise<TaskWorkItem>;
|
|
1224
|
+
/** Find an event by its tenant- and task-scoped key without pagination. */
|
|
1225
|
+
findByEventKey(tenantId: string, taskId: string, eventKey: string): Promise<TaskWorkItem | null>;
|
|
1226
|
+
/** Atomically return an existing event or create it once. */
|
|
1227
|
+
createIfAbsentByEventKey(params: CreateWorkItemIfAbsentRequest): Promise<TaskWorkItem>;
|
|
1207
1228
|
list(filter: TaskWorkItemListFilter): Promise<TaskWorkItem[]>;
|
|
1208
1229
|
private rowToItem;
|
|
1209
1230
|
}
|