@sentropic/h2a-runtime 0.94.3 → 0.95.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 (41) hide show
  1. package/dist/cli-help-groups.d.ts.map +1 -1
  2. package/dist/cli-help-groups.js +1 -0
  3. package/dist/cli-help-groups.js.map +1 -1
  4. package/dist/index.d.ts +3 -0
  5. package/dist/index.d.ts.map +1 -1
  6. package/dist/index.js +177 -1
  7. package/dist/index.js.map +1 -1
  8. package/dist/native-host.d.ts +16 -0
  9. package/dist/native-host.d.ts.map +1 -1
  10. package/dist/native-host.js +41 -0
  11. package/dist/native-host.js.map +1 -1
  12. package/dist/native-restart.d.ts +74 -0
  13. package/dist/native-restart.d.ts.map +1 -0
  14. package/dist/native-restart.js +182 -0
  15. package/dist/native-restart.js.map +1 -0
  16. package/dist/native-terminal/client.d.ts +4 -2
  17. package/dist/native-terminal/client.d.ts.map +1 -1
  18. package/dist/native-terminal/client.js +10 -2
  19. package/dist/native-terminal/client.js.map +1 -1
  20. package/dist/native-terminal/host.d.ts +41 -19
  21. package/dist/native-terminal/host.d.ts.map +1 -1
  22. package/dist/native-terminal/host.js +102 -6
  23. package/dist/native-terminal/host.js.map +1 -1
  24. package/dist/native-terminal/op.d.ts.map +1 -1
  25. package/dist/native-terminal/op.js +128 -1
  26. package/dist/native-terminal/op.js.map +1 -1
  27. package/dist/native-terminal/protocol.d.ts +1 -1
  28. package/dist/native-terminal/protocol.d.ts.map +1 -1
  29. package/dist/native-terminal/protocol.js +2 -0
  30. package/dist/native-terminal/protocol.js.map +1 -1
  31. package/dist/native-terminal/server.d.ts.map +1 -1
  32. package/dist/native-terminal/server.js +30 -1
  33. package/dist/native-terminal/server.js.map +1 -1
  34. package/dist/native-terminal/socket-path.d.ts +6 -0
  35. package/dist/native-terminal/socket-path.d.ts.map +1 -1
  36. package/dist/native-terminal/socket-path.js +5 -1
  37. package/dist/native-terminal/socket-path.js.map +1 -1
  38. package/dist/native-terminal/supervisor.d.ts.map +1 -1
  39. package/dist/native-terminal/supervisor.js +71 -7
  40. package/dist/native-terminal/supervisor.js.map +1 -1
  41. package/package.json +1 -1
@@ -16,12 +16,15 @@
16
16
  * (exit 0) so a caller never reads a
17
17
  * generic failure as proof of death
18
18
  * create --id X --cwd D [--cols N --rows N] [--env-file F] -- cmd args...
19
+ * drive --target I --b64 TEXT resolve a native session and submit TEXT
19
20
  * write --id X --b64 TEXT raw keystrokes (base64, controller-scoped)
20
21
  * paste --id X --b64 TEXT ONE bracketed-paste block (tmux paste -p twin)
21
22
  * enter --id X submit (CR)
22
23
  * capture --id X [--bytes N] -> {text} ANSI-stripped tail of the stream
23
24
  * pid --id X -> {pid}
24
25
  * kill --id X [--signal S] stop the session (escalates to SIGKILL)
26
+ * kill-if-incarnation --id X --generation G --incarnation I
27
+ * fenced owner stop for explicit restart
25
28
  * attach --id X interactive raw bridge on this terminal
26
29
  * (detach: Ctrl-\\ ; exits when session exits)
27
30
  * host-stop SIGTERM the host process (sessions stop)
@@ -30,6 +33,7 @@ import { readFileSync } from "node:fs";
30
33
  import { dirname } from "node:path";
31
34
  import { fileURLToPath } from "node:url";
32
35
  import { NativeTerminalClient } from "./client.js";
36
+ import { loadRegistry, registryEntriesForNativeTarget } from "../registry.js";
33
37
  import { NATIVE_TERMINAL_INTERACTIVE_READ_TIMEOUT_MS, NativeTerminalRemoteError, } from "./protocol.js";
