@amodalai/runtime 0.1.9 → 0.1.11
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/dist/src/agent/agent-runner.js +3 -3
- package/dist/src/agent/agent-runner.js.map +1 -1
- package/dist/src/agent/agent-runner.test.js +1 -1
- package/dist/src/agent/agent-runner.test.js.map +1 -1
- package/dist/src/agent/agent-types.d.ts +7 -7
- package/dist/src/agent/agent-types.js +2 -2
- package/dist/src/agent/agent-types.js.map +1 -1
- package/dist/src/agent/agent-types.test.js +6 -6
- package/dist/src/agent/agent-types.test.js.map +1 -1
- package/dist/src/agent/custom-tools-e2e.test.js +1 -1
- package/dist/src/agent/custom-tools-e2e.test.js.map +1 -1
- package/dist/src/agent/local-server.js +52 -6
- package/dist/src/agent/local-server.js.map +1 -1
- package/dist/src/agent/page-builder.js +32 -9
- package/dist/src/agent/page-builder.js.map +1 -1
- package/dist/src/agent/proactive/proactive-runner.d.ts +15 -0
- package/dist/src/agent/proactive/proactive-runner.js +72 -8
- package/dist/src/agent/proactive/proactive-runner.js.map +1 -1
- package/dist/src/agent/proactive/proactive-runner.test.js +1 -1
- package/dist/src/agent/proactive/proactive-runner.test.js.map +1 -1
- package/dist/src/agent/routes/automations.js +29 -2
- package/dist/src/agent/routes/automations.js.map +1 -1
- package/dist/src/agent/routes/automations.test.js +1 -1
- package/dist/src/agent/routes/chat.d.ts +3 -3
- package/dist/src/agent/routes/chat.js +4 -4
- package/dist/src/agent/routes/chat.js.map +1 -1
- package/dist/src/agent/routes/chat.test.js +11 -11
- package/dist/src/agent/routes/chat.test.js.map +1 -1
- package/dist/src/agent/routes/files.d.ts +10 -0
- package/dist/src/agent/routes/files.js +174 -0
- package/dist/src/agent/routes/files.js.map +1 -0
- package/dist/src/agent/routes/inspect.js +150 -1
- package/dist/src/agent/routes/inspect.js.map +1 -1
- package/dist/src/agent/routes/inspect.test.js +5 -3
- package/dist/src/agent/routes/inspect.test.js.map +1 -1
- package/dist/src/agent/routes/stores.d.ts +1 -1
- package/dist/src/agent/routes/stores.js +6 -6
- package/dist/src/agent/routes/stores.js.map +1 -1
- package/dist/src/agent/routes/stores.test.js +5 -5
- package/dist/src/agent/routes/stores.test.js.map +1 -1
- package/dist/src/agent/routes/task.js +4 -4
- package/dist/src/agent/routes/task.js.map +1 -1
- package/dist/src/agent/routes/task.test.js +4 -4
- package/dist/src/agent/routes/task.test.js.map +1 -1
- package/dist/src/agent/session-manager.d.ts +14 -3
- package/dist/src/agent/session-manager.js +72 -11
- package/dist/src/agent/session-manager.js.map +1 -1
- package/dist/src/agent/session-manager.test.js +1 -1
- package/dist/src/agent/session-manager.test.js.map +1 -1
- package/dist/src/agent/session-store.d.ts +5 -3
- package/dist/src/agent/session-store.js +5 -3
- package/dist/src/agent/session-store.js.map +1 -1
- package/dist/src/agent/stores-e2e.test.js +4 -4
- package/dist/src/agent/stores-e2e.test.js.map +1 -1
- package/dist/src/agent/tool-context-builder.test.js +1 -1
- package/dist/src/agent/tool-context-builder.test.js.map +1 -1
- package/dist/src/agent/user-context-fetcher.d.ts +1 -1
- package/dist/src/agent/user-context-fetcher.js +2 -2
- package/dist/src/agent/user-context-fetcher.js.map +1 -1
- package/dist/src/middleware/auth.d.ts +0 -1
- package/dist/src/middleware/auth.js +2 -5
- package/dist/src/middleware/auth.js.map +1 -1
- package/dist/src/middleware/auth.test.js +7 -15
- package/dist/src/middleware/auth.test.js.map +1 -1
- package/dist/src/routes/ai-stream.js +0 -1
- package/dist/src/routes/ai-stream.js.map +1 -1
- package/dist/src/routes/ai-stream.test.js +2 -2
- package/dist/src/routes/ai-stream.test.js.map +1 -1
- package/dist/src/routes/chat-stream.js +0 -1
- package/dist/src/routes/chat-stream.js.map +1 -1
- package/dist/src/routes/chat.js +0 -1
- package/dist/src/routes/chat.js.map +1 -1
- package/dist/src/routes/sessions.d.ts +1 -1
- package/dist/src/routes/sessions.js +8 -8
- package/dist/src/routes/sessions.js.map +1 -1
- package/dist/src/session/session-manager.d.ts +1 -1
- package/dist/src/session/session-manager.js +10 -12
- package/dist/src/session/session-manager.js.map +1 -1
- package/dist/src/session/session-manager.test.js +7 -18
- package/dist/src/session/session-manager.test.js.map +1 -1
- package/dist/src/session/session-runner.d.ts +0 -1
- package/dist/src/session/session-runner.js +3 -4
- package/dist/src/session/session-runner.js.map +1 -1
- package/dist/src/session/session-runner.test.js +2 -4
- package/dist/src/session/session-runner.test.js.map +1 -1
- package/dist/src/stores/pglite-store-backend.d.ts +6 -6
- package/dist/src/stores/pglite-store-backend.js +34 -34
- package/dist/src/stores/pglite-store-backend.js.map +1 -1
- package/dist/src/stores/pglite-store-backend.test.js +31 -31
- package/dist/src/stores/pglite-store-backend.test.js.map +1 -1
- package/dist/src/utils/jwt-verify.d.ts +0 -1
- package/dist/src/utils/jwt-verify.js +0 -2
- package/dist/src/utils/jwt-verify.js.map +1 -1
- package/dist/src/utils/jwt-verify.test.js +7 -13
- package/dist/src/utils/jwt-verify.test.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +3 -2
|
@@ -33,7 +33,7 @@ export class PGLiteStoreBackend {
|
|
|
33
33
|
// Create tables
|
|
34
34
|
await this.db.exec(`
|
|
35
35
|
CREATE TABLE IF NOT EXISTS store_documents (
|
|
36
|
-
|
|
36
|
+
app_id TEXT NOT NULL,
|
|
37
37
|
store TEXT NOT NULL,
|
|
38
38
|
key TEXT NOT NULL,
|
|
39
39
|
version INTEGER NOT NULL DEFAULT 1,
|
|
@@ -42,11 +42,11 @@ export class PGLiteStoreBackend {
|
|
|
42
42
|
expires_at TIMESTAMPTZ,
|
|
43
43
|
created_at TIMESTAMPTZ NOT NULL DEFAULT NOW(),
|
|
44
44
|
updated_at TIMESTAMPTZ NOT NULL DEFAULT NOW(),
|
|
45
|
-
PRIMARY KEY (
|
|
45
|
+
PRIMARY KEY (app_id, store, key)
|
|
46
46
|
);
|
|
47
47
|
|
|
48
48
|
CREATE INDEX IF NOT EXISTS idx_store_documents_store
|
|
49
|
-
ON store_documents (
|
|
49
|
+
ON store_documents (app_id, store);
|
|
50
50
|
|
|
51
51
|
CREATE INDEX IF NOT EXISTS idx_store_documents_expires
|
|
52
52
|
ON store_documents (expires_at)
|
|
@@ -54,7 +54,7 @@ export class PGLiteStoreBackend {
|
|
|
54
54
|
|
|
55
55
|
CREATE TABLE IF NOT EXISTS store_document_versions (
|
|
56
56
|
id SERIAL PRIMARY KEY,
|
|
57
|
-
|
|
57
|
+
app_id TEXT NOT NULL,
|
|
58
58
|
store TEXT NOT NULL,
|
|
59
59
|
key TEXT NOT NULL,
|
|
60
60
|
version INTEGER NOT NULL,
|
|
@@ -64,19 +64,19 @@ export class PGLiteStoreBackend {
|
|
|
64
64
|
);
|
|
65
65
|
|
|
66
66
|
CREATE INDEX IF NOT EXISTS idx_store_versions_lookup
|
|
67
|
-
ON store_document_versions (
|
|
67
|
+
ON store_document_versions (app_id, store, key, version DESC);
|
|
68
68
|
`);
|
|
69
69
|
}
|
|
70
|
-
async get(
|
|
71
|
-
const result = await this.db.query(`SELECT key,
|
|
70
|
+
async get(appId, store, key) {
|
|
71
|
+
const result = await this.db.query(`SELECT key, app_id, store, version, payload, meta, expires_at
|
|
72
72
|
FROM store_documents
|
|
73
|
-
WHERE
|
|
73
|
+
WHERE app_id = $1 AND store = $2 AND key = $3`, [appId, store, key]);
|
|
74
74
|
if (result.rows.length === 0)
|
|
75
75
|
return null;
|
|
76
76
|
const row = result.rows[0];
|
|
77
77
|
return this.rowToDocument(row);
|
|
78
78
|
}
|
|
79
|
-
async put(
|
|
79
|
+
async put(appId, store, key, payload, meta) {
|
|
80
80
|
const storeConfig = this.stores.get(store);
|
|
81
81
|
const ttlSeconds = resolveTtl(storeConfig?.ttl, payload);
|
|
82
82
|
const maxVersions = storeConfig?.history?.versions;
|
|
@@ -91,38 +91,38 @@ export class PGLiteStoreBackend {
|
|
|
91
91
|
: null;
|
|
92
92
|
// Check for existing document
|
|
93
93
|
const existing = await this.db.query(`SELECT version, payload, meta FROM store_documents
|
|
94
|
-
WHERE
|
|
94
|
+
WHERE app_id = $1 AND store = $2 AND key = $3`, [appId, store, key]);
|
|
95
95
|
if (existing.rows.length > 0) {
|
|
96
96
|
const oldVersion = Number(existing.rows[0].version);
|
|
97
97
|
const newVersion = oldVersion + 1;
|
|
98
98
|
// Save old version to history if configured
|
|
99
99
|
if (maxVersions && maxVersions > 0) {
|
|
100
|
-
await this.db.query(`INSERT INTO store_document_versions (
|
|
101
|
-
VALUES ($1, $2, $3, $4, $5, $6)`, [
|
|
100
|
+
await this.db.query(`INSERT INTO store_document_versions (app_id, store, key, version, payload, meta)
|
|
101
|
+
VALUES ($1, $2, $3, $4, $5, $6)`, [appId, store, key, oldVersion, JSON.stringify(existing.rows[0].payload), JSON.stringify(existing.rows[0].meta)]);
|
|
102
102
|
// Prune old versions beyond the limit
|
|
103
103
|
await this.db.query(`DELETE FROM store_document_versions
|
|
104
|
-
WHERE
|
|
104
|
+
WHERE app_id = $1 AND store = $2 AND key = $3
|
|
105
105
|
AND version <= (
|
|
106
106
|
SELECT COALESCE(MAX(version), 0) - $4
|
|
107
107
|
FROM store_document_versions
|
|
108
|
-
WHERE
|
|
109
|
-
)`, [
|
|
108
|
+
WHERE app_id = $1 AND store = $2 AND key = $3
|
|
109
|
+
)`, [appId, store, key, maxVersions]);
|
|
110
110
|
}
|
|
111
111
|
// Update existing document
|
|
112
112
|
await this.db.query(`UPDATE store_documents
|
|
113
113
|
SET version = $4, payload = $5, meta = $6, expires_at = $7, updated_at = NOW()
|
|
114
|
-
WHERE
|
|
114
|
+
WHERE app_id = $1 AND store = $2 AND key = $3`, [appId, store, key, newVersion, JSON.stringify(payload), JSON.stringify(fullMeta), expiresAt]);
|
|
115
115
|
return { stored: true, key, version: newVersion, previousVersion: oldVersion };
|
|
116
116
|
}
|
|
117
117
|
// Insert new document
|
|
118
|
-
await this.db.query(`INSERT INTO store_documents (
|
|
119
|
-
VALUES ($1, $2, $3, 1, $4, $5, $6)`, [
|
|
118
|
+
await this.db.query(`INSERT INTO store_documents (app_id, store, key, version, payload, meta, expires_at)
|
|
119
|
+
VALUES ($1, $2, $3, 1, $4, $5, $6)`, [appId, store, key, JSON.stringify(payload), JSON.stringify(fullMeta), expiresAt]);
|
|
120
120
|
return { stored: true, key, version: 1 };
|
|
121
121
|
}
|
|
122
|
-
async list(
|
|
122
|
+
async list(appId, store, options = {}) {
|
|
123
123
|
const { filter, sort, limit = 100, offset = 0, includeStale = false } = options;
|
|
124
|
-
let where = 'WHERE
|
|
125
|
-
const params = [
|
|
124
|
+
let where = 'WHERE app_id = $1 AND store = $2';
|
|
125
|
+
const params = [appId, store];
|
|
126
126
|
let paramIndex = 3;
|
|
127
127
|
// Exclude expired docs unless includeStale
|
|
128
128
|
if (!includeStale) {
|
|
@@ -148,7 +148,7 @@ export class PGLiteStoreBackend {
|
|
|
148
148
|
orderBy = `ORDER BY payload->>'${field}' ${dir}`;
|
|
149
149
|
}
|
|
150
150
|
// Fetch documents
|
|
151
|
-
const result = await this.db.query(`SELECT key,
|
|
151
|
+
const result = await this.db.query(`SELECT key, app_id, store, version, payload, meta, expires_at
|
|
152
152
|
FROM store_documents ${where} ${orderBy}
|
|
153
153
|
LIMIT $${paramIndex} OFFSET $${paramIndex + 1}`, [...params, limit, offset]);
|
|
154
154
|
const documents = result.rows.map((row) => this.rowToDocument(row));
|
|
@@ -158,20 +158,20 @@ export class PGLiteStoreBackend {
|
|
|
158
158
|
hasMore: offset + documents.length < total,
|
|
159
159
|
};
|
|
160
160
|
}
|
|
161
|
-
async delete(
|
|
161
|
+
async delete(appId, store, key) {
|
|
162
162
|
// Delete history too
|
|
163
|
-
await this.db.query(`DELETE FROM store_document_versions WHERE
|
|
164
|
-
const result = await this.db.query(`DELETE FROM store_documents WHERE
|
|
163
|
+
await this.db.query(`DELETE FROM store_document_versions WHERE app_id = $1 AND store = $2 AND key = $3`, [appId, store, key]);
|
|
164
|
+
const result = await this.db.query(`DELETE FROM store_documents WHERE app_id = $1 AND store = $2 AND key = $3`, [appId, store, key]);
|
|
165
165
|
return (result.affectedRows ?? 0) > 0;
|
|
166
166
|
}
|
|
167
|
-
async history(
|
|
168
|
-
const result = await this.db.query(`SELECT key, $1::text AS
|
|
167
|
+
async history(appId, store, key) {
|
|
168
|
+
const result = await this.db.query(`SELECT key, $1::text AS app_id, store, version, payload, meta
|
|
169
169
|
FROM store_document_versions
|
|
170
|
-
WHERE
|
|
171
|
-
ORDER BY version DESC`, [
|
|
170
|
+
WHERE app_id = $1 AND store = $2 AND key = $3
|
|
171
|
+
ORDER BY version DESC`, [appId, store, key]);
|
|
172
172
|
return result.rows.map((row) => ({
|
|
173
173
|
key: String(row['key']),
|
|
174
|
-
|
|
174
|
+
appId: String(row['app_id']),
|
|
175
175
|
store: String(row['store']),
|
|
176
176
|
version: Number(row['version']),
|
|
177
177
|
// eslint-disable-next-line @typescript-eslint/no-unsafe-type-assertion
|
|
@@ -180,9 +180,9 @@ export class PGLiteStoreBackend {
|
|
|
180
180
|
meta: (typeof row['meta'] === 'string' ? JSON.parse(row['meta']) : row['meta']),
|
|
181
181
|
}));
|
|
182
182
|
}
|
|
183
|
-
async purgeExpired(
|
|
184
|
-
let query = `DELETE FROM store_documents WHERE
|
|
185
|
-
const params = [
|
|
183
|
+
async purgeExpired(appId, store) {
|
|
184
|
+
let query = `DELETE FROM store_documents WHERE app_id = $1 AND expires_at IS NOT NULL AND expires_at <= NOW()`;
|
|
185
|
+
const params = [appId];
|
|
186
186
|
if (store) {
|
|
187
187
|
query += ` AND store = $2`;
|
|
188
188
|
params.push(store);
|
|
@@ -204,7 +204,7 @@ export class PGLiteStoreBackend {
|
|
|
204
204
|
meta.stale = isStale;
|
|
205
205
|
return {
|
|
206
206
|
key: String(row['key']),
|
|
207
|
-
|
|
207
|
+
appId: String(row['app_id']),
|
|
208
208
|
store: String(row['store']),
|
|
209
209
|
version: Number(row['version']),
|
|
210
210
|
// eslint-disable-next-line @typescript-eslint/no-unsafe-type-assertion
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pglite-store-backend.js","sourceRoot":"","sources":["../../../src/stores/pglite-store-backend.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAYH,OAAO,EAAC,UAAU,EAAC,MAAM,mBAAmB,CAAC;AAE7C;;;;;;GAMG;AACH,MAAM,OAAO,kBAAkB;IAC7B,8DAA8D;IACtD,EAAE,GAAQ,IAAI,CAAC;IACN,OAAO,CAAqB;IACrC,MAAM,GAAG,IAAI,GAAG,EAAuB,CAAC;IAEhD,YAAY,OAAgB;QAC1B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,MAAqB;QACpC,+BAA+B;QAC/B,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,MAAM,EAAC,SAAS,EAAC,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,CAAC;YAC5C,SAAS,CAAC,IAAI,CAAC,OAAO,EAAE,EAAC,SAAS,EAAE,IAAI,EAAC,CAAC,CAAC;QAC7C,CAAC;QAED,MAAM,EAAC,MAAM,EAAC,GAAG,MAAM,MAAM,CAAC,sBAAsB,CAAC,CAAC;QACtD,IAAI,CAAC,EAAE,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,IAAI,SAAS,CAAC,CAAC;QAEhD,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACrC,CAAC;QAED,gBAAgB;QAChB,MAAM,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAkClB,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,
|
|
1
|
+
{"version":3,"file":"pglite-store-backend.js","sourceRoot":"","sources":["../../../src/stores/pglite-store-backend.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import { describe, it, expect, beforeEach, afterEach } from 'vitest';
|
|
7
7
|
import { PGLiteStoreBackend } from './pglite-store-backend.js';
|
|
8
|
-
const
|
|
8
|
+
const APP_ID = 'test-app';
|
|
9
9
|
function makeStore(overrides = {}) {
|
|
10
10
|
return {
|
|
11
11
|
name: 'test-store',
|
|
@@ -43,12 +43,12 @@ describe('PGLiteStoreBackend', () => {
|
|
|
43
43
|
});
|
|
44
44
|
describe('get', () => {
|
|
45
45
|
it('returns null for non-existent document', async () => {
|
|
46
|
-
const doc = await backend.get(
|
|
46
|
+
const doc = await backend.get(APP_ID, 'test-store', 'missing');
|
|
47
47
|
expect(doc).toBeNull();
|
|
48
48
|
});
|
|
49
49
|
it('returns a stored document', async () => {
|
|
50
|
-
await backend.put(
|
|
51
|
-
const doc = await backend.get(
|
|
50
|
+
await backend.put(APP_ID, 'test-store', 'key-1', { id: 'key-1', value: 'hello' }, {});
|
|
51
|
+
const doc = await backend.get(APP_ID, 'test-store', 'key-1');
|
|
52
52
|
expect(doc).not.toBeNull();
|
|
53
53
|
expect(doc?.payload).toEqual({ id: 'key-1', value: 'hello' });
|
|
54
54
|
expect(doc?.version).toBe(1);
|
|
@@ -56,23 +56,23 @@ describe('PGLiteStoreBackend', () => {
|
|
|
56
56
|
});
|
|
57
57
|
describe('put', () => {
|
|
58
58
|
it('creates a new document with version 1', async () => {
|
|
59
|
-
const result = await backend.put(
|
|
59
|
+
const result = await backend.put(APP_ID, 'test-store', 'key-1', { id: 'key-1', value: 'v1' }, {});
|
|
60
60
|
expect(result.stored).toBe(true);
|
|
61
61
|
expect(result.version).toBe(1);
|
|
62
62
|
expect(result.previousVersion).toBeUndefined();
|
|
63
63
|
});
|
|
64
64
|
it('increments version on update', async () => {
|
|
65
|
-
await backend.put(
|
|
66
|
-
const result = await backend.put(
|
|
65
|
+
await backend.put(APP_ID, 'test-store', 'key-1', { id: 'key-1', value: 'v1' }, {});
|
|
66
|
+
const result = await backend.put(APP_ID, 'test-store', 'key-1', { id: 'key-1', value: 'v2' }, {});
|
|
67
67
|
expect(result.version).toBe(2);
|
|
68
68
|
expect(result.previousVersion).toBe(1);
|
|
69
69
|
});
|
|
70
70
|
it('stores metadata', async () => {
|
|
71
|
-
await backend.put(
|
|
71
|
+
await backend.put(APP_ID, 'test-store', 'key-1', { id: 'key-1' }, {
|
|
72
72
|
automationId: 'auto-1',
|
|
73
73
|
skillId: 'skill-1',
|
|
74
74
|
});
|
|
75
|
-
const doc = await backend.get(
|
|
75
|
+
const doc = await backend.get(APP_ID, 'test-store', 'key-1');
|
|
76
76
|
expect(doc?.meta.automationId).toBe('auto-1');
|
|
77
77
|
expect(doc?.meta.skillId).toBe('skill-1');
|
|
78
78
|
expect(doc?.meta.computedAt).toBeDefined();
|
|
@@ -80,68 +80,68 @@ describe('PGLiteStoreBackend', () => {
|
|
|
80
80
|
});
|
|
81
81
|
describe('list', () => {
|
|
82
82
|
beforeEach(async () => {
|
|
83
|
-
await backend.put(
|
|
84
|
-
await backend.put(
|
|
85
|
-
await backend.put(
|
|
83
|
+
await backend.put(APP_ID, 'test-store', 'a', { id: 'a', value: 'alpha' }, {});
|
|
84
|
+
await backend.put(APP_ID, 'test-store', 'b', { id: 'b', value: 'beta' }, {});
|
|
85
|
+
await backend.put(APP_ID, 'test-store', 'c', { id: 'c', value: 'gamma' }, {});
|
|
86
86
|
});
|
|
87
87
|
it('lists all documents', async () => {
|
|
88
|
-
const result = await backend.list(
|
|
88
|
+
const result = await backend.list(APP_ID, 'test-store');
|
|
89
89
|
expect(result.documents).toHaveLength(3);
|
|
90
90
|
expect(result.total).toBe(3);
|
|
91
91
|
expect(result.hasMore).toBe(false);
|
|
92
92
|
});
|
|
93
93
|
it('filters by field value', async () => {
|
|
94
|
-
const result = await backend.list(
|
|
94
|
+
const result = await backend.list(APP_ID, 'test-store', {
|
|
95
95
|
filter: { value: 'beta' },
|
|
96
96
|
});
|
|
97
97
|
expect(result.documents).toHaveLength(1);
|
|
98
98
|
expect(result.documents[0].payload['value']).toBe('beta');
|
|
99
99
|
});
|
|
100
100
|
it('respects limit and offset', async () => {
|
|
101
|
-
const page1 = await backend.list(
|
|
101
|
+
const page1 = await backend.list(APP_ID, 'test-store', { limit: 2, offset: 0 });
|
|
102
102
|
expect(page1.documents).toHaveLength(2);
|
|
103
103
|
expect(page1.hasMore).toBe(true);
|
|
104
|
-
const page2 = await backend.list(
|
|
104
|
+
const page2 = await backend.list(APP_ID, 'test-store', { limit: 2, offset: 2 });
|
|
105
105
|
expect(page2.documents).toHaveLength(1);
|
|
106
106
|
expect(page2.hasMore).toBe(false);
|
|
107
107
|
});
|
|
108
108
|
it('returns empty for unknown store', async () => {
|
|
109
|
-
const result = await backend.list(
|
|
109
|
+
const result = await backend.list(APP_ID, 'nonexistent');
|
|
110
110
|
expect(result.documents).toHaveLength(0);
|
|
111
111
|
expect(result.total).toBe(0);
|
|
112
112
|
});
|
|
113
113
|
});
|
|
114
114
|
describe('delete', () => {
|
|
115
115
|
it('deletes an existing document', async () => {
|
|
116
|
-
await backend.put(
|
|
117
|
-
await backend.delete(
|
|
116
|
+
await backend.put(APP_ID, 'test-store', 'key-1', { id: 'key-1' }, {});
|
|
117
|
+
await backend.delete(APP_ID, 'test-store', 'key-1');
|
|
118
118
|
// Verify doc is gone
|
|
119
|
-
const doc = await backend.get(
|
|
119
|
+
const doc = await backend.get(APP_ID, 'test-store', 'key-1');
|
|
120
120
|
expect(doc).toBeNull();
|
|
121
121
|
});
|
|
122
122
|
});
|
|
123
123
|
describe('history', () => {
|
|
124
124
|
it('stores version history', async () => {
|
|
125
|
-
await backend.put(
|
|
126
|
-
await backend.put(
|
|
127
|
-
await backend.put(
|
|
128
|
-
const versions = await backend.history(
|
|
125
|
+
await backend.put(APP_ID, 'versioned-store', 'key-1', { id: 'key-1', value: 'v1' }, {});
|
|
126
|
+
await backend.put(APP_ID, 'versioned-store', 'key-1', { id: 'key-1', value: 'v2' }, {});
|
|
127
|
+
await backend.put(APP_ID, 'versioned-store', 'key-1', { id: 'key-1', value: 'v3' }, {});
|
|
128
|
+
const versions = await backend.history(APP_ID, 'versioned-store', 'key-1');
|
|
129
129
|
// maxVersions=2, so only versions 1 and 2 are in history (v3 is current)
|
|
130
130
|
expect(versions).toHaveLength(2);
|
|
131
131
|
expect(versions[0].version).toBe(2);
|
|
132
132
|
expect(versions[1].version).toBe(1);
|
|
133
133
|
});
|
|
134
134
|
it('returns empty array when no history', async () => {
|
|
135
|
-
const versions = await backend.history(
|
|
135
|
+
const versions = await backend.history(APP_ID, 'test-store', 'missing');
|
|
136
136
|
expect(versions).toEqual([]);
|
|
137
137
|
});
|
|
138
138
|
});
|
|
139
|
-
describe('
|
|
140
|
-
it('isolates data between
|
|
141
|
-
await backend.put('
|
|
142
|
-
await backend.put('
|
|
143
|
-
const docA = await backend.get('
|
|
144
|
-
const docB = await backend.get('
|
|
139
|
+
describe('app isolation', () => {
|
|
140
|
+
it('isolates data between apps', async () => {
|
|
141
|
+
await backend.put('app-a', 'test-store', 'key-1', { id: 'key-1', value: 'a' }, {});
|
|
142
|
+
await backend.put('app-b', 'test-store', 'key-1', { id: 'key-1', value: 'b' }, {});
|
|
143
|
+
const docA = await backend.get('app-a', 'test-store', 'key-1');
|
|
144
|
+
const docB = await backend.get('app-b', 'test-store', 'key-1');
|
|
145
145
|
expect(docA?.payload['value']).toBe('a');
|
|
146
146
|
expect(docB?.payload['value']).toBe('b');
|
|
147
147
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pglite-store-backend.test.js","sourceRoot":"","sources":["../../../src/stores/pglite-store-backend.test.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAC,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAC,MAAM,QAAQ,CAAC;AAEnE,OAAO,EAAC,kBAAkB,EAAC,MAAM,2BAA2B,CAAC;AAE7D,MAAM,MAAM,GAAG,
|
|
1
|
+
{"version":3,"file":"pglite-store-backend.test.js","sourceRoot":"","sources":["../../../src/stores/pglite-store-backend.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -21,8 +21,6 @@ export function createJWTVerifier(options) {
|
|
|
21
21
|
org_id: payload['org_id'] ?? '',
|
|
22
22
|
// eslint-disable-next-line @typescript-eslint/no-unsafe-type-assertion
|
|
23
23
|
app_id: payload['app_id'] ?? '',
|
|
24
|
-
// eslint-disable-next-line @typescript-eslint/no-unsafe-type-assertion
|
|
25
|
-
tenant_id: payload['tenant_id'] ?? '',
|
|
26
24
|
...(actor ? { actor } : {}),
|
|
27
25
|
};
|
|
28
26
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"jwt-verify.js","sourceRoot":"","sources":["../../../src/utils/jwt-verify.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,kBAAkB,EAAE,SAAS,EAAE,MAAM,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"jwt-verify.js","sourceRoot":"","sources":["../../../src/utils/jwt-verify.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,kBAAkB,EAAE,SAAS,EAAE,MAAM,MAAM,CAAC;AAcrD;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAC/B,OAA2B;IAE3B,MAAM,IAAI,GAAoB,kBAAkB,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;IAC3E,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,iBAAiB,CAAC;IAEnD,OAAO,KAAK,EAAE,KAAa,EAAqC,EAAE;QAChE,IAAI,CAAC;YACH,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;YAC7D,uEAAuE;YACvE,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAuB,CAAC;YACrD,OAAO;gBACL,uEAAuE;gBACvE,MAAM,EAAG,OAAO,CAAC,QAAQ,CAAY,IAAI,EAAE;gBAC3C,uEAAuE;gBACvE,MAAM,EAAG,OAAO,CAAC,QAAQ,CAAY,IAAI,EAAE;gBAC3C,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC5B,CAAC;QACJ,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC,CAAC;AACJ,CAAC"}
|
|
@@ -53,11 +53,10 @@ describe('jwt-verify', () => {
|
|
|
53
53
|
const token = await new SignJWT({
|
|
54
54
|
org_id: 'org-1',
|
|
55
55
|
app_id: 'app-1',
|
|
56
|
-
tenant_id: 'tenant-1',
|
|
57
56
|
})
|
|
58
57
|
.setProtectedHeader({ alg: 'ES256', kid })
|
|
59
58
|
.setIssuer('aitize-platform')
|
|
60
|
-
.setSubject('
|
|
59
|
+
.setSubject('app-1')
|
|
61
60
|
.setIssuedAt()
|
|
62
61
|
.setExpirationTime('1h')
|
|
63
62
|
.sign(privateKey);
|
|
@@ -65,17 +64,16 @@ describe('jwt-verify', () => {
|
|
|
65
64
|
expect(claims).not.toBeNull();
|
|
66
65
|
expect(claims?.org_id).toBe('org-1');
|
|
67
66
|
expect(claims?.app_id).toBe('app-1');
|
|
68
|
-
expect(claims?.
|
|
67
|
+
expect(claims?.app_id).toBe('app-1');
|
|
69
68
|
});
|
|
70
69
|
it('returns null for expired JWT', async () => {
|
|
71
70
|
const token = await new SignJWT({
|
|
72
71
|
org_id: 'org-1',
|
|
73
72
|
app_id: 'app-1',
|
|
74
|
-
tenant_id: 'tenant-1',
|
|
75
73
|
})
|
|
76
74
|
.setProtectedHeader({ alg: 'ES256', kid })
|
|
77
75
|
.setIssuer('aitize-platform')
|
|
78
|
-
.setSubject('
|
|
76
|
+
.setSubject('app-1')
|
|
79
77
|
.setIssuedAt(Math.floor(Date.now() / 1000) - 7200)
|
|
80
78
|
.setExpirationTime(Math.floor(Date.now() / 1000) - 3600)
|
|
81
79
|
.sign(privateKey);
|
|
@@ -86,11 +84,10 @@ describe('jwt-verify', () => {
|
|
|
86
84
|
const token = await new SignJWT({
|
|
87
85
|
org_id: 'org-1',
|
|
88
86
|
app_id: 'app-1',
|
|
89
|
-
tenant_id: 'tenant-1',
|
|
90
87
|
})
|
|
91
88
|
.setProtectedHeader({ alg: 'ES256', kid })
|
|
92
89
|
.setIssuer('wrong-issuer')
|
|
93
|
-
.setSubject('
|
|
90
|
+
.setSubject('app-1')
|
|
94
91
|
.setIssuedAt()
|
|
95
92
|
.setExpirationTime('1h')
|
|
96
93
|
.sign(privateKey);
|
|
@@ -105,12 +102,11 @@ describe('jwt-verify', () => {
|
|
|
105
102
|
const token = await new SignJWT({
|
|
106
103
|
org_id: 'org-1',
|
|
107
104
|
app_id: 'app-1',
|
|
108
|
-
tenant_id: 'tenant-1',
|
|
109
105
|
actor: 'alice@example.com',
|
|
110
106
|
})
|
|
111
107
|
.setProtectedHeader({ alg: 'ES256', kid })
|
|
112
108
|
.setIssuer('aitize-platform')
|
|
113
|
-
.setSubject('
|
|
109
|
+
.setSubject('app-1')
|
|
114
110
|
.setIssuedAt()
|
|
115
111
|
.setExpirationTime('1h')
|
|
116
112
|
.sign(privateKey);
|
|
@@ -122,11 +118,10 @@ describe('jwt-verify', () => {
|
|
|
122
118
|
const token = await new SignJWT({
|
|
123
119
|
org_id: 'org-1',
|
|
124
120
|
app_id: 'app-1',
|
|
125
|
-
tenant_id: 'tenant-1',
|
|
126
121
|
})
|
|
127
122
|
.setProtectedHeader({ alg: 'ES256', kid })
|
|
128
123
|
.setIssuer('aitize-platform')
|
|
129
|
-
.setSubject('
|
|
124
|
+
.setSubject('app-1')
|
|
130
125
|
.setIssuedAt()
|
|
131
126
|
.setExpirationTime('1h')
|
|
132
127
|
.sign(privateKey);
|
|
@@ -141,11 +136,10 @@ describe('jwt-verify', () => {
|
|
|
141
136
|
const token = await new SignJWT({
|
|
142
137
|
org_id: 'org-1',
|
|
143
138
|
app_id: 'app-1',
|
|
144
|
-
tenant_id: 'tenant-1',
|
|
145
139
|
})
|
|
146
140
|
.setProtectedHeader({ alg: 'ES256', kid: otherKid })
|
|
147
141
|
.setIssuer('aitize-platform')
|
|
148
|
-
.setSubject('
|
|
142
|
+
.setSubject('app-1')
|
|
149
143
|
.setIssuedAt()
|
|
150
144
|
.setExpirationTime('1h')
|
|
151
145
|
.sign(otherPair.privateKey);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"jwt-verify.test.js","sourceRoot":"","sources":["../../../src/utils/jwt-verify.test.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AACnE,OAAO,OAAO,MAAM,SAAS,CAAC;AAE9B,OAAO,EAAE,eAAe,EAAE,OAAO,EAAE,SAAS,EAAE,sBAAsB,EAAE,MAAM,MAAM,CAAC;AAEnF,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEpD,QAAQ,CAAC,YAAY,EAAE,GAAG,EAAE;IAC1B,IAAI,UAAqB,CAAC;IAC1B,IAAI,SAAoB,CAAC;IACzB,IAAI,GAAW,CAAC;IAChB,IAAI,UAAuB,CAAC;IAC5B,IAAI,OAAe,CAAC;IACpB,IAAI,SAA+C,CAAC;IAEpD,SAAS,CAAC,KAAK,IAAI,EAAE;QACnB,8BAA8B;QAC9B,MAAM,IAAI,GAAG,MAAM,eAAe,CAAC,OAAO,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;QACnE,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QAC7B,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QAE3B,MAAM,SAAS,GAAG,MAAM,SAAS,CAAC,SAAS,CAAC,CAAC;QAC7C,GAAG,GAAG,MAAM,sBAAsB,CAAC,SAAS,CAAC,CAAC;QAE9C,8BAA8B;QAC9B,MAAM,GAAG,GAAG,OAAO,EAAE,CAAC;QACtB,GAAG,CAAC,GAAG,CAAC,wBAAwB,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE;YAC9C,GAAG,CAAC,IAAI,CAAC;gBACP,IAAI,EAAE,CAAC,EAAE,GAAG,SAAS,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;aACxD,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,UAAU,GAAG,MAAM,IAAI,OAAO,CAAc,CAAC,OAAO,EAAE,EAAE;YACtD,MAAM,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,WAAW,EAAE,GAAG,EAAE;gBACxC,OAAO,CAAC,CAAC,CAAC,CAAC;YACb,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,MAAM,IAAI,GAAG,UAAU,CAAC,OAAO,EAAiC,CAAC;QACjE,OAAO,GAAG,oBAAoB,IAAI,CAAC,IAAI,wBAAwB,CAAC;QAChE,SAAS,GAAG,iBAAiB,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;IAC7C,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,KAAK,IAAI,EAAE;QAClB,IAAI,UAAU,EAAE,CAAC;YACf,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;gBAC1C,UAAU,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;oBACvB,IAAI,GAAG;wBAAE,MAAM,CAAC,GAAG,CAAC,CAAC;;wBAChB,OAAO,EAAE,CAAC;gBACjB,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+BAA+B,EAAE,KAAK,IAAI,EAAE;QAC7C,MAAM,KAAK,GAAG,MAAM,IAAI,OAAO,CAAC;YAC9B,MAAM,EAAE,OAAO;YACf,MAAM,EAAE,OAAO;
|
|
1
|
+
{"version":3,"file":"jwt-verify.test.js","sourceRoot":"","sources":["../../../src/utils/jwt-verify.test.ts"],"names":[],"mappings":"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"}
|