@run402/runtime-kernel 0.1.8 → 0.1.10
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 +1 -1
- package/dist/apply.d.ts.map +1 -1
- package/dist/apply.js +30 -14
- package/dist/apply.js.map +1 -1
- package/dist/function-runs.d.ts +107 -0
- package/dist/function-runs.d.ts.map +1 -0
- package/dist/function-runs.js +375 -0
- package/dist/function-runs.js.map +1 -0
- package/dist/functions-runtime.d.ts +20 -5
- package/dist/functions-runtime.d.ts.map +1 -1
- package/dist/functions-runtime.js +44 -2
- package/dist/functions-runtime.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/package.json +3 -3
package/README.md
CHANGED
|
@@ -4,7 +4,7 @@ Public Run402 Core runtime-kernel contracts and application services.
|
|
|
4
4
|
|
|
5
5
|
This package is the first self-hostable Core runtime slice. It currently exposes the runtime capability document, typed runtime errors, port contracts used by the public Core gateway composition root, and the `run402-project-archive.v1` local inspect/verify/import contract.
|
|
6
6
|
|
|
7
|
-
It is an Apache-2.0 self-hosting runtime component. Core functions are also trusted-local-code semantics: pre-bundled Node 22 artifacts, single-node
|
|
7
|
+
It is an Apache-2.0 self-hosting runtime component. Core functions are also trusted-local-code semantics: pre-bundled Node 22 artifacts, durable function runs and single-node schedule triggers from release manifests, no external npm dependency install, explicit resource limits, and no hostile-code isolation claim.
|
|
8
8
|
|
|
9
9
|
Portable archive schemas ship under `@run402/runtime-kernel/schemas/*`. Archive verification is offline and treats archives as untrusted input; it checks integrity and compatibility but does not make the archive trusted. Core import verifies before mutation and supports new local projects only in v1.
|
|
10
10
|
|
package/dist/apply.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"apply.d.ts","sourceRoot":"","sources":["../src/apply.ts"],"names":[],"mappings":"AACA,OAAO,EAQL,KAAK,aAAa,EAGlB,KAAK,oBAAoB,EAE1B,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EAEV,aAAa,EAGb,kBAAkB,EACnB,MAAM,YAAY,CAAC;AAoCpB,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,OAAO,CAAC;CACf;AAED,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,MAAM,EAAE,WAAW,GAAG,MAAM,GAAG,UAAU,CAAC;IAC1C,cAAc,CAAC,EAAE,iBAAiB,GAAG,oBAAoB,CAAC;IAC1D,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,qBAAa,mBAAoB,SAAQ,KAAK;IAGhC,QAAQ,CAAC,IAAI,EAAE,MAAM;IAFjC,QAAQ,CAAC,MAAM,OAAO;gBAED,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;CAInD;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,mBAAmB,GAAG;IAClE,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CACjB,CAKA;AAED,wBAAsB,eAAe,CACnC,KAAK,EAAE,kBAAkB,EACzB,KAAK,EAAE,oBAAoB,GAC1B,OAAO,CAAC,aAAa,CAAC,CAoCxB;AAED,wBAAsB,eAAe,CACnC,KAAK,EAAE,kBAAkB,EACzB,KAAK,EAAE,oBAAoB,GAC1B,OAAO,CAAC,qBAAqB,CAAC,CA4GhC;
|
|
1
|
+
{"version":3,"file":"apply.d.ts","sourceRoot":"","sources":["../src/apply.ts"],"names":[],"mappings":"AACA,OAAO,EAQL,KAAK,aAAa,EAGlB,KAAK,oBAAoB,EAE1B,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EAEV,aAAa,EAGb,kBAAkB,EACnB,MAAM,YAAY,CAAC;AAoCpB,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,OAAO,CAAC;CACf;AAED,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,MAAM,EAAE,WAAW,GAAG,MAAM,GAAG,UAAU,CAAC;IAC1C,cAAc,CAAC,EAAE,iBAAiB,GAAG,oBAAoB,CAAC;IAC1D,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,qBAAa,mBAAoB,SAAQ,KAAK;IAGhC,QAAQ,CAAC,IAAI,EAAE,MAAM;IAFjC,QAAQ,CAAC,MAAM,OAAO;gBAED,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;CAInD;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,mBAAmB,GAAG;IAClE,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CACjB,CAKA;AAED,wBAAsB,eAAe,CACnC,KAAK,EAAE,kBAAkB,EACzB,KAAK,EAAE,oBAAoB,GAC1B,OAAO,CAAC,aAAa,CAAC,CAoCxB;AAED,wBAAsB,eAAe,CACnC,KAAK,EAAE,kBAAkB,EACzB,KAAK,EAAE,oBAAoB,GAC1B,OAAO,CAAC,qBAAqB,CAAC,CA4GhC;AAygBD,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,aAAa,EAAE,KAAK,EAAE,UAAU,GAAG,IAAI,CAOjF;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAG1D;AAsBD,wBAAgB,qBAAqB,IAAI,oBAAoB,CAE5D"}
|
package/dist/apply.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { createHash } from "node:crypto";
|
|
2
2
|
import { canonicalizeJson, digestApplyRequest, digestMaterializedRelease, emptyPortableReleaseState, materializeRelease, parseReleaseSpec, } from "@run402/release";
|
|
3
3
|
import { AstroSsrUnsupportedFeatureError, DependencyInstallRejectedError, FunctionBundleValidationError, MissingRequiredSecretError, UnsupportedCapabilityError, } from "./errors.js";
|
|
4
|
-
import { CORE_ASTRO_SSR_FALLBACK_PATTERN, CORE_ASTRO_SSR_OUTPUT_CONTRACT_VERSION, CORE_FUNCTION_DEPENDENCY_MODE, CORE_FUNCTION_RESOURCE_DEFAULTS, CORE_FUNCTION_SCHEDULE_LIMIT_DEFAULTS, emptyFunctionApplyEffects, emptyCoreFunctionScheduleMetadata, functionMemoryBytes, isAstroSsrFunction, nextCoreCronRunIso, normalizeFunctionEntrypoint,
|
|
4
|
+
import { CORE_ASTRO_SSR_FALLBACK_PATTERN, CORE_ASTRO_SSR_OUTPUT_CONTRACT_VERSION, CORE_FUNCTION_DEPENDENCY_MODE, CORE_FUNCTION_RESOURCE_DEFAULTS, CORE_FUNCTION_SCHEDULE_LIMIT_DEFAULTS, emptyFunctionApplyEffects, emptyCoreFunctionScheduleMetadata, functionMemoryBytes, isAstroSsrFunction, nextCoreCronRunIso, normalizeFunctionEntrypoint, validateCoreFunctionScheduleTrigger, } from "./functions-runtime.js";
|
|
5
5
|
import { computeStorageInventoryRevision, normalizeSha256Hex, normalizeStorageContentType, normalizeStorageKey, normalizeStoragePrefix, normalizeStorageVisibility, StorageValidationError, } from "./storage.js";
|
|
6
6
|
import { validateProjectId } from "./projects.js";
|
|
7
7
|
export class ApplyInvariantError extends Error {
|
|
@@ -207,12 +207,11 @@ function validateFunctionSubset(spec, ports) {
|
|
|
207
207
|
validateCoreFunctionSpec(name, fn, ports);
|
|
208
208
|
if (fn.class === "ssr")
|
|
209
209
|
ssrCount += 1;
|
|
210
|
-
|
|
211
|
-
scheduledCount += 1;
|
|
210
|
+
scheduledCount += fn.triggers?.filter((trigger) => trigger.type === "schedule").length ?? 0;
|
|
212
211
|
}
|
|
213
212
|
const scheduleLimits = ports.scheduleLimits ?? CORE_FUNCTION_SCHEDULE_LIMIT_DEFAULTS;
|
|
214
213
|
if (scheduledCount > scheduleLimits.maxScheduledFunctionsPerProject) {
|
|
215
|
-
throw new FunctionBundleValidationError("schedule_limit_exceeded", `Core schedule limit exceeded: ${scheduledCount} scheduled
|
|
214
|
+
throw new FunctionBundleValidationError("schedule_limit_exceeded", `Core schedule trigger limit exceeded: ${scheduledCount} scheduled trigger(s), maximum is ${scheduleLimits.maxScheduledFunctionsPerProject}.`, {
|
|
216
215
|
scheduled_count: scheduledCount,
|
|
217
216
|
max_scheduled_functions_per_project: scheduleLimits.maxScheduledFunctionsPerProject,
|
|
218
217
|
});
|
|
@@ -249,17 +248,24 @@ function validateCoreFunctionSpec(name, fn, ports) {
|
|
|
249
248
|
dependency_mode: CORE_FUNCTION_DEPENDENCY_MODE,
|
|
250
249
|
});
|
|
251
250
|
}
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
251
|
+
if (fn.schedule !== undefined && fn.schedule !== null) {
|
|
252
|
+
throw new FunctionBundleValidationError("invalid_function_schedule", `Function ${name} must use functions.replace.${name}.triggers[] schedule entries; the standalone schedule field is not accepted by Run402 Core.`, {
|
|
253
|
+
function_name: name,
|
|
255
254
|
schedule: fn.schedule,
|
|
256
|
-
|
|
255
|
+
replacement: `functions.replace.${name}.triggers[]`,
|
|
257
256
|
});
|
|
258
257
|
}
|
|
258
|
+
try {
|
|
259
|
+
for (const trigger of fn.triggers ?? []) {
|
|
260
|
+
if (trigger.type === "schedule") {
|
|
261
|
+
validateCoreFunctionScheduleTrigger({ functionName: name, trigger, limits: ports.scheduleLimits });
|
|
262
|
+
}
|
|
263
|
+
}
|
|
264
|
+
}
|
|
259
265
|
catch (error) {
|
|
260
266
|
throw new FunctionBundleValidationError("invalid_function_schedule", error instanceof Error ? error.message : String(error), {
|
|
261
267
|
function_name: name,
|
|
262
|
-
|
|
268
|
+
triggers: fn.triggers ?? [],
|
|
263
269
|
});
|
|
264
270
|
}
|
|
265
271
|
if (fn.class === "ssr") {
|
|
@@ -361,11 +367,21 @@ function bundleMetadataFromSpec(name, spec, requireRole, requiredSecrets) {
|
|
|
361
367
|
memory_bytes: functionMemoryBytes({ memory_mb: spec.config?.memoryMb ?? 128 }),
|
|
362
368
|
require_auth: spec.requireAuth === true,
|
|
363
369
|
require_role: requireRole,
|
|
364
|
-
schedule:
|
|
365
|
-
schedule_meta:
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
370
|
+
schedule: null,
|
|
371
|
+
schedule_meta: null,
|
|
372
|
+
triggers: (spec.triggers ?? []).map((trigger) => {
|
|
373
|
+
if (trigger.type === "email") {
|
|
374
|
+
return { ...trigger };
|
|
375
|
+
}
|
|
376
|
+
const scheduleTrigger = validateCoreFunctionScheduleTrigger({ functionName: name, trigger });
|
|
377
|
+
return {
|
|
378
|
+
...scheduleTrigger,
|
|
379
|
+
schedule_meta: {
|
|
380
|
+
...emptyCoreFunctionScheduleMetadata(),
|
|
381
|
+
next_tick_at: nextCoreCronRunIso(scheduleTrigger.cron),
|
|
382
|
+
},
|
|
383
|
+
};
|
|
384
|
+
}),
|
|
369
385
|
class: spec.class ?? "standard",
|
|
370
386
|
capabilities: spec.capabilities ? [...spec.capabilities].sort() : [],
|
|
371
387
|
};
|
package/dist/apply.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"apply.js","sourceRoot":"","sources":["../src/apply.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"apply.js","sourceRoot":"","sources":["../src/apply.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
import type { FunctionScheduleTriggerSpec } from "@run402/release";
|
|
2
|
+
import type { CoreFunctionInvocationInput, CoreFunctionInvocationResult, CoreFunctionLogEntry } from "./functions-runtime.js";
|
|
3
|
+
export type CoreFunctionRunStatus = "scheduled" | "queued" | "running" | "retrying" | "blocked" | "succeeded" | "failed" | "cancelled" | "expired";
|
|
4
|
+
export interface CoreFunctionRunRetryPolicy {
|
|
5
|
+
preset?: "standard" | string;
|
|
6
|
+
max_attempts?: number;
|
|
7
|
+
min_delay_seconds?: number;
|
|
8
|
+
max_delay_seconds?: number;
|
|
9
|
+
}
|
|
10
|
+
export interface CoreFunctionRunCreateInput {
|
|
11
|
+
projectId: string;
|
|
12
|
+
functionName: string;
|
|
13
|
+
releaseId?: string | null;
|
|
14
|
+
eventType: string;
|
|
15
|
+
payload?: Record<string, unknown>;
|
|
16
|
+
idempotencyKey: string;
|
|
17
|
+
runAt?: string;
|
|
18
|
+
delaySeconds?: number;
|
|
19
|
+
expiresAt?: string;
|
|
20
|
+
retry?: CoreFunctionRunRetryPolicy;
|
|
21
|
+
source?: Record<string, unknown>;
|
|
22
|
+
}
|
|
23
|
+
export interface CoreFunctionRunAttempt {
|
|
24
|
+
attempt_id: string;
|
|
25
|
+
generation: number;
|
|
26
|
+
number: number;
|
|
27
|
+
status: "running" | "succeeded" | "failed";
|
|
28
|
+
lease_token: string;
|
|
29
|
+
started_at: string;
|
|
30
|
+
completed_at: string | null;
|
|
31
|
+
duration_ms: number | null;
|
|
32
|
+
response_status: number | null;
|
|
33
|
+
error: CoreFunctionRunError | null;
|
|
34
|
+
}
|
|
35
|
+
export interface CoreFunctionRunError {
|
|
36
|
+
code: string;
|
|
37
|
+
message: string;
|
|
38
|
+
retryable: boolean;
|
|
39
|
+
}
|
|
40
|
+
export interface CoreFunctionRun {
|
|
41
|
+
run_id: string;
|
|
42
|
+
project_id: string;
|
|
43
|
+
function_name: string;
|
|
44
|
+
release_id: string | null;
|
|
45
|
+
event_type: string;
|
|
46
|
+
payload: Record<string, unknown>;
|
|
47
|
+
idempotency_key: string;
|
|
48
|
+
status: CoreFunctionRunStatus;
|
|
49
|
+
terminal: boolean;
|
|
50
|
+
generation: number;
|
|
51
|
+
run_at: string;
|
|
52
|
+
expires_at: string | null;
|
|
53
|
+
source: Record<string, unknown>;
|
|
54
|
+
attempts: {
|
|
55
|
+
current: number;
|
|
56
|
+
max: number;
|
|
57
|
+
total: number;
|
|
58
|
+
next_attempt_at: string | null;
|
|
59
|
+
};
|
|
60
|
+
last_attempt: CoreFunctionRunAttempt | null;
|
|
61
|
+
last_error: CoreFunctionRunError | null;
|
|
62
|
+
created_at: string;
|
|
63
|
+
updated_at: string;
|
|
64
|
+
completed_at: string | null;
|
|
65
|
+
}
|
|
66
|
+
export interface CoreFunctionRunServiceOptions {
|
|
67
|
+
invoke(input: CoreFunctionInvocationInput): Promise<CoreFunctionInvocationResult>;
|
|
68
|
+
listLogs?(input: {
|
|
69
|
+
projectId: string;
|
|
70
|
+
functionName?: string;
|
|
71
|
+
requestId?: string;
|
|
72
|
+
since?: string;
|
|
73
|
+
tail?: number;
|
|
74
|
+
}): Promise<CoreFunctionLogEntry[]>;
|
|
75
|
+
now?: () => Date;
|
|
76
|
+
limits?: Partial<{
|
|
77
|
+
maxAttempts: number;
|
|
78
|
+
maxDelaySeconds: number;
|
|
79
|
+
leaseMs: number;
|
|
80
|
+
}>;
|
|
81
|
+
}
|
|
82
|
+
export declare class CoreFunctionRunService {
|
|
83
|
+
#private;
|
|
84
|
+
constructor(options: CoreFunctionRunServiceOptions);
|
|
85
|
+
create(input: CoreFunctionRunCreateInput): CoreFunctionRun;
|
|
86
|
+
createFromScheduleTrigger(input: {
|
|
87
|
+
projectId: string;
|
|
88
|
+
functionName: string;
|
|
89
|
+
releaseId?: string | null;
|
|
90
|
+
trigger: FunctionScheduleTriggerSpec;
|
|
91
|
+
scheduledAt: string;
|
|
92
|
+
generation?: number;
|
|
93
|
+
}): CoreFunctionRun;
|
|
94
|
+
get(projectId: string, runId: string): CoreFunctionRun | null;
|
|
95
|
+
list(projectId: string, functionName?: string): CoreFunctionRun[];
|
|
96
|
+
cancel(projectId: string, runId: string): CoreFunctionRun;
|
|
97
|
+
redrive(projectId: string, runId: string, retry?: CoreFunctionRunRetryPolicy): CoreFunctionRun;
|
|
98
|
+
logs(projectId: string, runId: string, options?: {
|
|
99
|
+
attemptId?: string;
|
|
100
|
+
tail?: number;
|
|
101
|
+
since?: string;
|
|
102
|
+
}): Promise<CoreFunctionLogEntry[]>;
|
|
103
|
+
processOnce(): Promise<CoreFunctionRun | null>;
|
|
104
|
+
start(intervalMs?: number): void;
|
|
105
|
+
stop(): void;
|
|
106
|
+
}
|
|
107
|
+
//# sourceMappingURL=function-runs.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"function-runs.d.ts","sourceRoot":"","sources":["../src/function-runs.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,375 @@
|
|
|
1
|
+
import { randomUUID } from "node:crypto";
|
|
2
|
+
import { Buffer } from "node:buffer";
|
|
3
|
+
const TERMINAL_STATUSES = new Set([
|
|
4
|
+
"succeeded",
|
|
5
|
+
"failed",
|
|
6
|
+
"cancelled",
|
|
7
|
+
"expired",
|
|
8
|
+
]);
|
|
9
|
+
const DEFAULT_LIMITS = {
|
|
10
|
+
maxAttempts: 5,
|
|
11
|
+
maxDelaySeconds: 90 * 24 * 60 * 60,
|
|
12
|
+
leaseMs: 60_000,
|
|
13
|
+
};
|
|
14
|
+
function newId(prefix) {
|
|
15
|
+
return `${prefix}_${randomUUID().replace(/-/g, "").slice(0, 24)}`;
|
|
16
|
+
}
|
|
17
|
+
function iso(date) {
|
|
18
|
+
return date.toISOString();
|
|
19
|
+
}
|
|
20
|
+
function parseIso(value, field) {
|
|
21
|
+
const date = new Date(value);
|
|
22
|
+
if (!Number.isFinite(date.getTime())) {
|
|
23
|
+
throw new Error(`${field} must be an ISO-8601 timestamp.`);
|
|
24
|
+
}
|
|
25
|
+
return date;
|
|
26
|
+
}
|
|
27
|
+
function terminal(status) {
|
|
28
|
+
return TERMINAL_STATUSES.has(status);
|
|
29
|
+
}
|
|
30
|
+
function boundedError(code, message, retryable) {
|
|
31
|
+
return {
|
|
32
|
+
code,
|
|
33
|
+
message: message.length > 1000 ? `${message.slice(0, 997)}...` : message,
|
|
34
|
+
retryable,
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
function retryableStatus(status) {
|
|
38
|
+
return status === 429 || status >= 500;
|
|
39
|
+
}
|
|
40
|
+
function retryDelayMs(run) {
|
|
41
|
+
const retry = runRetry(run);
|
|
42
|
+
const minSeconds = retry.min_delay_seconds ?? 30;
|
|
43
|
+
const maxSeconds = retry.max_delay_seconds ?? 21_600;
|
|
44
|
+
const attempt = Math.max(1, run.attempts.current);
|
|
45
|
+
return Math.min(maxSeconds, minSeconds * 2 ** Math.max(0, attempt - 1)) * 1000;
|
|
46
|
+
}
|
|
47
|
+
function runRetry(run) {
|
|
48
|
+
return run.retry_policy ?? { preset: "standard" };
|
|
49
|
+
}
|
|
50
|
+
function cloneRun(run) {
|
|
51
|
+
return JSON.parse(JSON.stringify(run));
|
|
52
|
+
}
|
|
53
|
+
export class CoreFunctionRunService {
|
|
54
|
+
#runs = new Map();
|
|
55
|
+
#idempotency = new Map();
|
|
56
|
+
#attempts = new Map();
|
|
57
|
+
#invoke;
|
|
58
|
+
#listLogs;
|
|
59
|
+
#now;
|
|
60
|
+
#limits;
|
|
61
|
+
#timer = null;
|
|
62
|
+
#stopping = false;
|
|
63
|
+
constructor(options) {
|
|
64
|
+
this.#invoke = options.invoke;
|
|
65
|
+
this.#listLogs = options.listLogs;
|
|
66
|
+
this.#now = options.now ?? (() => new Date());
|
|
67
|
+
this.#limits = { ...DEFAULT_LIMITS, ...options.limits };
|
|
68
|
+
}
|
|
69
|
+
create(input) {
|
|
70
|
+
if (!input.eventType)
|
|
71
|
+
throw new Error("eventType is required.");
|
|
72
|
+
if (!input.idempotencyKey)
|
|
73
|
+
throw new Error("idempotencyKey is required.");
|
|
74
|
+
if (input.runAt && input.delaySeconds !== undefined) {
|
|
75
|
+
throw new Error("runAt and delaySeconds are mutually exclusive.");
|
|
76
|
+
}
|
|
77
|
+
const now = this.#now();
|
|
78
|
+
const runAt = input.runAt
|
|
79
|
+
? parseIso(input.runAt, "runAt")
|
|
80
|
+
: new Date(now.getTime() + (input.delaySeconds ?? 0) * 1000);
|
|
81
|
+
const expiresAt = input.expiresAt ? parseIso(input.expiresAt, "expiresAt") : null;
|
|
82
|
+
if (expiresAt && expiresAt.getTime() <= runAt.getTime()) {
|
|
83
|
+
throw new Error("expiresAt must be after runAt.");
|
|
84
|
+
}
|
|
85
|
+
if (runAt.getTime() - now.getTime() > this.#limits.maxDelaySeconds * 1000) {
|
|
86
|
+
throw new Error(`Core function run delay exceeds host limit of ${this.#limits.maxDelaySeconds} seconds.`);
|
|
87
|
+
}
|
|
88
|
+
const idemKey = `${input.projectId}:${input.functionName}:${input.idempotencyKey}`;
|
|
89
|
+
const existingId = this.#idempotency.get(idemKey);
|
|
90
|
+
if (existingId) {
|
|
91
|
+
const existing = this.#runs.get(existingId);
|
|
92
|
+
if (existing)
|
|
93
|
+
return cloneRun(existing);
|
|
94
|
+
}
|
|
95
|
+
const maxAttempts = Math.min(input.retry?.max_attempts ?? 5, this.#limits.maxAttempts);
|
|
96
|
+
const run = {
|
|
97
|
+
run_id: newId("fnrun"),
|
|
98
|
+
project_id: input.projectId,
|
|
99
|
+
function_name: input.functionName,
|
|
100
|
+
release_id: input.releaseId ?? null,
|
|
101
|
+
event_type: input.eventType,
|
|
102
|
+
payload: input.payload ?? {},
|
|
103
|
+
idempotency_key: input.idempotencyKey,
|
|
104
|
+
status: runAt.getTime() > now.getTime() ? "scheduled" : "queued",
|
|
105
|
+
terminal: false,
|
|
106
|
+
generation: 1,
|
|
107
|
+
run_at: iso(runAt),
|
|
108
|
+
expires_at: expiresAt ? iso(expiresAt) : null,
|
|
109
|
+
source: input.source ?? { type: "api" },
|
|
110
|
+
attempts: {
|
|
111
|
+
current: 0,
|
|
112
|
+
max: maxAttempts,
|
|
113
|
+
total: 0,
|
|
114
|
+
next_attempt_at: iso(runAt),
|
|
115
|
+
},
|
|
116
|
+
last_attempt: null,
|
|
117
|
+
last_error: null,
|
|
118
|
+
created_at: iso(now),
|
|
119
|
+
updated_at: iso(now),
|
|
120
|
+
completed_at: null,
|
|
121
|
+
retry_policy: { preset: "standard", ...input.retry, max_attempts: maxAttempts },
|
|
122
|
+
};
|
|
123
|
+
this.#runs.set(run.run_id, run);
|
|
124
|
+
this.#idempotency.set(idemKey, run.run_id);
|
|
125
|
+
this.#attempts.set(run.run_id, []);
|
|
126
|
+
return cloneRun(run);
|
|
127
|
+
}
|
|
128
|
+
createFromScheduleTrigger(input) {
|
|
129
|
+
return this.create({
|
|
130
|
+
projectId: input.projectId,
|
|
131
|
+
functionName: input.functionName,
|
|
132
|
+
releaseId: input.releaseId,
|
|
133
|
+
eventType: input.trigger.run.event_type,
|
|
134
|
+
payload: input.trigger.run.payload ?? {},
|
|
135
|
+
idempotencyKey: `schedule:${input.projectId}:${input.functionName}:${input.generation ?? 1}:${input.trigger.id}:${input.scheduledAt}`,
|
|
136
|
+
retry: input.trigger.run.retry,
|
|
137
|
+
expiresAt: input.trigger.run.expires_after_seconds
|
|
138
|
+
? iso(new Date(parseIso(input.scheduledAt, "scheduledAt").getTime() + input.trigger.run.expires_after_seconds * 1000))
|
|
139
|
+
: undefined,
|
|
140
|
+
source: {
|
|
141
|
+
type: "schedule",
|
|
142
|
+
trigger_id: input.trigger.id,
|
|
143
|
+
scheduled_at: input.scheduledAt,
|
|
144
|
+
generation: input.generation ?? 1,
|
|
145
|
+
},
|
|
146
|
+
});
|
|
147
|
+
}
|
|
148
|
+
get(projectId, runId) {
|
|
149
|
+
const run = this.#runs.get(runId);
|
|
150
|
+
return run && run.project_id === projectId ? cloneRun(run) : null;
|
|
151
|
+
}
|
|
152
|
+
list(projectId, functionName) {
|
|
153
|
+
return [...this.#runs.values()]
|
|
154
|
+
.filter((run) => run.project_id === projectId && (!functionName || run.function_name === functionName))
|
|
155
|
+
.sort((a, b) => a.created_at.localeCompare(b.created_at) || a.run_id.localeCompare(b.run_id))
|
|
156
|
+
.map(cloneRun);
|
|
157
|
+
}
|
|
158
|
+
cancel(projectId, runId) {
|
|
159
|
+
const run = this.#requireRun(projectId, runId);
|
|
160
|
+
if (!terminal(run.status)) {
|
|
161
|
+
const now = iso(this.#now());
|
|
162
|
+
run.status = "cancelled";
|
|
163
|
+
run.terminal = true;
|
|
164
|
+
run.completed_at = now;
|
|
165
|
+
run.updated_at = now;
|
|
166
|
+
}
|
|
167
|
+
return cloneRun(run);
|
|
168
|
+
}
|
|
169
|
+
redrive(projectId, runId, retry) {
|
|
170
|
+
const run = this.#requireRun(projectId, runId);
|
|
171
|
+
if (run.status !== "failed" && run.status !== "cancelled" && run.status !== "expired") {
|
|
172
|
+
throw new Error("Only failed, cancelled, or expired Core function runs can be redriven.");
|
|
173
|
+
}
|
|
174
|
+
const now = this.#now();
|
|
175
|
+
run.status = new Date(run.run_at).getTime() > now.getTime() ? "scheduled" : "queued";
|
|
176
|
+
run.terminal = false;
|
|
177
|
+
run.generation += 1;
|
|
178
|
+
run.attempts.current = 0;
|
|
179
|
+
run.attempts.next_attempt_at = new Date(Math.max(new Date(run.run_at).getTime(), now.getTime())).toISOString();
|
|
180
|
+
run.completed_at = null;
|
|
181
|
+
run.updated_at = iso(now);
|
|
182
|
+
if (retry) {
|
|
183
|
+
run.retry_policy = {
|
|
184
|
+
preset: "standard",
|
|
185
|
+
...retry,
|
|
186
|
+
max_attempts: Math.min(retry.max_attempts ?? run.attempts.max, this.#limits.maxAttempts),
|
|
187
|
+
};
|
|
188
|
+
run.attempts.max = run.retry_policy.max_attempts ?? run.attempts.max;
|
|
189
|
+
}
|
|
190
|
+
return cloneRun(run);
|
|
191
|
+
}
|
|
192
|
+
async logs(projectId, runId, options = {}) {
|
|
193
|
+
const run = this.#requireRun(projectId, runId);
|
|
194
|
+
return this.#listLogs?.({
|
|
195
|
+
projectId,
|
|
196
|
+
functionName: run.function_name,
|
|
197
|
+
requestId: options.attemptId ?? run.run_id,
|
|
198
|
+
tail: options.tail,
|
|
199
|
+
since: options.since,
|
|
200
|
+
}) ?? [];
|
|
201
|
+
}
|
|
202
|
+
async processOnce() {
|
|
203
|
+
const now = this.#now();
|
|
204
|
+
this.#expireAndRecover(now);
|
|
205
|
+
const run = [...this.#runs.values()]
|
|
206
|
+
.filter((candidate) => (candidate.status === "scheduled" || candidate.status === "queued" || candidate.status === "retrying") &&
|
|
207
|
+
new Date(candidate.run_at).getTime() <= now.getTime() &&
|
|
208
|
+
(!candidate.attempts.next_attempt_at || new Date(candidate.attempts.next_attempt_at).getTime() <= now.getTime()))
|
|
209
|
+
.sort((a, b) => (a.attempts.next_attempt_at ?? a.run_at).localeCompare(b.attempts.next_attempt_at ?? b.run_at))[0];
|
|
210
|
+
if (!run)
|
|
211
|
+
return null;
|
|
212
|
+
const attempt = this.#claim(run, now);
|
|
213
|
+
try {
|
|
214
|
+
const result = await this.#invoke(this.#invocationInput(run, attempt));
|
|
215
|
+
this.#finalize(run, attempt, result.response.status, null);
|
|
216
|
+
}
|
|
217
|
+
catch (error) {
|
|
218
|
+
this.#finalize(run, attempt, 500, boundedError("CORE_FUNCTION_RUN_PLATFORM_ERROR", error instanceof Error ? error.message : String(error), true));
|
|
219
|
+
}
|
|
220
|
+
return cloneRun(run);
|
|
221
|
+
}
|
|
222
|
+
start(intervalMs = 1000) {
|
|
223
|
+
if (this.#timer)
|
|
224
|
+
return;
|
|
225
|
+
this.#stopping = false;
|
|
226
|
+
this.#timer = setInterval(() => {
|
|
227
|
+
if (!this.#stopping)
|
|
228
|
+
void this.processOnce();
|
|
229
|
+
}, intervalMs);
|
|
230
|
+
}
|
|
231
|
+
stop() {
|
|
232
|
+
this.#stopping = true;
|
|
233
|
+
if (this.#timer) {
|
|
234
|
+
clearInterval(this.#timer);
|
|
235
|
+
this.#timer = null;
|
|
236
|
+
}
|
|
237
|
+
}
|
|
238
|
+
#requireRun(projectId, runId) {
|
|
239
|
+
const run = this.#runs.get(runId);
|
|
240
|
+
if (!run || run.project_id !== projectId)
|
|
241
|
+
throw new Error("Core function run not found.");
|
|
242
|
+
return run;
|
|
243
|
+
}
|
|
244
|
+
#claim(run, now) {
|
|
245
|
+
const attempt = {
|
|
246
|
+
attempt_id: newId("fnatt"),
|
|
247
|
+
generation: run.generation,
|
|
248
|
+
number: run.attempts.current + 1,
|
|
249
|
+
status: "running",
|
|
250
|
+
lease_token: randomUUID(),
|
|
251
|
+
started_at: iso(now),
|
|
252
|
+
completed_at: null,
|
|
253
|
+
duration_ms: null,
|
|
254
|
+
response_status: null,
|
|
255
|
+
error: null,
|
|
256
|
+
};
|
|
257
|
+
run.status = "running";
|
|
258
|
+
run.attempts.current += 1;
|
|
259
|
+
run.attempts.total += 1;
|
|
260
|
+
run.last_attempt = attempt;
|
|
261
|
+
run.updated_at = iso(now);
|
|
262
|
+
run.lease_expires_at = iso(new Date(now.getTime() + this.#limits.leaseMs));
|
|
263
|
+
this.#attempts.get(run.run_id)?.push(attempt);
|
|
264
|
+
return attempt;
|
|
265
|
+
}
|
|
266
|
+
#finalize(run, attempt, status, error) {
|
|
267
|
+
const now = this.#now();
|
|
268
|
+
const retryable = error?.retryable ?? retryableStatus(status);
|
|
269
|
+
const attemptsRemain = run.attempts.current < run.attempts.max;
|
|
270
|
+
attempt.status = status >= 200 && status < 300 && !error ? "succeeded" : "failed";
|
|
271
|
+
attempt.completed_at = iso(now);
|
|
272
|
+
attempt.duration_ms = now.getTime() - new Date(attempt.started_at).getTime();
|
|
273
|
+
attempt.response_status = status;
|
|
274
|
+
attempt.error = error ?? (attempt.status === "failed"
|
|
275
|
+
? boundedError(`CORE_FUNCTION_RUN_HTTP_${status}`, `Core function run attempt returned HTTP ${status}.`, retryable)
|
|
276
|
+
: null);
|
|
277
|
+
run.last_attempt = attempt;
|
|
278
|
+
run.last_error = attempt.error;
|
|
279
|
+
run.updated_at = iso(now);
|
|
280
|
+
delete run.lease_expires_at;
|
|
281
|
+
if (attempt.status === "succeeded") {
|
|
282
|
+
run.status = "succeeded";
|
|
283
|
+
run.terminal = true;
|
|
284
|
+
run.completed_at = iso(now);
|
|
285
|
+
run.attempts.next_attempt_at = null;
|
|
286
|
+
return;
|
|
287
|
+
}
|
|
288
|
+
if (retryable && attemptsRemain) {
|
|
289
|
+
run.status = "retrying";
|
|
290
|
+
run.terminal = false;
|
|
291
|
+
run.attempts.next_attempt_at = iso(new Date(now.getTime() + retryDelayMs(run)));
|
|
292
|
+
return;
|
|
293
|
+
}
|
|
294
|
+
run.status = "failed";
|
|
295
|
+
run.terminal = true;
|
|
296
|
+
run.completed_at = iso(now);
|
|
297
|
+
run.attempts.next_attempt_at = null;
|
|
298
|
+
}
|
|
299
|
+
#expireAndRecover(now) {
|
|
300
|
+
for (const run of this.#runs.values()) {
|
|
301
|
+
if (!terminal(run.status) && run.expires_at && new Date(run.expires_at).getTime() <= now.getTime()) {
|
|
302
|
+
run.status = "expired";
|
|
303
|
+
run.terminal = true;
|
|
304
|
+
run.completed_at = iso(now);
|
|
305
|
+
run.updated_at = iso(now);
|
|
306
|
+
run.last_error = boundedError("CORE_FUNCTION_RUN_EXPIRED", "Core function run expired before execution.", false);
|
|
307
|
+
continue;
|
|
308
|
+
}
|
|
309
|
+
const leaseExpiresAt = run.lease_expires_at;
|
|
310
|
+
if (run.status === "running" && leaseExpiresAt && new Date(leaseExpiresAt).getTime() <= now.getTime()) {
|
|
311
|
+
run.status = run.attempts.current < run.attempts.max ? "retrying" : "failed";
|
|
312
|
+
run.terminal = run.status === "failed";
|
|
313
|
+
run.attempts.next_attempt_at = run.status === "retrying" ? iso(now) : null;
|
|
314
|
+
run.completed_at = run.status === "failed" ? iso(now) : null;
|
|
315
|
+
run.updated_at = iso(now);
|
|
316
|
+
run.last_error = boundedError("CORE_FUNCTION_RUN_LEASE_EXPIRED", "Core function run lease expired before finalization.", run.status === "retrying");
|
|
317
|
+
delete run.lease_expires_at;
|
|
318
|
+
}
|
|
319
|
+
}
|
|
320
|
+
}
|
|
321
|
+
#invocationInput(run, attempt) {
|
|
322
|
+
const body = Buffer.from(JSON.stringify({
|
|
323
|
+
trigger: "function_run",
|
|
324
|
+
run_id: run.run_id,
|
|
325
|
+
generation: run.generation,
|
|
326
|
+
event_type: run.event_type,
|
|
327
|
+
idempotency_key: run.idempotency_key,
|
|
328
|
+
run_at: run.run_at,
|
|
329
|
+
attempt: {
|
|
330
|
+
attempt_id: attempt.attempt_id,
|
|
331
|
+
number: attempt.number,
|
|
332
|
+
max: run.attempts.max,
|
|
333
|
+
},
|
|
334
|
+
source: run.source,
|
|
335
|
+
payload: run.payload,
|
|
336
|
+
}), "utf8");
|
|
337
|
+
return {
|
|
338
|
+
projectId: run.project_id,
|
|
339
|
+
releaseId: run.release_id,
|
|
340
|
+
functionName: run.function_name,
|
|
341
|
+
invocationKind: "function_run",
|
|
342
|
+
requestId: run.run_id,
|
|
343
|
+
request: {
|
|
344
|
+
version: "run402.routed_http.v1",
|
|
345
|
+
method: "POST",
|
|
346
|
+
url: `run402://function-runs/${run.function_name}`,
|
|
347
|
+
path: `/functions/v1/${run.function_name}`,
|
|
348
|
+
rawPath: `/functions/v1/${run.function_name}`,
|
|
349
|
+
rawQuery: "",
|
|
350
|
+
headers: [
|
|
351
|
+
["content-type", "application/json"],
|
|
352
|
+
["x-run402-trigger", "function_run"],
|
|
353
|
+
["x-run402-run-id", run.run_id],
|
|
354
|
+
["x-run402-request-id", run.run_id],
|
|
355
|
+
["x-run402-attempt-id", attempt.attempt_id],
|
|
356
|
+
],
|
|
357
|
+
cookies: { raw: null },
|
|
358
|
+
body: { encoding: "base64", data: body.toString("base64"), size: body.byteLength },
|
|
359
|
+
context: {
|
|
360
|
+
source: "route",
|
|
361
|
+
projectId: run.project_id,
|
|
362
|
+
releaseId: run.release_id,
|
|
363
|
+
deploymentId: null,
|
|
364
|
+
host: "localhost",
|
|
365
|
+
proto: "http",
|
|
366
|
+
routePattern: `/functions/v1/${run.function_name}`,
|
|
367
|
+
routeKind: "exact",
|
|
368
|
+
routeTarget: { type: "function", name: run.function_name },
|
|
369
|
+
requestId: run.run_id,
|
|
370
|
+
},
|
|
371
|
+
},
|
|
372
|
+
};
|
|
373
|
+
}
|
|
374
|
+
}
|
|
375
|
+
//# sourceMappingURL=function-runs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"function-runs.js","sourceRoot":"","sources":["../src/function-runs.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { RoutedHttpRequestV1, RoutedHttpResponseV1 } from "@run402/functions";
|
|
2
|
-
import type { ContentRefHex, FunctionSpec, HttpMethod, PortableFunctionEntry, RoleGateSpec, RouteEntry } from "@run402/release";
|
|
2
|
+
import type { ContentRefHex, FunctionEmailTriggerSpec, FunctionSpec, FunctionScheduleTriggerSpec, HttpMethod, PortableFunctionEntry, RoleGateSpec, RouteEntry } from "@run402/release";
|
|
3
3
|
export declare const CORE_FUNCTION_RUNTIME_MATURITY: "self_hosted_core";
|
|
4
4
|
export declare const CORE_FUNCTION_SECURITY_PROFILE: "trusted_local_code";
|
|
5
5
|
export declare const CORE_FUNCTION_DEFAULT_EXECUTOR: "docker_compose_worker";
|
|
@@ -83,12 +83,21 @@ export interface CoreFunctionScheduleLimits {
|
|
|
83
83
|
maxConcurrentScheduledInvocationsPerProject: number;
|
|
84
84
|
}
|
|
85
85
|
export interface CoreFunctionScheduleMetadata {
|
|
86
|
-
|
|
87
|
-
|
|
86
|
+
last_enqueued_at: string | null;
|
|
87
|
+
last_run_id: string | null;
|
|
88
|
+
last_run_status: string | null;
|
|
88
89
|
run_count: number;
|
|
89
90
|
last_error: string | null;
|
|
90
|
-
|
|
91
|
+
next_tick_at: string | null;
|
|
92
|
+
/** Legacy Core gateway schedule fields retained while gateway storage migrates to trigger metadata. */
|
|
93
|
+
last_run_at?: string | null;
|
|
94
|
+
last_status?: number | string | null;
|
|
95
|
+
next_run_at?: string | null;
|
|
91
96
|
}
|
|
97
|
+
export interface CoreFunctionScheduleTriggerMetadata extends FunctionScheduleTriggerSpec {
|
|
98
|
+
schedule_meta: CoreFunctionScheduleMetadata;
|
|
99
|
+
}
|
|
100
|
+
export type CoreFunctionTriggerMetadata = CoreFunctionScheduleTriggerMetadata | FunctionEmailTriggerSpec;
|
|
92
101
|
export interface CoreAstroSsrRuntimeCapability {
|
|
93
102
|
capability: "core-astro-ssr";
|
|
94
103
|
status: "supported";
|
|
@@ -134,6 +143,7 @@ export interface CoreFunctionBundleMetadata {
|
|
|
134
143
|
require_role: RoleGateSpec | null;
|
|
135
144
|
schedule: string | null;
|
|
136
145
|
schedule_meta: CoreFunctionScheduleMetadata | null;
|
|
146
|
+
triggers?: CoreFunctionTriggerMetadata[];
|
|
137
147
|
class: "standard" | "ssr";
|
|
138
148
|
capabilities: string[];
|
|
139
149
|
}
|
|
@@ -160,7 +170,7 @@ export interface CoreFunctionInvocationInput {
|
|
|
160
170
|
projectId: string;
|
|
161
171
|
releaseId: string | null;
|
|
162
172
|
functionName: string;
|
|
163
|
-
invocationKind: "routed_http" | "direct" | "scheduled";
|
|
173
|
+
invocationKind: "routed_http" | "direct" | "scheduled" | "function_run";
|
|
164
174
|
requestId: string;
|
|
165
175
|
actor?: CoreFunctionActorContext | null;
|
|
166
176
|
request?: RoutedHttpRequestV1;
|
|
@@ -220,4 +230,9 @@ export declare function validateCoreFunctionSchedule(input: {
|
|
|
220
230
|
schedule: string | null | undefined;
|
|
221
231
|
limits?: CoreFunctionScheduleLimits;
|
|
222
232
|
}): string | null;
|
|
233
|
+
export declare function validateCoreFunctionScheduleTrigger(input: {
|
|
234
|
+
functionName: string;
|
|
235
|
+
trigger: FunctionScheduleTriggerSpec;
|
|
236
|
+
limits?: CoreFunctionScheduleLimits;
|
|
237
|
+
}): FunctionScheduleTriggerSpec;
|
|
223
238
|
//# sourceMappingURL=functions-runtime.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"functions-runtime.d.ts","sourceRoot":"","sources":["../src/functions-runtime.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,mBAAmB,EACnB,oBAAoB,EACrB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EACV,aAAa,EACb,YAAY,EACZ,UAAU,EACV,qBAAqB,EACrB,YAAY,EACZ,UAAU,EACX,MAAM,iBAAiB,CAAC;AAGzB,eAAO,MAAM,8BAA8B,EAAG,kBAA2B,CAAC;AAC1E,eAAO,MAAM,8BAA8B,EAAG,oBAA6B,CAAC;AAC5E,eAAO,MAAM,8BAA8B,EAAG,uBAAgC,CAAC;AAC/E,eAAO,MAAM,6BAA6B,EAAG,6BAAsC,CAAC;AACpF,eAAO,MAAM,sCAAsC,EAAG,cAAuB,CAAC;AAC9E,eAAO,MAAM,+BAA+B,EAAG,IAAa,CAAC;AAE7D,eAAO,MAAM,+BAA+B;;;;;;;;;;;;;;;CAelC,CAAC;AAEX,eAAO,MAAM,+BAA+B;;;;;;CAMlC,CAAC;AAEX,eAAO,MAAM,qCAAqC;;;;;CAKxC,CAAC;AAEX,eAAO,MAAM,8BAA8B,sbAmBjC,CAAC;AAEX,eAAO,MAAM,+BAA+B,8QAclC,CAAC;AAEX,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,EAAE,OAAO,8BAA8B,CAAC;IAChD,gBAAgB,EAAE,OAAO,8BAA8B,CAAC;IACxD,sBAAsB,EAAE,KAAK,CAAC;IAC9B,gBAAgB,EAAE,OAAO,8BAA8B,CAAC;IACxD,gCAAgC,EAAE,KAAK,CAAC;IACxC,kBAAkB,EAAE,oBAAoB,CAAC;IACzC,0BAA0B,EAAE,KAAK,CAAC;IAClC,kCAAkC,EAAE,KAAK,CAAC;IAC1C,iBAAiB,EAAE,uBAAuB,CAAC;IAC3C,cAAc,EAAE,0BAA0B,CAAC;CAC5C;AAED,eAAO,MAAM,+BAA+B,EAAE,4BAW7C,CAAC;AAEF,MAAM,WAAW,4BAA4B;IAC3C,IAAI,EAAE,OAAO,6BAA6B,CAAC;IAC3C,qBAAqB,EAAE,KAAK,CAAC;IAC7B,iBAAiB,EAAE,CAAC,mBAAmB,CAAC,CAAC;IACzC,8BAA8B,EAAE,SAAS,MAAM,EAAE,CAAC;IAClD,+BAA+B,EAAE,SAAS,MAAM,EAAE,CAAC;CACpD;AAED,eAAO,MAAM,+BAA+B,EAAE,4BA0B7C,CAAC;AAEF,MAAM,WAAW,6BAA6B;IAC5C,UAAU,EAAE,gBAAgB,CAAC;IAC7B,MAAM,EAAE,WAAW,CAAC;IACpB,QAAQ,EAAE,OAAO,8BAA8B,CAAC;IAChD,gBAAgB,EAAE,OAAO,8BAA8B,CAAC;IACxD,sBAAsB,EAAE,KAAK,CAAC;IAC9B,gBAAgB,EAAE,OAAO,8BAA8B,CAAC;IACxD,iBAAiB,EAAE,4BAA4B,CAAC;IAChD,iBAAiB,EAAE,OAAO,+BAA+B,CAAC;IAC1D,eAAe,EAAE,0BAA0B,CAAC;IAC5C,iBAAiB,EAAE,OAAO,+BAA+B,CAAC;IAC1D,gBAAgB,EAAE;QAChB,OAAO,EAAE,QAAQ,CAAC;QAClB,QAAQ,EAAE,uBAAuB,CAAC;QAClC,QAAQ,EAAE,uBAAuB,CAAC;KACnC,CAAC;IACF,gBAAgB,EAAE,KAAK,CAAC,CAAC,OAAO,8BAA8B,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;CAC1E;AAED,MAAM,WAAW,0BAA0B;IACzC,OAAO,EAAE,OAAO,CAAC;IACjB,+BAA+B,EAAE,MAAM,CAAC;IACxC,kBAAkB,EAAE,MAAM,CAAC;IAC3B,2CAA2C,EAAE,MAAM,CAAC;CACrD;AAED,MAAM,WAAW,4BAA4B;IAC3C,
|
|
1
|
+
{"version":3,"file":"functions-runtime.d.ts","sourceRoot":"","sources":["../src/functions-runtime.ts"],"names":[],"mappings":"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"}
|
|
@@ -181,10 +181,14 @@ export function functionMemoryBytes(entry) {
|
|
|
181
181
|
}
|
|
182
182
|
export function emptyCoreFunctionScheduleMetadata() {
|
|
183
183
|
return {
|
|
184
|
-
|
|
185
|
-
|
|
184
|
+
last_enqueued_at: null,
|
|
185
|
+
last_run_id: null,
|
|
186
|
+
last_run_status: null,
|
|
186
187
|
run_count: 0,
|
|
187
188
|
last_error: null,
|
|
189
|
+
next_tick_at: null,
|
|
190
|
+
last_run_at: null,
|
|
191
|
+
last_status: null,
|
|
188
192
|
next_run_at: null,
|
|
189
193
|
};
|
|
190
194
|
}
|
|
@@ -243,6 +247,44 @@ export function validateCoreFunctionSchedule(input) {
|
|
|
243
247
|
}
|
|
244
248
|
return schedule;
|
|
245
249
|
}
|
|
250
|
+
export function validateCoreFunctionScheduleTrigger(input) {
|
|
251
|
+
const limits = input.limits ?? CORE_FUNCTION_SCHEDULE_LIMIT_DEFAULTS;
|
|
252
|
+
if (!limits.enabled) {
|
|
253
|
+
throw new Error(`Function ${input.functionName} schedules are disabled in this Core gateway.`);
|
|
254
|
+
}
|
|
255
|
+
if (!input.trigger.id) {
|
|
256
|
+
throw new Error(`Function ${input.functionName} schedule trigger id is required.`);
|
|
257
|
+
}
|
|
258
|
+
if (input.trigger.type !== "schedule") {
|
|
259
|
+
throw new Error(`Function ${input.functionName} trigger ${input.trigger.id} must use type schedule.`);
|
|
260
|
+
}
|
|
261
|
+
if (!isValidCoreCronExpression(input.trigger.cron)) {
|
|
262
|
+
throw new Error(`Function ${input.functionName} trigger ${input.trigger.id} cron must be a valid 5-field cron expression.`);
|
|
263
|
+
}
|
|
264
|
+
const interval = coreCronIntervalMinutes(input.trigger.cron);
|
|
265
|
+
if (interval < limits.minIntervalMinutes) {
|
|
266
|
+
throw new Error(`Function ${input.functionName} trigger ${input.trigger.id} runs every ${interval} minute(s), below the Core minimum of ${limits.minIntervalMinutes} minute(s).`);
|
|
267
|
+
}
|
|
268
|
+
if (!input.trigger.run?.event_type) {
|
|
269
|
+
throw new Error(`Function ${input.functionName} trigger ${input.trigger.id} run.event_type is required.`);
|
|
270
|
+
}
|
|
271
|
+
return {
|
|
272
|
+
id: input.trigger.id,
|
|
273
|
+
type: "schedule",
|
|
274
|
+
cron: input.trigger.cron,
|
|
275
|
+
timezone: input.trigger.timezone ?? "UTC",
|
|
276
|
+
misfire_policy: input.trigger.misfire_policy ?? "skip",
|
|
277
|
+
overlap_policy: input.trigger.overlap_policy ?? "allow",
|
|
278
|
+
run: {
|
|
279
|
+
event_type: input.trigger.run.event_type,
|
|
280
|
+
payload: input.trigger.run.payload ?? {},
|
|
281
|
+
...(input.trigger.run.retry !== undefined ? { retry: input.trigger.run.retry } : {}),
|
|
282
|
+
...(input.trigger.run.expires_after_seconds !== undefined
|
|
283
|
+
? { expires_after_seconds: input.trigger.run.expires_after_seconds }
|
|
284
|
+
: {}),
|
|
285
|
+
},
|
|
286
|
+
};
|
|
287
|
+
}
|
|
246
288
|
function assertFiveFieldCron(expr) {
|
|
247
289
|
if (expr.trim().split(/\s+/).length !== 5) {
|
|
248
290
|
throw new Error("Cron expression must contain exactly 5 fields.");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"functions-runtime.js","sourceRoot":"","sources":["../src/functions-runtime.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"functions-runtime.js","sourceRoot":"","sources":["../src/functions-runtime.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -3,6 +3,7 @@ export * from "./archive.js";
|
|
|
3
3
|
export * from "./capabilities.js";
|
|
4
4
|
export * from "./errors.js";
|
|
5
5
|
export * from "./functions-runtime.js";
|
|
6
|
+
export * from "./function-runs.js";
|
|
6
7
|
export * from "./health.js";
|
|
7
8
|
export * from "./ports.js";
|
|
8
9
|
export * from "./projects.js";
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,aAAa,CAAC;AAC5B,cAAc,wBAAwB,CAAC;AACvC,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,aAAa,CAAC;AAC5B,cAAc,wBAAwB,CAAC;AACvC,cAAc,oBAAoB,CAAC;AACnC,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -3,6 +3,7 @@ export * from "./archive.js";
|
|
|
3
3
|
export * from "./capabilities.js";
|
|
4
4
|
export * from "./errors.js";
|
|
5
5
|
export * from "./functions-runtime.js";
|
|
6
|
+
export * from "./function-runs.js";
|
|
6
7
|
export * from "./health.js";
|
|
7
8
|
export * from "./ports.js";
|
|
8
9
|
export * from "./projects.js";
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,aAAa,CAAC;AAC5B,cAAc,wBAAwB,CAAC;AACvC,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,aAAa,CAAC;AAC5B,cAAc,wBAAwB,CAAC;AACvC,cAAc,oBAAoB,CAAC;AACnC,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@run402/runtime-kernel",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.10",
|
|
4
4
|
"description": "Public Run402 Core runtime kernel contracts, capabilities, and application services.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -28,8 +28,8 @@
|
|
|
28
28
|
"node": ">=22"
|
|
29
29
|
},
|
|
30
30
|
"dependencies": {
|
|
31
|
-
"@run402/functions": "3.5.
|
|
32
|
-
"@run402/release": "0.2.
|
|
31
|
+
"@run402/functions": "3.5.6",
|
|
32
|
+
"@run402/release": "0.2.3",
|
|
33
33
|
"croner": "^10.0.1"
|
|
34
34
|
},
|
|
35
35
|
"repository": {
|