@sentropic/h2a-runtime 0.98.1 → 0.98.2

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 (51) hide show
  1. package/dist/index.d.ts.map +1 -1
  2. package/dist/index.js +14 -8
  3. package/dist/index.js.map +1 -1
  4. package/dist/native-host.d.ts +1 -1
  5. package/dist/native-host.d.ts.map +1 -1
  6. package/dist/native-host.js +84 -21
  7. package/dist/native-host.js.map +1 -1
  8. package/dist/native-terminal/attach-recovery.d.ts +9 -0
  9. package/dist/native-terminal/attach-recovery.d.ts.map +1 -0
  10. package/dist/native-terminal/attach-recovery.js +54 -0
  11. package/dist/native-terminal/attach-recovery.js.map +1 -0
  12. package/dist/native-terminal/fleet.d.ts +2 -1
  13. package/dist/native-terminal/fleet.d.ts.map +1 -1
  14. package/dist/native-terminal/fleet.js +10 -1
  15. package/dist/native-terminal/fleet.js.map +1 -1
  16. package/dist/native-terminal/host.d.ts +1 -0
  17. package/dist/native-terminal/host.d.ts.map +1 -1
  18. package/dist/native-terminal/host.js +5 -2
  19. package/dist/native-terminal/host.js.map +1 -1
  20. package/dist/native-terminal/journal.d.ts +48 -0
  21. package/dist/native-terminal/journal.d.ts.map +1 -0
  22. package/dist/native-terminal/journal.js +305 -0
  23. package/dist/native-terminal/journal.js.map +1 -0
  24. package/dist/native-terminal/op.d.ts +3 -0
  25. package/dist/native-terminal/op.d.ts.map +1 -1
  26. package/dist/native-terminal/op.js +148 -33
  27. package/dist/native-terminal/op.js.map +1 -1
  28. package/dist/native-terminal/process.d.ts.map +1 -1
  29. package/dist/native-terminal/process.js +134 -46
  30. package/dist/native-terminal/process.js.map +1 -1
  31. package/dist/native-terminal/replay-buffer.d.ts +3 -0
  32. package/dist/native-terminal/replay-buffer.d.ts.map +1 -1
  33. package/dist/native-terminal/replay-buffer.js +11 -0
  34. package/dist/native-terminal/replay-buffer.js.map +1 -1
  35. package/dist/native-terminal/reset-relay.d.ts +11 -0
  36. package/dist/native-terminal/reset-relay.d.ts.map +1 -0
  37. package/dist/native-terminal/reset-relay.js +38 -0
  38. package/dist/native-terminal/reset-relay.js.map +1 -0
  39. package/dist/native-terminal/server.d.ts +8 -0
  40. package/dist/native-terminal/server.d.ts.map +1 -1
  41. package/dist/native-terminal/server.js +535 -58
  42. package/dist/native-terminal/server.js.map +1 -1
  43. package/dist/native-terminal/terminal-modes.d.ts +15 -0
  44. package/dist/native-terminal/terminal-modes.d.ts.map +1 -0
  45. package/dist/native-terminal/terminal-modes.js +180 -0
  46. package/dist/native-terminal/terminal-modes.js.map +1 -0
  47. package/dist/tmux.d.ts +17 -1
  48. package/dist/tmux.d.ts.map +1 -1
  49. package/dist/tmux.js +10 -4
  50. package/dist/tmux.js.map +1 -1
  51. package/package.json +1 -1
@@ -29,16 +29,20 @@
29
29
  * (detach: Ctrl-\\ ; exits when session exits)
30
30
  * host-stop SIGTERM the host process (sessions stop)
31
31
  */
32
- import { existsSync, readFileSync } from "node:fs";
32
+ import { existsSync, readFileSync, writeSync } from "node:fs";
33
33
  import { dirname } from "node:path";
34
34
  import { fileURLToPath } from "node:url";
35
35
  import { NativeTerminalClient } from "./client.js";
36
36
  import { loadRegistry, registryEntriesForNativeTarget } from "../registry.js";
37
37
  import { NATIVE_TERMINAL_INTERACTIVE_READ_TIMEOUT_MS, NATIVE_TERMINAL_PROTOCOL_VERSION, NativeTerminalRemoteError, } from "./protocol.js";