34
38
  import { NativeTerminalHostSupervisor } from "./supervisor.js";
35
39
  import { defaultNativeTerminalSocketPath } from "./socket-path.js";
@@ -117,6 +121,51 @@ async function readAll(client, id) {
117
121
  const replay = await client.readOutput(id, 0);
118
122
  return replay.chunks.map((chunk) => chunk.data).join("");
119
123
  }
124
+ const NATIVE_DRIVE_ACTIVITY_WINDOW_MS = 4_000;
125
+ function nativeDriveActivityWindowMs() {
126
+ const raw = process.env["H2A_WAKE_DEFER_ACTIVITY_MS"];
127
+ if (raw !== undefined) {
128
+ const parsed = Number.parseInt(raw, 10);
129
+ if (Number.isFinite(parsed) && parsed >= 0)
130
+ return parsed;
131
+ }
132
+ return NATIVE_DRIVE_ACTIVITY_WINDOW_MS;
133
+ }
134
+ function nativeDriveSessionId(target) {
135
+ const registry = loadRegistry();
136
+ if (registry.state !== "ok")
137
+ return { state: "unknown" };
138
+ const labels = [target];
139
+ const hostSeparator = target.indexOf(":");
140
+ if (hostSeparator > 0 && hostSeparator < target.length - 1) {
141
+ labels.push(target.slice(hostSeparator + 1));
142
+ }
143
+ const sessions = new Set();
144
+ let matches = 0;
145
+ let hasUnknownSessionId = false;
146
+ for (const label of labels) {
147
+ for (const entry of registryEntriesForNativeTarget(label, registry.entries)) {
148
+ matches += 1;
149
+ if (entry.tmuxSession === undefined)
150
+ hasUnknownSessionId = true;
151
+ else
152
+ sessions.add(entry.tmuxSession);
153
+ }
154
+ }
155
+ if (matches === 0)
156
+ return { state: "unresolved" };
157
+ if (hasUnknownSessionId || sessions.size !== 1)
158
+ return { state: "unknown" };
159
+ return { state: "found", id: [...sessions][0] };
160
+ }
161
+ function nativeDriveInstruction(text) {
162
+ // The PTY write appends the one submit CR below. Reject every embedded
163
+ // control/format character (including CR, LF, escape, and Unicode line
164
+ // separators) so an instruction can never add a second line or sequence.
165
+ if (text.length === 0 || /[\p{Cc}\p{Cf}\u2028\u2029]/u.test(text))
166
+ return undefined;
167
+ return text;
168
+ }
120
169
  const delay = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
121
170
  const ATTACH_STATE_POLL_MS = 1_000;
122
171
  const ATTACH_ACTIVE_POLL_MS = 100;
