@sentropic/h2a-runtime 0.98.5 → 0.98.7-rc.1

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 (95) hide show
  1. package/dist/attach.d.ts +2 -0
  2. package/dist/attach.d.ts.map +1 -1
  3. package/dist/attach.js +73 -6
  4. package/dist/attach.js.map +1 -1
  5. package/dist/auth-login.d.ts +24 -1
  6. package/dist/auth-login.d.ts.map +1 -1
  7. package/dist/auth-login.js +132 -4
  8. package/dist/auth-login.js.map +1 -1
  9. package/dist/central-mcp.d.ts +2 -0
  10. package/dist/central-mcp.d.ts.map +1 -1
  11. package/dist/central-mcp.js +90 -3
  12. package/dist/central-mcp.js.map +1 -1
  13. package/dist/cli-help-groups.js +1 -1
  14. package/dist/cli-help-groups.js.map +1 -1
  15. package/dist/crash-log.d.ts +112 -0
  16. package/dist/crash-log.d.ts.map +1 -0
  17. package/dist/crash-log.js +560 -0
  18. package/dist/crash-log.js.map +1 -0
  19. package/dist/gateway-host/live-declarations.d.ts +58 -0
  20. package/dist/gateway-host/live-declarations.d.ts.map +1 -0
  21. package/dist/gateway-host/live-declarations.js +423 -0
  22. package/dist/gateway-host/live-declarations.js.map +1 -0
  23. package/dist/gateway-host/live-registration.d.ts +162 -0
  24. package/dist/gateway-host/live-registration.d.ts.map +1 -0
  25. package/dist/gateway-host/live-registration.js +455 -0
  26. package/dist/gateway-host/live-registration.js.map +1 -0
  27. package/dist/identity-cull/cull.d.ts.map +1 -1
  28. package/dist/identity-cull/cull.js +35 -89
  29. package/dist/identity-cull/cull.js.map +1 -1
  30. package/dist/index.d.ts.map +1 -1
  31. package/dist/index.js +90 -6
  32. package/dist/index.js.map +1 -1
  33. package/dist/native-host.d.ts +3 -1
  34. package/dist/native-host.d.ts.map +1 -1
  35. package/dist/native-host.js +43 -10
  36. package/dist/native-host.js.map +1 -1
  37. package/dist/native-terminal/client.d.ts +2 -2
  38. package/dist/native-terminal/client.d.ts.map +1 -1
  39. package/dist/native-terminal/client.js +2 -2
  40. package/dist/native-terminal/client.js.map +1 -1
  41. package/dist/native-terminal/host.d.ts +21 -5
  42. package/dist/native-terminal/host.d.ts.map +1 -1
  43. package/dist/native-terminal/host.js +104 -72
  44. package/dist/native-terminal/host.js.map +1 -1
  45. package/dist/native-terminal/journal.d.ts +5 -0
  46. package/dist/native-terminal/journal.d.ts.map +1 -1
  47. package/dist/native-terminal/journal.js +30 -17
  48. package/dist/native-terminal/journal.js.map +1 -1
  49. package/dist/native-terminal/op.d.ts +16 -1
  50. package/dist/native-terminal/op.d.ts.map +1 -1
  51. package/dist/native-terminal/op.js +124 -45
  52. package/dist/native-terminal/op.js.map +1 -1
  53. package/dist/native-terminal/process.d.ts.map +1 -1
  54. package/dist/native-terminal/process.js +4 -2
  55. package/dist/native-terminal/process.js.map +1 -1
  56. package/dist/native-terminal/publication-refusal.d.ts +22 -0
  57. package/dist/native-terminal/publication-refusal.d.ts.map +1 -0
  58. package/dist/native-terminal/publication-refusal.js +26 -0
  59. package/dist/native-terminal/publication-refusal.js.map +1 -0
  60. package/dist/native-terminal/server.d.ts +9 -2
  61. package/dist/native-terminal/server.d.ts.map +1 -1
  62. package/dist/native-terminal/server.js +335 -138
  63. package/dist/native-terminal/server.js.map +1 -1
  64. package/dist/native-terminal/supervisor.d.ts.map +1 -1
  65. package/dist/native-terminal/supervisor.js +9 -0
  66. package/dist/native-terminal/supervisor.js.map +1 -1
  67. package/dist/proc-identity.d.ts +63 -1
  68. package/dist/proc-identity.d.ts.map +1 -1
  69. package/dist/proc-identity.js +98 -1
  70. package/dist/proc-identity.js.map +1 -1
  71. package/dist/pty.d.ts.map +1 -1
  72. package/dist/pty.js +18 -0
  73. package/dist/pty.js.map +1 -1
  74. package/dist/registry.d.ts +15 -0
  75. package/dist/registry.d.ts.map +1 -1
  76. package/dist/registry.js +17 -4
  77. package/dist/registry.js.map +1 -1
  78. package/dist/run.d.ts.map +1 -1
  79. package/dist/run.js +79 -16
  80. package/dist/run.js.map +1 -1
  81. package/dist/terminal-reset.d.ts +104 -0
  82. package/dist/terminal-reset.d.ts.map +1 -0
  83. package/dist/terminal-reset.js +229 -0
  84. package/dist/terminal-reset.js.map +1 -0
  85. package/dist/tmux.d.ts +25 -3
  86. package/dist/tmux.d.ts.map +1 -1
  87. package/dist/tmux.js +61 -18
  88. package/dist/tmux.js.map +1 -1
  89. package/dist/vendor/engram-live/contracts.d.ts +208 -0
  90. package/dist/vendor/engram-live/contracts.js +558 -0
  91. package/dist/vendor/engram-live/integration.d.ts +73 -0
  92. package/dist/vendor/engram-live/integration.js +194 -0
  93. package/dist/vendor/engram-live/registration.d.ts +138 -0
  94. package/dist/vendor/engram-live/registration.js +360 -0
  95. package/package.json +4 -3
