@sentropic/h2a-runtime 0.97.12 → 0.98.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.
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +38 -10
- package/dist/index.js.map +1 -1
- package/dist/launch-guard.d.ts +3 -6
- package/dist/launch-guard.d.ts.map +1 -1
- package/dist/launch-guard.js +6 -4
- package/dist/launch-guard.js.map +1 -1
- package/dist/launch-layout.d.ts +2 -0
- package/dist/launch-layout.d.ts.map +1 -1
- package/dist/launch-layout.js +15 -2
- package/dist/launch-layout.js.map +1 -1
- package/dist/native-host.d.ts +79 -14
- package/dist/native-host.d.ts.map +1 -1
- package/dist/native-host.js +136 -45
- package/dist/native-host.js.map +1 -1
- package/dist/native-restart.d.ts +1 -0
- package/dist/native-restart.d.ts.map +1 -1
- package/dist/native-restart.js.map +1 -1
- package/dist/native-terminal/fleet.d.ts +31 -0
- package/dist/native-terminal/fleet.d.ts.map +1 -0
- package/dist/native-terminal/fleet.js +31 -0
- package/dist/native-terminal/fleet.js.map +1 -0
- package/dist/native-terminal/op.d.ts.map +1 -1
- package/dist/native-terminal/op.js +144 -73
- package/dist/native-terminal/op.js.map +1 -1
- package/dist/native-terminal/socket-path.d.ts +3 -0
- package/dist/native-terminal/socket-path.d.ts.map +1 -1
- package/dist/native-terminal/socket-path.js +21 -1
- package/dist/native-terminal/socket-path.js.map +1 -1
- package/dist/restore.d.ts.map +1 -1
- package/dist/restore.js +8 -2
- package/dist/restore.js.map +1 -1
- package/dist/tmux.d.ts +3 -1
- package/dist/tmux.d.ts.map +1 -1
- package/dist/tmux.js +4 -2
- package/dist/tmux.js.map +1 -1
- package/package.json +3 -3
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAuEA,OAAO,EAsDL,KAAK,YAAY,EAClB,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -20,7 +20,7 @@ import { attachLocalSession, attachPodTmux, capturePane, capturePaneVisible, cle
|
|
|
20
20
|
import { deliverInitialPrompt, sleepSync, } from "./prompt-delivery.js";
|
|
21
21
|
import { startLaunchGuard } from "./launch-guard.js";
|
|
22
22
|
import { buildLaunchContext } from "./launch-context.js";
|
|
23
|
-
import { attachNativeSession, driveNativeInstruction, killNativeSessionIfIncarnation, killNativeSessionTree, nativeHostAvailable, nativePromptDeliveryDeps, nativeSessionLiveness, nativeSessionPid, nativeSessionState, nativeTreeCpuMs, nativeWorkerPid, resolveSessionHostKind, startNativeH2aSidecar, startNativeHeadlessSession, startNativeSession, } from "./native-host.js";
|
|
23
|
+
import { attachNativeSession, driveNativeInstruction, killNativeSessionIfIncarnation, killNativeSessionTree, nativeHostAvailable, nativePromptDeliveryDeps, nativeSessionLiveness, nativeSessionPid, nativeSessionState, nativeTreeCpuMs, nativeWorkerPid, preflightNativeLaunch, resolveSessionHostKind, startNativeH2aSidecar, startNativeHeadlessSession, startNativeSession, NativeHostCapabilityMismatchError, NativeLaunchAdmissionError, } from "./native-host.js";
|
|
24
24
|
import { executeNativeRestart, NativeRestartError, } from "./native-restart.js";
|
|
25
25
|
import { migrateTmuxNames } from "./tmux-name-migration.js";
|
|
26
26
|
import { projectStatusForH2a } from "./status-projection.js";
|
|
@@ -4143,7 +4143,22 @@ export async function main(argv) {
|
|
|
4143
4143
|
process.stderr.write(`[h2a] conversation ${opts.resume} is already being resumed; duplicate launch request skipped.\n`);
|
|
4144
4144
|
return;
|
|
4145
4145
|
}
|
|
4146
|
+
// Covers the entire attempt, including an already-created agent when
|
|
4147
|
+
// sidecar selection fails. Component-level refusals cannot clear it.
|
|
4148
|
+
let creationAttempted = false;
|
|
4149
|
+
const onCreateAttempt = () => {
|
|
4150
|
+
creationAttempted = true;
|
|
4151
|
+
if (opts.json && opts.name) {
|
|
4152
|
+
process.stderr.write(`${STRUCTURED_LAUNCH_PHASE_PREFIX}${JSON.stringify({
|
|
4153
|
+
launchId: opts.name, phase: "creation-attempted",
|
|
4154
|
+
})}\n`);
|
|
4155
|
+
}
|
|
4156
|
+
};
|
|
4146
4157
|
try {
|
|
4158
|
+
if (structuredLaunch && sessionHost === "native") {
|
|
4159
|
+
for (const label of labels)
|
|
4160
|
+
preflightNativeLaunch(localSessionName(slugify(label ?? cwd)));
|
|
4161
|
+
}
|
|
4147
4162
|
const reservedTmuxSlugs = tmuxAvailable()
|
|
4148
4163
|
? existingLocalSessionSlugs(labels, cwd)
|
|
4149
4164
|
: [];
|
|
@@ -4337,12 +4352,6 @@ export async function main(argv) {
|
|
|
4337
4352
|
let promptDelivery;
|
|
4338
4353
|
let launchGuard;
|
|
4339
4354
|
let launchOwnership;
|
|
4340
|
-
if (opts.json && opts.name) {
|
|
4341
|
-
process.stderr.write(`${STRUCTURED_LAUNCH_PHASE_PREFIX}${JSON.stringify({
|
|
4342
|
-
launchId: opts.name,
|
|
4343
|
-
phase: "creation-attempted",
|
|
4344
|
-
})}\n`);
|
|
4345
|
-
}
|
|
4346
4355
|
if (opts.headless) {
|
|
4347
4356
|
const runDir = join(cwd, ".h2a", "runs", label);
|
|
4348
4357
|
mkdirSync(runDir, { recursive: true });
|
|
@@ -4358,14 +4367,18 @@ export async function main(argv) {
|
|
|
4358
4367
|
})
|
|
4359
4368
|
: initialPrompt;
|
|
4360
4369
|
if (sessionHost === "native") {
|
|
4361
|
-
({ name, slug, promptFile } = startNativeHeadlessSession(profile, command, cwd, args, resultJson, outputLog, label, headlessPromptInput, structuredLaunch, sessionClass)
|
|
4370
|
+
({ name, slug, promptFile } = startNativeHeadlessSession(profile, command, cwd, args, resultJson, outputLog, label, headlessPromptInput, structuredLaunch, sessionClass, onCreateAttempt, structuredLaunch ? (owned) => {
|
|
4371
|
+
launchOwnership = { host: "native", sessions: [owned] };
|
|
4372
|
+
launchGuard = startLaunchGuard(runDir, launchOwnership);
|
|
4373
|
+
} : undefined));
|
|
4362
4374
|
}
|
|
4363
4375
|
else {
|
|
4364
|
-
({ name, slug, agentPane, promptFile } = startHeadlessSession(profile, command, cwd, args, resultJson, outputLog, label, getTmuxProfileConfig().profile, headlessPromptInput, structuredLaunch, sessionClass));
|
|
4376
|
+
({ name, slug, agentPane, promptFile } = startHeadlessSession(profile, command, cwd, args, resultJson, outputLog, label, getTmuxProfileConfig().profile, headlessPromptInput, structuredLaunch, sessionClass, onCreateAttempt));
|
|
4365
4377
|
}
|
|
4366
4378
|
}
|
|
4367
4379
|
else if (sessionHost === "native") {
|
|
4368
4380
|
({ name, slug } = startNativeSession(profile, command, cwd, args, label, {
|
|
4381
|
+
onCreateAttempt,
|
|
4369
4382
|
...(opts.resume !== undefined ? { resumeId: opts.resume } : {}),
|
|
4370
4383
|
...(initialPrompt !== undefined
|
|
4371
4384
|
? { terminateOnAgentExit: true }
|
|
@@ -4380,6 +4393,7 @@ export async function main(argv) {
|
|
|
4380
4393
|
}
|
|
4381
4394
|
else {
|
|
4382
4395
|
({ name, slug, agentPane } = startLocalSession(profile, command, cwd, args, label, getTmuxProfileConfig().profile, {
|
|
4396
|
+
onCreateAttempt,
|
|
4383
4397
|
...(opts.resume !== undefined
|
|
4384
4398
|
? { resumeId: opts.resume }
|
|
4385
4399
|
: {}),
|
|
@@ -4417,6 +4431,7 @@ export async function main(argv) {
|
|
|
4417
4431
|
let h2aSidecarStarted = false;
|
|
4418
4432
|
if (h2aSidecar && sessionHost === "native") {
|
|
4419
4433
|
h2aSidecarStarted = startNativeH2aSidecar(name, cwd, h2a.command, {
|
|
4434
|
+
onCreateAttempt,
|
|
4420
4435
|
...(structuredLaunch ? { verified: true } : {}),
|
|
4421
4436
|
...(launchGuard && launchOwnership?.host === "native" ? { beforeCreate: (owned) => {
|
|
4422
4437
|
if (launchOwnership?.host === "native") {
|
|
@@ -4571,9 +4586,12 @@ export async function main(argv) {
|
|
|
4571
4586
|
gatewayMode: launchGatewayMode,
|
|
4572
4587
|
bare: useBare,
|
|
4573
4588
|
});
|
|
4589
|
+
const nativeOwnerSocket = launchOwnership?.host === "native"
|
|
4590
|
+
? launchOwnership.sessions.find(owned => owned.name === name)?.socketPath : undefined;
|
|
4574
4591
|
started.push({
|
|
4575
4592
|
name,
|
|
4576
4593
|
slug,
|
|
4594
|
+
...(nativeOwnerSocket ? { socketPath: nativeOwnerSocket } : {}),
|
|
4577
4595
|
...(agentPane !== undefined ? { pane: agentPane } : {}),
|
|
4578
4596
|
h2aSidecar: h2aSidecarStarted,
|
|
4579
4597
|
...(pid !== undefined ? { pid } : {}),
|
|
@@ -4601,6 +4619,7 @@ export async function main(argv) {
|
|
|
4601
4619
|
ok: true,
|
|
4602
4620
|
state: "started",
|
|
4603
4621
|
session: {
|
|
4622
|
+
...(only.socketPath ? { socketPath: only.socketPath } : {}),
|
|
4604
4623
|
id: only.slug,
|
|
4605
4624
|
tmuxSession: only.name,
|
|
4606
4625
|
host: sessionHost === "native" ? "native" : "tmux",
|
|
@@ -4657,6 +4676,14 @@ export async function main(argv) {
|
|
|
4657
4676
|
: attachLocalSession(only.name);
|
|
4658
4677
|
return;
|
|
4659
4678
|
}
|
|
4679
|
+
catch (error) {
|
|
4680
|
+
if (!(error instanceof NativeHostCapabilityMismatchError || error instanceof NativeLaunchAdmissionError) || creationAttempted)
|
|
4681
|
+
throw error;
|
|
4682
|
+
process.stderr.write(`[h2a] ${error.message}\n`);
|
|
4683
|
+
if (opts.json && opts.name)
|
|
4684
|
+
process.stdout.write(`${JSON.stringify(error.toRunFailure(opts.name))}\n`);
|
|
4685
|
+
process.exitCode = 1;
|
|
4686
|
+
}
|
|
4660
4687
|
finally {
|
|
4661
4688
|
resumeClaim?.release();
|
|
4662
4689
|
}
|
|
@@ -6106,12 +6133,13 @@ export async function main(argv) {
|
|
|
6106
6133
|
state: "live",
|
|
6107
6134
|
generation: probe.session.generation,
|
|
6108
6135
|
incarnation: probe.session.incarnation,
|
|
6136
|
+
...(probe.session.socketPath ? { socketPath: probe.session.socketPath } : {}),
|
|
6109
6137
|
controlled: probe.session.controlled ?? true,
|
|
6110
6138
|
};
|
|
6111
6139
|
},
|
|
6112
6140
|
prepare: (candidate, _snapshot, mode) => prepareNativeRestart(candidate, mode),
|
|
6113
6141
|
restart: (candidate, snapshot, mode, prepared) => {
|
|
6114
|
-
if (!killNativeSessionIfIncarnation(candidate.name, snapshot.generation, snapshot.incarnation)) {
|
|
6142
|
+
if (!killNativeSessionIfIncarnation(candidate.name, snapshot.generation, snapshot.incarnation, snapshot.socketPath)) {
|
|
6115
6143
|
throw new Error("fenced native stop failed");
|
|
6116
6144
|
}
|
|
6117
6145
|
const restore = replaceAnthropicGatewayEnvironment(process.env, prepared.gatewayEnvironment);
|