@action-llama/action-llama 0.13.3 → 0.13.4
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/README.md +6 -6
- package/agent-docs/AGENTS.md +1 -1
- package/agent-docs/skills/resource-locks.md +40 -2
- package/dist/agents/container-entry.d.ts.map +1 -1
- package/dist/agents/container-entry.js +3 -1
- package/dist/agents/container-entry.js.map +1 -1
- package/dist/agents/execution-engine.d.ts.map +1 -1
- package/dist/agents/execution-engine.js +3 -1
- package/dist/agents/execution-engine.js.map +1 -1
- package/dist/agents/runner.d.ts.map +1 -1
- package/dist/agents/runner.js +3 -1
- package/dist/agents/runner.js.map +1 -1
- package/dist/build-info.json +1 -1
- package/dist/cli/commands/chat.js +6 -2
- package/dist/cli/commands/chat.js.map +1 -1
- package/dist/cli/commands/push.d.ts +1 -0
- package/dist/cli/commands/push.d.ts.map +1 -1
- package/dist/cli/commands/push.js +22 -4
- package/dist/cli/commands/push.js.map +1 -1
- package/dist/cli/commands/status.d.ts.map +1 -1
- package/dist/cli/commands/status.js +10 -5
- package/dist/cli/commands/status.js.map +1 -1
- package/dist/cli/main.js +3 -2
- package/dist/cli/main.js.map +1 -1
- package/dist/cloud/{vps/cloudflare-api.d.ts → cloudflare/api.d.ts} +1 -1
- package/dist/cloud/cloudflare/api.d.ts.map +1 -0
- package/dist/cloud/{vps/cloudflare-api.js → cloudflare/api.js} +1 -1
- package/dist/cloud/cloudflare/api.js.map +1 -0
- package/dist/cloud/provider.js +2 -2
- package/dist/cloud/provider.js.map +1 -1
- package/dist/cloud/vps/provider.d.ts +4 -4
- package/dist/cloud/vps/provider.d.ts.map +1 -1
- package/dist/cloud/vps/provider.js +4 -4
- package/dist/cloud/vps/provider.js.map +1 -1
- package/dist/cloud/vps/provision.js +4 -4
- package/dist/cloud/vps/provision.js.map +1 -1
- package/dist/cloud/vps/teardown.d.ts +2 -2
- package/dist/cloud/vps/teardown.d.ts.map +1 -1
- package/dist/cloud/vps/teardown.js +3 -3
- package/dist/cloud/vps/teardown.js.map +1 -1
- package/dist/cloud/vps/verify.js +2 -2
- package/dist/cloud/vps/verify.js.map +1 -1
- package/dist/credentials/builtins/cloudflare-api-token.js +1 -1
- package/dist/credentials/builtins/cloudflare-api-token.js.map +1 -1
- package/dist/gateway/auth.d.ts +6 -1
- package/dist/gateway/auth.d.ts.map +1 -1
- package/dist/gateway/auth.js +21 -4
- package/dist/gateway/auth.js.map +1 -1
- package/dist/gateway/index.d.ts +1 -0
- package/dist/gateway/index.d.ts.map +1 -1
- package/dist/gateway/index.js +13 -6
- package/dist/gateway/index.js.map +1 -1
- package/dist/gateway/lock-store.d.ts +17 -0
- package/dist/gateway/lock-store.d.ts.map +1 -1
- package/dist/gateway/lock-store.js +101 -28
- package/dist/gateway/lock-store.js.map +1 -1
- package/dist/gateway/routes/control.d.ts +3 -0
- package/dist/gateway/routes/control.d.ts.map +1 -1
- package/dist/gateway/routes/control.js +7 -0
- package/dist/gateway/routes/control.js.map +1 -1
- package/dist/gateway/routes/dashboard.d.ts +6 -1
- package/dist/gateway/routes/dashboard.d.ts.map +1 -1
- package/dist/gateway/routes/dashboard.js +37 -3
- package/dist/gateway/routes/dashboard.js.map +1 -1
- package/dist/gateway/routes/locks.d.ts.map +1 -1
- package/dist/gateway/routes/locks.js +7 -3
- package/dist/gateway/routes/locks.js.map +1 -1
- package/dist/gateway/routes/webhooks.d.ts.map +1 -1
- package/dist/gateway/routes/webhooks.js +0 -3
- package/dist/gateway/routes/webhooks.js.map +1 -1
- package/dist/gateway/session-store.d.ts +11 -0
- package/dist/gateway/session-store.d.ts.map +1 -0
- package/dist/gateway/session-store.js +33 -0
- package/dist/gateway/session-store.js.map +1 -0
- package/dist/gateway/types.d.ts +5 -0
- package/dist/gateway/types.d.ts.map +1 -1
- package/dist/remote/push.d.ts +15 -1
- package/dist/remote/push.d.ts.map +1 -1
- package/dist/remote/push.js +54 -3
- package/dist/remote/push.js.map +1 -1
- package/dist/scheduler/call-dispatcher.d.ts +11 -0
- package/dist/scheduler/call-dispatcher.d.ts.map +1 -0
- package/dist/scheduler/call-dispatcher.js +65 -0
- package/dist/scheduler/call-dispatcher.js.map +1 -0
- package/dist/scheduler/cron-setup.d.ts +41 -0
- package/dist/scheduler/cron-setup.d.ts.map +1 -0
- package/dist/scheduler/cron-setup.js +94 -0
- package/dist/scheduler/cron-setup.js.map +1 -0
- package/dist/scheduler/event-queue-sqlite.d.ts +27 -0
- package/dist/scheduler/event-queue-sqlite.d.ts.map +1 -0
- package/dist/scheduler/event-queue-sqlite.js +105 -0
- package/dist/scheduler/event-queue-sqlite.js.map +1 -0
- package/dist/scheduler/event-queue.d.ts +31 -9
- package/dist/scheduler/event-queue.d.ts.map +1 -1
- package/dist/scheduler/event-queue.js +21 -32
- package/dist/scheduler/event-queue.js.map +1 -1
- package/dist/scheduler/execution.d.ts +9 -2
- package/dist/scheduler/execution.d.ts.map +1 -1
- package/dist/scheduler/execution.js +64 -48
- package/dist/scheduler/execution.js.map +1 -1
- package/dist/scheduler/gateway-setup.d.ts +40 -0
- package/dist/scheduler/gateway-setup.d.ts.map +1 -0
- package/dist/scheduler/gateway-setup.js +135 -0
- package/dist/scheduler/gateway-setup.js.map +1 -0
- package/dist/scheduler/index.d.ts +4 -7
- package/dist/scheduler/index.d.ts.map +1 -1
- package/dist/scheduler/index.js +81 -437
- package/dist/scheduler/index.js.map +1 -1
- package/dist/scheduler/runner-setup.d.ts +34 -0
- package/dist/scheduler/runner-setup.d.ts.map +1 -0
- package/dist/scheduler/runner-setup.js +63 -0
- package/dist/scheduler/runner-setup.js.map +1 -0
- package/dist/scheduler/shutdown.d.ts +20 -0
- package/dist/scheduler/shutdown.d.ts.map +1 -0
- package/dist/scheduler/shutdown.js +38 -0
- package/dist/scheduler/shutdown.js.map +1 -0
- package/dist/scheduler/state.d.ts +17 -0
- package/dist/scheduler/state.d.ts.map +1 -0
- package/dist/scheduler/state.js +10 -0
- package/dist/scheduler/state.js.map +1 -0
- package/dist/scheduler/validation.d.ts +18 -0
- package/dist/scheduler/validation.d.ts.map +1 -0
- package/dist/scheduler/validation.js +59 -0
- package/dist/scheduler/validation.js.map +1 -0
- package/dist/scheduler/watcher.d.ts.map +1 -1
- package/dist/scheduler/watcher.js +31 -48
- package/dist/scheduler/watcher.js.map +1 -1
- package/dist/scheduler/webhook-setup.d.ts +18 -1
- package/dist/scheduler/webhook-setup.d.ts.map +1 -1
- package/dist/scheduler/webhook-setup.js +51 -0
- package/dist/scheduler/webhook-setup.js.map +1 -1
- package/dist/shared/config.d.ts +2 -3
- package/dist/shared/config.d.ts.map +1 -1
- package/dist/shared/config.js +0 -15
- package/dist/shared/config.js.map +1 -1
- package/dist/shared/queue-memory.d.ts +16 -0
- package/dist/shared/queue-memory.d.ts.map +1 -0
- package/dist/shared/queue-memory.js +28 -0
- package/dist/shared/queue-memory.js.map +1 -0
- package/dist/shared/queue-sqlite.d.ts +28 -0
- package/dist/shared/queue-sqlite.d.ts.map +1 -0
- package/dist/shared/queue-sqlite.js +86 -0
- package/dist/shared/queue-sqlite.js.map +1 -0
- package/dist/shared/queue.d.ts +55 -0
- package/dist/shared/queue.d.ts.map +1 -0
- package/dist/shared/queue.js +22 -0
- package/dist/shared/queue.js.map +1 -0
- package/dist/shared/server.d.ts +1 -0
- package/dist/shared/server.d.ts.map +1 -1
- package/dist/shared/server.js +3 -0
- package/dist/shared/server.js.map +1 -1
- package/package.json +2 -2
- package/dist/cloud/vps/cloudflare-api.d.ts.map +0 -1
- package/dist/cloud/vps/cloudflare-api.js.map +0 -1
- package/dist/gateway/rate-limiter.d.ts +0 -16
- package/dist/gateway/rate-limiter.d.ts.map +0 -1
- package/dist/gateway/rate-limiter.js +0 -38
- package/dist/gateway/rate-limiter.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"webhook-setup.js","sourceRoot":"","sources":["../../src/scheduler/webhook-setup.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"webhook-setup.js","sourceRoot":"","sources":["../../src/scheduler/webhook-setup.ts"],"names":[],"mappings":"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"}
|
package/dist/shared/config.d.ts
CHANGED
|
@@ -13,7 +13,7 @@ export interface LocalConfig {
|
|
|
13
13
|
cpus?: number;
|
|
14
14
|
timeout?: number;
|
|
15
15
|
}
|
|
16
|
-
export interface
|
|
16
|
+
export interface VpsConfig {
|
|
17
17
|
provider: "vps";
|
|
18
18
|
host: string;
|
|
19
19
|
sshUser?: string;
|
|
@@ -27,7 +27,7 @@ export interface VpsCloudConfig {
|
|
|
27
27
|
cloudflareDnsRecordId?: string;
|
|
28
28
|
cloudflareHostname?: string;
|
|
29
29
|
}
|
|
30
|
-
export type CloudConfig =
|
|
30
|
+
export type CloudConfig = VpsConfig;
|
|
31
31
|
export interface GatewayConfig {
|
|
32
32
|
port?: number;
|
|
33
33
|
lockTimeout?: number;
|
|
@@ -84,7 +84,6 @@ export declare function loadProjectConfig(projectPath: string): GlobalConfig;
|
|
|
84
84
|
* @param envName - explicit environment name (from --env flag); takes precedence over .env.toml and AL_ENV
|
|
85
85
|
*/
|
|
86
86
|
export declare function loadGlobalConfig(projectPath: string, envName?: string): GlobalConfig;
|
|
87
|
-
export declare function validateCloudConfig(raw: any): CloudConfig;
|
|
88
87
|
export declare function loadAgentConfig(projectPath: string, agentName: string): AgentConfig;
|
|
89
88
|
export declare function validateAgentName(name: string): void;
|
|
90
89
|
export declare function validateAgentConfig(config: AgentConfig): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/shared/config.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAW5D,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,CAAC,EAAE,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;IACxE,QAAQ,EAAE,SAAS,GAAG,aAAa,GAAG,SAAS,CAAC;CACjD;AAED,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/shared/config.ts"],"names":[],"mappings":"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"}
|
package/dist/shared/config.js
CHANGED
|
@@ -54,21 +54,6 @@ export function loadGlobalConfig(projectPath, envName) {
|
|
|
54
54
|
}
|
|
55
55
|
return config;
|
|
56
56
|
}
|
|
57
|
-
export function validateCloudConfig(raw) {
|
|
58
|
-
if (!raw.provider) {
|
|
59
|
-
throw new ConfigError("cloud.provider is required");
|
|
60
|
-
}
|
|
61
|
-
if (raw.provider === "vps") {
|
|
62
|
-
const required = ["host"];
|
|
63
|
-
const missing = required.filter((k) => !raw[k]);
|
|
64
|
-
if (missing.length > 0) {
|
|
65
|
-
throw new ConfigError(`VPS cloud config is missing required fields: ${missing.map((k) => `cloud.${k}`).join(", ")}. ` +
|
|
66
|
-
`Run 'al setup cloud' to configure.`);
|
|
67
|
-
}
|
|
68
|
-
return raw;
|
|
69
|
-
}
|
|
70
|
-
throw new ConfigError(`Unknown cloud provider: "${raw.provider}". Supported: vps`);
|
|
71
|
-
}
|
|
72
57
|
export function loadAgentConfig(projectPath, agentName) {
|
|
73
58
|
const agentDir = resolve(projectPath, "agents", agentName);
|
|
74
59
|
const tomlPath = resolve(agentDir, "agent-config.toml");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/shared/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,IAAI,CAAC;AACrE,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAC/B,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,MAAM,WAAW,CAAC;AAG/C,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EACL,sBAAsB,EACtB,WAAW,EACX,qBAAqB,EACrB,SAAS,GACV,MAAM,kBAAkB,CAAC;AA4F1B,kBAAkB;AAElB;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAAC,WAAmB;IACnD,MAAM,UAAU,GAAG,OAAO,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;IACvD,IAAI,MAAM,GAAiB,EAAE,CAAC;IAE9B,IAAI,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC3B,MAAM,GAAG,GAAG,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;QAC9C,MAAM,GAAG,SAAS,CAAC,GAAG,CAA4B,CAAC;IACrD,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB,CAAC,WAAmB,EAAE,OAAgB;IACpE,IAAI,MAAM,GAAG,iBAAiB,CAAC,WAAW,CAAC,CAAC;IAE5C,+BAA+B;IAC/B,MAAM,OAAO,GAAG,WAAW,CAAC,WAAW,CAAC,CAAC;IACzC,IAAI,WAA+B,CAAC;IACpC,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,EAAE,WAAW,EAAE,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,GAAG,SAAS,EAAE,GAAG,OAAO,CAAC;QAClE,WAAW,GAAG,OAAO,EAAE,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;QACtD,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtC,MAAM,GAAG,SAAS,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;QACxC,CAAC;IACH,CAAC;IAED,4BAA4B;IAC5B,MAAM,WAAW,GAAG,sBAAsB,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IACjE,IAAI,WAAW,EAAE,CAAC;QAChB,MAAM,SAAS,GAAG,qBAAqB,CAAC,WAAW,CAAC,CAAC;QACrD,MAAM,GAAG,SAAS,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IACxC,CAAC;IAED,+CAA+C;IAC/C,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;QACtB,MAAM,CAAC,SAAS,GAAG;YACjB,OAAO,EAAE,KAAK;YACd,QAAQ,EAAE,MAAM;SACjB,CAAC;IACJ,CAAC;IAED,wFAAwF;IACxF,IAAI,WAAW,EAAE,CAAC;QAChB,MAAM,CAAC,WAAW,GAAG,WAAW,CAAC;IACnC,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/shared/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { Queue, QueueItem } from "./queue.js";
|
|
2
|
+
/**
|
|
3
|
+
* In-memory Queue implementation.
|
|
4
|
+
*
|
|
5
|
+
* Suitable for tests and single-process local use where durability
|
|
6
|
+
* is not required. State is lost when the process exits.
|
|
7
|
+
*/
|
|
8
|
+
export declare class MemoryQueue<T> implements Queue<T> {
|
|
9
|
+
private items;
|
|
10
|
+
enqueue(payload: T): Promise<string>;
|
|
11
|
+
dequeue(limit?: number): Promise<QueueItem<T>[]>;
|
|
12
|
+
peek(limit?: number): Promise<QueueItem<T>[]>;
|
|
13
|
+
size(): Promise<number>;
|
|
14
|
+
close(): Promise<void>;
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=queue-memory.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"queue-memory.d.ts","sourceRoot":"","sources":["../../src/shared/queue-memory.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAEnD;;;;;GAKG;AACH,qBAAa,WAAW,CAAC,CAAC,CAAE,YAAW,KAAK,CAAC,CAAC,CAAC;IAC7C,OAAO,CAAC,KAAK,CAAsB;IAE7B,OAAO,CAAC,OAAO,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;IAMpC,OAAO,CAAC,KAAK,SAAI,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;IAI3C,IAAI,CAAC,KAAK,SAAI,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;IAIxC,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC;IAIvB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAG7B"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { randomUUID } from "crypto";
|
|
2
|
+
/**
|
|
3
|
+
* In-memory Queue implementation.
|
|
4
|
+
*
|
|
5
|
+
* Suitable for tests and single-process local use where durability
|
|
6
|
+
* is not required. State is lost when the process exits.
|
|
7
|
+
*/
|
|
8
|
+
export class MemoryQueue {
|
|
9
|
+
items = [];
|
|
10
|
+
async enqueue(payload) {
|
|
11
|
+
const id = randomUUID();
|
|
12
|
+
this.items.push({ id, payload, enqueuedAt: Date.now() });
|
|
13
|
+
return id;
|
|
14
|
+
}
|
|
15
|
+
async dequeue(limit = 1) {
|
|
16
|
+
return this.items.splice(0, limit);
|
|
17
|
+
}
|
|
18
|
+
async peek(limit = 1) {
|
|
19
|
+
return this.items.slice(0, limit);
|
|
20
|
+
}
|
|
21
|
+
async size() {
|
|
22
|
+
return this.items.length;
|
|
23
|
+
}
|
|
24
|
+
async close() {
|
|
25
|
+
this.items = [];
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=queue-memory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"queue-memory.js","sourceRoot":"","sources":["../../src/shared/queue-memory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAGpC;;;;;GAKG;AACH,MAAM,OAAO,WAAW;IACd,KAAK,GAAmB,EAAE,CAAC;IAEnC,KAAK,CAAC,OAAO,CAAC,OAAU;QACtB,MAAM,EAAE,GAAG,UAAU,EAAE,CAAC;QACxB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QACzD,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,KAAK,GAAG,CAAC;QACrB,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;IACrC,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC;QAClB,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;IACpC,CAAC;IAED,KAAK,CAAC,IAAI;QACR,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;IAC3B,CAAC;IAED,KAAK,CAAC,KAAK;QACT,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;IAClB,CAAC;CACF"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import type { Queue, QueueItem } from "./queue.js";
|
|
2
|
+
/**
|
|
3
|
+
* SQLite-backed Queue.
|
|
4
|
+
*
|
|
5
|
+
* All queue instances sharing a file use a single `queue` table,
|
|
6
|
+
* differentiated by a `name` column — the same pattern SqliteStateStore
|
|
7
|
+
* uses for namespaces.
|
|
8
|
+
*
|
|
9
|
+
* Uses better-sqlite3 for fast, synchronous, embedded storage.
|
|
10
|
+
* The async interface is preserved for compatibility with future
|
|
11
|
+
* remote-backed implementations (e.g., PostgreSQL).
|
|
12
|
+
*
|
|
13
|
+
* Dequeue is atomic: a transaction selects and deletes the head rows
|
|
14
|
+
* so concurrent readers (if any) cannot claim the same items.
|
|
15
|
+
*/
|
|
16
|
+
export declare class SqliteQueue<T> implements Queue<T> {
|
|
17
|
+
private db;
|
|
18
|
+
private stmts;
|
|
19
|
+
private readonly name;
|
|
20
|
+
private _dequeueTransaction;
|
|
21
|
+
constructor(dbPath: string, name: string);
|
|
22
|
+
enqueue(payload: T): Promise<string>;
|
|
23
|
+
dequeue(limit?: number): Promise<QueueItem<T>[]>;
|
|
24
|
+
peek(limit?: number): Promise<QueueItem<T>[]>;
|
|
25
|
+
size(): Promise<number>;
|
|
26
|
+
close(): Promise<void>;
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=queue-sqlite.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"queue-sqlite.d.ts","sourceRoot":"","sources":["../../src/shared/queue-sqlite.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAEnD;;;;;;;;;;;;;GAaG;AACH,qBAAa,WAAW,CAAC,CAAC,CAAE,YAAW,KAAK,CAAC,CAAC,CAAC;IAC7C,OAAO,CAAC,EAAE,CAAgC;IAG1C,OAAO,CAAC,KAAK,CAAM;IACnB,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAS;IAC9B,OAAO,CAAC,mBAAmB,CAIxB;gBAES,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;IA+ClC,OAAO,CAAC,OAAO,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;IAMpC,OAAO,CAAC,KAAK,SAAI,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;IAS3C,IAAI,CAAC,KAAK,SAAI,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;IAaxC,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC;IAKvB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAG7B"}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import Database from "better-sqlite3";
|
|
2
|
+
import { mkdirSync } from "fs";
|
|
3
|
+
import { dirname } from "path";
|
|
4
|
+
import { randomUUID } from "crypto";
|
|
5
|
+
/**
|
|
6
|
+
* SQLite-backed Queue.
|
|
7
|
+
*
|
|
8
|
+
* All queue instances sharing a file use a single `queue` table,
|
|
9
|
+
* differentiated by a `name` column — the same pattern SqliteStateStore
|
|
10
|
+
* uses for namespaces.
|
|
11
|
+
*
|
|
12
|
+
* Uses better-sqlite3 for fast, synchronous, embedded storage.
|
|
13
|
+
* The async interface is preserved for compatibility with future
|
|
14
|
+
* remote-backed implementations (e.g., PostgreSQL).
|
|
15
|
+
*
|
|
16
|
+
* Dequeue is atomic: a transaction selects and deletes the head rows
|
|
17
|
+
* so concurrent readers (if any) cannot claim the same items.
|
|
18
|
+
*/
|
|
19
|
+
export class SqliteQueue {
|
|
20
|
+
db;
|
|
21
|
+
// better-sqlite3 generic Statement types don't compose with ReturnType<>;
|
|
22
|
+
// the public Queue interface provides the type safety boundary.
|
|
23
|
+
stmts;
|
|
24
|
+
name;
|
|
25
|
+
_dequeueTransaction;
|
|
26
|
+
constructor(dbPath, name) {
|
|
27
|
+
this.name = name;
|
|
28
|
+
mkdirSync(dirname(dbPath), { recursive: true });
|
|
29
|
+
this.db = new Database(dbPath);
|
|
30
|
+
this.db.pragma("journal_mode = WAL");
|
|
31
|
+
this.db.exec(`
|
|
32
|
+
CREATE TABLE IF NOT EXISTS queue (
|
|
33
|
+
id TEXT NOT NULL,
|
|
34
|
+
name TEXT NOT NULL,
|
|
35
|
+
payload TEXT NOT NULL,
|
|
36
|
+
enqueued_at INTEGER NOT NULL,
|
|
37
|
+
PRIMARY KEY (name, id)
|
|
38
|
+
)
|
|
39
|
+
`);
|
|
40
|
+
this.db.exec("CREATE INDEX IF NOT EXISTS idx_queue_name ON queue(name)");
|
|
41
|
+
// Prepare statements once for performance.
|
|
42
|
+
this.stmts = {
|
|
43
|
+
enqueue: this.db.prepare("INSERT INTO queue (id, name, payload, enqueued_at) VALUES (?, ?, ?, ?)"),
|
|
44
|
+
peek: this.db.prepare("SELECT id, payload, enqueued_at FROM queue WHERE name = ? ORDER BY rowid ASC LIMIT ?"),
|
|
45
|
+
delete: this.db.prepare("DELETE FROM queue WHERE name = ? AND id = ?"),
|
|
46
|
+
size: this.db.prepare("SELECT COUNT(*) AS n FROM queue WHERE name = ?"),
|
|
47
|
+
};
|
|
48
|
+
// Pre-compiled transaction for atomic dequeue (select + delete in one shot).
|
|
49
|
+
this._dequeueTransaction = this.db.transaction((name, limit) => {
|
|
50
|
+
const rows = this.stmts.peek.all(name, limit);
|
|
51
|
+
for (const row of rows) {
|
|
52
|
+
this.stmts.delete.run(name, row.id);
|
|
53
|
+
}
|
|
54
|
+
return rows;
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
async enqueue(payload) {
|
|
58
|
+
const id = randomUUID();
|
|
59
|
+
this.stmts.enqueue.run(id, this.name, JSON.stringify(payload), Date.now());
|
|
60
|
+
return id;
|
|
61
|
+
}
|
|
62
|
+
async dequeue(limit = 1) {
|
|
63
|
+
const rows = this._dequeueTransaction(this.name, limit);
|
|
64
|
+
return rows.map((r) => ({
|
|
65
|
+
id: r.id,
|
|
66
|
+
payload: JSON.parse(r.payload),
|
|
67
|
+
enqueuedAt: r.enqueued_at,
|
|
68
|
+
}));
|
|
69
|
+
}
|
|
70
|
+
async peek(limit = 1) {
|
|
71
|
+
const rows = this.stmts.peek.all(this.name, limit);
|
|
72
|
+
return rows.map((r) => ({
|
|
73
|
+
id: r.id,
|
|
74
|
+
payload: JSON.parse(r.payload),
|
|
75
|
+
enqueuedAt: r.enqueued_at,
|
|
76
|
+
}));
|
|
77
|
+
}
|
|
78
|
+
async size() {
|
|
79
|
+
const row = this.stmts.size.get(this.name);
|
|
80
|
+
return row.n;
|
|
81
|
+
}
|
|
82
|
+
async close() {
|
|
83
|
+
this.db.close();
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
//# sourceMappingURL=queue-sqlite.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"queue-sqlite.js","sourceRoot":"","sources":["../../src/shared/queue-sqlite.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AAC/B,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAC/B,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAGpC;;;;;;;;;;;;;GAaG;AACH,MAAM,OAAO,WAAW;IACd,EAAE,CAAgC;IAC1C,0EAA0E;IAC1E,gEAAgE;IACxD,KAAK,CAAM;IACF,IAAI,CAAS;IACtB,mBAAmB,CAIxB;IAEH,YAAY,MAAc,EAAE,IAAY;QACtC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAChD,IAAI,CAAC,EAAE,GAAG,IAAI,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC/B,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC;QAErC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC;;;;;;;;KAQZ,CAAC,CAAC;QACH,IAAI,CAAC,EAAE,CAAC,IAAI,CACV,0DAA0D,CAC3D,CAAC;QAEF,2CAA2C;QAC3C,IAAI,CAAC,KAAK,GAAG;YACX,OAAO,EAAE,IAAI,CAAC,EAAE,CAAC,OAAO,CACtB,wEAAwE,CACzE;YACD,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,OAAO,CACnB,sFAAsF,CACvF;YACD,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,6CAA6C,CAAC;YACtE,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,gDAAgD,CAAC;SACxE,CAAC;QAEF,6EAA6E;QAC7E,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,EAAE,CAAC,WAAW,CAC5C,CAAC,IAAY,EAAE,KAAa,EAAE,EAAE;YAC9B,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAI1C,CAAC;YACH,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;gBACvB,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;YACtC,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC,CACF,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,OAAU;QACtB,MAAM,EAAE,GAAG,UAAU,EAAE,CAAC;QACxB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;QAC3E,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,KAAK,GAAG,CAAC;QACrB,MAAM,IAAI,GAAG,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACxD,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACtB,EAAE,EAAE,CAAC,CAAC,EAAE;YACR,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAM;YACnC,UAAU,EAAE,CAAC,CAAC,WAAW;SAC1B,CAAC,CAAC,CAAC;IACN,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC;QAClB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAI/C,CAAC;QACH,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACtB,EAAE,EAAE,CAAC,CAAC,EAAE;YACR,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAM;YACnC,UAAU,EAAE,CAAC,CAAC,WAAW;SAC1B,CAAC,CAAC,CAAC;IACN,CAAC;IAED,KAAK,CAAC,IAAI;QACR,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAkB,CAAC;QAC5D,OAAO,GAAG,CAAC,CAAC,CAAC;IACf,CAAC;IAED,KAAK,CAAC,KAAK;QACT,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;IAClB,CAAC;CACF"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Queue — durable ordered FIFO queue with a swappable backend.
|
|
3
|
+
*
|
|
4
|
+
* Items are dequeued in insertion order (FIFO).
|
|
5
|
+
* The interface is intentionally minimal so it can be backed by
|
|
6
|
+
* SQLite (local), PostgreSQL (cloud), or an in-memory store (tests).
|
|
7
|
+
*/
|
|
8
|
+
export interface QueueItem<T = unknown> {
|
|
9
|
+
/** Opaque unique identifier assigned at enqueue time. */
|
|
10
|
+
id: string;
|
|
11
|
+
/** The enqueued value. */
|
|
12
|
+
payload: T;
|
|
13
|
+
/** Unix milliseconds when the item was enqueued. */
|
|
14
|
+
enqueuedAt: number;
|
|
15
|
+
}
|
|
16
|
+
export interface Queue<T = unknown> {
|
|
17
|
+
/**
|
|
18
|
+
* Append a payload to the tail of the queue.
|
|
19
|
+
* Returns the assigned item ID.
|
|
20
|
+
*/
|
|
21
|
+
enqueue(payload: T): Promise<string>;
|
|
22
|
+
/**
|
|
23
|
+
* Remove and return up to `limit` items from the head (FIFO order).
|
|
24
|
+
* Defaults to 1. Returns an empty array when the queue is empty.
|
|
25
|
+
*/
|
|
26
|
+
dequeue(limit?: number): Promise<QueueItem<T>[]>;
|
|
27
|
+
/**
|
|
28
|
+
* Return up to `limit` items from the head without removing them.
|
|
29
|
+
* Defaults to 1. Returns an empty array when the queue is empty.
|
|
30
|
+
*/
|
|
31
|
+
peek(limit?: number): Promise<QueueItem<T>[]>;
|
|
32
|
+
/** Return the number of items currently in the queue. */
|
|
33
|
+
size(): Promise<number>;
|
|
34
|
+
/** Release resources (close DB connection, clear timers, etc.). */
|
|
35
|
+
close(): Promise<void>;
|
|
36
|
+
}
|
|
37
|
+
export interface SqliteQueueOpts {
|
|
38
|
+
type: "sqlite";
|
|
39
|
+
/** Path to the .db file (created if missing). */
|
|
40
|
+
path: string;
|
|
41
|
+
/** Queue name — allows multiple queues in one SQLite file. */
|
|
42
|
+
name: string;
|
|
43
|
+
}
|
|
44
|
+
export interface MemoryQueueOpts {
|
|
45
|
+
type: "memory";
|
|
46
|
+
}
|
|
47
|
+
export type QueueOpts = SqliteQueueOpts | MemoryQueueOpts;
|
|
48
|
+
/**
|
|
49
|
+
* Create a Queue from configuration.
|
|
50
|
+
*
|
|
51
|
+
* Uses dynamic imports so native modules (better-sqlite3) are only
|
|
52
|
+
* loaded when actually needed.
|
|
53
|
+
*/
|
|
54
|
+
export declare function createQueue<T>(opts: QueueOpts): Promise<Queue<T>>;
|
|
55
|
+
//# sourceMappingURL=queue.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"queue.d.ts","sourceRoot":"","sources":["../../src/shared/queue.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,MAAM,WAAW,SAAS,CAAC,CAAC,GAAG,OAAO;IACpC,yDAAyD;IACzD,EAAE,EAAE,MAAM,CAAC;IACX,0BAA0B;IAC1B,OAAO,EAAE,CAAC,CAAC;IACX,oDAAoD;IACpD,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,KAAK,CAAC,CAAC,GAAG,OAAO;IAChC;;;OAGG;IACH,OAAO,CAAC,OAAO,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAErC;;;OAGG;IACH,OAAO,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAEjD;;;OAGG;IACH,IAAI,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAE9C,yDAAyD;IACzD,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAExB,mEAAmE;IACnE,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACxB;AAID,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,QAAQ,CAAC;IACf,iDAAiD;IACjD,IAAI,EAAE,MAAM,CAAC;IACb,8DAA8D;IAC9D,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,QAAQ,CAAC;CAChB;AAED,MAAM,MAAM,SAAS,GAAG,eAAe,GAAG,eAAe,CAAC;AAE1D;;;;;GAKG;AACH,wBAAsB,WAAW,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAOvE"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Queue — durable ordered FIFO queue with a swappable backend.
|
|
3
|
+
*
|
|
4
|
+
* Items are dequeued in insertion order (FIFO).
|
|
5
|
+
* The interface is intentionally minimal so it can be backed by
|
|
6
|
+
* SQLite (local), PostgreSQL (cloud), or an in-memory store (tests).
|
|
7
|
+
*/
|
|
8
|
+
/**
|
|
9
|
+
* Create a Queue from configuration.
|
|
10
|
+
*
|
|
11
|
+
* Uses dynamic imports so native modules (better-sqlite3) are only
|
|
12
|
+
* loaded when actually needed.
|
|
13
|
+
*/
|
|
14
|
+
export async function createQueue(opts) {
|
|
15
|
+
if (opts.type === "sqlite") {
|
|
16
|
+
const { SqliteQueue } = await import("./queue-sqlite.js");
|
|
17
|
+
return new SqliteQueue(opts.path, opts.name);
|
|
18
|
+
}
|
|
19
|
+
const { MemoryQueue } = await import("./queue-memory.js");
|
|
20
|
+
return new MemoryQueue();
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=queue.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"queue.js","sourceRoot":"","sources":["../../src/shared/queue.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAqDH;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAAI,IAAe;IAClD,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC3B,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAAC,CAAC;QAC1D,OAAO,IAAI,WAAW,CAAI,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IAClD,CAAC;IACD,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAAC,CAAC;IAC1D,OAAO,IAAI,WAAW,EAAK,CAAC;AAC9B,CAAC"}
|
package/dist/shared/server.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/shared/server.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,OAAO,GAAG,YAAY,
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/shared/server.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,OAAO,GAAG,YAAY,CAoC/D"}
|
package/dist/shared/server.js
CHANGED
|
@@ -23,6 +23,9 @@ export function validateServerConfig(raw) {
|
|
|
23
23
|
if (config.keyPath !== undefined && typeof config.keyPath !== "string") {
|
|
24
24
|
throw new ConfigError("server.keyPath must be a string");
|
|
25
25
|
}
|
|
26
|
+
if (config.expose !== undefined && typeof config.expose !== "boolean") {
|
|
27
|
+
throw new ConfigError("server.expose must be a boolean");
|
|
28
|
+
}
|
|
26
29
|
return config;
|
|
27
30
|
}
|
|
28
31
|
//# sourceMappingURL=server.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/shared/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/shared/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAmB1C,MAAM,UAAU,oBAAoB,CAAC,GAAY;IAC/C,IAAI,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QACpC,MAAM,IAAI,WAAW,CAAC,iCAAiC,CAAC,CAAC;IAC3D,CAAC;IAED,MAAM,MAAM,GAAG,GAA8B,CAAC;IAE9C,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QACpD,MAAM,IAAI,WAAW,CAAC,8CAA8C,CAAC,CAAC;IACxE,CAAC;IAED,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAC9B,IAAI,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,IAAI,GAAG,CAAC,IAAI,MAAM,CAAC,IAAI,GAAG,KAAK,EAAE,CAAC;YAChH,MAAM,IAAI,WAAW,CAAC,oDAAoD,CAAC,CAAC;QAC9E,CAAC;IACH,CAAC;IAED,IAAI,MAAM,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;QAClC,IAAI,OAAO,MAAM,CAAC,QAAQ,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YAC5E,MAAM,IAAI,WAAW,CAAC,4DAA4D,CAAC,CAAC;QACtF,CAAC;IACH,CAAC;IAED,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,IAAI,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QACjE,MAAM,IAAI,WAAW,CAAC,8BAA8B,CAAC,CAAC;IACxD,CAAC;IAED,IAAI,MAAM,CAAC,OAAO,KAAK,SAAS,IAAI,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;QACvE,MAAM,IAAI,WAAW,CAAC,iCAAiC,CAAC,CAAC;IAC3D,CAAC;IAED,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,IAAI,OAAO,MAAM,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QACtE,MAAM,IAAI,WAAW,CAAC,iCAAiC,CAAC,CAAC;IAC3D,CAAC;IAED,OAAO,MAAiC,CAAC;AAC3C,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@action-llama/action-llama",
|
|
3
|
-
"version": "0.13.
|
|
3
|
+
"version": "0.13.4",
|
|
4
4
|
"description": "Automated development agents triggered by cron or webhooks. BYOM — bring your own model.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|
|
@@ -65,7 +65,7 @@
|
|
|
65
65
|
"@opentelemetry/semantic-conventions": "^1.28.0",
|
|
66
66
|
"better-sqlite3": "^12.8.0",
|
|
67
67
|
"commander": "^14.0.3",
|
|
68
|
-
"croner": "
|
|
68
|
+
"croner": "^10.0.1",
|
|
69
69
|
"hono": "^4.12.5",
|
|
70
70
|
"ink": "^6.8.0",
|
|
71
71
|
"pino": "^10.3.1",
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"cloudflare-api.d.ts","sourceRoot":"","sources":["../../../src/cloud/vps/cloudflare-api.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAYH,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,mBAAmB;IAClC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,2BAA2B;IAC1C,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,qBAAa,kBAAmB,SAAQ,KAAK;IACxB,UAAU,EAAE,MAAM;gBAAlB,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;CAIvD;AA+BD,wBAAsB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAgBjE;AAED,wBAAsB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC,CAU3E;AAED,wBAAsB,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC,CAGtF;AAED,wBAAsB,aAAa,CACjC,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,mBAAmB,GAAG,SAAS,CAAC,CAG1C;AAED,wBAAsB,eAAe,CACnC,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,EAAE,EAAE,MAAM,EACV,OAAO,GAAE,OAAc,GACtB,OAAO,CAAC,mBAAmB,CAAC,CAM9B;AAED,wBAAsB,eAAe,CACnC,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,EAAE,EAAE,MAAM,EACV,OAAO,GAAE,OAAc,GACtB,OAAO,CAAC,mBAAmB,CAAC,CAM9B;AAED,wBAAsB,eAAe,CACnC,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,IAAI,CAAC,CAEf;AAED;;;GAGG;AACH,wBAAsB,eAAe,CACnC,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,EAAE,EAAE,MAAM,EACV,OAAO,GAAE,OAAc,GACtB,OAAO,CAAC,mBAAmB,CAAC,CAM9B;AAyBD;;;;GAIG;AACH,wBAAsB,uBAAuB,CAC3C,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,MAAM,EAAE,EACnB,YAAY,GAAE,MAAa,GAC1B,OAAO,CAAC,2BAA2B,CAAC,CAiBtC;AAED;;GAEG;AACH,wBAAsB,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAG/E;AAED;;;GAGG;AACH,wBAAsB,UAAU,CAC9B,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,KAAK,GAAG,UAAU,GAAG,MAAM,GAAG,QAAQ,GAC3C,OAAO,CAAC,IAAI,CAAC,CAKf"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"cloudflare-api.js","sourceRoot":"","sources":["../../../src/cloud/vps/cloudflare-api.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import type { Context, Next } from "hono";
|
|
2
|
-
interface RateLimiterOpts {
|
|
3
|
-
/** Maximum requests per window */
|
|
4
|
-
max: number;
|
|
5
|
-
/** Window size in milliseconds */
|
|
6
|
-
windowMs: number;
|
|
7
|
-
}
|
|
8
|
-
/**
|
|
9
|
-
* Simple in-memory sliding-window rate limiter keyed by IP.
|
|
10
|
-
* Designed for single-process use (local scheduler or cloud scheduler instance).
|
|
11
|
-
*/
|
|
12
|
-
export declare function rateLimiter(opts: RateLimiterOpts): (c: Context, next: Next) => Promise<(Response & import("hono").TypedResponse<{
|
|
13
|
-
error: string;
|
|
14
|
-
}, 429, "json">) | undefined>;
|
|
15
|
-
export {};
|
|
16
|
-
//# sourceMappingURL=rate-limiter.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"rate-limiter.d.ts","sourceRoot":"","sources":["../../src/gateway/rate-limiter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAE1C,UAAU,eAAe;IACvB,kCAAkC;IAClC,GAAG,EAAE,MAAM,CAAC;IACZ,kCAAkC;IAClC,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,eAAe,IAiBjC,GAAG,OAAO,EAAE,MAAM,IAAI;;8BAkBrC"}
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Simple in-memory sliding-window rate limiter keyed by IP.
|
|
3
|
-
* Designed for single-process use (local scheduler or cloud scheduler instance).
|
|
4
|
-
*/
|
|
5
|
-
export function rateLimiter(opts) {
|
|
6
|
-
const hits = new Map();
|
|
7
|
-
// Periodically clean up old entries to prevent unbounded growth
|
|
8
|
-
const cleanup = setInterval(() => {
|
|
9
|
-
const cutoff = Date.now() - opts.windowMs;
|
|
10
|
-
for (const [key, timestamps] of hits) {
|
|
11
|
-
const filtered = timestamps.filter((t) => t > cutoff);
|
|
12
|
-
if (filtered.length === 0) {
|
|
13
|
-
hits.delete(key);
|
|
14
|
-
}
|
|
15
|
-
else {
|
|
16
|
-
hits.set(key, filtered);
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
}, opts.windowMs);
|
|
20
|
-
if (cleanup.unref)
|
|
21
|
-
cleanup.unref();
|
|
22
|
-
return async (c, next) => {
|
|
23
|
-
const ip = c.req.header("x-forwarded-for")?.split(",")[0]?.trim()
|
|
24
|
-
|| c.req.header("x-real-ip")
|
|
25
|
-
|| "unknown";
|
|
26
|
-
const now = Date.now();
|
|
27
|
-
const cutoff = now - opts.windowMs;
|
|
28
|
-
const timestamps = (hits.get(ip) || []).filter((t) => t > cutoff);
|
|
29
|
-
if (timestamps.length >= opts.max) {
|
|
30
|
-
c.header("Retry-After", String(Math.ceil(opts.windowMs / 1000)));
|
|
31
|
-
return c.json({ error: "too many requests" }, 429);
|
|
32
|
-
}
|
|
33
|
-
timestamps.push(now);
|
|
34
|
-
hits.set(ip, timestamps);
|
|
35
|
-
await next();
|
|
36
|
-
};
|
|
37
|
-
}
|
|
38
|
-
//# sourceMappingURL=rate-limiter.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"rate-limiter.js","sourceRoot":"","sources":["../../src/gateway/rate-limiter.ts"],"names":[],"mappings":"AASA;;;GAGG;AACH,MAAM,UAAU,WAAW,CAAC,IAAqB;IAC/C,MAAM,IAAI,GAAG,IAAI,GAAG,EAAoB,CAAC;IAEzC,gEAAgE;IAChE,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,EAAE;QAC/B,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC1C,KAAK,MAAM,CAAC,GAAG,EAAE,UAAU,CAAC,IAAI,IAAI,EAAE,CAAC;YACrC,MAAM,QAAQ,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC;YACtD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC1B,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACnB,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;YAC1B,CAAC;QACH,CAAC;IACH,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;IAClB,IAAI,OAAO,CAAC,KAAK;QAAE,OAAO,CAAC,KAAK,EAAE,CAAC;IAEnC,OAAO,KAAK,EAAE,CAAU,EAAE,IAAU,EAAE,EAAE;QACtC,MAAM,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,iBAAiB,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE;eAC5D,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC;eACzB,SAAS,CAAC;QAEf,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,MAAM,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC;QACnC,MAAM,UAAU,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC;QAElE,IAAI,UAAU,CAAC,MAAM,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;YAClC,CAAC,CAAC,MAAM,CAAC,aAAa,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;YACjE,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,mBAAmB,EAAE,EAAE,GAAG,CAAC,CAAC;QACrD,CAAC;QAED,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACrB,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;QACzB,MAAM,IAAI,EAAE,CAAC;IACf,CAAC,CAAC;AACJ,CAAC"}
|