@@ -1,6 +1,6 @@
1
1
  import { readFileSync, readdirSync } from "node:fs";
2
2
  import { randomUUID } from "node:crypto";
3
- import { resolve } from "node:path";
3
+ import { join, resolve } from "node:path";
4
4
  import { writeHostLogLine } from "./crash-safe-log.js";
5
5
  import { HOST_FAULT_COUNTERS, recordHostFault } from "./fault-counters.js";
6
6
  // Durable session identity (incl. pgid) lives in the single registry store by
@@ -157,12 +157,12 @@ export const H2A_SESSION_TOKEN_ENV_VAR = "H2A_SESSION_TOKEN";
157
157
  * process that exits mid-scan is silently skipped, never treated as a parse
158
158
  * failure.
159
159
  */
160
- function listProcessGroupMemberPids(pgid) {
160
+ function listProcessGroupMemberPids(pgid, procRoot = "/proc") {
161
161
  if (process.platform !== "linux")
162
162
  return [];
163
163
  let names;
164
164
  try {
165
- names = readdirSync("/proc");
165
+ names = readdirSync(procRoot);
166
166
  }
167
167
  catch {
168
168
  return [];
@@ -172,7 +172,7 @@ function listProcessGroupMemberPids(pgid) {
172
172
  if (!/^\d+$/.test(name))
173
173
  continue;
174
174
  try {
175
- const raw = readFileSync(`/proc/${name}/stat`, "utf8");
175
+ const raw = readFileSync(join(procRoot, name, "stat"), "utf8");
176
176
  const commandEnd = raw.lastIndexOf(")");
177
177
  const fields = raw.slice(commandEnd + 2).split(" ");
178
178
  if (Number(fields[2]) === pgid)
@@ -191,11 +191,11 @@ function listProcessGroupMemberPids(pgid) {
191
191
  * escaping to worry about). Returns undefined on ANY read/parse failure or
192
192
  * a non-Linux platform — same "never guess" contract as `readProcessStartTime`.
193
193
  */
194
- function readProcessSessionToken(pid) {
194
+ function readProcessSessionToken(pid, procRoot = "/proc") {
195
195
  if (process.platform !== "linux")
196
196
  return undefined;
197
197
  try {
198
- const raw = readFileSync(`/proc/${pid}/environ`, "utf8");
198
+ const raw = readFileSync(join(procRoot, String(pid), "environ"), "utf8");
199
199
  const prefix = `${H2A_SESSION_TOKEN_ENV_VAR}=`;
200
200
  for (const entry of raw.split("\0")) {
201
201
  if (entry.startsWith(prefix))
@@ -227,10 +227,15 @@ function readProcessSessionToken(pid) {
227
227
  * - This enumeration runs ONLY on the leader-absent path (never on every
228
228
  * reap), keeping it rare in practice — the fast leader-start-time check
229
229
  * above it covers the common case.
230
+ *
231
+ * `procRoot` is injected ONLY by tests: a /proc-shaped view that contains
232
+ * exactly the processes a test started (the enumeration is the confinement
233
+ * boundary — the stat/environ reads stay real). Production always reads the
234
+ * real `/proc`.
230
235
  */
231
- export function groupCarriesSessionToken(pgid, expectedToken) {
232
- for (const pid of listProcessGroupMemberPids(pgid)) {
233
- if (readProcessSessionToken(pid) === expectedToken)
236
+ export function groupCarriesSessionToken(pgid, expectedToken, procRoot = "/proc") {
237
+ for (const pid of listProcessGroupMemberPids(pgid, procRoot)) {
238
+ if (readProcessSessionToken(pid, procRoot) === expectedToken)
234
239
  return true;
235
240
  }
236
241
  return false;
@@ -724,6 +729,7 @@ export class NativeTerminalHost {
724
729
  stopSignal: null,
725
730
  controllerId: null,
726
731
  controllerActivity: null,
732
+ controllerIdentity: null,
727
733
  controllerEpoch: 0,
728
734
  lastHumanActivityAt: null,
729
735
  };
@@ -842,21 +848,31 @@ export class NativeTerminalHost {
842
848
  controllerEpoch: record.controllerEpoch,
843
849
  });
844
850
  }
845
- acquireController(id, controllerId, activity = "human") {
851
+ acquireController(id, controllerId, activity = "human", options = {}) {
846
852
  const record = this.#requireControllableSession(id);
847
853
  if (controllerId.trim().length === 0 ||
848
854
  controllerId.length > NATIVE_TERMINAL_MAX_IDENTIFIER_CHARS) {
849
855
  throw new RangeError(`terminal controller id must contain 1-${NATIVE_TERMINAL_MAX_IDENTIFIER_CHARS} characters`);
850
856
  }
851
- if (record.controllerId !== null) {
852
- throw new Error(`terminal session already has a controller: ${id}`);
853
- }
854
857
  if (activity !== "human" && activity !== "automation") {
855
858
  throw new TypeError("terminal controller activity must be human or automation");
856
859
  }
860
+ if (options.pid !== undefined && (!Number.isSafeInteger(options.pid) || options.pid <= 0)) {
861
+ throw new TypeError("terminal controller pid must be a positive safe integer");
862
+ }
863
+ if (options.tty !== undefined && (options.tty.length === 0 || options.tty.length > 256 || /[\p{Cc}\p{Cf}]/u.test(options.tty))) {
864
+ throw new TypeError("terminal controller tty must be a printable name of 1-256 characters");
865
+ }
866
+ if (record.controllerId !== null && options.takeover !== true) {
867
+ const holder = record.controllerIdentity;
868
+ throw new Error(`terminal session already has a controller: ${id}; pid=${holder?.pid ?? "unknown"} tty=${holder?.tty ?? "unknown"} since=${holder?.since ?? "unknown"}; use h2a attach ${id.replace(/^h2a-/, "")} --takeover to detach it`);
869
+ }
870
+ // Serialized with the lease grant: old input and disconnect cleanup are
871
+ // fenced by the new epoch, even if the previous attach is still exiting.
857
872
  record.controllerEpoch += 1;
858
873
  record.controllerId = controllerId;
859
874
  record.controllerActivity = activity;
875
+ record.controllerIdentity = Object.freeze({ pid: options.pid ?? null, tty: options.tty ?? "unknown", since: new Date().toISOString() });
860
876
  if (activity === "human")
861
877
  record.lastHumanActivityAt = Date.now();
862
878
  return Object.freeze({
@@ -1229,66 +1245,10 @@ export class NativeTerminalHost {
1229
1245
  * states.
1230
1246
  */
1231
1247
  #verifyGroupLeaderIdentity(pgid, persistedLeaderStartTime, persistedGroupToken, sessionId, frame = {}) {
1232
- // FRAME CHECK, before any pid-based comparison. Every proof below compares a
1233
- // number persisted earlier with a number read now, and that is meaningful
1234
- // only while both were taken in the same pid namespace and after the same
1235
- // boot (see proc-identity.ts). A row that records a frame which does not
1236
- // match this reader's is unusable in BOTH directions: a start-time mismatch
1237
- // would be read as "recycled" (pruning the row and releasing the socket on a
1238
- // proof that does not hold), and a coincidental MATCH would authorize a
1239
- // group SIGKILL at a group this row never described. Refuse, blocking, which
1240
- // is the behaviour that predates the `recycled` outcome.
1241
- //
1242
- // ONE mismatch is different, and is separated out below: same pid namespace,
1243
- // different BOOT, same MACHINE. That is not an absence of proof, it is the
1244
- // strongest proof available — a reboot ends every process of the boot
1245
- // before it — so it prunes instead of blocking. It is still a refusal:
1246
- // nothing is signalled, because an unrelated live group may hold the pgid
1247
- // number by now.
1248
1248
  const anchoredFrame = frame.pidNamespace !== undefined && frame.bootId !== undefined;
1249
- if (frame.pidNamespace !== undefined || frame.bootId !== undefined) {
1250
- const current = this.#readFrame();
1251
- // The boot proof is admissible only inside ONE pid space, KNOWN on both
1252
- // sides: a pid resolved in another namespace is a different process, and
1253
- // an unknown namespace on either side is no statement at all.
1254
- const sameKnownPidNamespace = frame.pidNamespace !== undefined &&
1255
- current.pidNamespace !== undefined &&
1256
- frame.pidNamespace === current.pidNamespace;
1257
- // ...and only on ONE machine, KNOWN on both sides. The init pid
1258
- // namespace has the same inode on every kernel and boot ids are random
1259
- // per boot, so "same namespace, different boot" is ALSO what a row written
1260
- // by another machine sharing this registry looks like — a machine whose
1261
- // group may be alive right now. Only the machine id tells the two apart.
1262
- const sameKnownMachine = frame.machineId !== undefined &&
1263
- current.machineId !== undefined &&
1264
- frame.machineId === current.machineId;
1265
- const differentKnownBoot = frame.bootId !== undefined &&
1266
- current.bootId !== undefined &&
1267
- frame.bootId !== current.bootId;
1268
- if (sameKnownPidNamespace && sameKnownMachine && differentKnownBoot) {
1269
- // PROOF, not an absence of one: a reboot ends every process of the
1270
- // boot before it, so every process this row describes has ended. The
1271
- // pgid NUMBER may be held by an unrelated live group now, which is
1272
- // exactly why nothing is signalled here and why no diagnostic may
1273
- // point anyone at it.
1274
- this.#pgidGuardCounters.staleBoot += 1;
1275
- this.#log(`NOT signalling process group pgid=${pgid} for session ${sessionId}: this row was written at boot ${String(frame.bootId)} and this reader is at boot ${String(current.bootId)}, in the same pid namespace ${String(current.pidNamespace)} on the same machine ${String(current.machineId)} — the reboot ENDED every process this row describes, so its group is PROVEN gone. The number pgid=${pgid} may belong to an unrelated live group now and must NOT be killed. cause=stale-boot sessionId=${sessionId} pgid=${pgid}`);
1276
- return { proceed: false, cause: "stale-boot" };
1277
- }
1278
- if (frame.pidNamespace !== current.pidNamespace ||
1279
- frame.bootId !== current.bootId) {
1280
- // Says WHY nothing could be proven, because the two shapes call for
1281
- // different checks by whoever reads this: a boot change that only lacks
1282
- // the machine proof is either a reboot of this machine or another
1283
- // machine; anything else is another (or an unknown) pid space.
1284
- const why = sameKnownPidNamespace && differentKnownBoot
1285
- ? `a different boot in the same pid namespace inode is what a previous boot of THIS machine looks like, but also what ANOTHER machine sharing this registry looks like, and the machine ids that would tell them apart are ${frame.machineId === undefined || current.machineId === undefined ? "not known on both sides" : "DIFFERENT"}`
1286
- : "no pid or start-time on it can be re-proven here";
1287
- this.#pgidGuardCounters.foreignFrame += 1;
1288
- this.#log(`REFUSING to act on process group pgid=${pgid} for session ${sessionId}: this row records pid namespace ${String(frame.pidNamespace)}, boot ${String(frame.bootId)} and machine ${String(frame.machineId)}, but this reader is in pid namespace ${String(current.pidNamespace)} at boot ${String(current.bootId)} on machine ${String(current.machineId)} — ${why}. Inspecting pgid=${pgid} HERE proves nothing about this row. PROCESSES MAY SURVIVE UNCOLLECTED. cause=foreign-frame sessionId=${sessionId} pgid=${pgid}`);
1289
- return { proceed: false, cause: "foreign-frame" };
1290
- }
1291
- }
1249
+ const frameRefusal = this.#verifyGroupFrame(pgid, sessionId, frame);
1250
+ if (frameRefusal)
1251
+ return { proceed: false, cause: frameRefusal };
1292
1252
  const currentStartTime = this.#readLeaderStartTime(pgid);
1293
1253
  if (currentStartTime !== undefined) {
1294
1254
  if (persistedLeaderStartTime === undefined) {
@@ -1351,6 +1311,68 @@ export class NativeTerminalHost {
1351
1311
  this.#log(`REFUSING to kill process group pgid=${pgid} for session ${sessionId}: the group leader is UNREADABLE and no surviving member carries the persisted session token — cannot positively prove this group's identity. PROCESSES MAY SURVIVE UNCOLLECTED. cause=membership-unprovable sessionId=${sessionId} pgid=${pgid}`);
1352
1312
  return { proceed: false, cause: "membership-unprovable" };
1353
1313
  }
1314
+ #verifyGroupFrame(pgid, sessionId, frame) {
1315
+ // FRAME CHECK, before any pid-based comparison. Every proof below compares a
1316
+ // number persisted earlier with a number read now, and that is meaningful
1317
+ // only while both were taken in the same pid namespace and after the same
1318
+ // boot (see proc-identity.ts). A row that records a frame which does not
1319
+ // match this reader's is unusable in BOTH directions: a start-time mismatch
1320
+ // would be read as "recycled" (pruning the row and releasing the socket on a
1321
+ // proof that does not hold), and a coincidental MATCH would authorize a
1322
+ // group SIGKILL at a group this row never described. Refuse, blocking, which
1323
+ // is the behaviour that predates the `recycled` outcome.
1324
+ //
1325
+ // ONE mismatch is different, and is separated out below: same pid namespace,
1326
+ // different BOOT, same MACHINE. That is not an absence of proof, it is the
1327
+ // strongest proof available — a reboot ends every process of the boot
1328
+ // before it — so it prunes instead of blocking. It is still a refusal:
1329
+ // nothing is signalled, because an unrelated live group may hold the pgid
1330
+ // number by now.
1331
+ if (frame.pidNamespace !== undefined || frame.bootId !== undefined) {
1332
+ const current = this.#readFrame();
1333
+ // The boot proof is admissible only inside ONE pid space, KNOWN on both
1334
+ // sides: a pid resolved in another namespace is a different process, and
1335
+ // an unknown namespace on either side is no statement at all.
1336
+ const sameKnownPidNamespace = frame.pidNamespace !== undefined &&
1337
+ current.pidNamespace !== undefined &&
1338
+ frame.pidNamespace === current.pidNamespace;
1339
+ // ...and only on ONE machine, KNOWN on both sides. The init pid
1340
+ // namespace has the same inode on every kernel and boot ids are random
1341
+ // per boot, so "same namespace, different boot" is ALSO what a row written
1342
+ // by another machine sharing this registry looks like — a machine whose
1343
+ // group may be alive right now. Only the machine id tells the two apart.
1344
+ const sameKnownMachine = frame.machineId !== undefined &&
1345
+ current.machineId !== undefined &&
1346
+ frame.machineId === current.machineId;
1347
+ const differentKnownBoot = frame.bootId !== undefined &&
1348
+ current.bootId !== undefined &&
1349
+ frame.bootId !== current.bootId;
1350
+ if (sameKnownPidNamespace && sameKnownMachine && differentKnownBoot) {
1351
+ // PROOF, not an absence of one: a reboot ends every process of the
1352
+ // boot before it, so every process this row describes has ended. The
1353
+ // pgid NUMBER may be held by an unrelated live group now, which is
1354
+ // exactly why nothing is signalled here and why no diagnostic may
1355
+ // point anyone at it.
1356
+ this.#pgidGuardCounters.staleBoot += 1;
1357
+ this.#log(`NOT signalling process group pgid=${pgid} for session ${sessionId}: this row was written at boot ${String(frame.bootId)} and this reader is at boot ${String(current.bootId)}, in the same pid namespace ${String(current.pidNamespace)} on the same machine ${String(current.machineId)} — the reboot ENDED every process this row describes, so its group is PROVEN gone. The number pgid=${pgid} may belong to an unrelated live group now and must NOT be killed. cause=stale-boot sessionId=${sessionId} pgid=${pgid}`);
1358
+ return "stale-boot";
1359
+ }
1360
+ if (frame.pidNamespace !== current.pidNamespace ||
1361
+ frame.bootId !== current.bootId) {
1362
+ // Says WHY nothing could be proven, because the two shapes call for
1363
+ // different checks by whoever reads this: a boot change that only lacks
1364
+ // the machine proof is either a reboot of this machine or another
1365
+ // machine; anything else is another (or an unknown) pid space.
1366
+ const why = sameKnownPidNamespace && differentKnownBoot
1367
+ ? `a different boot in the same pid namespace inode is what a previous boot of THIS machine looks like, but also what ANOTHER machine sharing this registry looks like, and the machine ids that would tell them apart are ${frame.machineId === undefined || current.machineId === undefined ? "not known on both sides" : "DIFFERENT"}`
1368
+ : "no pid or start-time on it can be re-proven here";
1369
+ this.#pgidGuardCounters.foreignFrame += 1;
1370
+ this.#log(`REFUSING to act on process group pgid=${pgid} for session ${sessionId}: this row records pid namespace ${String(frame.pidNamespace)}, boot ${String(frame.bootId)} and machine ${String(frame.machineId)}, but this reader is in pid namespace ${String(current.pidNamespace)} at boot ${String(current.bootId)} on machine ${String(current.machineId)} — ${why}. Inspecting pgid=${pgid} HERE proves nothing about this row. PROCESSES MAY SURVIVE UNCOLLECTED. cause=foreign-frame sessionId=${sessionId} pgid=${pgid}`);
1371
+ return "foreign-frame";
1372
+ }
1373
+ }
1374
+ return undefined;
1375
+ }
1354
1376
  /**
1355
1377
  * Core of both `forceStopAll` and `reapOrphan`: emit the group signal from
1356
1378
  * the parent, then poll `isGroupAlive` (never a fixed sleep-and-hope) until
@@ -1379,6 +1401,13 @@ export class NativeTerminalHost {
1379
1401
  this.#log(`skipping group-kill proof for pgid=${pgid} (${label}): process groups are not supported on ${process.platform}`);
1380
1402
  return { status: "dead", elapsedMs: 0 };
1381
1403
  }
1404
+ // A group number has meaning only in the recorded frame. Even a
1405
+ // signal-zero probe in another namespace may inspect an unrelated group.
1406
+ if (verify) {
1407
+ const refusal = this.#verifyGroupFrame(pgid, verify.sessionId, verify.persistedFrame);
1408
+ if (refusal)
1409
+ return { status: "refused", cause: refusal };
1410
+ }
1382
1411
  if (!this.#reaper.isGroupAlive(pgid)) {
1383
1412
  // The group-leader-identity guard exists to protect a LIVE process
1384
1413
  // about to be signalled from an innocent kill. A group the OS already
@@ -1563,6 +1592,7 @@ export class NativeTerminalHost {
1563
1592
  return;
1564
1593
  record.controllerId = null;
1565
1594
  record.controllerActivity = null;
1595
+ record.controllerIdentity = null;
1566
1596
  record.controllerEpoch += 1;
1567
1597
  }
1568
1598
  /**
@@ -1592,6 +1622,8 @@ export class NativeTerminalHost {
1592
1622
  exit: record.exit,
1593
1623
  stopSignal: record.stopSignal,
1594
1624
  controlled: record.controllerId !== null,
1625
+ controllerEpoch: record.controllerEpoch,
1626
+ controller: record.controllerIdentity,
1595
1627
  lastHumanActivityAt: record.lastHumanActivityAt,
1596
1628
  });
1597
1629
  }
@@ -1 +1 @@
1
- {"version":3,"file":"host.js","sourceRoot":"","sources":["../../src/native-terminal/host.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"host.js","sourceRoot":"","sources":["../../src/native-terminal/host.ts"],"names":[],"mappings":"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"}
@@ -47,6 +47,11 @@ export declare function createHostJournalWriter(logPath?: string): {
47
47
  write(entry: HostJournalEntry): void;
48
48
  flush(): Promise<void>;
49
49
  };
50
+ /**
51
+ * Read the host journal across its rotation (`.1` first, then current), so a
52
+ * crash followed by rotation + restart stays visible instead of showing only
53
+ * the healthy `start`. Corrupt lines are skipped, never thrown.
54
+ */
50
55
  export declare function readHostJournal(logPath?: string): HostJournalEntry[];
51
56
  export {};
52
57
  //# sourceMappingURL=journal.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"journal.d.ts","sourceRoot":"","sources":["../../src/native-terminal/journal.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,sBAAsB,QAAc,CAAC;AAClD,eAAO,MAAM,qBAAqB,MAAM,CAAC;AACzC,KAAK,QAAQ,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,CAAC;AACnF,MAAM,MAAM,gBAAgB,GACxB,CAAC,QAAQ,GAAG;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,GAClF,CAAC,QAAQ,GAAG;IAAE,KAAK,EAAE,QAAQ,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,GAChD,CAAC,QAAQ,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,OAAO,CAAA;CAAE,CAAC,GAC9C,CAAC,QAAQ,GAAG;IAAE,KAAK,EAAE,iBAAiB,CAAC;IAAC,IAAI,EAAE,UAAU,GAAG,SAAS,CAAC;IAAC,KAAK,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,CAAC,GAClG,CAAC,QAAQ,GAAG;IAAE,KAAK,EAAE,mBAAmB,GAAG,oBAAoB,GAAG,cAAc,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,GACjJ,CAAC,QAAQ,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,SAAS,GAAG,YAAY,GAAG,QAAQ,GAAG,iBAAiB,GAAG,mBAAmB,GAAG,oBAAoB,GAAG,cAAc,CAAA;CAAE,CAAC,GAC9K;IAAE,KAAK,EAAE,SAAS,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAExC,wBAAgB,sBAAsB,CAAC,GAAG,GAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAe,GAAG,MAAM,CAI9G;AAGD,wBAAgB,iBAAiB,IAAI,MAAM,CAO1C;AAmED,wBAAgB,6BAA6B,IAAI,MAAM,CAAoB;AAgB3E;;8EAE8E;AAC9E,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,gBAAgB,EAAE,OAAO,SAA2B,GAAG,OAAO,CA2CtG;AAED;;iFAEiF;AACjF,wBAAgB,uBAAuB,CAAC,OAAO,SAA2B,GAAG;IAC3E,KAAK,CAAC,KAAK,EAAE,gBAAgB,GAAG,IAAI,CAAC;IACrC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACxB,CAyCA;AAqCD,wBAAgB,eAAe,CAAC,OAAO,SAA2B,GAAG,gBAAgB,EAAE,CAOtF"}
1
+ {"version":3,"file":"journal.d.ts","sourceRoot":"","sources":["../../src/native-terminal/journal.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,sBAAsB,QAAc,CAAC;AAClD,eAAO,MAAM,qBAAqB,MAAM,CAAC;AACzC,KAAK,QAAQ,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,CAAC;AACnF,MAAM,MAAM,gBAAgB,GACxB,CAAC,QAAQ,GAAG;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,GAClF,CAAC,QAAQ,GAAG;IAAE,KAAK,EAAE,QAAQ,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,GAChD,CAAC,QAAQ,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,OAAO,CAAA;CAAE,CAAC,GAC9C,CAAC,QAAQ,GAAG;IAAE,KAAK,EAAE,iBAAiB,CAAC;IAAC,IAAI,EAAE,UAAU,GAAG,SAAS,CAAC;IAAC,KAAK,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,CAAC,GAClG,CAAC,QAAQ,GAAG;IAAE,KAAK,EAAE,mBAAmB,GAAG,oBAAoB,GAAG,cAAc,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,GACjJ,CAAC,QAAQ,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,SAAS,GAAG,YAAY,GAAG,QAAQ,GAAG,iBAAiB,GAAG,mBAAmB,GAAG,oBAAoB,GAAG,cAAc,CAAA;CAAE,CAAC,GAC9K;IAAE,KAAK,EAAE,SAAS,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAExC,wBAAgB,sBAAsB,CAAC,GAAG,GAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAe,GAAG,MAAM,CAI9G;AAGD,wBAAgB,iBAAiB,IAAI,MAAM,CAO1C;AA8ED,wBAAgB,6BAA6B,IAAI,MAAM,CAAoB;AAgB3E;;8EAE8E;AAC9E,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,gBAAgB,EAAE,OAAO,SAA2B,GAAG,OAAO,CA2CtG;AAED;;iFAEiF;AACjF,wBAAgB,uBAAuB,CAAC,OAAO,SAA2B,GAAG;IAC3E,KAAK,CAAC,KAAK,EAAE,gBAAgB,GAAG,IAAI,CAAC;IACrC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACxB,CAyCA;AAqCD;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,OAAO,SAA2B,GAAG,gBAAgB,EAAE,CAUtF"}
@@ -28,16 +28,21 @@ export function getRuntimeVersion() {
28
28
  }
29
29
  const runtimeDirectory = resolve(fileURLToPath(new URL("../", import.meta.url)));
30
30
  const pathEnvironment = new Set(["HOME", "PATH", "PWD", "OLDPWD", "TMPDIR", "NODE_PATH", "TERM", "LANG",
31
- "XDG_RUNTIME_DIR", "XDG_STATE_HOME", "XDG_CONFIG_HOME", "REMOTE_CLI_CONFIG_HOME", "H2A_SESSION_HOST", "H2A_NATIVE_SOCKET"]);
31
+ "XDG_RUNTIME_DIR", "XDG_STATE_HOME", "XDG_CONFIG_HOME", "REMOTE_CLI_CONFIG_HOME", "H2A_SESSION_HOST", "H2A_NATIVE_SOCKET",
32
+ "H2A_TEST_QUALIFICATION_ROOT"]);
32
33
  function safeText(value) {
33
34
  let result = value.slice(0, 4096);
34
35
  for (const [key, secret] of Object.entries(process.env)) {
35
36
  if (!pathEnvironment.has(key) && secret && secret.length >= 4)
36
37
  result = result.split(secret).join("[REDACTED]");
37
38
  }
38
- return result.replace(/\b(?:authorization|cookie|set-cookie)\s*:[^\r\n]*/gi, "[REDACTED]")
39
+ // Same fail-closed shapes as redactCrashText in crash-log.ts (kept in sync:
40
+ // dash/underscore crossing, quoted/JSON/`=` header forms, PEM blocks).
41
+ return result.replace(/-----BEGIN [^-]*PRIVATE KEY-----[\s\S]*?-----END [^-]*PRIVATE KEY-----/g, "[REDACTED]")
39
42
  .replace(/\b(?:bearer|basic)\s+\S+/gi, "[REDACTED]")
40
- .replace(/\b(?:token|key|secret|password|credential|api_?key)\w*\s*[:=]\s*\S+/gi, "[REDACTED]")
43
+ .replace(/["']?(?:authorization|cookie|set-cookie)["']?\s*[:=]\s*("[^"\r\n]*"|'[^'\r\n]*'|[^\s;&"']+)/gi, "[REDACTED]")
44
+ .replace(/["']?[\w.-]*?(?:access[_-]?token|refresh[_-]?token|client[_-]?secret|id[_-]?token|auth[_-]?token|private[_-]?key|api[_-]?key|token|secret|passwd|passphrase|password|credential|pass|pwd|auth|session|key)["']?\s*[:=]\s*("[^"\r\n]*"|'[^'\r\n]*'|[^\s;&"']+)/gi, "[REDACTED]")
45
+ .replace(/(--?(?:access[_-]?token|refresh[_-]?token|client[_-]?secret|id[_-]?token|auth[_-]?token|private[_-]?key|api[_-]?key|token|secret|password|passwd|passphrase|pass|pwd|auth|session|credential|key))\b\s+("[^"\r\n]*"|'[^'\r\n]*'|[^\s"']+)/gi, "$1 [REDACTED]")
41
46
  .replace(/:\/\/[^/\s]*@/g, "://[REDACTED]@");
42
47
  }
43
48
  // Keep only verified code locations. Messages, function names, arbitrary paths,
@@ -288,21 +293,29 @@ if (!isMainThread && workerData?.nativeHostJournal === true) {
288
293
  parentPort?.postMessage(written);
289
294
  });
290
295
  }
296
+ /**
297
+ * Read the host journal across its rotation (`.1` first, then current), so a
298
+ * crash followed by rotation + restart stays visible instead of showing only
299
+ * the healthy `start`. Corrupt lines are skipped, never thrown.
300
+ */
291
301
  export function readHostJournal(logPath = resolveHostJournalPath()) {
292
- try {
293
- if (!lstatSync(logPath).isFile())
294
- return [];
295
- return readFileSync(logPath, "utf8").split("\n").filter(Boolean).flatMap(line => {
296
- try {
297
- return [JSON.parse(line)];
298
- }
299
- catch {
302
+ const readOne = (path) => {
303
+ try {
304
+ if (!lstatSync(path).isFile())
300
305
  return [];
301
- }
302
- });
303
- }
304
- catch {
305
- return [];
306
- }
306
+ return readFileSync(path, "utf8").split("\n").filter(Boolean).flatMap(line => {
307
+ try {
308
+ return [JSON.parse(line)];
309
+ }
310
+ catch {
311
+ return [];
312
+ }
313
+ });
314
+ }
315
+ catch {
316
+ return [];
317
+ }
318
+ };
319
+ return [...readOne(`${logPath}.1`), ...readOne(logPath)];
307
320
  }
308
321
  //# sourceMappingURL=journal.js.map