@beignet/core 0.0.53 → 0.0.54
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/CHANGELOG.md +9 -0
- package/README.md +64 -2
- package/dist/broadcasting/client.d.ts +38 -0
- package/dist/broadcasting/client.d.ts.map +1 -0
- package/dist/broadcasting/client.js +519 -0
- package/dist/broadcasting/client.js.map +1 -0
- package/dist/broadcasting/index.d.ts +43 -0
- package/dist/broadcasting/index.d.ts.map +1 -0
- package/dist/broadcasting/index.js +87 -0
- package/dist/broadcasting/index.js.map +1 -0
- package/dist/broadcasting/server.d.ts +83 -0
- package/dist/broadcasting/server.d.ts.map +1 -0
- package/dist/broadcasting/server.js +213 -0
- package/dist/broadcasting/server.js.map +1 -0
- package/dist/notifications/index.d.ts +14 -0
- package/dist/notifications/index.d.ts.map +1 -1
- package/dist/notifications/index.js +17 -0
- package/dist/notifications/index.js.map +1 -1
- package/dist/ports/redaction.d.ts +1 -1
- package/dist/ports/redaction.d.ts.map +1 -1
- package/dist/ports/redaction.js +3 -0
- package/dist/ports/redaction.js.map +1 -1
- package/dist/server/server.d.ts +4 -2
- package/dist/server/server.d.ts.map +1 -1
- package/dist/server/server.js +1 -1
- package/dist/server/server.js.map +1 -1
- package/package.json +13 -1
- package/skills/app-architecture/SKILL.md +26 -0
- package/src/broadcasting/client.ts +714 -0
- package/src/broadcasting/index.ts +173 -0
- package/src/broadcasting/server.ts +352 -0
- package/src/notifications/index.ts +32 -0
- package/src/ports/redaction.ts +3 -0
- package/src/server/server.ts +8 -3
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/broadcasting/client.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import type { StandardSchemaV1 } from "@standard-schema/spec";
|
|
2
|
+
/** Browser-visible channel contract. Authorization belongs in a server binding. */
|
|
3
|
+
export interface ChannelDefinition<Name extends string = string, Params extends StandardSchemaV1<unknown, Record<string, string>> = StandardSchemaV1<unknown, Record<string, string>>, Events extends Record<string, StandardSchemaV1> = Record<string, StandardSchemaV1>> {
|
|
4
|
+
readonly kind: "channel";
|
|
5
|
+
readonly name: Name;
|
|
6
|
+
readonly params: Params;
|
|
7
|
+
readonly events: Events;
|
|
8
|
+
}
|
|
9
|
+
export type InferChannelParams<C extends ChannelDefinition> = StandardSchemaV1.InferOutput<C["params"]>;
|
|
10
|
+
export type InferChannelEvent<C extends ChannelDefinition> = {
|
|
11
|
+
[Event in keyof C["events"] & string]: {
|
|
12
|
+
event: Event;
|
|
13
|
+
data: StandardSchemaV1.InferOutput<C["events"][Event]>;
|
|
14
|
+
};
|
|
15
|
+
}[keyof C["events"] & string];
|
|
16
|
+
/** Fixed protocol limits shared by clients, endpoints, and providers. */
|
|
17
|
+
export declare const broadcastLimits: Readonly<{
|
|
18
|
+
subscriptions: 20;
|
|
19
|
+
requestBytes: 8192;
|
|
20
|
+
payloadBytes: 65536;
|
|
21
|
+
bufferedBytes: 1048576;
|
|
22
|
+
maxLifetimeMs: 60000;
|
|
23
|
+
heartbeatMs: 25000;
|
|
24
|
+
readyTimeoutMs: 10000;
|
|
25
|
+
}>;
|
|
26
|
+
/** Invalid channel configuration or untrusted protocol input. */
|
|
27
|
+
export declare class BroadcastValidationError extends Error {
|
|
28
|
+
constructor(message: string);
|
|
29
|
+
}
|
|
30
|
+
export declare function defineChannel<const Name extends string, Params extends StandardSchemaV1<unknown, Record<string, string>>, const Events extends Record<string, StandardSchemaV1>>(name: Name, options: {
|
|
31
|
+
params: Params;
|
|
32
|
+
events: Events;
|
|
33
|
+
}): ChannelDefinition<Name, Params, Events>;
|
|
34
|
+
/** Provider and transport boundary validation. Uses parsed, canonical parameters. */
|
|
35
|
+
export declare function parseChannelParams<C extends ChannelDefinition>(channel: C, input: unknown): Promise<InferChannelParams<C>>;
|
|
36
|
+
/** Provider and browser boundary validation. Event names select their schema. */
|
|
37
|
+
export declare function parseChannelEvent<C extends ChannelDefinition>(channel: C, input: {
|
|
38
|
+
event: string;
|
|
39
|
+
data: unknown;
|
|
40
|
+
}): Promise<InferChannelEvent<C>>;
|
|
41
|
+
/** Collision-free identity independent of parameter property order. Parse parameters first. */
|
|
42
|
+
export declare function channelKey(channel: string, params: Readonly<Record<string, string>>): string;
|
|
43
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/broadcasting/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAM9D,mFAAmF;AACnF,MAAM,WAAW,iBAAiB,CAChC,IAAI,SAAS,MAAM,GAAG,MAAM,EAC5B,MAAM,SAAS,gBAAgB,CAC7B,OAAO,EACP,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CACvB,GAAG,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,EACrD,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,GAAG,MAAM,CACtD,MAAM,EACN,gBAAgB,CACjB;IAED,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IACzB,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC;IACpB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,MAAM,kBAAkB,CAAC,CAAC,SAAS,iBAAiB,IACxD,gBAAgB,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;AAC5C,MAAM,MAAM,iBAAiB,CAAC,CAAC,SAAS,iBAAiB,IAAI;KAC1D,KAAK,IAAI,MAAM,CAAC,CAAC,QAAQ,CAAC,GAAG,MAAM,GAAG;QACrC,KAAK,EAAE,KAAK,CAAC;QACb,IAAI,EAAE,gBAAgB,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;KACxD;CACF,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC,CAAC;AAE9B,yEAAyE;AACzE,eAAO,MAAM,eAAe;;;;;;;;EAQ1B,CAAC;AAEH,iEAAiE;AACjE,qBAAa,wBAAyB,SAAQ,KAAK;gBACrC,OAAO,EAAE,MAAM;CAI5B;AAID,wBAAgB,aAAa,CAC3B,KAAK,CAAC,IAAI,SAAS,MAAM,EACzB,MAAM,SAAS,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,EAChE,KAAK,CAAC,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,EAErD,IAAI,EAAE,IAAI,EACV,OAAO,EAAE;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAC1C,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,CAezC;AA+BD,qFAAqF;AACrF,wBAAsB,kBAAkB,CAAC,CAAC,SAAS,iBAAiB,EAClE,OAAO,EAAE,CAAC,EACV,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAyBhC;AAED,iFAAiF;AACjF,wBAAsB,iBAAiB,CAAC,CAAC,SAAS,iBAAiB,EACjE,OAAO,EAAE,CAAC,EACV,KAAK,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,OAAO,CAAA;CAAE,GACtC,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAmB/B;AAED,+FAA+F;AAC/F,wBAAgB,UAAU,CACxB,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GACvC,MAAM,CAKR"}
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
import { eventTransportValuesEqual, toEventTransportValue, } from "../events/transport.js";
|
|
2
|
+
/** Fixed protocol limits shared by clients, endpoints, and providers. */
|
|
3
|
+
export const broadcastLimits = Object.freeze({
|
|
4
|
+
subscriptions: 20,
|
|
5
|
+
requestBytes: 8_192,
|
|
6
|
+
payloadBytes: 65_536,
|
|
7
|
+
bufferedBytes: 1_048_576,
|
|
8
|
+
maxLifetimeMs: 60_000,
|
|
9
|
+
heartbeatMs: 25_000,
|
|
10
|
+
readyTimeoutMs: 10_000,
|
|
11
|
+
});
|
|
12
|
+
/** Invalid channel configuration or untrusted protocol input. */
|
|
13
|
+
export class BroadcastValidationError extends Error {
|
|
14
|
+
constructor(message) {
|
|
15
|
+
super(message);
|
|
16
|
+
this.name = "BroadcastValidationError";
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
const namePattern = /^[a-zA-Z][a-zA-Z0-9_.-]{0,127}$/;
|
|
20
|
+
export function defineChannel(name, options) {
|
|
21
|
+
if (!namePattern.test(name))
|
|
22
|
+
throw new BroadcastValidationError("Invalid broadcast channel name");
|
|
23
|
+
const events = Object.entries(options.events);
|
|
24
|
+
if (!events.length || events.some(([event]) => !namePattern.test(event))) {
|
|
25
|
+
throw new BroadcastValidationError(`Channel ${name} needs valid event names`);
|
|
26
|
+
}
|
|
27
|
+
return Object.freeze({
|
|
28
|
+
kind: "channel",
|
|
29
|
+
name,
|
|
30
|
+
params: options.params,
|
|
31
|
+
events: Object.freeze({ ...options.events }),
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
/** Validate both sides of a transport boundary; schema transforms must be stable. */
|
|
35
|
+
async function parseStable(schema, input, label) {
|
|
36
|
+
try {
|
|
37
|
+
const parsed = await schema["~standard"].validate(input);
|
|
38
|
+
if (parsed.issues)
|
|
39
|
+
throw new BroadcastValidationError(`Invalid ${label}`);
|
|
40
|
+
const canonical = toEventTransportValue(label, parsed.value);
|
|
41
|
+
const second = await schema["~standard"].validate(canonical);
|
|
42
|
+
if (second.issues ||
|
|
43
|
+
!eventTransportValuesEqual(canonical, toEventTransportValue(label, second.value))) {
|
|
44
|
+
throw new BroadcastValidationError(`Unstable transport schema for ${label}`);
|
|
45
|
+
}
|
|
46
|
+
return canonical;
|
|
47
|
+
}
|
|
48
|
+
catch (error) {
|
|
49
|
+
if (error instanceof BroadcastValidationError)
|
|
50
|
+
throw error;
|
|
51
|
+
throw new BroadcastValidationError(`Invalid ${label}`);
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
/** Provider and transport boundary validation. Uses parsed, canonical parameters. */
|
|
55
|
+
export async function parseChannelParams(channel, input) {
|
|
56
|
+
const parsed = await parseStable(channel.params, input, `${channel.name} parameters`);
|
|
57
|
+
if (!parsed ||
|
|
58
|
+
typeof parsed !== "object" ||
|
|
59
|
+
Array.isArray(parsed) ||
|
|
60
|
+
Object.values(parsed).some((value) => typeof value !== "string")) {
|
|
61
|
+
throw new BroadcastValidationError(`Channel ${channel.name} parameters must be a flat string record`);
|
|
62
|
+
}
|
|
63
|
+
if (new TextEncoder().encode(JSON.stringify(parsed)).byteLength >
|
|
64
|
+
broadcastLimits.requestBytes) {
|
|
65
|
+
throw new BroadcastValidationError(`Channel ${channel.name} parameters are too large`);
|
|
66
|
+
}
|
|
67
|
+
return parsed;
|
|
68
|
+
}
|
|
69
|
+
/** Provider and browser boundary validation. Event names select their schema. */
|
|
70
|
+
export async function parseChannelEvent(channel, input) {
|
|
71
|
+
if (!Object.hasOwn(channel.events, input.event))
|
|
72
|
+
throw new BroadcastValidationError(`Unknown event on channel ${channel.name}`);
|
|
73
|
+
const data = await parseStable(channel.events[input.event], input.data, `${channel.name}.${input.event}`);
|
|
74
|
+
if (new TextEncoder().encode(JSON.stringify(data)).byteLength >
|
|
75
|
+
broadcastLimits.payloadBytes) {
|
|
76
|
+
throw new BroadcastValidationError(`Channel ${channel.name} payload is too large`);
|
|
77
|
+
}
|
|
78
|
+
return { event: input.event, data };
|
|
79
|
+
}
|
|
80
|
+
/** Collision-free identity independent of parameter property order. Parse parameters first. */
|
|
81
|
+
export function channelKey(channel, params) {
|
|
82
|
+
return JSON.stringify([
|
|
83
|
+
channel,
|
|
84
|
+
Object.entries(params).sort(([a], [b]) => (a < b ? -1 : a > b ? 1 : 0)),
|
|
85
|
+
]);
|
|
86
|
+
}
|
|
87
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/broadcasting/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import "../server-only.js";
|
|
2
|
+
import type { StandardSchemaV1 } from "@standard-schema/spec";
|
|
3
|
+
import { type ChannelDefinition, type InferChannelEvent, type InferChannelParams } from "./index.js";
|
|
4
|
+
/** Server-authenticated scope captured at the originating HTTP boundary. JSON-safe for jobs. */
|
|
5
|
+
export interface BroadcastOrigin {
|
|
6
|
+
readonly version: 1;
|
|
7
|
+
readonly clientId: string;
|
|
8
|
+
readonly scope: string;
|
|
9
|
+
}
|
|
10
|
+
/** Validate an origin already captured by a trusted server for a job payload. */
|
|
11
|
+
export declare const broadcastOriginSchema: StandardSchemaV1<unknown, BroadcastOrigin>;
|
|
12
|
+
/** Never derive principal, tenant, or namespace from the optional client header. */
|
|
13
|
+
export declare function resolveBroadcastOrigin(options: {
|
|
14
|
+
headers: Headers;
|
|
15
|
+
principalId?: string | null;
|
|
16
|
+
tenantId?: string | null;
|
|
17
|
+
namespace: string;
|
|
18
|
+
}): BroadcastOrigin | undefined;
|
|
19
|
+
export type BroadcastPublication<C extends ChannelDefinition> = InferChannelEvent<C> & {
|
|
20
|
+
params: InferChannelParams<C>;
|
|
21
|
+
excludeOrigin?: BroadcastOrigin;
|
|
22
|
+
};
|
|
23
|
+
/** Readiness proves initial subscription only. Continuity loss requires reconnect and refetch. */
|
|
24
|
+
export interface BroadcastSubscription {
|
|
25
|
+
readonly ready: Promise<void>;
|
|
26
|
+
unsubscribe(): Promise<void>;
|
|
27
|
+
}
|
|
28
|
+
export interface BroadcastPort {
|
|
29
|
+
/** Resolves when accepted by the provider, including when nobody is subscribed. */
|
|
30
|
+
publish<C extends ChannelDefinition>(channel: C, publication: BroadcastPublication<C>): Promise<void>;
|
|
31
|
+
subscribe<C extends ChannelDefinition>(channel: C, options: {
|
|
32
|
+
params: InferChannelParams<C>;
|
|
33
|
+
onEvent: (event: InferChannelEvent<C>, metadata: {
|
|
34
|
+
excludeOrigin?: BroadcastOrigin;
|
|
35
|
+
}) => void;
|
|
36
|
+
onDisconnect: () => void;
|
|
37
|
+
}): BroadcastSubscription;
|
|
38
|
+
}
|
|
39
|
+
/** Internal transport envelope carried by broadcast providers, never a browser payload. */
|
|
40
|
+
export interface BroadcastEnvelope {
|
|
41
|
+
version: 1;
|
|
42
|
+
channel: string;
|
|
43
|
+
params: Record<string, string>;
|
|
44
|
+
event: string;
|
|
45
|
+
data: unknown;
|
|
46
|
+
excludeOrigin?: BroadcastOrigin;
|
|
47
|
+
}
|
|
48
|
+
/** Low-level adapter contract. Subscription callbacks must be isolated from publishers. */
|
|
49
|
+
export interface BroadcastTransport {
|
|
50
|
+
publish(key: string, envelope: BroadcastEnvelope): Promise<void>;
|
|
51
|
+
subscribe(key: string, options: {
|
|
52
|
+
onMessage: (envelope: unknown) => void;
|
|
53
|
+
onDisconnect: () => void;
|
|
54
|
+
}): BroadcastSubscription;
|
|
55
|
+
}
|
|
56
|
+
/** Shared validation and cleanup for provider implementations. */
|
|
57
|
+
export declare function createBroadcastPort(transport: BroadcastTransport): BroadcastPort;
|
|
58
|
+
export interface ChannelBinding<Ctx> {
|
|
59
|
+
readonly kind: "channel-binding";
|
|
60
|
+
readonly channel: ChannelDefinition;
|
|
61
|
+
authorize: (args: {
|
|
62
|
+
ctx: Ctx;
|
|
63
|
+
params: Record<string, string>;
|
|
64
|
+
}) => void | Promise<void>;
|
|
65
|
+
}
|
|
66
|
+
export interface ChannelRegistry<Ctx> {
|
|
67
|
+
readonly kind: "channel-registry";
|
|
68
|
+
readonly bindings: readonly ChannelBinding<Ctx>[];
|
|
69
|
+
get(name: string): ChannelBinding<Ctx> | undefined;
|
|
70
|
+
}
|
|
71
|
+
/** Bind every channel explicitly, including public channels. */
|
|
72
|
+
export declare function createBroadcasting<Ctx>(): {
|
|
73
|
+
defineChannelBinding: <C extends ChannelDefinition>(channel: C, options: {
|
|
74
|
+
authorize: (args: {
|
|
75
|
+
ctx: Ctx;
|
|
76
|
+
params: InferChannelParams<C>;
|
|
77
|
+
}) => void | Promise<void>;
|
|
78
|
+
}) => ChannelBinding<Ctx>;
|
|
79
|
+
defineChannelRegistry: (bindings: readonly ChannelBinding<Ctx>[]) => ChannelRegistry<Ctx>;
|
|
80
|
+
};
|
|
81
|
+
/** Validate a configurable deadline without allowing an unbounded stream. */
|
|
82
|
+
export declare function broadcastLifetime(value?: number): number;
|
|
83
|
+
//# sourceMappingURL=server.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/broadcasting/server.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,213 @@
|
|
|
1
|
+
import "../server-only.js";
|
|
2
|
+
import { BroadcastValidationError, broadcastLimits, channelKey, parseChannelEvent, parseChannelParams, } from "./index.js";
|
|
3
|
+
const clientIdPattern = /^[a-zA-Z0-9_-]{22,128}$/;
|
|
4
|
+
function parseOrigin(value) {
|
|
5
|
+
if (!value || typeof value !== "object")
|
|
6
|
+
return undefined;
|
|
7
|
+
const candidate = value;
|
|
8
|
+
if (candidate.version !== 1 ||
|
|
9
|
+
typeof candidate.clientId !== "string" ||
|
|
10
|
+
!clientIdPattern.test(candidate.clientId) ||
|
|
11
|
+
typeof candidate.scope !== "string" ||
|
|
12
|
+
candidate.scope.length === 0 ||
|
|
13
|
+
candidate.scope.length > 2_048)
|
|
14
|
+
return undefined;
|
|
15
|
+
return { version: 1, clientId: candidate.clientId, scope: candidate.scope };
|
|
16
|
+
}
|
|
17
|
+
/** Validate an origin already captured by a trusted server for a job payload. */
|
|
18
|
+
export const broadcastOriginSchema = {
|
|
19
|
+
"~standard": {
|
|
20
|
+
version: 1,
|
|
21
|
+
vendor: "beignet",
|
|
22
|
+
validate(value) {
|
|
23
|
+
const origin = parseOrigin(value);
|
|
24
|
+
return origin
|
|
25
|
+
? { value: origin }
|
|
26
|
+
: { issues: [{ message: "Invalid broadcast origin" }] };
|
|
27
|
+
},
|
|
28
|
+
},
|
|
29
|
+
};
|
|
30
|
+
/** Never derive principal, tenant, or namespace from the optional client header. */
|
|
31
|
+
export function resolveBroadcastOrigin(options) {
|
|
32
|
+
if (!options.principalId || !options.namespace)
|
|
33
|
+
return undefined;
|
|
34
|
+
return parseOrigin({
|
|
35
|
+
version: 1,
|
|
36
|
+
clientId: options.headers.get("X-Beignet-Broadcast-Client"),
|
|
37
|
+
scope: JSON.stringify([
|
|
38
|
+
options.namespace,
|
|
39
|
+
options.tenantId ?? null,
|
|
40
|
+
options.principalId,
|
|
41
|
+
]),
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
/** Shared validation and cleanup for provider implementations. */
|
|
45
|
+
export function createBroadcastPort(transport) {
|
|
46
|
+
return {
|
|
47
|
+
async publish(channel, publication) {
|
|
48
|
+
const params = await parseChannelParams(channel, publication.params);
|
|
49
|
+
const event = await parseChannelEvent(channel, publication);
|
|
50
|
+
const excludeOrigin = publication.excludeOrigin === undefined
|
|
51
|
+
? undefined
|
|
52
|
+
: parseOrigin(publication.excludeOrigin);
|
|
53
|
+
if (publication.excludeOrigin !== undefined && !excludeOrigin)
|
|
54
|
+
throw new BroadcastValidationError("Invalid broadcast origin");
|
|
55
|
+
await transport.publish(channelKey(channel.name, params), {
|
|
56
|
+
version: 1,
|
|
57
|
+
channel: channel.name,
|
|
58
|
+
params,
|
|
59
|
+
...event,
|
|
60
|
+
...(excludeOrigin ? { excludeOrigin } : {}),
|
|
61
|
+
});
|
|
62
|
+
},
|
|
63
|
+
subscribe(channel, options) {
|
|
64
|
+
let stopped = false;
|
|
65
|
+
let failed = false;
|
|
66
|
+
let subscription;
|
|
67
|
+
let queued = 0;
|
|
68
|
+
let queuedBytes = 0;
|
|
69
|
+
let pending = Promise.resolve();
|
|
70
|
+
let cancel;
|
|
71
|
+
let cleanup;
|
|
72
|
+
const release = () => (cleanup ??= subscription?.unsubscribe() ?? Promise.resolve());
|
|
73
|
+
const disconnect = () => {
|
|
74
|
+
if (stopped || failed)
|
|
75
|
+
return;
|
|
76
|
+
failed = true;
|
|
77
|
+
try {
|
|
78
|
+
options.onDisconnect();
|
|
79
|
+
}
|
|
80
|
+
catch {
|
|
81
|
+
/* Consumer callbacks cannot break provider lifecycle. */
|
|
82
|
+
}
|
|
83
|
+
};
|
|
84
|
+
const initialize = (async () => {
|
|
85
|
+
const params = await parseChannelParams(channel, options.params);
|
|
86
|
+
if (stopped)
|
|
87
|
+
return;
|
|
88
|
+
const key = channelKey(channel.name, params);
|
|
89
|
+
subscription = transport.subscribe(key, {
|
|
90
|
+
onDisconnect: disconnect,
|
|
91
|
+
onMessage(value) {
|
|
92
|
+
if (stopped || failed)
|
|
93
|
+
return;
|
|
94
|
+
let bytes;
|
|
95
|
+
try {
|
|
96
|
+
bytes = new TextEncoder().encode(JSON.stringify(value)).byteLength;
|
|
97
|
+
}
|
|
98
|
+
catch {
|
|
99
|
+
disconnect();
|
|
100
|
+
return;
|
|
101
|
+
}
|
|
102
|
+
if (bytes >
|
|
103
|
+
broadcastLimits.payloadBytes +
|
|
104
|
+
broadcastLimits.requestBytes +
|
|
105
|
+
16_384 ||
|
|
106
|
+
queuedBytes + bytes > broadcastLimits.bufferedBytes) {
|
|
107
|
+
disconnect();
|
|
108
|
+
return;
|
|
109
|
+
}
|
|
110
|
+
if (++queued > 128) {
|
|
111
|
+
disconnect();
|
|
112
|
+
return;
|
|
113
|
+
}
|
|
114
|
+
queuedBytes += bytes;
|
|
115
|
+
pending = pending
|
|
116
|
+
.then(async () => {
|
|
117
|
+
if (stopped || failed)
|
|
118
|
+
return;
|
|
119
|
+
if (!value || typeof value !== "object")
|
|
120
|
+
throw new BroadcastValidationError("Invalid broadcast envelope");
|
|
121
|
+
const envelope = value;
|
|
122
|
+
if (envelope.version !== 1 || envelope.channel !== channel.name)
|
|
123
|
+
throw new BroadcastValidationError("Invalid broadcast envelope");
|
|
124
|
+
const receivedParams = await parseChannelParams(channel, envelope.params);
|
|
125
|
+
if (channelKey(channel.name, receivedParams) !== key)
|
|
126
|
+
throw new BroadcastValidationError("Broadcast channel mismatch");
|
|
127
|
+
const event = await parseChannelEvent(channel, envelope);
|
|
128
|
+
const excludeOrigin = envelope.excludeOrigin === undefined
|
|
129
|
+
? undefined
|
|
130
|
+
: parseOrigin(envelope.excludeOrigin);
|
|
131
|
+
if (envelope.excludeOrigin !== undefined && !excludeOrigin)
|
|
132
|
+
throw new BroadcastValidationError("Invalid broadcast origin");
|
|
133
|
+
if (!stopped && !failed)
|
|
134
|
+
await options.onEvent(event, { excludeOrigin });
|
|
135
|
+
})
|
|
136
|
+
.catch(disconnect)
|
|
137
|
+
.finally(() => {
|
|
138
|
+
queued--;
|
|
139
|
+
queuedBytes -= bytes;
|
|
140
|
+
});
|
|
141
|
+
},
|
|
142
|
+
});
|
|
143
|
+
await subscription.ready;
|
|
144
|
+
if (stopped)
|
|
145
|
+
await release();
|
|
146
|
+
if (failed)
|
|
147
|
+
throw new Error("Broadcast subscription lost continuity before readiness");
|
|
148
|
+
})();
|
|
149
|
+
let timeout;
|
|
150
|
+
const ready = Promise.race([
|
|
151
|
+
initialize,
|
|
152
|
+
new Promise((_, reject) => {
|
|
153
|
+
cancel = () => reject(new Error("Broadcast subscription cancelled"));
|
|
154
|
+
timeout = setTimeout(() => reject(new Error("Broadcast subscription readiness timed out")), broadcastLimits.readyTimeoutMs);
|
|
155
|
+
}),
|
|
156
|
+
])
|
|
157
|
+
.catch((error) => {
|
|
158
|
+
stopped = true;
|
|
159
|
+
void release().catch(() => undefined);
|
|
160
|
+
throw error;
|
|
161
|
+
})
|
|
162
|
+
.finally(() => {
|
|
163
|
+
if (timeout !== undefined)
|
|
164
|
+
clearTimeout(timeout);
|
|
165
|
+
cancel = undefined;
|
|
166
|
+
});
|
|
167
|
+
// Callers still observe rejection through ready; early cancellation must not leak a rejection.
|
|
168
|
+
void ready.catch(() => undefined);
|
|
169
|
+
return {
|
|
170
|
+
ready,
|
|
171
|
+
async unsubscribe() {
|
|
172
|
+
stopped = true;
|
|
173
|
+
cancel?.();
|
|
174
|
+
await ready.catch(() => undefined);
|
|
175
|
+
await release();
|
|
176
|
+
},
|
|
177
|
+
};
|
|
178
|
+
},
|
|
179
|
+
};
|
|
180
|
+
}
|
|
181
|
+
/** Bind every channel explicitly, including public channels. */
|
|
182
|
+
export function createBroadcasting() {
|
|
183
|
+
function defineChannelBinding(channel, options) {
|
|
184
|
+
return Object.freeze({
|
|
185
|
+
kind: "channel-binding",
|
|
186
|
+
channel,
|
|
187
|
+
authorize: ({ ctx, params, }) => options.authorize({ ctx, params: params }),
|
|
188
|
+
});
|
|
189
|
+
}
|
|
190
|
+
function defineChannelRegistry(bindings) {
|
|
191
|
+
const byName = new Map();
|
|
192
|
+
for (const binding of bindings) {
|
|
193
|
+
if (byName.has(binding.channel.name))
|
|
194
|
+
throw new BroadcastValidationError(`Duplicate channel ${binding.channel.name}`);
|
|
195
|
+
byName.set(binding.channel.name, binding);
|
|
196
|
+
}
|
|
197
|
+
return Object.freeze({
|
|
198
|
+
kind: "channel-registry",
|
|
199
|
+
bindings: Object.freeze([...bindings]),
|
|
200
|
+
get: (name) => byName.get(name),
|
|
201
|
+
});
|
|
202
|
+
}
|
|
203
|
+
return { defineChannelBinding, defineChannelRegistry };
|
|
204
|
+
}
|
|
205
|
+
/** Validate a configurable deadline without allowing an unbounded stream. */
|
|
206
|
+
export function broadcastLifetime(value = broadcastLimits.maxLifetimeMs) {
|
|
207
|
+
if (!Number.isInteger(value) ||
|
|
208
|
+
value < 1 ||
|
|
209
|
+
value > broadcastLimits.maxLifetimeMs)
|
|
210
|
+
throw new BroadcastValidationError("Broadcast maxLifetimeMs must be between 1 and 60000");
|
|
211
|
+
return value;
|
|
212
|
+
}
|
|
213
|
+
//# sourceMappingURL=server.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/broadcasting/server.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import type { StandardSchemaV1 } from "@standard-schema/spec";
|
|
2
|
+
import type { ChannelDefinition } from "../broadcasting/index.js";
|
|
3
|
+
import type { BroadcastPort, BroadcastPublication } from "../broadcasting/server.js";
|
|
2
4
|
import { type JobDef, type JobDispatcher, type JobHook, type JobRetryOptions, type JobTimeoutDuration } from "../jobs/index.js";
|
|
3
5
|
import type { SendMailOptions } from "../mail/index.js";
|
|
4
6
|
import type { ProviderInstrumentationTarget } from "../providers/index.js";
|
|
@@ -557,6 +559,18 @@ export declare function createQueuedNotificationsProvider<Name extends string, C
|
|
|
557
559
|
* example when a recipient does not have an email address.
|
|
558
560
|
*/
|
|
559
561
|
export declare function defineMailNotificationChannel<Payload extends StandardSchema, Ctx extends MailNotificationContext>(render: MailNotificationRenderer<Payload, Ctx>): NotificationChannelHandler<Payload, Ctx>;
|
|
562
|
+
/** Deliver a typed browser hint through the existing notification delivery pipeline.
|
|
563
|
+
* `sent` means provider acceptance, including when the recipient is offline.
|
|
564
|
+
* Return undefined to skip. Persistent inbox writes and their outbox ordering belong to the app.
|
|
565
|
+
*/
|
|
566
|
+
export declare function defineBroadcastNotificationChannel<C extends ChannelDefinition, Payload extends StandardSchema, Ctx extends {
|
|
567
|
+
ports: {
|
|
568
|
+
broadcast: BroadcastPort;
|
|
569
|
+
};
|
|
570
|
+
}>(options: {
|
|
571
|
+
channel: C;
|
|
572
|
+
render: (args: NotificationChannelHandleArgs<Payload, Ctx>) => MaybePromise<BroadcastPublication<NoInfer<C>> | undefined>;
|
|
573
|
+
}): NotificationChannelHandler<Payload, Ctx>;
|
|
560
574
|
/**
|
|
561
575
|
* Create an in-memory notification port for tests and examples.
|
|
562
576
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/notifications/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/notifications/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -606,6 +606,23 @@ export function defineMailNotificationChannel(render) {
|
|
|
606
606
|
};
|
|
607
607
|
};
|
|
608
608
|
}
|
|
609
|
+
/** Deliver a typed browser hint through the existing notification delivery pipeline.
|
|
610
|
+
* `sent` means provider acceptance, including when the recipient is offline.
|
|
611
|
+
* Return undefined to skip. Persistent inbox writes and their outbox ordering belong to the app.
|
|
612
|
+
*/
|
|
613
|
+
export function defineBroadcastNotificationChannel(options) {
|
|
614
|
+
return async (args) => {
|
|
615
|
+
const publication = await options.render(args);
|
|
616
|
+
if (!publication)
|
|
617
|
+
return {
|
|
618
|
+
channel: args.channel,
|
|
619
|
+
status: "skipped",
|
|
620
|
+
reason: "No broadcast was returned.",
|
|
621
|
+
};
|
|
622
|
+
await args.ctx.ports.broadcast.publish(options.channel, publication);
|
|
623
|
+
return { channel: args.channel, status: "sent" };
|
|
624
|
+
};
|
|
625
|
+
}
|
|
609
626
|
/**
|
|
610
627
|
* Create an in-memory notification port for tests and examples.
|
|
611
628
|
*
|