@assemblyline-agents/postgres 0.1.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 +21 -0
- package/README.md +19 -0
- package/dist/adapter-checkpoints.d.ts +6 -0
- package/dist/adapter-checkpoints.d.ts.map +1 -0
- package/dist/adapter-checkpoints.js +110 -0
- package/dist/adapter-checkpoints.js.map +1 -0
- package/dist/adapter-conversation-turns.d.ts +20 -0
- package/dist/adapter-conversation-turns.d.ts.map +1 -0
- package/dist/adapter-conversation-turns.js +216 -0
- package/dist/adapter-conversation-turns.js.map +1 -0
- package/dist/adapter-conversations.d.ts +46 -0
- package/dist/adapter-conversations.d.ts.map +1 -0
- package/dist/adapter-conversations.js +129 -0
- package/dist/adapter-conversations.js.map +1 -0
- package/dist/adapter-delivery.d.ts +13 -0
- package/dist/adapter-delivery.d.ts.map +1 -0
- package/dist/adapter-delivery.js +157 -0
- package/dist/adapter-delivery.js.map +1 -0
- package/dist/adapter-grants.d.ts +11 -0
- package/dist/adapter-grants.d.ts.map +1 -0
- package/dist/adapter-grants.js +125 -0
- package/dist/adapter-grants.js.map +1 -0
- package/dist/adapter-memory.d.ts +21 -0
- package/dist/adapter-memory.d.ts.map +1 -0
- package/dist/adapter-memory.js +181 -0
- package/dist/adapter-memory.js.map +1 -0
- package/dist/adapter-misc.d.ts +61 -0
- package/dist/adapter-misc.d.ts.map +1 -0
- package/dist/adapter-misc.js +127 -0
- package/dist/adapter-misc.js.map +1 -0
- package/dist/adapter-runs.d.ts +20 -0
- package/dist/adapter-runs.d.ts.map +1 -0
- package/dist/adapter-runs.js +193 -0
- package/dist/adapter-runs.js.map +1 -0
- package/dist/adapter-sandbox.d.ts +27 -0
- package/dist/adapter-sandbox.d.ts.map +1 -0
- package/dist/adapter-sandbox.js +267 -0
- package/dist/adapter-sandbox.js.map +1 -0
- package/dist/adapter-settings.d.ts +8 -0
- package/dist/adapter-settings.d.ts.map +1 -0
- package/dist/adapter-settings.js +38 -0
- package/dist/adapter-settings.js.map +1 -0
- package/dist/adapter-usage.d.ts +7 -0
- package/dist/adapter-usage.d.ts.map +1 -0
- package/dist/adapter-usage.js +243 -0
- package/dist/adapter-usage.js.map +1 -0
- package/dist/client-types.d.ts +6 -0
- package/dist/client-types.d.ts.map +1 -0
- package/dist/client-types.js +2 -0
- package/dist/client-types.js.map +1 -0
- package/dist/index.d.ts +208 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +424 -0
- package/dist/index.js.map +1 -0
- package/dist/migrations.d.ts +35 -0
- package/dist/migrations.d.ts.map +1 -0
- package/dist/migrations.js +694 -0
- package/dist/migrations.js.map +1 -0
- package/dist/presets.d.ts +19 -0
- package/dist/presets.d.ts.map +1 -0
- package/dist/presets.js +31 -0
- package/dist/presets.js.map +1 -0
- package/dist/provider.d.ts +12 -0
- package/dist/provider.d.ts.map +1 -0
- package/dist/provider.js +86 -0
- package/dist/provider.js.map +1 -0
- package/dist/row-mappers.d.ts +24 -0
- package/dist/row-mappers.d.ts.map +1 -0
- package/dist/row-mappers.js +450 -0
- package/dist/row-mappers.js.map +1 -0
- package/dist/sql-helpers.d.ts +46 -0
- package/dist/sql-helpers.d.ts.map +1 -0
- package/dist/sql-helpers.js +244 -0
- package/dist/sql-helpers.js.map +1 -0
- package/dist/stores.d.ts +40 -0
- package/dist/stores.d.ts.map +1 -0
- package/dist/stores.js +210 -0
- package/dist/stores.js.map +1 -0
- package/package.json +49 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"row-mappers.js","sourceRoot":"","sources":["../src/row-mappers.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import type { JsonObject, JsonValue, MemorySearchInput } from "@assemblyline-agents/core";
|
|
2
|
+
import type { CheckpointRetentionOptions, CheckpointRetentionReason, CheckpointRetentionResult, DeliveryObligation, DeliveryObligationPatch, MemoryDocument, MemoryScope, SandboxSyncJobInput, SandboxSyncJobPatch, SandboxSyncJobRecord } from "@assemblyline-agents/runtime";
|
|
3
|
+
import type { PostgresMigration } from "./migrations.js";
|
|
4
|
+
export interface CheckpointRetentionStats {
|
|
5
|
+
rows: number;
|
|
6
|
+
bytes: number;
|
|
7
|
+
}
|
|
8
|
+
export declare function normalizeJsonObject(value: unknown): JsonObject;
|
|
9
|
+
export declare function stringValue(value: unknown): string | undefined;
|
|
10
|
+
export declare function sessionRootFromManifest(manifest: JsonObject): string | null;
|
|
11
|
+
export declare function normalizeJsonArray(value: unknown): unknown[];
|
|
12
|
+
export declare function normalizeJsonValue(value: unknown): JsonValue;
|
|
13
|
+
export declare function normalizeMemoryPathForPostgres(path: string): string;
|
|
14
|
+
export declare function postgresMemoryKey(scope: MemoryScope, path: string): string;
|
|
15
|
+
export declare function memoryScopeMatchesForPostgres(requested: MemoryScope, candidate: MemoryScope): boolean;
|
|
16
|
+
export declare function postgresMemoryScopeWhere(scope: MemoryScope, startIndex: number): {
|
|
17
|
+
sql: string;
|
|
18
|
+
params: unknown[];
|
|
19
|
+
};
|
|
20
|
+
export declare function memoryBodyTextForPostgres(document: MemoryDocument): string;
|
|
21
|
+
export declare function memorySnippetForPostgres(body: string, query: string, maxLength?: number): string;
|
|
22
|
+
export declare function postgresVectorLiteral(embedding: number[]): string;
|
|
23
|
+
export declare function postgresVectorValue(value: unknown): number[];
|
|
24
|
+
export declare function postgresMigrationChecksum(migration: PostgresMigration): string;
|
|
25
|
+
export declare function postgresMemoryRankReason(document: MemoryDocument, query: string, rank: number, mode: MemorySearchInput["mode"] | undefined): string;
|
|
26
|
+
export declare function postgresMemoryRankReasonText(signals: {
|
|
27
|
+
pathExact?: boolean;
|
|
28
|
+
phraseMatch?: boolean;
|
|
29
|
+
tagMatch?: boolean;
|
|
30
|
+
fullTextRank?: number;
|
|
31
|
+
recencyBoost?: boolean;
|
|
32
|
+
}): string;
|
|
33
|
+
export declare function positiveLimit(value: unknown, fallback: number): number;
|
|
34
|
+
export declare function createPostgresSandboxSyncJobRecord(input: SandboxSyncJobInput): SandboxSyncJobRecord;
|
|
35
|
+
export declare function applySandboxSyncJobPatchForPostgres(current: SandboxSyncJobRecord, patch: SandboxSyncJobPatch): SandboxSyncJobRecord;
|
|
36
|
+
export declare function applyDeliveryPatchForPostgres(current: DeliveryObligation, patch: DeliveryObligationPatch): DeliveryObligation;
|
|
37
|
+
export declare function postgresSandboxSyncRetryDelayMs(attemptCount: number): number;
|
|
38
|
+
export declare function timestamp(): string;
|
|
39
|
+
export declare function isUniqueViolation(error: unknown): boolean;
|
|
40
|
+
export declare function emptyCheckpointRetentionResult(dryRun: boolean): CheckpointRetentionResult;
|
|
41
|
+
export declare function addCheckpointRetentionStats(result: CheckpointRetentionResult, reason: CheckpointRetentionReason, stats: CheckpointRetentionStats): void;
|
|
42
|
+
export declare function checkpointNowMs(now: CheckpointRetentionOptions["now"]): number;
|
|
43
|
+
export declare function ttlCutoffIso(nowMs: number, ttlMs: number | undefined): string | null;
|
|
44
|
+
export declare function numberValue(value: unknown): number;
|
|
45
|
+
export declare function toIso(value: unknown): string;
|
|
46
|
+
//# sourceMappingURL=sql-helpers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sql-helpers.d.ts","sourceRoot":"","sources":["../src/sql-helpers.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,244 @@
|
|
|
1
|
+
import { createHash, randomUUID } from "node:crypto";
|
|
2
|
+
export function normalizeJsonObject(value) {
|
|
3
|
+
if (value && typeof value === "object" && !Array.isArray(value))
|
|
4
|
+
return value;
|
|
5
|
+
return {};
|
|
6
|
+
}
|
|
7
|
+
export function stringValue(value) {
|
|
8
|
+
return typeof value === "string" && value.trim().length > 0 ? value : undefined;
|
|
9
|
+
}
|
|
10
|
+
export function sessionRootFromManifest(manifest) {
|
|
11
|
+
return stringValue(manifest.sandboxRoot) ?? null;
|
|
12
|
+
}
|
|
13
|
+
export function normalizeJsonArray(value) {
|
|
14
|
+
return Array.isArray(value) ? value : [];
|
|
15
|
+
}
|
|
16
|
+
export function normalizeJsonValue(value) {
|
|
17
|
+
return JSON.parse(JSON.stringify(value ?? null));
|
|
18
|
+
}
|
|
19
|
+
export function normalizeMemoryPathForPostgres(path) {
|
|
20
|
+
const clean = path.replace(/\\/g, "/").replace(/\/+/g, "/").trim();
|
|
21
|
+
if (!clean || clean === "/")
|
|
22
|
+
return "";
|
|
23
|
+
const absolute = clean.startsWith("/") ? clean : `/memory/${clean}`;
|
|
24
|
+
return absolute.startsWith("/memory/") || absolute === "/memory" ? absolute : `/memory${absolute}`;
|
|
25
|
+
}
|
|
26
|
+
export function postgresMemoryKey(scope, path) {
|
|
27
|
+
return `${scope.agentScope}:${scope.userId ?? "*"}:${scope.conversationId ?? "*"}:${scope.projectId ?? "*"}:${normalizeMemoryPathForPostgres(path)}`;
|
|
28
|
+
}
|
|
29
|
+
export function memoryScopeMatchesForPostgres(requested, candidate) {
|
|
30
|
+
if (candidate.agentScope !== requested.agentScope)
|
|
31
|
+
return false;
|
|
32
|
+
if (candidate.userId && requested.userId && candidate.userId !== requested.userId)
|
|
33
|
+
return false;
|
|
34
|
+
if (candidate.userId && !requested.userId)
|
|
35
|
+
return false;
|
|
36
|
+
if (candidate.conversationId && requested.conversationId && candidate.conversationId !== requested.conversationId)
|
|
37
|
+
return false;
|
|
38
|
+
if (candidate.conversationId && !requested.conversationId)
|
|
39
|
+
return false;
|
|
40
|
+
if (candidate.projectId && requested.projectId && candidate.projectId !== requested.projectId)
|
|
41
|
+
return false;
|
|
42
|
+
if (candidate.projectId && !requested.projectId)
|
|
43
|
+
return false;
|
|
44
|
+
return true;
|
|
45
|
+
}
|
|
46
|
+
export function postgresMemoryScopeWhere(scope, startIndex) {
|
|
47
|
+
const clauses = [];
|
|
48
|
+
const params = [];
|
|
49
|
+
let index = startIndex;
|
|
50
|
+
for (const key of ["userId", "conversationId", "projectId"]) {
|
|
51
|
+
const value = scope[key];
|
|
52
|
+
if (value) {
|
|
53
|
+
clauses.push(`and (not (scope ? '${key}') or scope->>'${key}'=$${index})`);
|
|
54
|
+
params.push(value);
|
|
55
|
+
index += 1;
|
|
56
|
+
}
|
|
57
|
+
else {
|
|
58
|
+
clauses.push(`and not (scope ? '${key}')`);
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
return { sql: clauses.join("\n "), params };
|
|
62
|
+
}
|
|
63
|
+
export function memoryBodyTextForPostgres(document) {
|
|
64
|
+
return typeof document.body === "string" ? document.body : JSON.stringify(document.body);
|
|
65
|
+
}
|
|
66
|
+
export function memorySnippetForPostgres(body, query, maxLength = 320) {
|
|
67
|
+
if (!body)
|
|
68
|
+
return "";
|
|
69
|
+
const lower = body.toLowerCase();
|
|
70
|
+
const index = query ? lower.indexOf(query.toLowerCase()) : -1;
|
|
71
|
+
const start = index >= 0 ? Math.max(0, index - 80) : 0;
|
|
72
|
+
const snippet = body.slice(start, start + maxLength);
|
|
73
|
+
return `${start > 0 ? "..." : ""}${snippet}${start + maxLength < body.length ? "..." : ""}`;
|
|
74
|
+
}
|
|
75
|
+
export function postgresVectorLiteral(embedding) {
|
|
76
|
+
return `[${embedding.map((value) => Number.isFinite(value) ? Number(value).toFixed(8) : "0").join(",")}]`;
|
|
77
|
+
}
|
|
78
|
+
export function postgresVectorValue(value) {
|
|
79
|
+
if (Array.isArray(value))
|
|
80
|
+
return value.map(Number).filter(Number.isFinite);
|
|
81
|
+
if (typeof value !== "string")
|
|
82
|
+
return [];
|
|
83
|
+
return value.replace(/^\[/u, "").replace(/\]$/u, "").split(",").map(Number).filter(Number.isFinite);
|
|
84
|
+
}
|
|
85
|
+
export function postgresMigrationChecksum(migration) {
|
|
86
|
+
return `sha256:${createHash("sha256").update(migration.sql).digest("hex")}`;
|
|
87
|
+
}
|
|
88
|
+
export function postgresMemoryRankReason(document, query, rank, mode) {
|
|
89
|
+
const normalizedQuery = normalizeMemoryPathForPostgres(query);
|
|
90
|
+
const lowerQuery = query.trim().toLowerCase();
|
|
91
|
+
const lowerPath = document.path.toLowerCase();
|
|
92
|
+
const lowerNormalizedQuery = normalizedQuery.toLowerCase();
|
|
93
|
+
const pathExact = Boolean(lowerQuery && (lowerPath === lowerQuery || lowerPath === lowerNormalizedQuery));
|
|
94
|
+
const phraseFields = [
|
|
95
|
+
document.path,
|
|
96
|
+
document.title ?? "",
|
|
97
|
+
document.summary ?? "",
|
|
98
|
+
memoryBodyTextForPostgres(document)
|
|
99
|
+
].join("\n").toLowerCase();
|
|
100
|
+
const phraseMatch = Boolean(lowerQuery && phraseFields.includes(lowerQuery));
|
|
101
|
+
const terms = lowerQuery.split(/\s+/u).filter(Boolean);
|
|
102
|
+
const tagMatch = terms.some((term) => document.tags.some((tag) => tag.toLowerCase().includes(term)));
|
|
103
|
+
return postgresMemoryRankReasonText({
|
|
104
|
+
pathExact: mode === "exact" || pathExact,
|
|
105
|
+
phraseMatch,
|
|
106
|
+
tagMatch,
|
|
107
|
+
fullTextRank: rank,
|
|
108
|
+
recencyBoost: true
|
|
109
|
+
});
|
|
110
|
+
}
|
|
111
|
+
export function postgresMemoryRankReasonText(signals) {
|
|
112
|
+
const reasons = [];
|
|
113
|
+
if (signals.pathExact)
|
|
114
|
+
reasons.push("exact path match");
|
|
115
|
+
if (signals.phraseMatch && !signals.pathExact)
|
|
116
|
+
reasons.push("phrase match");
|
|
117
|
+
if (signals.tagMatch)
|
|
118
|
+
reasons.push("tag match");
|
|
119
|
+
if (typeof signals.fullTextRank === "number" && signals.fullTextRank > 0)
|
|
120
|
+
reasons.push(`full-text rank ${signals.fullTextRank.toFixed(3)}`);
|
|
121
|
+
if (signals.recencyBoost)
|
|
122
|
+
reasons.push("recency boost");
|
|
123
|
+
return reasons.join("; ") || "recency boost";
|
|
124
|
+
}
|
|
125
|
+
export function positiveLimit(value, fallback) {
|
|
126
|
+
return typeof value === "number" && Number.isFinite(value) && value > 0 ? Math.floor(value) : fallback;
|
|
127
|
+
}
|
|
128
|
+
export function createPostgresSandboxSyncJobRecord(input) {
|
|
129
|
+
const now = timestamp();
|
|
130
|
+
const record = {
|
|
131
|
+
runId: input.runId,
|
|
132
|
+
sandboxId: input.sandboxId,
|
|
133
|
+
status: input.status,
|
|
134
|
+
idempotencyKey: input.idempotencyKey,
|
|
135
|
+
reason: input.reason,
|
|
136
|
+
manifest: input.manifest,
|
|
137
|
+
attemptCount: input.attemptCount ?? 0,
|
|
138
|
+
maxAttempts: input.maxAttempts ?? 5,
|
|
139
|
+
nextAttemptAt: input.nextAttemptAt ?? now,
|
|
140
|
+
metadata: input.metadata ?? {},
|
|
141
|
+
id: randomUUID(),
|
|
142
|
+
createdAt: now,
|
|
143
|
+
updatedAt: now
|
|
144
|
+
};
|
|
145
|
+
if (input.error)
|
|
146
|
+
record.error = input.error;
|
|
147
|
+
if (input.leaseToken)
|
|
148
|
+
record.leaseToken = input.leaseToken;
|
|
149
|
+
if (input.leaseExpiresAt)
|
|
150
|
+
record.leaseExpiresAt = input.leaseExpiresAt;
|
|
151
|
+
if (input.completedAt)
|
|
152
|
+
record.completedAt = input.completedAt;
|
|
153
|
+
if (input.failedAt)
|
|
154
|
+
record.failedAt = input.failedAt;
|
|
155
|
+
if (input.lastError)
|
|
156
|
+
record.lastError = input.lastError;
|
|
157
|
+
return record;
|
|
158
|
+
}
|
|
159
|
+
export function applySandboxSyncJobPatchForPostgres(current, patch) {
|
|
160
|
+
const updated = { ...current, updatedAt: timestamp() };
|
|
161
|
+
const optionalKeys = new Set(["error", "leaseToken", "leaseExpiresAt", "completedAt", "failedAt", "lastError"]);
|
|
162
|
+
for (const [key, value] of Object.entries(patch)) {
|
|
163
|
+
if (value === undefined) {
|
|
164
|
+
if (optionalKeys.has(key))
|
|
165
|
+
delete updated[key];
|
|
166
|
+
continue;
|
|
167
|
+
}
|
|
168
|
+
updated[key] = value;
|
|
169
|
+
}
|
|
170
|
+
return updated;
|
|
171
|
+
}
|
|
172
|
+
export function applyDeliveryPatchForPostgres(current, patch) {
|
|
173
|
+
const updated = { ...current, updatedAt: timestamp() };
|
|
174
|
+
const optionalKeys = new Set(["leaseToken", "leaseExpiresAt", "lastError", "sentAt", "failedAt"]);
|
|
175
|
+
for (const [key, value] of Object.entries(patch)) {
|
|
176
|
+
if (value === undefined) {
|
|
177
|
+
if (optionalKeys.has(key))
|
|
178
|
+
delete updated[key];
|
|
179
|
+
continue;
|
|
180
|
+
}
|
|
181
|
+
updated[key] = value;
|
|
182
|
+
}
|
|
183
|
+
return updated;
|
|
184
|
+
}
|
|
185
|
+
export function postgresSandboxSyncRetryDelayMs(attemptCount) {
|
|
186
|
+
const bounded = Math.max(1, Math.min(8, attemptCount));
|
|
187
|
+
return Math.min(15 * 60_000, 2 ** (bounded - 1) * 1_000);
|
|
188
|
+
}
|
|
189
|
+
export function timestamp() {
|
|
190
|
+
return new Date().toISOString();
|
|
191
|
+
}
|
|
192
|
+
export function isUniqueViolation(error) {
|
|
193
|
+
return Boolean(error && typeof error === "object" && error.code === "23505");
|
|
194
|
+
}
|
|
195
|
+
export function emptyCheckpointRetentionResult(dryRun) {
|
|
196
|
+
return {
|
|
197
|
+
dryRun,
|
|
198
|
+
candidateRows: 0,
|
|
199
|
+
candidateBytes: 0,
|
|
200
|
+
prunedRows: 0,
|
|
201
|
+
prunedBytes: 0,
|
|
202
|
+
byReason: {
|
|
203
|
+
active_compaction: { rows: 0, bytes: 0 },
|
|
204
|
+
terminal_ttl: { rows: 0, bytes: 0 }
|
|
205
|
+
}
|
|
206
|
+
};
|
|
207
|
+
}
|
|
208
|
+
export function addCheckpointRetentionStats(result, reason, stats) {
|
|
209
|
+
result.candidateRows += stats.rows;
|
|
210
|
+
result.candidateBytes += stats.bytes;
|
|
211
|
+
if (!result.dryRun) {
|
|
212
|
+
result.prunedRows += stats.rows;
|
|
213
|
+
result.prunedBytes += stats.bytes;
|
|
214
|
+
}
|
|
215
|
+
result.byReason[reason].rows += stats.rows;
|
|
216
|
+
result.byReason[reason].bytes += stats.bytes;
|
|
217
|
+
}
|
|
218
|
+
export function checkpointNowMs(now) {
|
|
219
|
+
if (now instanceof Date)
|
|
220
|
+
return now.getTime();
|
|
221
|
+
if (typeof now === "string")
|
|
222
|
+
return Date.parse(now);
|
|
223
|
+
return Date.now();
|
|
224
|
+
}
|
|
225
|
+
export function ttlCutoffIso(nowMs, ttlMs) {
|
|
226
|
+
if (typeof ttlMs !== "number" || !Number.isFinite(ttlMs) || ttlMs < 0)
|
|
227
|
+
return null;
|
|
228
|
+
return new Date(nowMs - ttlMs).toISOString();
|
|
229
|
+
}
|
|
230
|
+
export function numberValue(value) {
|
|
231
|
+
if (typeof value === "number" && Number.isFinite(value))
|
|
232
|
+
return value;
|
|
233
|
+
if (typeof value === "bigint")
|
|
234
|
+
return Number(value);
|
|
235
|
+
if (typeof value === "string" && value.trim() !== "")
|
|
236
|
+
return Number(value);
|
|
237
|
+
return 0;
|
|
238
|
+
}
|
|
239
|
+
export function toIso(value) {
|
|
240
|
+
if (value instanceof Date)
|
|
241
|
+
return value.toISOString();
|
|
242
|
+
return String(value);
|
|
243
|
+
}
|
|
244
|
+
//# sourceMappingURL=sql-helpers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sql-helpers.js","sourceRoot":"","sources":["../src/sql-helpers.ts"],"names":[],"mappings":"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"}
|
package/dist/stores.d.ts
ADDED
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import type { ConnectionDefinitionStore, CreateDynamicScheduleInput, DynamicScheduleRecord, ScheduleStore, SkillStore, StoredConnectionDefinition, StoredSkill } from "@assemblyline-agents/runtime";
|
|
2
|
+
import type { QueryClient } from "./client-types.js";
|
|
3
|
+
export declare class PostgresSkillStore implements SkillStore {
|
|
4
|
+
private readonly client;
|
|
5
|
+
constructor(client: QueryClient);
|
|
6
|
+
list(scope: string): Promise<StoredSkill[]>;
|
|
7
|
+
get(scope: string, name: string): Promise<StoredSkill | undefined>;
|
|
8
|
+
put(scope: string, skill: StoredSkill): Promise<void>;
|
|
9
|
+
delete(scope: string, name: string): Promise<void>;
|
|
10
|
+
}
|
|
11
|
+
export declare class PostgresScheduleStore implements ScheduleStore {
|
|
12
|
+
private readonly client;
|
|
13
|
+
constructor(client: QueryClient);
|
|
14
|
+
create(input: CreateDynamicScheduleInput): Promise<DynamicScheduleRecord>;
|
|
15
|
+
list(scope: string): Promise<DynamicScheduleRecord[]>;
|
|
16
|
+
get(id: string): Promise<DynamicScheduleRecord | undefined>;
|
|
17
|
+
update(scope: string, id: string, patch: Partial<DynamicScheduleRecord>): Promise<DynamicScheduleRecord>;
|
|
18
|
+
delete(scope: string, id: string): Promise<boolean>;
|
|
19
|
+
claimDue(options: {
|
|
20
|
+
now: Date;
|
|
21
|
+
limit: number;
|
|
22
|
+
leaseForMs: number;
|
|
23
|
+
}): Promise<DynamicScheduleRecord[]>;
|
|
24
|
+
complete(id: string, leaseToken: string, result: {
|
|
25
|
+
ranAt: string;
|
|
26
|
+
}): Promise<void>;
|
|
27
|
+
release(id: string, leaseToken: string, retryAt: Date, failure?: {
|
|
28
|
+
maxConsecutiveFailures: number;
|
|
29
|
+
}): Promise<void>;
|
|
30
|
+
private persist;
|
|
31
|
+
}
|
|
32
|
+
export declare class PostgresConnectionDefinitionStore implements ConnectionDefinitionStore {
|
|
33
|
+
private readonly client;
|
|
34
|
+
constructor(client: QueryClient);
|
|
35
|
+
list(scope: string): Promise<StoredConnectionDefinition[]>;
|
|
36
|
+
get(scope: string, name: string): Promise<StoredConnectionDefinition | undefined>;
|
|
37
|
+
put(scope: string, definition: StoredConnectionDefinition): Promise<void>;
|
|
38
|
+
delete(scope: string, name: string): Promise<void>;
|
|
39
|
+
}
|
|
40
|
+
//# sourceMappingURL=stores.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stores.d.ts","sourceRoot":"","sources":["../src/stores.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,yBAAyB,EACzB,0BAA0B,EAC1B,qBAAqB,EACrB,aAAa,EACb,UAAU,EACV,0BAA0B,EAC1B,WAAW,EACZ,MAAM,8BAA8B,CAAC;AACtC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAOrD,qBAAa,kBAAmB,YAAW,UAAU;IACvC,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAAN,MAAM,EAAE,WAAW;IAE1C,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAQ3C,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC;IAMlE,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAUrD,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAGzD;AAED,qBAAa,qBAAsB,YAAW,aAAa;IAC7C,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAAN,MAAM,EAAE,WAAW;IAE1C,MAAM,CAAC,KAAK,EAAE,0BAA0B,GAAG,OAAO,CAAC,qBAAqB,CAAC;IA2BzE,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,EAAE,CAAC;IAQrD,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,GAAG,SAAS,CAAC;IAM3D,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAQxG,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAOnD,QAAQ,CAAC,OAAO,EAAE;QAAE,GAAG,EAAE,IAAI,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,qBAAqB,EAAE,CAAC;IAsBrG,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAkBlF,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,EAAE;QAAE,sBAAsB,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;YAsB3G,OAAO;CAkCtB;AAED,qBAAa,iCAAkC,YAAW,yBAAyB;IACrE,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAAN,MAAM,EAAE,WAAW;IAE1C,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,0BAA0B,EAAE,CAAC;IAQ1D,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,0BAA0B,GAAG,SAAS,CAAC;IASjF,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,0BAA0B,GAAG,OAAO,CAAC,IAAI,CAAC;IAoBzE,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAGzD"}
|
package/dist/stores.js
ADDED
|
@@ -0,0 +1,210 @@
|
|
|
1
|
+
import { randomUUID } from "node:crypto";
|
|
2
|
+
import { computeNextRun } from "@assemblyline-agents/runtime";
|
|
3
|
+
import { mapConnectionDefinition, mapDynamicSchedule, mapSkill } from "./row-mappers.js";
|
|
4
|
+
// ---------------------------------------------------------------------------
|
|
5
|
+
// Self-improvement stores (Postgres)
|
|
6
|
+
// ---------------------------------------------------------------------------
|
|
7
|
+
export class PostgresSkillStore {
|
|
8
|
+
client;
|
|
9
|
+
constructor(client) {
|
|
10
|
+
this.client = client;
|
|
11
|
+
}
|
|
12
|
+
async list(scope) {
|
|
13
|
+
const result = await this.client.query("select * from openeve_skills where scope=$1 order by name asc", [scope]);
|
|
14
|
+
return result.rows.map(mapSkill);
|
|
15
|
+
}
|
|
16
|
+
async get(scope, name) {
|
|
17
|
+
const result = await this.client.query("select * from openeve_skills where scope=$1 and name=$2", [scope, name]);
|
|
18
|
+
const row = result.rows[0];
|
|
19
|
+
return row ? mapSkill(row) : undefined;
|
|
20
|
+
}
|
|
21
|
+
async put(scope, skill) {
|
|
22
|
+
await this.client.query(`insert into openeve_skills (scope, name, body, origin, body_sha256, seed_sha256, pending, updated_at)
|
|
23
|
+
values ($1,$2,$3,$4,$5,$6,$7,$8)
|
|
24
|
+
on conflict (scope, name) do update set
|
|
25
|
+
body=$3, origin=$4, body_sha256=$5, seed_sha256=$6, pending=$7, updated_at=$8`, [scope, skill.name, skill.body, skill.origin, skill.bodySha256, skill.seedSha256 ?? null, skill.pending ?? false, skill.updatedAt]);
|
|
26
|
+
}
|
|
27
|
+
async delete(scope, name) {
|
|
28
|
+
await this.client.query("delete from openeve_skills where scope=$1 and name=$2", [scope, name]);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
export class PostgresScheduleStore {
|
|
32
|
+
client;
|
|
33
|
+
constructor(client) {
|
|
34
|
+
this.client = client;
|
|
35
|
+
}
|
|
36
|
+
async create(input) {
|
|
37
|
+
const now = new Date();
|
|
38
|
+
const nextRunAt = input.firstRunAt ?? computeNextRun(input, now) ?? new Date(now.getTime() + 60_000).toISOString();
|
|
39
|
+
const record = {
|
|
40
|
+
id: randomUUID(),
|
|
41
|
+
scope: input.scope,
|
|
42
|
+
prompt: input.prompt ?? input.message ?? "",
|
|
43
|
+
channel: input.channel,
|
|
44
|
+
nextRunAt,
|
|
45
|
+
enabled: input.enabled ?? true,
|
|
46
|
+
createdAt: now.toISOString(),
|
|
47
|
+
updatedAt: now.toISOString()
|
|
48
|
+
};
|
|
49
|
+
if (input.message)
|
|
50
|
+
record.message = input.message;
|
|
51
|
+
if (input.userId)
|
|
52
|
+
record.userId = input.userId;
|
|
53
|
+
if (input.conversationId)
|
|
54
|
+
record.conversationId = input.conversationId;
|
|
55
|
+
if (input.projectId)
|
|
56
|
+
record.projectId = input.projectId;
|
|
57
|
+
if (input.target)
|
|
58
|
+
record.target = input.target;
|
|
59
|
+
if (input.trigger)
|
|
60
|
+
record.trigger = input.trigger;
|
|
61
|
+
if (input.cron)
|
|
62
|
+
record.cron = input.cron;
|
|
63
|
+
if (input.everyMinutes !== undefined && input.everyMinutes !== null)
|
|
64
|
+
record.everyMinutes = input.everyMinutes;
|
|
65
|
+
if (input.timezone)
|
|
66
|
+
record.timezone = input.timezone;
|
|
67
|
+
if (input.metadata)
|
|
68
|
+
record.metadata = input.metadata;
|
|
69
|
+
await this.persist(record);
|
|
70
|
+
return record;
|
|
71
|
+
}
|
|
72
|
+
async list(scope) {
|
|
73
|
+
const result = await this.client.query("select * from openeve_dynamic_schedules where scope=$1 order by created_at asc", [scope]);
|
|
74
|
+
return result.rows.map(mapDynamicSchedule);
|
|
75
|
+
}
|
|
76
|
+
async get(id) {
|
|
77
|
+
const result = await this.client.query("select * from openeve_dynamic_schedules where id=$1", [id]);
|
|
78
|
+
const row = result.rows[0];
|
|
79
|
+
return row ? mapDynamicSchedule(row) : undefined;
|
|
80
|
+
}
|
|
81
|
+
async update(scope, id, patch) {
|
|
82
|
+
const current = await this.get(id);
|
|
83
|
+
if (!current || current.scope !== scope)
|
|
84
|
+
throw new Error(`Dynamic schedule not found: ${id}`);
|
|
85
|
+
const updated = { ...current, ...patch, id, scope, updatedAt: new Date().toISOString() };
|
|
86
|
+
await this.persist(updated);
|
|
87
|
+
return updated;
|
|
88
|
+
}
|
|
89
|
+
async delete(scope, id) {
|
|
90
|
+
const current = await this.get(id);
|
|
91
|
+
if (!current || current.scope !== scope)
|
|
92
|
+
return false;
|
|
93
|
+
await this.client.query("delete from openeve_dynamic_schedules where id=$1", [id]);
|
|
94
|
+
return true;
|
|
95
|
+
}
|
|
96
|
+
async claimDue(options) {
|
|
97
|
+
const nowIso = options.now.toISOString();
|
|
98
|
+
const leaseToken = randomUUID();
|
|
99
|
+
const leaseExpires = new Date(options.now.getTime() + options.leaseForMs).toISOString();
|
|
100
|
+
const result = await this.client.query(`update openeve_dynamic_schedules
|
|
101
|
+
set lease_token=$1, lease_expires_at=$2, updated_at=$3
|
|
102
|
+
where id in (
|
|
103
|
+
select id from openeve_dynamic_schedules
|
|
104
|
+
where enabled = true
|
|
105
|
+
and next_run_at <= $3
|
|
106
|
+
and (lease_expires_at is null or lease_expires_at <= $3)
|
|
107
|
+
order by next_run_at asc
|
|
108
|
+
limit $4
|
|
109
|
+
for update skip locked
|
|
110
|
+
)
|
|
111
|
+
returning *`, [leaseToken, leaseExpires, nowIso, options.limit]);
|
|
112
|
+
return result.rows.map(mapDynamicSchedule);
|
|
113
|
+
}
|
|
114
|
+
async complete(id, leaseToken, result) {
|
|
115
|
+
const current = await this.get(id);
|
|
116
|
+
if (!current || current.leaseToken !== leaseToken)
|
|
117
|
+
return;
|
|
118
|
+
const recurring = Boolean(current.cron) || (typeof current.everyMinutes === "number" && current.everyMinutes > 0);
|
|
119
|
+
const nextRunAt = recurring
|
|
120
|
+
? (computeNextRun(current, new Date(result.ranAt)) ?? current.nextRunAt)
|
|
121
|
+
: current.nextRunAt;
|
|
122
|
+
// The lease_token guard in the WHERE clause makes settle atomic: if another
|
|
123
|
+
// worker re-claimed after our read, this update matches zero rows.
|
|
124
|
+
await this.client.query(`update openeve_dynamic_schedules
|
|
125
|
+
set lease_token=null, lease_expires_at=null, last_run_at=$3, next_run_at=$4,
|
|
126
|
+
enabled=case when $5::boolean then enabled else false end, consecutive_failures=0, updated_at=$6
|
|
127
|
+
where id=$1 and lease_token=$2`, [id, leaseToken, result.ranAt, nextRunAt, recurring, new Date().toISOString()]);
|
|
128
|
+
}
|
|
129
|
+
async release(id, leaseToken, retryAt, failure) {
|
|
130
|
+
if (!failure) {
|
|
131
|
+
await this.client.query(`update openeve_dynamic_schedules
|
|
132
|
+
set lease_token=null, lease_expires_at=null, next_run_at=$3, updated_at=$4
|
|
133
|
+
where id=$1 and lease_token=$2`, [id, leaseToken, retryAt.toISOString(), new Date().toISOString()]);
|
|
134
|
+
return;
|
|
135
|
+
}
|
|
136
|
+
// Atomic with the lease settle: increment the failure streak and disable
|
|
137
|
+
// once it reaches the cap, so a poison schedule cannot retry forever.
|
|
138
|
+
await this.client.query(`update openeve_dynamic_schedules
|
|
139
|
+
set lease_token=null, lease_expires_at=null, next_run_at=$3,
|
|
140
|
+
consecutive_failures=consecutive_failures + 1,
|
|
141
|
+
enabled=case when consecutive_failures + 1 >= $5 then false else enabled end, updated_at=$4
|
|
142
|
+
where id=$1 and lease_token=$2`, [id, leaseToken, retryAt.toISOString(), new Date().toISOString(), failure.maxConsecutiveFailures]);
|
|
143
|
+
}
|
|
144
|
+
async persist(record) {
|
|
145
|
+
await this.client.query(`insert into openeve_dynamic_schedules
|
|
146
|
+
(id, scope, prompt, message, channel, user_id, conversation_id, project_id, target, trigger, cron, every_minutes, timezone, next_run_at, enabled, lease_token, lease_expires_at, last_run_at, metadata, created_at, updated_at)
|
|
147
|
+
values ($1,$2,$3,$4,$5,$6,$7,$8,$9::jsonb,$10::jsonb,$11,$12,$13,$14,$15,$16,$17,$18,$19::jsonb,$20,$21)
|
|
148
|
+
on conflict (id) do update set
|
|
149
|
+
scope=$2, prompt=$3, message=$4, channel=$5, user_id=$6, conversation_id=$7, project_id=$8, target=$9::jsonb,
|
|
150
|
+
trigger=$10::jsonb, cron=$11, every_minutes=$12, timezone=$13, next_run_at=$14, enabled=$15, lease_token=$16,
|
|
151
|
+
lease_expires_at=$17, last_run_at=$18, metadata=$19::jsonb, updated_at=$21`, [
|
|
152
|
+
record.id,
|
|
153
|
+
record.scope,
|
|
154
|
+
record.prompt,
|
|
155
|
+
record.message ?? null,
|
|
156
|
+
record.channel,
|
|
157
|
+
record.userId ?? null,
|
|
158
|
+
record.conversationId ?? null,
|
|
159
|
+
record.projectId ?? null,
|
|
160
|
+
record.target ? JSON.stringify(record.target) : null,
|
|
161
|
+
record.trigger ? JSON.stringify(record.trigger) : null,
|
|
162
|
+
record.cron ?? null,
|
|
163
|
+
record.everyMinutes ?? null,
|
|
164
|
+
record.timezone ?? null,
|
|
165
|
+
record.nextRunAt,
|
|
166
|
+
record.enabled,
|
|
167
|
+
record.leaseToken ?? null,
|
|
168
|
+
record.leaseExpiresAt ?? null,
|
|
169
|
+
record.lastRunAt ?? null,
|
|
170
|
+
record.metadata ? JSON.stringify(record.metadata) : null,
|
|
171
|
+
record.createdAt,
|
|
172
|
+
record.updatedAt
|
|
173
|
+
]);
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
export class PostgresConnectionDefinitionStore {
|
|
177
|
+
client;
|
|
178
|
+
constructor(client) {
|
|
179
|
+
this.client = client;
|
|
180
|
+
}
|
|
181
|
+
async list(scope) {
|
|
182
|
+
const result = await this.client.query("select * from openeve_connection_definitions where scope=$1 order by name asc", [scope]);
|
|
183
|
+
return result.rows.map(mapConnectionDefinition);
|
|
184
|
+
}
|
|
185
|
+
async get(scope, name) {
|
|
186
|
+
const result = await this.client.query("select * from openeve_connection_definitions where scope=$1 and name=$2", [scope, name]);
|
|
187
|
+
const row = result.rows[0];
|
|
188
|
+
return row ? mapConnectionDefinition(row) : undefined;
|
|
189
|
+
}
|
|
190
|
+
async put(scope, definition) {
|
|
191
|
+
await this.client.query(`insert into openeve_connection_definitions (scope, name, protocol, description, definition, origin, metadata, created_at, updated_at)
|
|
192
|
+
values ($1,$2,$3,$4,$5::jsonb,$6,$7::jsonb,$8,$9)
|
|
193
|
+
on conflict (scope, name) do update set
|
|
194
|
+
protocol=$3, description=$4, definition=$5::jsonb, origin=$6, metadata=$7::jsonb, updated_at=$9`, [
|
|
195
|
+
scope,
|
|
196
|
+
definition.name,
|
|
197
|
+
definition.protocol,
|
|
198
|
+
definition.description,
|
|
199
|
+
JSON.stringify(definition.definition),
|
|
200
|
+
definition.origin,
|
|
201
|
+
definition.metadata ? JSON.stringify(definition.metadata) : null,
|
|
202
|
+
definition.createdAt,
|
|
203
|
+
definition.updatedAt
|
|
204
|
+
]);
|
|
205
|
+
}
|
|
206
|
+
async delete(scope, name) {
|
|
207
|
+
await this.client.query("delete from openeve_connection_definitions where scope=$1 and name=$2", [scope, name]);
|
|
208
|
+
}
|
|
209
|
+
}
|
|
210
|
+
//# sourceMappingURL=stores.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stores.js","sourceRoot":"","sources":["../src/stores.ts"],"names":[],"mappings":"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"}
|