@@ -254,7 +303,7 @@ export async function runAttach(id, runtime = defaultAttachRuntime(socketPathFro
254
303
  client.close();
255
304
  return state;
256
305
  }
257
- const lease = await client.acquireController(id, `h2a-attach-${process.pid}`);
306
+ const lease = await client.acquireController(id, `h2a-attach-${process.pid}`, "human");
258
307
  active = { client, lease };
259
308
  transportFailure = undefined;
260
309
  resize();
@@ -481,6 +530,51 @@ export async function runNativeTerminalOp(argv) {
481
530
  emit(state);
482
531
  return 0;
483
532
  }
533
+ case "drive": {
534
+ const target = nativeDriveSessionId(required(parsed, "target"));
535
+ if (target.state === "unresolved") {
536
+ emit({ outcome: "unresolved" });
537
+ return 0;
538
+ }
539
+ if (target.state === "unknown") {
540
+ emit({ outcome: "deferred" });
541
+ return 0;
542
+ }
543
+ const text = nativeDriveInstruction(Buffer.from(required(parsed, "b64"), "base64").toString("utf8"));
544
+ if (text === undefined) {
545
+ emit({
546
+ outcome: "failed",
547
+ reason: "native drive instruction must be exactly one text line with no control characters",
548
+ });
549
+ return 0;
550
+ }
551
+ const client = await connectExisting(socketPath);
552
+ try {
553
+ let lease;
554
+ try {
555
+ // This is one host-side operation. An older host that does not
556
+ // support it rejects the request, which is deliberately deferred.
557
+ lease = await client.acquireAutomationControllerIfNoRecentHuman(target.id, `h2a-drive-${process.pid}`, nativeDriveActivityWindowMs());
558
+ }
559
+ catch {
560
+ emit({ outcome: "deferred" });
561
+ return 0;
562
+ }
563
+ try {
564
+ // One validated text line plus one submit CR: no bracketed-paste or
565
+ // embedded controls can turn this into multiple terminal actions.
566
+ await client.write(lease, `${text}\r`);
567
+ }
568
+ finally {
569
+ await client.releaseController(lease).catch(() => { });
570
+ }
571
+ }
572
+ finally {
573
+ client.close();
574
+ }
575
+ emit({ outcome: "driven" });
576
+ return 0;
577
+ }
484
578
  case "write":
485
579
  case "paste": {
486
580
  const client = await connectExisting(socketPath);
@@ -553,6 +647,39 @@ export async function runNativeTerminalOp(argv) {
553
647
  emit(after);
554
648
  return after.status === "exited" ? 0 : 1;
555
649
  }
650
+ case "kill-if-incarnation": {
651
+ const client = await connectExisting(socketPath);
652
+ const id = required(parsed, "id");
653
+ const generation = required(parsed, "generation");
654
+ const incarnation = required(parsed, "incarnation");
655
+ const signal = parsed.flags.get("signal") ?? "SIGTERM";
656
+ if (signal !== "SIGTERM" && signal !== "SIGKILL" && signal !== "SIGINT" && signal !== "SIGHUP") {
657
+ throw new Error(`unsupported signal: ${signal}`);
658
+ }
659
+ const before = await client.state(id);
660
+ if (before.status !== "exited") {
661
+ await client.stopIfIncarnation(id, generation, incarnation, signal);
662
+ const deadline = Date.now() + 4_000;
663
+ for (;;) {
664
+ const state = await client.state(id);
665
+ if (state.status === "exited")
666
+ break;
667
+ if (Date.now() >= deadline) {
668
+ // Escalation stays fenced to the SAME preflight incarnation. If a
669
+ // same-name replacement appeared, the host refuses instead of
670
+ // killing it.
671
+ await client.stopIfIncarnation(id, generation, incarnation, "SIGKILL").catch(() => { });
672
+ await delay(300);
673
+ break;
674
+ }
675
+ await delay(100);
676
+ }
677
+ }
678
+ const after = await client.state(id);
679
+ client.close();
680
+ emit(after);
681
+ return after.status === "exited" ? 0 : 1;
682
+ }
556
683
  case "attach": {
557
684
  return runAttach(required(parsed, "id"), defaultAttachRuntime(socketPath));
558
685
  }
@@ -1 +1 @@
1
- {"version":3,"file":"op.js","sourceRoot":"","sources":["../../src/native-terminal/op.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"op.js","sourceRoot":"","sources":["../../src/native-terminal/op.ts"],"names":[],"mappings":"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"}
@@ -21,7 +21,7 @@ export declare const NATIVE_TERMINAL_MAX_PENDING_RESPONSE_BYTES_TOTAL: number;
21
21
  export declare const NATIVE_TERMINAL_STOP_SIGNALS: readonly ["SIGHUP", "SIGINT", "SIGTERM", "SIGKILL"];
22
22
  export type NativeTerminalStopSignal = (typeof NATIVE_TERMINAL_STOP_SIGNALS)[number];
23
23
  export declare function isNativeTerminalStopSignal(value: unknown): value is NativeTerminalStopSignal;
24
- export type NativeTerminalOperation = "ping" | "create" | "list" | "state" | "read-output" | "attach-observer" | "acquire-controller" | "release-controller" | "write" | "resize" | "stop";
24
+ export type NativeTerminalOperation = "ping" | "create" | "list" | "state" | "read-output" | "attach-observer" | "acquire-controller" | "acquire-controller-if-no-recent-human" | "release-controller" | "write" | "resize" | "stop" | "stop-if-incarnation";
25
25
  export type NativeTerminalRequest = Readonly<{
26
26
  version: typeof NATIVE_TERMINAL_PROTOCOL_VERSION;
27
27
  id: string;
@@ -1 +1 @@
1
- {"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../../src/native-terminal/protocol.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../../src/native-terminal/protocol.ts"],"names":[],"mappings":"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"}
@@ -92,10 +92,12 @@ export function parseNativeTerminalRequest(value) {
92
92
  "read-output",
93
93
  "attach-observer",
94
94
  "acquire-controller",
95
+ "acquire-controller-if-no-recent-human",
95
96
  "release-controller",
96
97
  "write",
97
98
  "resize",
98
99
  "stop",
100
+ "stop-if-incarnation",
99
101
  ]);
100
102
  if (typeof value.operation !== "string" || !operations.has(value.operation)) {
101
103
  throw new TypeError("unknown terminal operation");
@@ -1 +1 @@
1
- {"version":3,"file":"protocol.js","sourceRoot":"","sources":["../../src/native-terminal/protocol.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"protocol.js","sourceRoot":"","sources":["../../src/native-terminal/protocol.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/native-terminal/server.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,kBAAkB,EAGnB,MAAM,WAAW,CAAC;AAgiBnB,MAAM,MAAM,wBAAwB,GAAG,QAAQ,CAAC;IAC9C,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,OAAO,CAAC,EAAE;QAAE,YAAY,CAAC,EAAE,OAAO,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC7E,CAAC,CAAC;AAEH,wBAAsB,6BAA6B,CAAC,OAAO,EAAE;IAC3D,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,kBAAkB,CAAC;CAC1B,GAAG,OAAO,CAAC,wBAAwB,CAAC,CAuGpC"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/native-terminal/server.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,kBAAkB,EAInB,MAAM,WAAW,CAAC;AA2kBnB,MAAM,MAAM,wBAAwB,GAAG,QAAQ,CAAC;IAC9C,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,OAAO,CAAC,EAAE;QAAE,YAAY,CAAC,EAAE,OAAO,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC7E,CAAC,CAAC;AAEH,wBAAsB,6BAA6B,CAAC,OAAO,EAAE;IAC3D,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,kBAAkB,CAAC;CAC1B,GAAG,OAAO,CAAC,wBAAwB,CAAC,CAuGpC"}
@@ -32,6 +32,21 @@ function requiredInteger(value, label) {
32
32
  }
33
33
  return value;
34
34
  }
35
+ function requiredNonNegativeInteger(value, label) {
36
+ if (!Number.isSafeInteger(value) || value < 0) {
37
+ throw new TypeError(`${label} must be a non-negative safe integer`);
38
+ }
39
+ return value;
40
+ }
41
+ function controllerActivity(value) {
42
+ // A legacy request cannot prove that its holder is automation. Preserve the
43
+ // operation, but record it on the human/unknown side so drive fails closed.
44
+ if (value === undefined)
45
+ return "human";
46
+ if (value === "human" || value === "automation")
47
+ return value;
48
+ throw new TypeError("terminal controller activity must be human or automation");
49
+ }
35
50
  function sessionId(params) {
36
51
  return requiredIdentifier(requiredRecord(params, "params").id, "session id");
37
52
  }
@@ -120,7 +135,13 @@ function dispatch(host, context, request) {
120
135
  return host.attachObserver(sessionId(params));
121
136
  case "acquire-controller": {
122
137
  const record = requiredRecord(params, "params");
123
- const lease = host.acquireController(requiredIdentifier(record.id, "session id"), requiredIdentifier(record.controllerId, "controller id"));
138
+ const lease = host.acquireController(requiredIdentifier(record.id, "session id"), requiredIdentifier(record.controllerId, "controller id"), controllerActivity(record.activity));
139
+ context.leases.set(lease.id, lease);
140
+ return lease;
141
+ }
142
+ case "acquire-controller-if-no-recent-human": {
143
+ const record = requiredRecord(params, "params");
144
+ const lease = host.acquireAutomationControllerIfNoRecentHuman(requiredIdentifier(record.id, "session id"), requiredIdentifier(record.controllerId, "controller id"), requiredNonNegativeInteger(record.activityWindowMs, "human activity window"));
124
145
  context.leases.set(lease.id, lease);
125
146
  return lease;
126
147
  }
@@ -151,6 +172,14 @@ function dispatch(host, context, request) {
151
172
  }
152
173
  return host.stop(lease, record.signal);
153
174
  }
175
+ case "stop-if-incarnation": {
176
+ const record = requiredRecord(params, "params");
177
+ if (record.signal !== undefined &&
178
+ !isNativeTerminalStopSignal(record.signal)) {
179
+ throw new TypeError("terminal stop signal must be SIGHUP, SIGINT, SIGTERM or SIGKILL");
180
+ }
181
+ return host.stopIfIncarnation(requiredIdentifier(record.id, "session id"), requiredIdentifier(record.generation, "host generation"), requiredIdentifier(record.incarnation, "session incarnation"), record.signal);
182
+ }
154
183
  }
155
184
  }
156
185
  function responseFrame(response) {
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/native-terminal/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/native-terminal/server.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import type { Stats } from "node:fs";
1
2
  export type NativeTerminalSocketIdentity = Readonly<{
2
3
  dev: number;
3
4
  ino: number;
@@ -10,6 +11,11 @@ export declare function assertNativeTerminalSocketPathWithinLimit(socketPath: st
10
11
  * The parent directory is created (0700) by the host server on startup.
11
12
  */
12
13
  export declare function defaultNativeTerminalSocketPath(env?: Readonly<Record<string, string | undefined>>): string;
14
+ /**
15
+ * Shared ownership check for user-private runtime resources. Callers still own
16
+ * their resource-specific type and mode checks.
17
+ */
18
+ export declare function assertOwnedByCurrentUser(info: Stats, label: string): void;
13
19
  export declare function assertPrivateNativeTerminalSocketDirectory(socketPath: string): Promise<void>;
14
20
  export declare function inspectPrivateNativeTerminalSocket(socketPath: string): Promise<NativeTerminalSocketIdentity>;
15
21
  export declare function sameNativeTerminalSocket(left: NativeTerminalSocketIdentity, right: NativeTerminalSocketIdentity): boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"socket-path.d.ts","sourceRoot":"","sources":["../../src/native-terminal/socket-path.ts"],"names":[],"mappings":"AAKA,MAAM,MAAM,4BAA4B,GAAG,QAAQ,CAAC;IAClD,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;CACb,CAAC,CAAC;AASH,wBAAgB,yCAAyC,CACvD,UAAU,EAAE,MAAM,EAClB,KAAK,SAA8B,GAClC,IAAI,CAQN;AAMD;;;;;GAKG;AACH,wBAAgB,+BAA+B,CAC7C,GAAG,GAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAe,GAC9D,MAAM,CAQR;AASD,wBAAsB,0CAA0C,CAC9D,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,IAAI,CAAC,CAgBf;AAED,wBAAsB,kCAAkC,CACtD,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,4BAA4B,CAAC,CAWvC;AAED,wBAAgB,wBAAwB,CACtC,IAAI,EAAE,4BAA4B,EAClC,KAAK,EAAE,4BAA4B,GAClC,OAAO,CAET"}
1
+ {"version":3,"file":"socket-path.d.ts","sourceRoot":"","sources":["../../src/native-terminal/socket-path.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAKrC,MAAM,MAAM,4BAA4B,GAAG,QAAQ,CAAC;IAClD,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;CACb,CAAC,CAAC;AASH,wBAAgB,yCAAyC,CACvD,UAAU,EAAE,MAAM,EAClB,KAAK,SAA8B,GAClC,IAAI,CAQN;AAMD;;;;;GAKG;AACH,wBAAgB,+BAA+B,CAC7C,GAAG,GAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAe,GAC9D,MAAM,CAQR;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAKzE;AAED,wBAAsB,0CAA0C,CAC9D,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,IAAI,CAAC,CAgBf;AAED,wBAAsB,kCAAkC,CACtD,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,4BAA4B,CAAC,CAWvC;AAED,wBAAgB,wBAAwB,CACtC,IAAI,EAAE,4BAA4B,EAClC,KAAK,EAAE,4BAA4B,GAClC,OAAO,CAET"}
@@ -32,7 +32,11 @@ export function defaultNativeTerminalSocketPath(env = process.env) {
32
32
  assertNativeTerminalSocketPathWithinLimit(socketPath);
33
33
  return socketPath;
34
34
  }
35
- function assertOwnedByCurrentUser(info, label) {
35
+ /**
36
+ * Shared ownership check for user-private runtime resources. Callers still own
37
+ * their resource-specific type and mode checks.
38
+ */
39
+ export function assertOwnedByCurrentUser(info, label) {
36
40
  const uid = currentUid();
37
41
  if (uid !== undefined && info.uid !== uid) {
38
42
  throw new Error(`${label} must be owned by uid ${uid}`);
@@ -1 +1 @@
1
- {"version":3,"file":"socket-path.js","sourceRoot":"","sources":["../../src/native-terminal/socket-path.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"socket-path.js","sourceRoot":"","sources":["../../src/native-terminal/socket-path.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAOtD,0EAA0E;AAC1E,4EAA4E;AAC5E,6EAA6E;AAC7E,8EAA8E;AAC9E,6DAA6D;AAC7D,MAAM,0BAA0B,GAAG,OAAO,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;AAE7E,MAAM,UAAU,yCAAyC,CACvD,UAAkB,EAClB,KAAK,GAAG,2BAA2B;IAEnC,MAAM,KAAK,GAAG,MAAM,CAAC,UAAU,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;IACpD,IAAI,KAAK,GAAG,0BAA0B,EAAE,CAAC;QACvC,MAAM,IAAI,KAAK,CACb,GAAG,KAAK,sCAAsC;YAC5C,IAAI,KAAK,MAAM,0BAA0B,YAAY,UAAU,EAAE,CACpE,CAAC;IACJ,CAAC;AACH,CAAC;AAED,SAAS,UAAU;IACjB,OAAO,OAAO,OAAO,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;AAC7E,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,+BAA+B,CAC7C,MAAoD,OAAO,CAAC,GAAG;IAE/D,MAAM,UAAU,GAAG,GAAG,CAAC,iBAAiB,CAAC,CAAC;IAC1C,MAAM,IAAI,GAAG,UAAU,KAAK,SAAS,IAAI,UAAU,CAAC,UAAU,CAAC;QAC7D,CAAC,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC;QAC5B,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,UAAU,UAAU,EAAE,IAAI,SAAS,EAAE,CAAC,CAAC;IAC1D,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,EAAE,sBAAsB,CAAC,CAAC;IACtD,yCAAyC,CAAC,UAAU,CAAC,CAAC;IACtD,OAAO,UAAU,CAAC;AACpB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,wBAAwB,CAAC,IAAW,EAAE,KAAa;IACjE,MAAM,GAAG,GAAG,UAAU,EAAE,CAAC;IACzB,IAAI,GAAG,KAAK,SAAS,IAAI,IAAI,CAAC,GAAG,KAAK,GAAG,EAAE,CAAC;QAC1C,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,yBAAyB,GAAG,EAAE,CAAC,CAAC;IAC1D,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,0CAA0C,CAC9D,UAAkB;IAElB,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC5B,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;IAChE,CAAC;IACD,yCAAyC,CAAC,UAAU,CAAC,CAAC;IACtD,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IACtC,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,SAAS,CAAC,CAAC;IACpC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CAAC,mDAAmD,SAAS,EAAE,CAAC,CAAC;IAClF,CAAC;IACD,wBAAwB,CAAC,IAAI,EAAE,6BAA6B,CAAC,CAAC;IAC9D,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,KAAK,KAAK,EAAE,CAAC;QAClC,MAAM,IAAI,KAAK,CACb,oDAAoD,SAAS,EAAE,CAChE,CAAC;IACJ,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kCAAkC,CACtD,UAAkB;IAElB,MAAM,0CAA0C,CAAC,UAAU,CAAC,CAAC;IAC7D,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,UAAU,CAAC,CAAC;IACrC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC;QACrB,MAAM,IAAI,KAAK,CAAC,kDAAkD,UAAU,EAAE,CAAC,CAAC;IAClF,CAAC;IACD,wBAAwB,CAAC,IAAI,EAAE,sBAAsB,CAAC,CAAC;IACvD,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,KAAK,KAAK,EAAE,CAAC;QAClC,MAAM,IAAI,KAAK,CAAC,6CAA6C,UAAU,EAAE,CAAC,CAAC;IAC7E,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;AACzD,CAAC;AAED,MAAM,UAAU,wBAAwB,CACtC,IAAkC,EAClC,KAAmC;IAEnC,OAAO,IAAI,CAAC,GAAG,KAAK,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,KAAK,KAAK,CAAC,GAAG,CAAC;AAC1D,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"supervisor.d.ts","sourceRoot":"","sources":["../../src/native-terminal/supervisor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,KAAK,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAK9D,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAGL,KAAK,4BAA4B,EACjC,KAAK,yBAAyB,EAC/B,MAAM,WAAW,CAAC;AACnB,OAAO,EAQL,KAAK,wBAAwB,EAC9B,MAAM,eAAe,CAAC;AAQvB,MAAM,MAAM,uBAAuB,GAAG,CAAC,OAAO,EAAE;IAC9C,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,qBAAqB,EAAE,MAAM,CAAC;IAC9B,WAAW,EAAE,MAAM,CAAC;IACpB,2EAA2E;IAC3E,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,KAAK,YAAY,CAAC;AA8FnB,qBAAa,4BAA4B;;gBA8B3B,OAAO,EAAE;QACnB,UAAU,EAAE,MAAM,CAAC;QACnB,qBAAqB,EAAE,MAAM,CAAC;QAC9B,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,SAAS,CAAC,EAAE,uBAAuB,CAAC;QACpC,iBAAiB,CAAC,EAAE,MAAM,MAAM,CAAC;QACjC,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;QACnB,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,uBAAuB,CAAC,EAAE,MAAM,CAAC;QACjC,0FAA0F;QAC1F,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,gFAAgF;QAChF,UAAU,CAAC,EAAE,4BAA4B,CAAC;QAC1C;kFAC0E;QAC1E,UAAU,CAAC,EAAE,CACX,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,wBAAwB,KAC7B,OAAO,CAAC,yBAAyB,CAAC,CAAC;QACxC,kFAAkF;QAClF,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;KAC9B;IA4DD,IAAI,UAAU,IAAI,MAAM,GAAG,SAAS,CAGnC;IAEK,MAAM,IAAI,OAAO,CAAC,oBAAoB,CAAC;IAiB7C,UAAU,IAAI,IAAI;CAyMnB"}
1
+ {"version":3,"file":"supervisor.d.ts","sourceRoot":"","sources":["../../src/native-terminal/supervisor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,KAAK,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAK9D,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAGL,KAAK,4BAA4B,EACjC,KAAK,yBAAyB,EAC/B,MAAM,WAAW,CAAC;AACnB,OAAO,EAQL,KAAK,wBAAwB,EAC9B,MAAM,eAAe,CAAC;AAQvB,MAAM,MAAM,uBAAuB,GAAG,CAAC,OAAO,EAAE;IAC9C,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,qBAAqB,EAAE,MAAM,CAAC;IAC9B,WAAW,EAAE,MAAM,CAAC;IACpB,2EAA2E;IAC3E,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,KAAK,YAAY,CAAC;AA8FnB,qBAAa,4BAA4B;;gBAwC3B,OAAO,EAAE;QACnB,UAAU,EAAE,MAAM,CAAC;QACnB,qBAAqB,EAAE,MAAM,CAAC;QAC9B,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,SAAS,CAAC,EAAE,uBAAuB,CAAC;QACpC,iBAAiB,CAAC,EAAE,MAAM,MAAM,CAAC;QACjC,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;QACnB,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,uBAAuB,CAAC,EAAE,MAAM,CAAC;QACjC,0FAA0F;QAC1F,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,gFAAgF;QAChF,UAAU,CAAC,EAAE,4BAA4B,CAAC;QAC1C;kFAC0E;QAC1E,UAAU,CAAC,EAAE,CACX,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,wBAAwB,KAC7B,OAAO,CAAC,yBAAyB,CAAC,CAAC;QACxC,kFAAkF;QAClF,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;KAC9B;IA4DD,IAAI,UAAU,IAAI,MAAM,GAAG,SAAS,CAGnC;IAEK,MAAM,IAAI,OAAO,CAAC,oBAAoB,CAAC;IAiB7C,UAAU,IAAI,IAAI;CAyQnB"}