reactor-effect-native 0.2.0 → 0.3.0-rc.0

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.
Files changed (63) hide show
  1. package/Dockerfile +4 -2
  2. package/README.md +90 -15
  3. package/dist/_internal/bridge.d.ts +70 -14
  4. package/dist/_internal/bridge.d.ts.map +1 -1
  5. package/dist/_internal/bridge.js +290 -145
  6. package/dist/_internal/bridge.js.map +1 -1
  7. package/dist/_internal/isolated/child.d.ts +2 -0
  8. package/dist/_internal/isolated/child.d.ts.map +1 -0
  9. package/dist/_internal/isolated/child.js +176 -0
  10. package/dist/_internal/isolated/child.js.map +1 -0
  11. package/dist/_internal/isolated/host.d.ts +147 -0
  12. package/dist/_internal/isolated/host.d.ts.map +1 -0
  13. package/dist/_internal/isolated/host.js +645 -0
  14. package/dist/_internal/isolated/host.js.map +1 -0
  15. package/dist/_internal/isolated/protocol.d.ts +399 -0
  16. package/dist/_internal/isolated/protocol.d.ts.map +1 -0
  17. package/dist/_internal/isolated/protocol.js +250 -0
  18. package/dist/_internal/isolated/protocol.js.map +1 -0
  19. package/dist/_internal/peer.d.ts +68 -13
  20. package/dist/_internal/peer.d.ts.map +1 -1
  21. package/dist/_internal/peer.js +233 -157
  22. package/dist/_internal/peer.js.map +1 -1
  23. package/dist/index.d.ts +19 -10
  24. package/dist/index.d.ts.map +1 -1
  25. package/dist/index.js +37 -33
  26. package/dist/index.js.map +1 -1
  27. package/dist/isolated.d.ts +25 -0
  28. package/dist/isolated.d.ts.map +1 -0
  29. package/dist/isolated.js +39 -0
  30. package/dist/isolated.js.map +1 -0
  31. package/lib/darwin-arm64/libreactor_effect_native.dylib +0 -0
  32. package/lib/darwin-arm64/native-identity.json +4 -3
  33. package/lib/linux-x64/libreactor_effect_native.so +0 -0
  34. package/lib/linux-x64/native-identity.json +4 -3
  35. package/package.json +7 -3
  36. package/rust/Cargo.toml +108 -2
  37. package/rust/build.rs +253 -114
  38. package/rust/clippy.toml +7 -0
  39. package/rust/include/reactor_effect_native.h +101 -42
  40. package/rust/src/abi.rs +258 -0
  41. package/rust/src/error.rs +149 -0
  42. package/rust/src/ffi/memory.rs +256 -0
  43. package/rust/src/ffi/tests.rs +719 -0
  44. package/rust/src/ffi.rs +474 -0
  45. package/rust/src/lib.rs +36 -2341
  46. package/rust/src/peer/callbacks.rs +145 -0
  47. package/rust/src/peer/media.rs +221 -0
  48. package/rust/src/peer/owner/tests.rs +188 -0
  49. package/rust/src/peer/owner.rs +353 -0
  50. package/rust/src/peer/shared.rs +323 -0
  51. package/rust/src/peer/tests.rs +513 -0
  52. package/rust/src/peer.rs +189 -0
  53. package/rust/src/protocol/event.rs +238 -0
  54. package/rust/src/protocol/request.rs +347 -0
  55. package/rust/src/protocol/stats.rs +356 -0
  56. package/rust/src/protocol.rs +71 -0
  57. package/rust/src/sync/gate.rs +159 -0
  58. package/rust/src/sync/notifier.rs +136 -0
  59. package/rust/src/sync/queue.rs +384 -0
  60. package/rust/src/sync.rs +20 -0
  61. package/rust/src/test_support.rs +99 -0
  62. package/rust-toolchain.toml +7 -0
  63. package/scripts/stage.mjs +41 -1
