@run402/functions 3.5.2 → 3.5.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 +20 -0
- package/dist/email.d.ts +2 -2
- package/dist/email.d.ts.map +1 -1
- package/dist/email.js +33 -0
- package/dist/email.js.map +1 -1
- package/dist/runtime-context.d.ts +5 -3
- package/dist/runtime-context.d.ts.map +1 -1
- package/dist/runtime-context.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -209,6 +209,8 @@ For a gated function reached through the gateway, `getUserId(req)` and `getUser(
|
|
|
209
209
|
|
|
210
210
|
Auto-discovers the project's mailbox on first call (the project must already have one — create it once with `run402 email create <slug>` or the `create_mailbox` MCP tool). After that the mailbox id is cached for the function's lifetime.
|
|
211
211
|
|
|
212
|
+
On Run402 Core, this uses the same `/mailboxes/v1` contract as Cloud. Deploy still happens through `run402 deploy apply --manifest`; outbound email is enabled separately by configuring the Core gateway's provider (for example SES) and creating a project mailbox/default. If Core has mailboxes but no outbound provider configured, `email.send()` throws `EmailConfigurationError` with code `PROVIDER_NOT_CONFIGURED` and setup `next_actions`.
|
|
213
|
+
|
|
212
214
|
```ts
|
|
213
215
|
// Template mode
|
|
214
216
|
await email.send({
|
|
@@ -364,6 +366,24 @@ The raw `run402.routed_http.v1` envelope is an internal gateway transport. Low-l
|
|
|
364
366
|
|
|
365
367
|
Runtime route failure codes to branch on: `ROUTE_MANIFEST_LOAD_FAILED` (manifest/propagation), `ROUTED_INVOKE_WORKER_SECRET_MISSING` (custom-domain Worker secret), `ROUTED_INVOKE_AUTH_FAILED` (internal invoke signature), `ROUTED_ROUTE_STALE` (selected route failed release revalidation), `ROUTE_METHOD_NOT_ALLOWED` (method mismatch), and `ROUTED_RESPONSE_TOO_LARGE` (body over 6 MiB).
|
|
366
368
|
|
|
369
|
+
## Scheduled functions
|
|
370
|
+
|
|
371
|
+
Run402 Cloud and Run402 Core both use the existing release manifest `functions.replace.<name>.schedule` field for cron-style functions. In Core Developer Preview this is a single-node gateway scheduler, not a managed distributed jobs system.
|
|
372
|
+
|
|
373
|
+
Scheduled functions receive the same Fetch `Request` shape as routed functions. The request is a synthetic `POST` with `X-Run402-Trigger: cron` for wall-clock ticks, or `X-Run402-Trigger: manual` when a Core agent calls the service-key testing hook. The JSON body contains `trigger` and `scheduled_at`.
|
|
374
|
+
|
|
375
|
+
```ts
|
|
376
|
+
export default async function handler(req: Request): Promise<Response> {
|
|
377
|
+
if (req.headers.get("x-run402-trigger")) {
|
|
378
|
+
const event = await req.json() as { trigger: string; scheduled_at: string };
|
|
379
|
+
await runReminderSweep(event.scheduled_at);
|
|
380
|
+
return Response.json({ ok: true, trigger: event.trigger });
|
|
381
|
+
}
|
|
382
|
+
|
|
383
|
+
return Response.json({ ok: true });
|
|
384
|
+
}
|
|
385
|
+
```
|
|
386
|
+
|
|
367
387
|
## Imports auto-resolved
|
|
368
388
|
|
|
369
389
|
Inside a deployed function you can `import { ... } from "@run402/functions"` directly — the gateway bundles this library plus any `--deps` you declared at deploy time. **Do not list `@run402/functions` in your `--deps`** — it's rejected. Native binary modules (`sharp`, `canvas`, native `bcrypt`, etc.) are also rejected.
|
package/dist/email.d.ts
CHANGED
|
@@ -25,10 +25,10 @@ export interface EmailSendResult {
|
|
|
25
25
|
[key: string]: unknown;
|
|
26
26
|
}
|
|
27
27
|
export declare class EmailConfigurationError extends Error {
|
|
28
|
-
code: "AMBIGUOUS_MAILBOX" | "DEFAULT_MAILBOX_REQUIRED" | "DEFAULT_MAILBOX_INVALID";
|
|
28
|
+
code: "AMBIGUOUS_MAILBOX" | "DEFAULT_MAILBOX_REQUIRED" | "DEFAULT_MAILBOX_INVALID" | "PROVIDER_NOT_CONFIGURED";
|
|
29
29
|
details: Record<string, unknown>;
|
|
30
30
|
next_actions: unknown[];
|
|
31
|
-
constructor(message: string, code: "AMBIGUOUS_MAILBOX" | "DEFAULT_MAILBOX_REQUIRED" | "DEFAULT_MAILBOX_INVALID", details?: Record<string, unknown>, next_actions?: unknown[]);
|
|
31
|
+
constructor(message: string, code: "AMBIGUOUS_MAILBOX" | "DEFAULT_MAILBOX_REQUIRED" | "DEFAULT_MAILBOX_INVALID" | "PROVIDER_NOT_CONFIGURED", details?: Record<string, unknown>, next_actions?: unknown[]);
|
|
32
32
|
}
|
|
33
33
|
export declare const email: {
|
|
34
34
|
send(opts: EmailSendOptions): Promise<EmailSendResult>;
|
package/dist/email.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"email.d.ts","sourceRoot":"","sources":["../src/email.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,KAAK,CAAC;IACjB,SAAS,CAAC,EAAE,KAAK,CAAC;CACnB;AAED,MAAM,WAAW,oBAAoB;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,KAAK,CAAC;IAChB,IAAI,CAAC,EAAE,KAAK,CAAC;IACb,IAAI,CAAC,EAAE,KAAK,CAAC;CACd;AAED,MAAM,MAAM,gBAAgB,GAAG,eAAe,GAAG,oBAAoB,CAAC;AAEtE,MAAM,WAAW,eAAe;IAC9B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;
|
|
1
|
+
{"version":3,"file":"email.d.ts","sourceRoot":"","sources":["../src/email.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,KAAK,CAAC;IACjB,SAAS,CAAC,EAAE,KAAK,CAAC;CACnB;AAED,MAAM,WAAW,oBAAoB;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,KAAK,CAAC;IAChB,IAAI,CAAC,EAAE,KAAK,CAAC;IACb,IAAI,CAAC,EAAE,KAAK,CAAC;CACd;AAED,MAAM,MAAM,gBAAgB,GAAG,eAAe,GAAG,oBAAoB,CAAC;AAEtE,MAAM,WAAW,eAAe;IAC9B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AA2BD,qBAAa,uBAAwB,SAAQ,KAAK;IAGvC,IAAI,EAAE,mBAAmB,GAAG,0BAA0B,GAAG,yBAAyB,GAAG,yBAAyB;IAC9G,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAChC,YAAY,EAAE,OAAO,EAAE;gBAH9B,OAAO,EAAE,MAAM,EACR,IAAI,EAAE,mBAAmB,GAAG,0BAA0B,GAAG,yBAAyB,GAAG,yBAAyB,EAC9G,OAAO,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,EACrC,YAAY,GAAE,OAAO,EAAO;CAKtC;AAED,eAAO,MAAM,KAAK;eAmEG,gBAAgB,GAAG,OAAO,CAAC,eAAe,CAAC;CAiC5D,CAAC"}
|
package/dist/email.js
CHANGED
|
@@ -27,6 +27,9 @@ export const email = (() => {
|
|
|
27
27
|
if (defaultOutboundId) {
|
|
28
28
|
const selected = mailboxes.find((mailbox) => mailbox.mailbox_id === defaultOutboundId);
|
|
29
29
|
if (!selected || selected.can_send === false || selected.status === "suspended" || selected.status === "tombstoned") {
|
|
30
|
+
if (selected && isProviderBlocked(selected, data)) {
|
|
31
|
+
throw providerConfigurationError(data, mailboxes);
|
|
32
|
+
}
|
|
30
33
|
throw new EmailConfigurationError("Configured default outbound mailbox is not send-ready", "DEFAULT_MAILBOX_INVALID", {
|
|
31
34
|
resource_kind: "mailbox",
|
|
32
35
|
selection_purpose: "default_outbound",
|
|
@@ -39,6 +42,9 @@ export const email = (() => {
|
|
|
39
42
|
}
|
|
40
43
|
const sendReady = mailboxes.filter((mailbox) => mailbox.can_send !== false && mailbox.status !== "suspended" && mailbox.status !== "tombstoned");
|
|
41
44
|
if (sendReady.length === 0) {
|
|
45
|
+
if (mailboxes.length > 0 && isProviderBlocked(mailboxes[0], data)) {
|
|
46
|
+
throw providerConfigurationError(data, mailboxes);
|
|
47
|
+
}
|
|
42
48
|
throw new EmailConfigurationError("No active mailbox configured for this project", "DEFAULT_MAILBOX_REQUIRED", {
|
|
43
49
|
resource_kind: "mailbox",
|
|
44
50
|
selection_purpose: "default_outbound",
|
|
@@ -106,6 +112,22 @@ function safeMailboxCandidate(mailbox) {
|
|
|
106
112
|
send_blocked_reason: mailbox.send_blocked_reason ?? null,
|
|
107
113
|
};
|
|
108
114
|
}
|
|
115
|
+
function isProviderBlocked(mailbox, data) {
|
|
116
|
+
return mailbox.send_blocked_reason === "provider_not_configured" ||
|
|
117
|
+
mailbox.send_blocked_reason === "provider_misconfigured" ||
|
|
118
|
+
data.provider_readiness?.status === "not_configured" ||
|
|
119
|
+
data.provider_readiness?.status === "misconfigured";
|
|
120
|
+
}
|
|
121
|
+
function providerConfigurationError(data, mailboxes) {
|
|
122
|
+
const status = data.provider_readiness?.status ?? "not_configured";
|
|
123
|
+
return new EmailConfigurationError(status === "misconfigured"
|
|
124
|
+
? "Core outbound email provider is misconfigured"
|
|
125
|
+
: "Core outbound email provider is not configured", "PROVIDER_NOT_CONFIGURED", {
|
|
126
|
+
resource_kind: "email_provider",
|
|
127
|
+
provider_readiness: data.provider_readiness ?? { status },
|
|
128
|
+
candidates: mailboxes.map(safeMailboxCandidate),
|
|
129
|
+
}, data.next_actions || providerNextActions());
|
|
130
|
+
}
|
|
109
131
|
function defaultMailboxNextActions() {
|
|
110
132
|
return [
|
|
111
133
|
{
|
|
@@ -131,4 +153,15 @@ function createMailboxNextActions() {
|
|
|
131
153
|
...defaultMailboxNextActions(),
|
|
132
154
|
];
|
|
133
155
|
}
|
|
156
|
+
function providerNextActions() {
|
|
157
|
+
return [
|
|
158
|
+
{
|
|
159
|
+
type: "edit_request",
|
|
160
|
+
path: "host environment",
|
|
161
|
+
auth: "operator",
|
|
162
|
+
why: "Configure the Core gateway outbound email provider before retrying email.send().",
|
|
163
|
+
fields: { CORE_EMAIL_PROVIDER: "ses", CORE_EMAIL_FROM_DOMAIN: "example.com" },
|
|
164
|
+
},
|
|
165
|
+
];
|
|
166
|
+
}
|
|
134
167
|
//# sourceMappingURL=email.js.map
|
package/dist/email.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"email.js","sourceRoot":"","sources":["../src/email.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"email.js","sourceRoot":"","sources":["../src/email.ts"],"names":[],"mappings":"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"}
|
|
@@ -71,9 +71,11 @@ export interface RunRequestContext {
|
|
|
71
71
|
* to decoding an `Authorization: Bearer` header, so the
|
|
72
72
|
* "cookie is the only browser actor input" invariant holds. For
|
|
73
73
|
* `"direct"` (machine / mobile / CI function invocation) the Bearer
|
|
74
|
-
* fallback is preserved.
|
|
75
|
-
*
|
|
76
|
-
|
|
74
|
+
* fallback is preserved. `"scheduled"` uses the same trusted server-side
|
|
75
|
+
* context class as direct invocation, but the Run402 cron envelope does not
|
|
76
|
+
* include an Authorization header by default. Defaults to `"direct"` when
|
|
77
|
+
* unset so pre-existing callers keep the machine contract. */
|
|
78
|
+
invocationKind: "routed_http" | "direct" | "scheduled";
|
|
77
79
|
/** Mutable ref: SDK functions that read request-scoped auth or invoke
|
|
78
80
|
* payment primitives set `value = true`. The SSR Lambda runtime
|
|
79
81
|
* returns the final value to the gateway in the response metadata
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime-context.d.ts","sourceRoot":"","sources":["../src/runtime-context.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAGL,KAAK,oBAAoB,EAE1B,MAAM,+BAA+B,CAAC;AAEvC;;;;2DAI2D;AAC3D,MAAM,MAAM,YAAY,GAAG,oBAAoB,GAAG;IAAE,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC;AAExE;oCACoC;AACpC,MAAM,WAAW,iBAAiB;IAChC,4DAA4D;IAC5D,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB;yBACqB;IACrB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB;qDACiD;IACjD,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B;yDACqD;IACrD,IAAI,EAAE,MAAM,CAAC;IACb;;;uBAGmB;IACnB,OAAO,EAAE;QACP,MAAM,EAAE,MAAM,CAAC;QACf,GAAG,EAAE,MAAM,CAAC;QACZ,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC;KACxD,CAAC;IACF;;+DAE2D;IAC3D,KAAK,EAAE,YAAY,GAAG,IAAI,CAAC;IAC3B
|
|
1
|
+
{"version":3,"file":"runtime-context.d.ts","sourceRoot":"","sources":["../src/runtime-context.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAGL,KAAK,oBAAoB,EAE1B,MAAM,+BAA+B,CAAC;AAEvC;;;;2DAI2D;AAC3D,MAAM,MAAM,YAAY,GAAG,oBAAoB,GAAG;IAAE,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC;AAExE;oCACoC;AACpC,MAAM,WAAW,iBAAiB;IAChC,4DAA4D;IAC5D,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB;yBACqB;IACrB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB;qDACiD;IACjD,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B;yDACqD;IACrD,IAAI,EAAE,MAAM,CAAC;IACb;;;uBAGmB;IACnB,OAAO,EAAE;QACP,MAAM,EAAE,MAAM,CAAC;QACf,GAAG,EAAE,MAAM,CAAC;QACZ,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC;KACxD,CAAC;IACF;;+DAE2D;IAC3D,KAAK,EAAE,YAAY,GAAG,IAAI,CAAC;IAC3B;;;;;;;;;mEAS+D;IAC/D,cAAc,EAAE,aAAa,GAAG,QAAQ,GAAG,WAAW,CAAC;IACvD;;;oBAGgB;IAChB,kBAAkB,EAAE;QAAE,KAAK,EAAE,OAAO,CAAA;KAAE,CAAC;IACvC;;;8CAG0C;IAC1C,MAAM,EAAE;QAAE,KAAK,EAAE,OAAO,CAAA;KAAE,CAAC;CAC5B;AAED;oEACoE;AACpE,eAAO,MAAM,GAAG,sCAA6C,CAAC;AAE9D;;;;GAIG;AACH,wBAAgB,iBAAiB,IAAI,iBAAiB,GAAG,SAAS,CAEjE;AAED;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAAC,CAAC,EAC9B,OAAO,EAAE,IAAI,CACX,iBAAiB,EACjB,oBAAoB,GAAG,QAAQ,GAAG,OAAO,GAAG,gBAAgB,CAC7D,GACC,OAAO,CACL,IAAI,CACF,iBAAiB,EACjB,oBAAoB,GAAG,QAAQ,GAAG,OAAO,GAAG,gBAAgB,CAC7D,CACF,EACH,QAAQ,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,GAC7B,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAoBhB;AAiGD;;;;;;;;;;;GAWG;AACH,qBAAa,gCAAiC,SAAQ,KAAK;IACzD,QAAQ,CAAC,IAAI,sCAAsC;IACnD,QAAQ,CAAC,IAAI,iEAAiE;IAC9E,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,KAAK,EAAE,YAAY,GAAG,kBAAkB,CAAC;gBAEtC,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,GAAG,kBAAkB;CAc1E;AAED;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,MAAM,GAAG,iBAAiB,CAS3E;AAED;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,IAAI,IAAI,CAKvC;AAED;;;;;;;;;;GAUG;AACH,eAAO,MAAM,kBAAkB,EAAE,WAAW,CAAC,MAAM,CAUjD,CAAC;AAEH;;;;;;;;;GASG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,SAAS,OAAO,EAAE,EAAE,OAAO,EAC/D,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,KAAK,KAAK,OAAO,GAChC,CAAC,GAAG,IAAI,EAAE,KAAK,KAAK,OAAO,CAe7B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime-context.js","sourceRoot":"","sources":["../src/runtime-context.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EACL,0BAA0B,EAC1B,oBAAoB,GAGrB,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"runtime-context.js","sourceRoot":"","sources":["../src/runtime-context.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@run402/functions",
|
|
3
|
-
"version": "3.5.
|
|
3
|
+
"version": "3.5.4",
|
|
4
4
|
"description": "In-function helper library for Run402 serverless functions - db, adminDb, getUser, email, ai, assets, verifyWebhook. Auto-bundled into deployed functions; also installable for local TypeScript autocomplete.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|