38
38
  import { NativeTerminalHostSupervisor } from "./supervisor.js";
39
+ import { proveNativeTerminalEndpointAbsent } from "./server.js";
39
40
  import { defaultNativeTerminalSocketPath, knownNativeTerminalSocketPaths, inspectPrivateNativeTerminalSocket, sameNativeTerminalSocket } from "./socket-path.js";
40
41
  import { collectNativeInventory, resolveNativeOwner } from "./fleet.js";
41
42
  import { renderTerminalScreen } from "./screen.js";
43
+ import { TerminalModeTracker } from "./terminal-modes.js";
44
+ import { publishAttachReset } from "./attach-recovery.js";
45
+ import { TerminalResetRelay } from "./reset-relay.js";
42
46
  const DETACH_BYTE = 0x1c; // Ctrl-\
43
47
  function parseArgv(argv) {
44
48
  const op = argv[2];
@@ -124,7 +128,7 @@ class NativeOwnerError extends Error {
124
128
  }
125
129
  async function inventoryFor(parsed) {
126
130
  const pinned = parsed.flags.get("socket");
127
- return collectNativeInventory(pinned ? [pinned] : knownNativeTerminalSocketPaths(), connectExisting);
131
+ return collectNativeInventory(pinned ? [pinned] : knownNativeTerminalSocketPaths(), connectExisting, proveNativeTerminalEndpointAbsent);
128
132
  }
129
133
  async function owningClient(parsed, id) {
130
134
  const owner = resolveNativeOwner(id, await inventoryFor(parsed));
@@ -138,27 +142,39 @@ async function selectLaunchClient(fenced) {
138
142
  const paths = knownNativeTerminalSocketPaths();
139
143
  const imposed = process.env["H2A_NATIVE_SOCKET"];
140
144
  if (imposed) {
141
- const client = existsSync(imposed) ? await connectExisting(imposed) : await ensureClient(imposed);
145
+ const client = await launchClient(imposed);
142
146
  // An imposed endpoint can never silently redirect, even when its mate is
143
147
  // available. Capability certification is performed by the caller.
144
148
  return { client, socketPath: imposed };
145
149
  }
146
150
  const historical = paths[0];
147
- // A cold fleet can be initialized. Once either endpoint exists, failure to
148
- // observe the historical host is unknown, never permission to replace it.
149
- const cold = !existsSync(dirname(historical));
150
- const client = cold ? await ensureClient(historical) : await connectExisting(historical);
151
+ const client = await launchClient(historical);
151
152
  const ping = await client.ping();
152
153
  if (!fenced || paths.length === 1)
153
154
  return { client, socketPath: historical };
154
155
  const compatible = paths[1];
155
156
  // Initialize the second known endpoint so admission obtains a complete
156
157
  // inventory even when the historical host already provides the fence.
157
- if (existsSync(compatible))
158
- await connectExisting(compatible); // Never reclaim an unreachable known endpoint.
159
- const second = await ensureClient(compatible);
158
+ const second = await launchClient(compatible);
160
159
  return ping.launchFence === true ? { client, socketPath: historical } : { client: second, socketPath: compatible };
161
160
  }
161
+ async function launchClient(socketPath) {
162
+ try {
163
+ return await connectExisting(socketPath);
164
+ }
165
+ catch (error) {
166
+ let absent = false;
167
+ try {
168
+ absent = await proveNativeTerminalEndpointAbsent(socketPath, error);
169
+ }
170
+ catch (proofError) {
171
+ error = new Error(`${error instanceof Error ? error.message : String(error)}; absence proof failed: ${proofError instanceof Error ? proofError.message : String(proofError)}`);
172
+ }
173
+ if (absent)
174
+ return ensureClient(socketPath);
175
+ throw Object.assign(new Error(`${socketPath}: ${error instanceof Error ? error.message : String(error)}; owner death is unproven. Inspect endpoint permissions and the owning process identity, restore probe access, then retry; do not remove a socket or lock while ownership is unproven.`), { socketPath });
176
+ }
177
+ }
162
178
  async function ensureClient(socketPath) {
163
179
  const supervisor = new NativeTerminalHostSupervisor({
164
180
  socketPath,
@@ -235,6 +251,8 @@ const ATTACH_RECONNECT_MIN_MS = 100;
235
251
  const ATTACH_RECONNECT_MAX_MS = 2_000;
236
252
  const ATTACH_PENDING_INPUT_MAX_BYTES = 64 * 1024;
237
253
  function defaultAttachRuntime(socketPath) {
254
+ const signals = { SIGTERM: 15, SIGHUP: 1, SIGINT: 2, SIGQUIT: 3 };
255
+ const handlers = new Map();
238
256
  return {
239
257
  // runAttach owns and closes every reconnecting client. Keeping these
240
258
  // long-lived clients in the one-shot op registry would retain each closed
@@ -246,6 +264,24 @@ function defaultAttachRuntime(socketPath) {
246
264
  delay,
247
265
  onResize: (listener) => process.on("SIGWINCH", listener),
248
266
  offResize: (listener) => process.removeListener("SIGWINCH", listener),
267
+ saveTerminalReset: publishAttachReset,
268
+ onTerminate: (listener) => {
269
+ for (const [signal, number] of Object.entries(signals)) {
270
+ const handler = () => { listener(); process.exit(128 + number); };
271
+ handlers.set(signal, handler);
272
+ process.on(signal, handler);
273
+ }
274
+ process.on("exit", listener);
275
+ // Observe the fatal path without suppressing Node's error/exit behavior.
276
+ process.on("uncaughtExceptionMonitor", listener);
277
+ },
278
+ offTerminate: (listener) => {
279
+ for (const [signal, handler] of handlers)
280
+ process.removeListener(signal, handler);
281
+ handlers.clear();
282
+ process.removeListener("exit", listener);
283
+ process.removeListener("uncaughtExceptionMonitor", listener);
284
+ },
249
285
  };
250
286
  }
251
287
  function isDefinitiveNativeTerminalAbsence(error) {
@@ -264,10 +300,50 @@ function isDefinitiveNativeTerminalAbsence(error) {
264
300
  export async function runAttach(id, runtime = defaultAttachRuntime(socketPathFromEnv())) {
265
301
  const stdin = runtime.stdin;
266
302
  const stdout = runtime.stdout;
303
+ let modes = new TerminalModeTracker();
304
+ let modesSuspended = false;
305
+ let savedReset = "";
306
+ const saveReset = () => {
307
+ const reset = modesSuspended ? "" : modes.resetSequence();
308
+ if (reset === savedReset)
309
+ return;
310
+ runtime.saveTerminalReset?.(reset);
311
+ savedReset = reset;
312
+ };
313
+ const relayOutput = (data) => {
314
+ modes.feed(data);
315
+ saveReset();
316
+ stdout.write(data);
317
+ };
318
+ // Older protocol-v1 hosts relay the wrapper marker verbatim. New hosts
319
+ // consume it themselves so detached sessions also return to a clean shell.
320
+ let resetRelay = new TerminalResetRelay(relayOutput, () => modes.resetSequence());
321
+ const resetModes = () => {
322
+ if (modesSuspended)
323
+ return;
324
+ modesSuspended = true;
325
+ const reset = modes.resetSequence();
326
+ if (!reset) {
327
+ saveReset();
328
+ return;
329
+ }
330
+ // Signals and fatal exits cannot wait for an asynchronous pipe flush.
331
+ const fd = stdout.fd;
332
+ if (typeof fd === "number")
333
+ writeSync(fd, reset);
334
+ else
335
+ stdout.write(reset);
336
+ saveReset();
337
+ };
338
+ const resumeModes = () => {
339
+ if (!modesSuspended)
340
+ return;
341
+ modesSuspended = false;
342
+ saveReset();
343
+ stdout.write(modes.restoreSequence() + modes.replayPrefix());
344
+ };
267
345
  const isRawCapable = stdin.isTTY === true;
268
- if (isRawCapable)
269
- stdin.setRawMode(true);
270
- stdin.resume();
346
+ const wasRaw = stdin.isRaw === true;
271
347
  let detached = false;
272
348
  let terminalEnded = false;
273
349
  let exitCode = 0;
@@ -282,6 +358,20 @@ export async function runAttach(id, runtime = defaultAttachRuntime(socketPathFro
282
358
  active = undefined;
283
359
  current?.client.close();
284
360
  };
361
+ const terminate = () => {
362
+ detached = true;
363
+ try {
364
+ resetRelay.flush();
365
+ resetModes();
366
+ }
367
+ finally {
368
+ if (isRawCapable)
369
+ stdin.setRawMode(wasRaw);
370
+ stdin.pause();
371
+ closeActive();
372
+ }
373
+ };
374
+ runtime.onTerminate?.(terminate);
285
375
  const markTransportFailure = (connection, error, inputDeliveryUncertain = false) => {
286
376
  if (inputDeliveryUncertain && !detached) {
287
377
  stdout.write("\r\n[h2a] terminal input delivery became uncertain during reconnect; " +
@@ -346,6 +436,8 @@ export async function runAttach(id, runtime = defaultAttachRuntime(socketPathFro
346
436
  pumpInput();
347
437
  };
348
438
  stdin.on("data", onInput);
439
+ const onEnd = () => { detached = true; closeActive(); };
440
+ stdin.on("end", onEnd);
349
441
  const resize = () => {
350
442
  const current = active;
351
443
  if (current && stdout.columns && stdout.rows) {
@@ -378,6 +470,9 @@ export async function runAttach(id, runtime = defaultAttachRuntime(socketPathFro
378
470
  // Paint the existing scrollback once, then follow the stream.
379
471
  let seq = 0;
380
472
  try {
473
+ if (isRawCapable)
474
+ stdin.setRawMode(true);
475
+ stdin.resume();
381
476
  const initial = await connectAndAcquire();
382
477
  if (initial.status === "exited")
383
478
  return initial.exit?.exitCode ?? 0;
@@ -393,6 +488,7 @@ export async function runAttach(id, runtime = defaultAttachRuntime(socketPathFro
393
488
  "without restarting the session\r\n");
394
489
  recoveryAnnounced = true;
395
490
  }
491
+ resetModes();
396
492
  let reconnectDelayMs = ATTACH_RECONNECT_MIN_MS;
397
493
  for (;;) {
398
494
  if (detached)
@@ -405,6 +501,7 @@ export async function runAttach(id, runtime = defaultAttachRuntime(socketPathFro
405
501
  break;
406
502
  }
407
503
  stdout.write("\r\n[h2a] native terminal reconnected\r\n");
504
+ resumeModes();
408
505
  recoveryAnnounced = false;
409
506
  idlePollMs = ATTACH_IDLE_POLL_MIN_MS;
410
507
  nextStatePollAt = runtime.now() + ATTACH_STATE_POLL_MS;
@@ -412,7 +509,6 @@ export async function runAttach(id, runtime = defaultAttachRuntime(socketPathFro
412
509
  }
413
510
  catch (error) {
414
511
  if (isDefinitiveNativeTerminalAbsence(error)) {
415
- stdout.write("\r\n[h2a] native session is no longer available; attach stopped\r\n");
416
512
  exitCode = 1;
417
513
  terminalEnded = true;
418
514
  break;
@@ -428,10 +524,22 @@ export async function runAttach(id, runtime = defaultAttachRuntime(socketPathFro
428
524
  const current = active;
429
525
  try {
430
526
  const replay = await current.client.readOutput(id, seq, NATIVE_TERMINAL_INTERACTIVE_READ_TIMEOUT_MS);
527
+ if (detached)
528
+ break;
529
+ if (replay.gap) {
530
+ resetModes();
531
+ modes = new TerminalModeTracker();
532
+ resetRelay = new TerminalResetRelay(relayOutput, () => modes.resetSequence());
533
+ modesSuspended = false;
534
+ if (replay.terminalModePrefix) {
535
+ resetRelay.feed(replay.terminalModePrefix);
536
+ }
537
+ }
431
538
  for (const chunk of replay.chunks) {
432
- stdout.write(chunk.data);
539
+ resetRelay.feed(chunk.data);
433
540
  seq = chunk.seq;
434
541
  }
542
+ seq = replay.latestSeq;
435
543
  if (replay.chunks.length === 0) {
436
544
  await runtime.delay(idlePollMs);
437
545
  idlePollMs = Math.min(ATTACH_IDLE_POLL_MAX_MS, idlePollMs * 2);
@@ -465,22 +573,29 @@ export async function runAttach(id, runtime = defaultAttachRuntime(socketPathFro
465
573
  }
466
574
  }
467
575
  finally {
468
- runtime.offResize(resize);
469
- stdin.removeListener("data", onInput);
470
- if (isRawCapable)
471
- stdin.setRawMode(false);
472
- stdin.pause();
473
- if (inputPump !== undefined)
474
- await inputPump.catch(() => { });
475
- const current = active;
476
- active = undefined;
477
- if (current !== undefined) {
478
- await current.client.releaseController(current.lease).catch(() => { });
479
- current.client.close();
576
+ try {
577
+ resetRelay.flush();
578
+ if (detached)
579
+ stdout.write("\r\n[h2a] detached from native session (session keeps running)\r\n");
580
+ resetModes();
581
+ }
582
+ finally {
583
+ runtime.offTerminate?.(terminate);
584
+ runtime.offResize(resize);
585
+ stdin.removeListener("data", onInput);
586
+ stdin.removeListener("end", onEnd);
587
+ if (isRawCapable)
588
+ stdin.setRawMode(wasRaw);
589
+ stdin.pause();
590
+ if (inputPump !== undefined)
591
+ await inputPump.catch(() => { });
592
+ const current = active;
593
+ active = undefined;
594
+ if (current !== undefined) {
595
+ await current.client.releaseController(current.lease).catch(() => { });
596
+ current.client.close();
597
+ }
480
598
  }
481
- }
482
- if (detached) {
483
- stdout.write("\r\n[h2a] detached from native session (session keeps running)\r\n");
484
599
  }
485
600
  return exitCode;
486
601
  }
@@ -495,7 +610,7 @@ export async function runNativeTerminalOp(argv) {
495
610
  : await selectLaunchClient(parsed.flags.get("fenced") === "true");
496
611
  }
497
612
  catch (error) {
498
- emit({ code: "native-inventory-unknown", hosts: [{ socketPath,
613
+ emit({ code: "native-inventory-unknown", hosts: [{ socketPath: error?.socketPath ?? socketPath,
499
614
  reason: error instanceof Error ? error.message : String(error) }] });
500
615
  return 1;
501
616
  }
@@ -508,7 +623,7 @@ export async function runNativeTerminalOp(argv) {
508
623
  case "list": {
509
624
  const inventory = await inventoryFor(parsed);
510
625
  emit({ sessions: inventory.sessions, complete: inventory.complete,
511
- hosts: inventory.hosts.map(({ socketPath, reason }) => ({ socketPath, reachable: reason === undefined, ...(reason ? { reason } : {}) })) });
626
+ hosts: inventory.hosts.map(({ socketPath, reason, absent }) => ({ socketPath, reachable: !absent && reason === undefined, ...(absent ? { absent } : {}), ...(reason ? { reason } : {}) })) });
512
627
  return 0;
513
628
  }
514
629
  case "state": {
@@ -527,7 +642,7 @@ export async function runNativeTerminalOp(argv) {
527
642
  // - dead: every known reachable endpoint proves absence, or the
528
643
  // owning endpoint reports an exited session
529
644
  // - unknown: an incomplete inventory without a found owner; even
530
- // ENOENT/ECONNREFUSED never certify absence across hosts.
645
+ // transport errors without an independent owner-death proof.
531
646
  const id = required(parsed, "id");
532
647
  const owner = resolveNativeOwner(id, await inventoryFor(parsed));
533
648
  if (owner.state === "found")
@@ -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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"}
@@ -1 +1 @@
1
- {"version":3,"file":"process.d.ts","sourceRoot":"","sources":["../../src/native-terminal/process.ts"],"names":[],"mappings":";AAYA,KAAK,cAAc,GAAG;IACpB,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,CAAC;AA2CF,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,aAAa,CAAC,MAAM,CAAC,GAAG,cAAc,CA6CvF;AAED,wBAAsB,4BAA4B,CAAC,IAAI,EAAE,aAAa,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAoD7F"}
1
+ {"version":3,"file":"process.d.ts","sourceRoot":"","sources":["../../src/native-terminal/process.ts"],"names":[],"mappings":";AAgBA,KAAK,cAAc,GAAG;IACpB,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,CAAC;AA2CF,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,aAAa,CAAC,MAAM,CAAC,GAAG,cAAc,CA6CvF;AAED,wBAAsB,4BAA4B,CAAC,IAAI,EAAE,aAAa,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CA0H7F"}