@@ -1 +1 @@
1
- {"version":3,"file":"bridge.js","sourceRoot":"","sources":["../../src/_internal/bridge.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bridge.js","sourceRoot":"","sources":["../../src/_internal/bridge.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=child.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"child.d.ts","sourceRoot":"","sources":["../../../src/_internal/isolated/child.ts"],"names":[],"mappings":""}
@@ -0,0 +1,176 @@
1
+ /**
2
+ * The isolated native host's child process. The parent forks this module for
3
+ * one peer, with advanced serialization on its IPC channel, and this process
4
+ * serves one in-process `NativePeer` to it over Effect RPC. It sees ICE
5
+ * configuration, SDP, channel bytes and media; allocation, credentials,
6
+ * correlation and termination stay in the parent.
7
+ */
8
+ import process from "node:process";
9
+ import * as NodeWorkerRunner from "@effect/platform-node/NodeWorkerRunner";
10
+ import * as Arr from "effect/Array";
11
+ import * as Cause from "effect/Cause";
12
+ import * as Duration from "effect/Duration";
13
+ import * as Effect from "effect/Effect";
14
+ import * as Exit from "effect/Exit";
15
+ import * as Layer from "effect/Layer";
16
+ import * as Queue from "effect/Queue";
17
+ import * as Stream from "effect/Stream";
18
+ import * as Rpc from "effect/unstable/rpc/Rpc";
19
+ import * as RpcServer from "effect/unstable/rpc/RpcServer";
20
+ import { ReactorError } from "reactor-effect-client";
21
+ import { parsed } from "reactor-effect-client/host";
22
+ import { resolveNativeBridge } from "../bridge.js";
23
+ import { NativePeer } from "../peer.js";
24
+ import { eventToWire, IsolatedRpcs, toWire } from "./protocol.js";
25
+ /** The native event queue's own bounds: 1,024 events and 16 MiB. */
26
+ const EVENT_CAPACITY = 1024;
27
+ const EVENT_BYTES = 16 * 1024 * 1024;
28
+ /**
29
+ * Frames held for the parent while its channel is busy, at most the native
30
+ * queues' own depths. A full handoff evicts its oldest frame and counts it, as
31
+ * the native queue does, so a parent that stalls loses frames rather than its
32
+ * reader.
33
+ */
34
+ const VIDEO_HANDOFF = 8;
35
+ const AUDIO_HANDOFF = 256;
36
+ const videoToWire = (frame) => ({
37
+ width: frame.width,
38
+ height: frame.height,
39
+ frameId: frame.frameId,
40
+ timestampMicros: frame.timestampMicros,
41
+ sequence: frame.sequence,
42
+ data: frame.data,
43
+ metadata: frame.metadata,
44
+ });
45
+ const audioToWire = (frame) => ({
46
+ sampleRate: frame.sampleRate,
47
+ channels: frame.channels,
48
+ sequence: frame.sequence,
49
+ samples: frame.samples,
50
+ });
51
+ const wire = (effect) => Effect.mapError(effect, toWire);
52
+ const handlers = IsolatedRpcs.toLayer(Effect.sync(() => {
53
+ let peer;
54
+ /** Ends each open prepare stream once the peer has shut down. */
55
+ const endings = new Set();
56
+ const evicted = { video: 0n, audio: 0n };
57
+ const current = Effect.suspend(() => peer === undefined
58
+ ? Effect.fail(ReactorError.fromCode("InvalidState", "isolated native child has no open peer", {
59
+ outcome: "not-submitted",
60
+ }))
61
+ : Effect.succeed(peer));
62
+ const withPeer = (body) => wire(Effect.flatMap(current, body));
63
+ const open = (libraryPath) => wire(Effect.tryPromise({
64
+ try: () => resolveNativeBridge(libraryPath),
65
+ catch: (cause) => ReactorError.is(cause)
66
+ ? cause
67
+ : ReactorError.fromCode("Native", "native WebRTC preflight failed", {
68
+ detail: cause,
69
+ outcome: "not-submitted",
70
+ }),
71
+ }).pipe(Effect.flatMap((resolved) => parsed(() => {
72
+ // The parent's deadline bounds this join, and it kills the child on expiry.
73
+ peer ??= new NativePeer(resolved, Duration.infinity);
74
+ }))));
75
+ /** The offer, then every peer event, bounded as the native event queue is. */
76
+ const prepare = (servers, tracks) => Stream.unwrap(Effect.gen(function* () {
77
+ const target = yield* current;
78
+ const queue = yield* Queue.bounded(EVENT_CAPACITY);
79
+ const end = () => {
80
+ Queue.endUnsafe(queue);
81
+ };
82
+ endings.add(end);
83
+ yield* Effect.addFinalizer(() => Effect.sync(() => endings.delete(end)));
84
+ let queuedBytes = 0;
85
+ const offer = (event) => {
86
+ const bytes = event.type === "message" ? event.bytes.byteLength : 0;
87
+ if (queuedBytes + bytes > EVENT_BYTES ||
88
+ !Queue.offerUnsafe(queue, {
89
+ item: { _tag: "Event", event: eventToWire(event) },
90
+ bytes,
91
+ })) {
92
+ Queue.failCauseUnsafe(queue, Cause.fail(ReactorError.fromCode("Overflow", "isolated native event queue bound exceeded")));
93
+ return;
94
+ }
95
+ queuedBytes += bytes;
96
+ };
97
+ const prepared = yield* target.prepare(servers, tracks, offer);
98
+ const next = Effect.map(Queue.takeAll(queue), (entries) => Arr.map(entries, (entry) => {
99
+ queuedBytes -= entry.bytes;
100
+ return entry.item;
101
+ }));
102
+ return Stream.succeed({
103
+ _tag: "Prepared",
104
+ sdp: prepared.sdp,
105
+ mapping: prepared.mapping,
106
+ }).pipe(Stream.concat(Stream.fromPull(Effect.succeed(next))));
107
+ })).pipe(Stream.mapError(toWire));
108
+ /**
109
+ * One track's frames, one per chunk: the server waits for the parent's
110
+ * acknowledgement of each chunk, so the parent's credit is one frame.
111
+ */
112
+ const frames = (kind, capacity, source, encode) => Stream.unwrap(Effect.gen(function* () {
113
+ const target = yield* current;
114
+ const queue = yield* Queue.sliding(capacity);
115
+ yield* source(target).pipe(Stream.runForEach((frame) => Effect.sync(() => {
116
+ if (Queue.isFullUnsafe(queue))
117
+ evicted[kind]++;
118
+ Queue.offerUnsafe(queue, encode(frame));
119
+ })), Effect.onExit((exit) => Exit.isSuccess(exit) ? Queue.end(queue) : Queue.failCause(queue, exit.cause)),
120
+ // Subscribe before the next request is handled: a frame that
121
+ // request releases is then already observed.
122
+ Effect.forkScoped({ startImmediately: true }));
123
+ return Stream.fromEffectRepeat(Queue.take(queue));
124
+ })).pipe(Stream.mapError(toWire));
125
+ /**
126
+ * The native snapshot with the handoffs folded in: an evicted frame is
127
+ * dropped rather than delivered, so arrivals still add up.
128
+ */
129
+ const pressure = (snapshot) => {
130
+ const video = evicted.video, audio = evicted.audio;
131
+ return {
132
+ ...snapshot,
133
+ droppedVideo: snapshot.droppedVideo + video,
134
+ droppedAudio: snapshot.droppedAudio + audio,
135
+ deliveredVideo: snapshot.deliveredVideo > video ? snapshot.deliveredVideo - video : 0n,
136
+ deliveredAudio: snapshot.deliveredAudio > audio ? snapshot.deliveredAudio - audio : 0n,
137
+ };
138
+ };
139
+ return {
140
+ Open: ({ libraryPath }) => Rpc.uninterruptible(open(libraryPath)),
141
+ Prepare: ({ servers, tracks }) => prepare(servers.map((server) => ({ ...server, urls: [...server.urls] })), tracks),
142
+ Answer: ({ sdp }) => Rpc.uninterruptible(withPeer((target) => target.answer(sdp))),
143
+ Send: ({ channel, bytes }) => Rpc.uninterruptible(withPeer((target) => target.send(channel, bytes))),
144
+ Direction: ({ name, active }) => Rpc.uninterruptible(withPeer((target) => target.direction(name, active))),
145
+ // Through the peer contract: only the absence of a track crosses processes.
146
+ Replace: ({ name }) => Rpc.uninterruptible(withPeer((target) => target.replace(name, null))),
147
+ MaxBitrate: ({ name, bitsPerSecond }) => Rpc.uninterruptible(withPeer((target) => target.maxBitrate(name, bitsPerSecond))),
148
+ Stats: () => withPeer((target) => target.stats),
149
+ Snapshot: () => withPeer((target) => Effect.map(target.rawMedia.snapshot, pressure)),
150
+ Video: ({ name }) => frames("video", VIDEO_HANDOFF, (target) => target.rawMedia.video(name), videoToWire),
151
+ Audio: ({ name }) => frames("audio", AUDIO_HANDOFF, (target) => target.rawMedia.audio(name), audioToWire),
152
+ Shutdown: () => Rpc.uninterruptible(Effect.suspend(() => (peer === undefined ? Effect.void : wire(peer.shutdown))).pipe(
153
+ // The closed peer emits nothing more: end its event streams.
154
+ Effect.ensuring(Effect.sync(() => {
155
+ for (const end of endings)
156
+ end();
157
+ })))),
158
+ };
159
+ }));
160
+ // The parent owns this process: once its channel closes, nothing can reach
161
+ // this peer again, so the child ends at once rather than outlive its parent.
162
+ process.once("disconnect", () => {
163
+ process.kill(process.pid, "SIGKILL");
164
+ });
165
+ // A terminal interrupt reaches the whole process group; the parent decides
166
+ // when its child ends, through shutdown or its own exit.
167
+ process.on("SIGINT", () => undefined);
168
+ const server = RpcServer.layer(IsolatedRpcs, {
169
+ disableFatalDefects: true,
170
+ disableTracing: true,
171
+ }).pipe(Layer.provide(handlers), Layer.provide(RpcServer.layerProtocolWorkerRunner), Layer.provide(NodeWorkerRunner.layer));
172
+ // The runner ends when the parent closes the worker, after shutdown.
173
+ Effect.runFork(Layer.launch(server)).addObserver((exit) => {
174
+ process.exit(Exit.isSuccess(exit) || Cause.hasInterruptsOnly(exit.cause) ? 0 : 1);
175
+ });
176
+ //# sourceMappingURL=child.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"child.js","sourceRoot":"","sources":["../../../src/_internal/isolated/child.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,147 @@
1
+ import type { ChildProcess } from "node:child_process";
2
+ import * as Context from "effect/Context";
3
+ import * as Deferred from "effect/Deferred";
4
+ import type * as Duration from "effect/Duration";
5
+ import * as Effect from "effect/Effect";
6
+ import * as Scope from "effect/Scope";
7
+ import { RpcClientError } from "effect/unstable/rpc/RpcClientError";
8
+ import * as Worker from "effect/unstable/workers/Worker";
9
+ import { ReactorError } from "reactor-effect-client";
10
+ import type { PeerFactoryShape, Track } from "reactor-effect-client";
11
+ import type { Channel, IceServer, MediaTrack, Peer, PeerEvent, Prepared, RawMedia } from "reactor-effect-client/host";
12
+ /**
13
+ * One child process and what its protocol observed. The host fences on it,
14
+ * and the package's tests read it; it is not a package export.
15
+ */
16
+ export declare class Link {
17
+ private readonly entry;
18
+ child: ChildProcess | undefined;
19
+ /**
20
+ * Set once the child can take no request. Every later request fails before
21
+ * dispatch: `Worker.send` would otherwise buffer it without bound for a
22
+ * worker that will never become ready again.
23
+ */
24
+ fence: RpcClientError | undefined;
25
+ exit: {
26
+ readonly code: number | null;
27
+ readonly signal: NodeJS.Signals | null;
28
+ } | undefined;
29
+ readonly exited: Deferred.Deferred<void, never>;
30
+ spawns: number;
31
+ dispatched: number;
32
+ /** Replies and chunks that arrived for requests nobody awaits any longer. */
33
+ late: number;
34
+ /** Events and frames that arrived after the peer was retired. */
35
+ retired: number;
36
+ /** The most chunks of one stream the parent held unacknowledged. */
37
+ maxUnacked: number;
38
+ /** The most frames one chunk of a track stream carried. */
39
+ maxFramesPerChunk: number;
40
+ private readonly unacked;
41
+ private readonly frameStreams;
42
+ constructor(entry: string);
43
+ spawn(): ChildProcess;
44
+ refuse(): void;
45
+ kill(): void;
46
+ request(id: string, tag: string): void;
47
+ chunk(id: string, values: number): void;
48
+ ack(id: string): void;
49
+ settle(id: string): void;
50
+ }
51
+ export interface Environment {
52
+ readonly platform: Context.Context<Worker.WorkerPlatform>;
53
+ readonly libraryPath: string | undefined;
54
+ readonly shutdownTimeout: Duration.Duration;
55
+ readonly entry: string;
56
+ readonly release: (peer: IsolatedPeer) => void;
57
+ }
58
+ /**
59
+ * One peer in a child process of its own. Its child is spawned as the peer is
60
+ * made, so the child starts while the session allocates; every call waits for
61
+ * the child to open its native peer.
62
+ */
63
+ export declare class IsolatedPeer implements Peer {
64
+ private readonly environment;
65
+ readonly nativeTracks = false;
66
+ readonly rawMedia: RawMedia;
67
+ readonly link: Link;
68
+ private readonly scope;
69
+ private readonly client;
70
+ private readonly opening;
71
+ private readonly video;
72
+ private readonly audio;
73
+ private readonly incoming;
74
+ private media;
75
+ private emit;
76
+ private closed;
77
+ private failureEmitted;
78
+ private failure;
79
+ private closing;
80
+ private finished;
81
+ constructor(environment: Environment);
82
+ /** The child's native peer is open: succeeds once `Open` has replied. */
83
+ get opened(): Effect.Effect<void, ReactorError>;
84
+ private get open();
85
+ /** Nothing remote was dispatched while a child opened its peer, whatever failed. */
86
+ private openFailure;
87
+ private connected;
88
+ /**
89
+ * A failure after the call reached the protocol. The child's own failure
90
+ * keeps its evidence. Otherwise the child or its channel failed, or the
91
+ * wait ended from the RPC side: after dispatch the outcome is unknown,
92
+ * before it the request was not submitted.
93
+ */
94
+ private lost;
95
+ private call;
96
+ private readerOverflows;
97
+ private snapshot;
98
+ /**
99
+ * A track's readers share one observation, fed by one RPC stream from the
100
+ * child for this generation, which the first reader opens.
101
+ */
102
+ private track;
103
+ private pump;
104
+ prepare(servers: readonly IceServer[], tracks: readonly Track[], emit: (event: PeerEvent) => void): Effect.Effect<Prepared, ReactorError, Scope.Scope>;
105
+ /** The child's peer events, in order, until the peer retires. */
106
+ private deliver;
107
+ private receive;
108
+ private fail;
109
+ answer(sdp: string): Effect.Effect<void, ReactorError>;
110
+ send(channel: Channel, bytes: Uint8Array<ArrayBuffer>): Effect.Effect<void, ReactorError>;
111
+ direction(name: string, active: boolean): Effect.Effect<void, ReactorError>;
112
+ maxBitrate(name: string, bitsPerSecond: number): Effect.Effect<void, ReactorError>;
113
+ get stats(): Effect.Effect<readonly unknown[], ReactorError>;
114
+ lease(): MediaTrack;
115
+ release(): void;
116
+ /** Only the absence of a track crosses the process boundary. */
117
+ replace(name: string, track: MediaTrack | null): Effect.Effect<void, ReactorError>;
118
+ /**
119
+ * Retire the peer in this process at once: no later event or frame reaches
120
+ * the session, and every later call fails before dispatch. The child's
121
+ * native peer closes when `shutdown` runs.
122
+ */
123
+ close(): void;
124
+ /**
125
+ * Close, then ask the child to close and join its native peer, bounded by
126
+ * `shutdownTimeout`. A child that has not exited by then is killed, and the
127
+ * shutdown fails with `Shutdown`; so does a join the child reports failed.
128
+ * Either way the child is gone once this completes, and its native state
129
+ * with it. Idempotent: later runs await the first.
130
+ */
131
+ get shutdown(): Effect.Effect<void, ReactorError>;
132
+ private get windDown();
133
+ /** The graceful path: the child joins its native peer, then exits when its runner closes. */
134
+ private get join();
135
+ /** The child is gone, by exit or by kill, and its client and worker are released. */
136
+ private get terminate();
137
+ private closeScope;
138
+ }
139
+ /**
140
+ * The isolated factory: preflight by spawning a probe child that loads and
141
+ * verifies the library and opens a native peer, then shuts it down.
142
+ */
143
+ export declare const factory: (options: {
144
+ readonly libraryPath: string | undefined;
145
+ readonly shutdownTimeout: Duration.Duration;
146
+ }) => Effect.Effect<PeerFactoryShape, ReactorError, Scope.Scope>;
147
+ //# sourceMappingURL=host.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"host.d.ts","sourceRoot":"","sources":["../../../src/_internal/isolated/host.ts"],"names":[],"mappings":"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"}