@outerlayer/cli 0.25.0 → 0.25.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 (61) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/dist/{build-Q2OBF77R.js → build-YYVAJ75G.js} +2 -2
  3. package/dist/build-info.json +1 -1
  4. package/dist/{builder-PRSCX5AH.js → builder-MNUJS4RG.js} +3 -3
  5. package/dist/{check-EPYRTE3R.js → check-C6HEFW6R.js} +18 -18
  6. package/dist/{chunk-HBLLZLOH.js → chunk-23SPSYXZ.js} +2 -2
  7. package/dist/{chunk-VPUNOGXO.js → chunk-24LQ34XL.js} +3 -3
  8. package/dist/{chunk-YMKQVCKC.js → chunk-3FNPTQRH.js} +1 -1
  9. package/dist/{chunk-HWEIFHSW.js → chunk-3WZ5ECSM.js} +2 -2
  10. package/dist/{chunk-3I44PQ26.js → chunk-A6ORKBVJ.js} +21 -16
  11. package/dist/{chunk-RGW7ERF3.js → chunk-APBTVIM4.js} +2 -2
  12. package/dist/{chunk-YTTHDPWF.js → chunk-C36EOUUU.js} +2 -2
  13. package/dist/{chunk-X5LNCIZT.js → chunk-CQRIZNE6.js} +3 -3
  14. package/dist/{chunk-XHXDCYSK.js → chunk-ENFBARQP.js} +7 -7
  15. package/dist/{chunk-L2FZLBF7.js → chunk-F57CLUH7.js} +8 -8
  16. package/dist/{chunk-IDJIWKTY.js → chunk-H6ZFLIX3.js} +2 -2
  17. package/dist/{chunk-7OWPLRJR.js → chunk-HPOEVC2V.js} +2 -1
  18. package/dist/{chunk-VMF5LK3D.js → chunk-I25F6YVP.js} +4 -4
  19. package/dist/{chunk-QUGYGO6L.js → chunk-N3VSI5ZI.js} +2 -2
  20. package/dist/{chunk-JKILLWZF.js → chunk-OEU4JSDE.js} +2 -2
  21. package/dist/{chunk-AXPCGD46.js → chunk-Q435LWVN.js} +1 -1
  22. package/dist/{chunk-D4AMAEZ7.js → chunk-QE3UQAHK.js} +322 -17
  23. package/dist/{chunk-VNGENFOG.js → chunk-S6AWZKJN.js} +2 -2
  24. package/dist/{chunk-6CNHXHI2.js → chunk-SNQR2EYI.js} +1 -1
  25. package/dist/{chunk-34ANPNVB.js → chunk-VAMUWK55.js} +2 -2
  26. package/dist/{cli-2LGSPAYZ.js → cli-YMTNHR4W.js} +63 -63
  27. package/dist/{command-ITLPJ5XU.js → command-DKYZC7PH.js} +11 -11
  28. package/dist/{connect-cmd-JFDZKPND.js → connect-cmd-F7T4LNKX.js} +2 -2
  29. package/dist/{container-start-X22OXY6E.js → container-start-AX7QXJMR.js} +12 -12
  30. package/dist/{dist-2APO44JG.js → dist-QPHZE47F.js} +1 -1
  31. package/dist/{docker-PQHWAY5J.js → docker-5EC5TE3Y.js} +3 -3
  32. package/dist/{doctor-73GNT4VV.js → doctor-S6YCZGUU.js} +13 -13
  33. package/dist/{emit-artifact-cmd-AIOTX6YT.js → emit-artifact-cmd-DJO475VZ.js} +5 -5
  34. package/dist/{emit-criteria-cmd-7PJINOHA.js → emit-criteria-cmd-EULQ2MLI.js} +3 -3
  35. package/dist/{emit-finding-cmd-JRDSZ4DR.js → emit-finding-cmd-QIIKMITO.js} +3 -3
  36. package/dist/{emit-result-cmd-ZGF6Q6OP.js → emit-result-cmd-NMCLTA47.js} +5 -5
  37. package/dist/{emit-step-cmd-DUR34STQ.js → emit-step-cmd-72OX5P6M.js} +4 -4
  38. package/dist/{exec-client-S5IA7JRG.js → exec-client-KH33DICR.js} +1 -1
  39. package/dist/{governing-source-DKJABQAT.js → governing-source-JNQ6PX2A.js} +5 -5
  40. package/dist/index.js +1 -1
  41. package/dist/{init-SKOXNJND.js → init-624F4JIP.js} +12 -12
  42. package/dist/{init-NE3VR3EY.js → init-G7XC5WWL.js} +12 -12
  43. package/dist/{init-cmd-UEDOJ7LG.js → init-cmd-UUYA57VO.js} +5 -5
  44. package/dist/{init-update-VKZ4S6HH.js → init-update-MMV33PLM.js} +2 -2
  45. package/dist/{loop-BPVEA5OC.js → loop-K5B2A3VW.js} +18 -18
  46. package/dist/{machine-G3GICXQN.js → machine-J4IFVIKU.js} +11 -11
  47. package/dist/{runner-identity-J6DXJ6MF.js → runner-identity-HZ6CBM2R.js} +3 -3
  48. package/dist/{runner-key-L55O7Y7W.js → runner-key-FFVZUEHE.js} +12 -12
  49. package/dist/{session-sender-LXTASWBY.js → session-sender-3SUWNNVP.js} +6 -6
  50. package/dist/{spec-cmd-G2JNXKD7.js → spec-cmd-VZDE6FFH.js} +4 -4
  51. package/dist/{status-U6DXOR6C.js → status-GXTD44DX.js} +14 -14
  52. package/dist/{sync-cmd-VPNS5ITY.js → sync-cmd-VFB3NEJ6.js} +5 -5
  53. package/dist/{watch-ZOCYD2NE.js → watch-LWMTDD3L.js} +5 -5
  54. package/dist/{work-claim-cmd-BUMIPJNF.js → work-claim-cmd-FOBTDQVR.js} +5 -5
  55. package/dist/{work-cmd-LRAXUOJV.js → work-cmd-6HARIBMW.js} +4 -4
  56. package/dist/{work-comment-cmd-4RDIBUYO.js → work-comment-cmd-BITPALHR.js} +4 -4
  57. package/dist/{work-logs-cmd-YYN2CPJQ.js → work-logs-cmd-VGB3O2LZ.js} +4 -4
  58. package/dist/{work-open-pr-cmd-3MCND2LZ.js → work-open-pr-cmd-SVZCNOIM.js} +5 -5
  59. package/dist/{work-pr-cmd-BODEZAXN.js → work-pr-cmd-SJT46GN4.js} +4 -4
  60. package/dist/{work-stop-cmd-P7HXVKEG.js → work-stop-cmd-WXKVVA4S.js} +4 -4
  61. package/package.json +1 -1
package/CHANGELOG.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # @outerlayer/cli
2
2
 
3
+ ## 0.25.1
4
+
5
+ ### Patch Changes
6
+
7
+ - 86089fa: `outerlayer runner install --service` installs the root helper on Linux. Each microVM build then runs under Firecracker's jailer, as a user of its own. A build that escapes its microVM reaches none of the runner's credentials. On a host whose service an earlier release installed, run `outerlayer runner install --service --replace` to add the helper.
8
+
3
9
  ## 0.25.0
4
10
 
5
11
  ### Minor Changes
@@ -1,9 +1,9 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
- export { buildRepositoryImage } from './chunk-AXPCGD46.js';
3
+ export { buildRepositoryImage } from './chunk-Q435LWVN.js';
4
4
  import './chunk-DEBOL6ON.js';
5
5
  import './chunk-JBJTC3UU.js';
6
- export { RecipeError } from './chunk-RGW7ERF3.js';
6
+ export { RecipeError } from './chunk-APBTVIM4.js';
7
7
  import './chunk-ZI2ZVWKT.js';
8
8
  import './chunk-2K3TCQHW.js';
9
9
  import './chunk-JGD5TWQ2.js';
@@ -1 +1 @@
1
- {"id":"2026-10-15T19:23:43.029Z+b0b505b","root":"/home/runner/_work/outerlayer/outerlayer","pkg":"outerlayer"}
1
+ {"id":"2026-10-16T12:01:15.085Z+0bf4474","root":"/home/runner/_work/outerlayer/outerlayer","pkg":"outerlayer"}
@@ -1,9 +1,9 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
- export { MIN_BUILDX_VERSION, builderName, builderSpec, buildxState, ensureBuilder, ensureFailureCount, isOutOfMemory, proxyEnvironment, trackImageBuild } from './chunk-QUGYGO6L.js';
4
- import './chunk-RGW7ERF3.js';
3
+ export { MIN_BUILDX_VERSION, builderName, builderSpec, buildxState, ensureBuilder, ensureFailureCount, isOutOfMemory, proxyEnvironment, trackImageBuild } from './chunk-N3VSI5ZI.js';
4
+ import './chunk-APBTVIM4.js';
5
5
  import './chunk-7RQ73DLO.js';
6
- import './chunk-D4AMAEZ7.js';
6
+ import './chunk-QE3UQAHK.js';
7
7
  import './chunk-QZBXLLTV.js';
8
8
  import './chunk-ZODVSFI4.js';
9
9
  import './chunk-ZI2ZVWKT.js';
@@ -1,43 +1,43 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
- import { probeCredentials } from './chunk-L2FZLBF7.js';
4
- import './chunk-3I44PQ26.js';
3
+ import { probeCredentials } from './chunk-F57CLUH7.js';
4
+ import './chunk-A6ORKBVJ.js';
5
5
  import './chunk-XRYUJTAT.js';
6
6
  import './chunk-ZVB57WI6.js';
7
7
  import './chunk-O2WYUIK7.js';
8
8
  import './chunk-3JVYMD4G.js';
9
9
  import './chunk-YETTWTAY.js';
10
10
  import './chunk-TPKYTORP.js';
11
- import './chunk-34ANPNVB.js';
11
+ import './chunk-VAMUWK55.js';
12
12
  import './chunk-2N72GPS2.js';
13
13
  import './chunk-UNF7MWEL.js';
14
- import './chunk-YTTHDPWF.js';
15
- import './chunk-IDJIWKTY.js';
14
+ import './chunk-C36EOUUU.js';
15
+ import './chunk-H6ZFLIX3.js';
16
16
  import './chunk-ESVW4MJY.js';
17
- import { placeholderQueues, placeholderProblem, permissionModeProblems, permissionModeProblem, needsClaudeCredential, claudeCredentialCheck, claimPermissionProblem, formerSkillQueues, formerSkillProblem } from './chunk-VPUNOGXO.js';
17
+ import { placeholderQueues, placeholderProblem, permissionModeProblems, permissionModeProblem, needsClaudeCredential, claudeCredentialCheck, claimPermissionProblem, formerSkillQueues, formerSkillProblem } from './chunk-24LQ34XL.js';
18
18
  import './chunk-QMQC6JCO.js';
19
19
  import './chunk-YYYRBYWG.js';
20
20
  import './chunk-TBT347UY.js';
21
- import './chunk-JKILLWZF.js';
22
- import './chunk-VNGENFOG.js';
23
- import './chunk-XHXDCYSK.js';
21
+ import './chunk-OEU4JSDE.js';
22
+ import './chunk-S6AWZKJN.js';
23
+ import './chunk-ENFBARQP.js';
24
24
  import './chunk-5222PA6S.js';
25
25
  import './chunk-TQMI335S.js';
26
26
  import './chunk-ZGMQQWCV.js';
27
27
  import './chunk-IGRRD7PX.js';
28
28
  import { parseRunnerEnv } from './chunk-6MZSX4M7.js';
29
- import './chunk-AXPCGD46.js';
29
+ import './chunk-Q435LWVN.js';
30
30
  import './chunk-DEBOL6ON.js';
31
31
  import './chunk-JBJTC3UU.js';
32
32
  import './chunk-OGFGZQA3.js';
33
- import './chunk-QUGYGO6L.js';
34
- import './chunk-RGW7ERF3.js';
35
- import './chunk-7OWPLRJR.js';
33
+ import './chunk-N3VSI5ZI.js';
34
+ import './chunk-APBTVIM4.js';
35
+ import './chunk-HPOEVC2V.js';
36
36
  import './chunk-XGJUNNXL.js';
37
- import './chunk-YMKQVCKC.js';
38
- import './chunk-X5LNCIZT.js';
39
- import './chunk-HWEIFHSW.js';
40
- import './chunk-6CNHXHI2.js';
37
+ import './chunk-3FNPTQRH.js';
38
+ import './chunk-CQRIZNE6.js';
39
+ import './chunk-3WZ5ECSM.js';
40
+ import './chunk-SNQR2EYI.js';
41
41
  import './chunk-BUP5N3X6.js';
42
42
  import './chunk-XSPA5ODY.js';
43
43
  import './chunk-GOSFARMS.js';
@@ -54,7 +54,7 @@ import './chunk-BKO6JEZI.js';
54
54
  import './chunk-VPEGE3QZ.js';
55
55
  import './chunk-HCVLP7XA.js';
56
56
  import './chunk-BJ3KTMDH.js';
57
- import './chunk-D4AMAEZ7.js';
57
+ import './chunk-QE3UQAHK.js';
58
58
  import './chunk-ANPNT6PM.js';
59
59
  import './chunk-EABW6AJQ.js';
60
60
  import './chunk-JKNYTNYD.js';
@@ -1,8 +1,8 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
- import { autoConnect, detectActiveSession } from './chunk-HWEIFHSW.js';
3
+ import { autoConnect, detectActiveSession } from './chunk-3WZ5ECSM.js';
4
4
  import { defaultFetch, unauthorizedMessage, resolveGatewayCredentials } from './chunk-M4B6QKNZ.js';
5
- import { resolveRepoIdentity } from './chunk-D4AMAEZ7.js';
5
+ import { resolveRepoIdentity } from './chunk-QE3UQAHK.js';
6
6
  import { C } from './chunk-ANPNT6PM.js';
7
7
  import { parseWorkItemEnv } from './chunk-T2Q7ISPE.js';
8
8
  import { parseTrackerNumber, trackerNumberError } from './chunk-WZBHBH3J.js';
@@ -1,8 +1,8 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
- import { isPlaceholderCommand } from './chunk-JKILLWZF.js';
4
- import { describeCallFailure } from './chunk-YMKQVCKC.js';
5
- import { WorkCommandError, getJson } from './chunk-X5LNCIZT.js';
3
+ import { isPlaceholderCommand } from './chunk-OEU4JSDE.js';
4
+ import { describeCallFailure } from './chunk-3FNPTQRH.js';
5
+ import { WorkCommandError, getJson } from './chunk-CQRIZNE6.js';
6
6
  import { sanitizeTerminal } from './chunk-BUP5N3X6.js';
7
7
  import { builtinKind } from './chunk-JWRX5ZTT.js';
8
8
  import { signerFor } from './chunk-ZODVSFI4.js';
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
- import { WorkCommandError, postJson } from './chunk-X5LNCIZT.js';
3
+ import { WorkCommandError, postJson } from './chunk-CQRIZNE6.js';
4
4
  import { defaultGitRunner, materializeContext, isStagingWriteFault, lookupGoverningSource } from './chunk-FXUVXSY2.js';
5
5
  import { signingFetchFor } from './chunk-M4B6QKNZ.js';
6
6
  import { unsupportedLayout, layoutRefusalReason, composeDelivery } from './chunk-VPEGE3QZ.js';
@@ -1,9 +1,9 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
- import { fetchFactories, selectFactory, saveFactoryConnection, autoConnectedLine } from './chunk-6CNHXHI2.js';
3
+ import { fetchFactories, selectFactory, saveFactoryConnection, autoConnectedLine } from './chunk-SNQR2EYI.js';
4
4
  import { resolveGatewayCredentials } from './chunk-M4B6QKNZ.js';
5
5
  import { findGitDirs, readRepoConnection } from './chunk-BJ3KTMDH.js';
6
- import { resolveRepoIdentity } from './chunk-D4AMAEZ7.js';
6
+ import { resolveRepoIdentity } from './chunk-QE3UQAHK.js';
7
7
  import { cliInvocation } from './chunk-CRB3POP4.js';
8
8
  import { homeFromEnv } from './chunk-VNVZDWO3.js';
9
9
  import { openSync, fstatSync, readSync, closeSync } from 'fs';
@@ -1,23 +1,23 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
3
  import { readsJobState, READ_JOB_STATE_FORMATS, jobStateFormatOf } from './chunk-ZVB57WI6.js';
4
- import { senderPidfile } from './chunk-34ANPNVB.js';
4
+ import { senderPidfile } from './chunk-VAMUWK55.js';
5
5
  import { DOCKERD_LOG, HELPER_PATH, HELPER_RECORD } from './chunk-2N72GPS2.js';
6
6
  import { writeDockerClientConfig } from './chunk-UNF7MWEL.js';
7
- import { installScrubContext } from './chunk-YTTHDPWF.js';
8
- import { ADDED_USER, AssetError, obtainImage, ensureRootfs, gitRemoteFor, startServicesFor, createBuildDisk, machineConfig, resolveAgentUser, AgentUserError, runBuildSteps, shellQuote, LEASE_SECONDS, createContainerRuntime, stopContainer, cleanupContainer, outOfMemoryReason, containerSenderCommand, signalInContainer, syncInContainer, copyTranscriptsFromContainer, senderAliveScript, HelperRefusal, GH_CONFIG_YML, ghHostsYml, isLiteralAddress, deleteBuildDisk, startCheckContainer, lifecycleSteps, lifecycleFailureReason, writeEvalInput, DeliveryFailure, EVAL_INPUT_NAME, copyTranscripts, senderSignalScript, containerJudgeEnvironment, copyJudgeTree } from './chunk-XHXDCYSK.js';
9
- import { readBranchHead, fetchCommit, diffBetween } from './chunk-AXPCGD46.js';
7
+ import { installScrubContext } from './chunk-C36EOUUU.js';
8
+ import { ADDED_USER, AssetError, obtainImage, ensureRootfs, gitRemoteFor, startServicesFor, createBuildDisk, machineConfig, resolveAgentUser, AgentUserError, runBuildSteps, shellQuote, LEASE_SECONDS, createContainerRuntime, stopContainer, cleanupContainer, outOfMemoryReason, containerSenderCommand, signalInContainer, syncInContainer, copyTranscriptsFromContainer, senderAliveScript, HelperRefusal, GH_CONFIG_YML, ghHostsYml, isLiteralAddress, deleteBuildDisk, startCheckContainer, lifecycleSteps, lifecycleFailureReason, writeEvalInput, DeliveryFailure, EVAL_INPUT_NAME, copyTranscripts, senderSignalScript, containerJudgeEnvironment, copyJudgeTree } from './chunk-ENFBARQP.js';
9
+ import { readBranchHead, fetchCommit, diffBetween } from './chunk-Q435LWVN.js';
10
10
  import { isSameProcess, startTimeOf } from './chunk-JBJTC3UU.js';
11
- import { HASH_ARGV, parseProgramHash, JUDGE_PROGRAM, writeJobFile, readJobFile, COMMAND_DIR, childEnvironment, judgeCommand, JUDGE_MAX_TURNS, MAX_REPORT_BYTES, JUDGE_DIR } from './chunk-QUGYGO6L.js';
12
- import { CLAUDE_CODE_VERSION } from './chunk-RGW7ERF3.js';
13
- import { waitForAgent, vmExecArgs } from './chunk-7OWPLRJR.js';
11
+ import { HASH_ARGV, parseProgramHash, JUDGE_PROGRAM, writeJobFile, readJobFile, COMMAND_DIR, childEnvironment, judgeCommand, JUDGE_MAX_TURNS, MAX_REPORT_BYTES, JUDGE_DIR } from './chunk-N3VSI5ZI.js';
12
+ import { CLAUDE_CODE_VERSION } from './chunk-APBTVIM4.js';
13
+ import { waitForAgent, vmExecArgs } from './chunk-HPOEVC2V.js';
14
14
  import { socketPathProblem, vsockLinks, linkVsockSockets } from './chunk-XGJUNNXL.js';
15
- import { describeCallFailure, resolveGoverningSource, refusalCode, removeStagedContext, stageGovernedContext, pinnedSourceOf, commandWithShim, logStamp, createRunnerLog, formatDuration, retrySend, formatClock } from './chunk-YMKQVCKC.js';
16
- import { WorkCommandError, postJson, isSignatureRefusal, getJson } from './chunk-X5LNCIZT.js';
15
+ import { describeCallFailure, resolveGoverningSource, refusalCode, removeStagedContext, stageGovernedContext, pinnedSourceOf, commandWithShim, logStamp, createRunnerLog, formatDuration, retrySend, formatClock } from './chunk-3FNPTQRH.js';
16
+ import { WorkCommandError, postJson, isSignatureRefusal, getJson } from './chunk-CQRIZNE6.js';
17
17
  import { planArtifactUpload } from './chunk-BUP5N3X6.js';
18
18
  import { isBuiltinContainer, isBuiltinProcess, isBuiltinVm, DEFAULT_CHECK_TIME_LIMIT_MINUTES } from './chunk-JWRX5ZTT.js';
19
19
  import { parseSize } from './chunk-7RQ73DLO.js';
20
- import { scrubText } from './chunk-D4AMAEZ7.js';
20
+ import { scrubText } from './chunk-QE3UQAHK.js';
21
21
  import { readCloudConfig } from './chunk-EABW6AJQ.js';
22
22
  import { resolvePackRoot } from './chunk-HBISTTG3.js';
23
23
  import { parsePolicy } from './chunk-RKOTJQVG.js';
@@ -214,6 +214,11 @@ async function helperFor(runtime, log) {
214
214
  else if (probe.unreachable === true) log(`${probe.detail}, so this build runs without the jailer`);
215
215
  return void 0;
216
216
  }
217
+ function silence(runtime, state, lastError, console) {
218
+ if (!vmAlive(runtime, state)) return `it exited before its exec agent answered; ${console}`;
219
+ const last = lastError === void 0 ? "" : `; the last connection to its exec agent failed: ${describeCallFailure(lastError)}`;
220
+ return `its exec agent did not answer; ${console}${last}`;
221
+ }
217
222
  function consoleNote(state, consolePath) {
218
223
  return state.jailed === void 0 ? `its console is in ${consolePath}` : `its console output is in the journal of the unit ${state.jailed.unit}`;
219
224
  }
@@ -386,10 +391,10 @@ async function provisionMicroVm(input) {
386
391
  input.save(state, environment);
387
392
  }
388
393
  if (input.aborted()) return bail("", true);
389
- const ready = await waitForAgent(state.vsockPath, { attempts: BOOT_ATTEMPTS, delayMs: BOOT_POLL_MS, sleep: runtime.sleep });
394
+ let lastError;
395
+ const ready = await waitForAgent(state.vsockPath, { attempts: BOOT_ATTEMPTS, delayMs: BOOT_POLL_MS, sleep: runtime.sleep, onFailure: (err) => lastError = err });
390
396
  if (!ready) {
391
- const why = vmAlive(runtime, state) ? "its exec agent did not answer" : "it exited before its exec agent answered";
392
- return bail(`the microVM did not start: ${why}; ${consoleNote(state, consolePath)}`);
397
+ return bail(`the microVM did not start: ${silence(runtime, state, lastError, consoleNote(state, consolePath))}`);
393
398
  }
394
399
  let pushes = Promise.resolve();
395
400
  let firstWriteFailure;
@@ -812,10 +817,10 @@ async function startCheckMicroVm(input) {
812
817
  input.save(state);
813
818
  }
814
819
  if (abandoned()) return ABANDONED;
815
- const ready = await waitForAgent(state.vsockPath, { attempts: BOOT_ATTEMPTS, delayMs: BOOT_POLL_MS, sleep: runtime.sleep });
820
+ let lastError;
821
+ const ready = await waitForAgent(state.vsockPath, { attempts: BOOT_ATTEMPTS, delayMs: BOOT_POLL_MS, sleep: runtime.sleep, onFailure: (err) => lastError = err });
816
822
  if (!ready) {
817
- const why = vmAlive(runtime, state) ? "its exec agent did not answer" : "it exited before its exec agent answered";
818
- return `the microVM did not start: ${why}; ${consoleNote(state, consolePath)}`;
823
+ return `the microVM did not start: ${silence(runtime, state, lastError, consoleNote(state, consolePath))}`;
819
824
  }
820
825
  if (built.docker === true) return waitForDocker(runtime, state, agentUser, () => /* @__PURE__ */ new Date());
821
826
  return void 0;
@@ -264,10 +264,10 @@ function guestAssetsPinned(arch) {
264
264
  var JAILER_BINARY_SHA256 = {
265
265
  x86_64: "99832d2270741af67ffacd46da716b4b016338541af5a742907ab965b2e9ac9e"
266
266
  };
267
- var HOST_HELPER_ASSETS_VERSION = "2";
267
+ var HOST_HELPER_ASSETS_VERSION = "4";
268
268
  var HOST_HELPER_BASE_URL = `https://github.com/outerlayerai/guest-assets/releases/download/guest-${HOST_HELPER_ASSETS_VERSION}`;
269
269
  var HOST_HELPER_SHA256 = {
270
- x86_64: "0000000000000000000000000000000000000000000000000000000000000000"
270
+ x86_64: "5c9d9e46daf165411ebe594fa28f4adc6b363989d77673c7651ab6dccb808684"
271
271
  };
272
272
  function hostHelperPinned(arch = "x86_64", hashes = HOST_HELPER_SHA256) {
273
273
  return hashes[arch] !== "0".repeat(64);
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
- import { uploadSpooledSteps } from './chunk-IDJIWKTY.js';
3
+ import { uploadSpooledSteps } from './chunk-H6ZFLIX3.js';
4
4
  import { LaunchFilter } from './chunk-ESVW4MJY.js';
5
5
  import { RepoFilter } from './chunk-TBT347UY.js';
6
6
  import { migrateLegacyArtifactSidecars, planArtifactUpload, artifactsStatePath, sanitizeTerminal, acquireArtifactSpoolLock, artifactBlobsDir, resolveArtifactTurnIndex, isArtifactTombstoned, ARTIFACT_RETRY_MAX_AGE_MS, writeArtifactSpoolState, reclaimUnneededArtifactBlobs, neededArtifactShas } from './chunk-BUP5N3X6.js';
@@ -10,7 +10,7 @@ import { readLatestProvenanceForSession, readContextProvenance } from './chunk-Z
10
10
  import { hookExecSpoolPath } from './chunk-DYEFPYME.js';
11
11
  import { applyReportedCost } from './chunk-BKO6JEZI.js';
12
12
  import { readRepoConnection, findGitDirs } from './chunk-BJ3KTMDH.js';
13
- import { setCustomScrubbers, setLocalIdentity, tailTranscript, enrichSessionRepo, scanAll, setRepoRoot, resolveRepoIdentity, sessionIdFromPath, scrubDeep, SOURCE_ADAPTERS } from './chunk-D4AMAEZ7.js';
13
+ import { setCustomScrubbers, setLocalIdentity, tailTranscript, enrichSessionRepo, scanAll, setRepoRoot, resolveRepoIdentity, sessionIdFromPath, scrubDeep, SOURCE_ADAPTERS } from './chunk-QE3UQAHK.js';
14
14
  import { C } from './chunk-ANPNT6PM.js';
15
15
  import { readCloudConfig, cloudConfigPath, writeCloudConfig } from './chunk-EABW6AJQ.js';
16
16
  import { readLaunchSpoolState, launchStatusIsDecisive, launchedItemsBySession, launchesPath } from './chunk-T2Q7ISPE.js';
@@ -1,11 +1,11 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
- import { detectActiveSession, autoConnect } from './chunk-HWEIFHSW.js';
4
- import { workPageUrl } from './chunk-6CNHXHI2.js';
3
+ import { detectActiveSession, autoConnect } from './chunk-3WZ5ECSM.js';
4
+ import { workPageUrl } from './chunk-SNQR2EYI.js';
5
5
  import { sanitizeTerminal } from './chunk-BUP5N3X6.js';
6
6
  import { resolveGatewayCredentials, unauthorizedMessage, defaultFetch } from './chunk-M4B6QKNZ.js';
7
7
  import { readRepoConnection } from './chunk-BJ3KTMDH.js';
8
- import { resolveRepoIdentity } from './chunk-D4AMAEZ7.js';
8
+ import { resolveRepoIdentity } from './chunk-QE3UQAHK.js';
9
9
  import { C } from './chunk-ANPNT6PM.js';
10
10
  import { parseTrackerNumber, trackerNumberError } from './chunk-WZBHBH3J.js';
11
11
  import { homeFromEnv } from './chunk-VNVZDWO3.js';
@@ -1,20 +1,20 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
3
  import { runnerImageVersion } from './chunk-5222PA6S.js';
4
- import { readDefaultBranchHead, cloneRepository, buildRepositoryImage } from './chunk-AXPCGD46.js';
4
+ import { readDefaultBranchHead, cloneRepository, buildRepositoryImage } from './chunk-Q435LWVN.js';
5
5
  import { startTimeOf, isSameProcess } from './chunk-JBJTC3UU.js';
6
6
  import { currentCliBuild } from './chunk-OGFGZQA3.js';
7
- import { createDockerHost, builderSpec, runnerLabelValue, RUNNER_LABEL, BUILD_LABEL, prepareRunArgs, containerRunArgs, HASH_ARGV, parseProgramHash, JUDGE_PROGRAM, containerExecArgs, childEnvironment, JUDGE_DIR, JUDGE_REPORT, MAX_REPORT_BYTES, spawnRun } from './chunk-QUGYGO6L.js';
8
- import { hostHelperPinned, firecrackerArch, MICROVM_ARCHES, RecipeError, DOCKER_FEATURE, CLAUDE_CODE_VERSION, GUEST_HELPER_SHA256, GUEST_ASSETS_BASE_URL, GUEST_KERNEL_SHA256, JAILER_BINARY_SHA256, FIRECRACKER_BINARY_SHA256, FIRECRACKER_SHA256, FIRECRACKER_VERSION, GUEST_ASSETS_VERSION, DEFAULT_BASE_IMAGE } from './chunk-RGW7ERF3.js';
9
- import { execCapture } from './chunk-7OWPLRJR.js';
7
+ import { createDockerHost, builderSpec, runnerLabelValue, RUNNER_LABEL, BUILD_LABEL, prepareRunArgs, containerRunArgs, HASH_ARGV, parseProgramHash, JUDGE_PROGRAM, containerExecArgs, childEnvironment, JUDGE_DIR, JUDGE_REPORT, MAX_REPORT_BYTES, spawnRun } from './chunk-N3VSI5ZI.js';
8
+ import { hostHelperPinned, firecrackerArch, MICROVM_ARCHES, RecipeError, DOCKER_FEATURE, CLAUDE_CODE_VERSION, GUEST_HELPER_SHA256, GUEST_ASSETS_BASE_URL, GUEST_KERNEL_SHA256, JAILER_BINARY_SHA256, FIRECRACKER_BINARY_SHA256, FIRECRACKER_SHA256, FIRECRACKER_VERSION, GUEST_ASSETS_VERSION, DEFAULT_BASE_IMAGE } from './chunk-APBTVIM4.js';
9
+ import { execCapture } from './chunk-HPOEVC2V.js';
10
10
  import { GUEST_CID } from './chunk-XGJUNNXL.js';
11
- import { describeCallFailure, controlPlaneTokenFailure, refusalCode, resolveGoverningSource, removeStagedContext, stageGovernedContext, pinnedSourceOf, commandWithShim, shimScript } from './chunk-YMKQVCKC.js';
12
- import { WorkCommandError } from './chunk-X5LNCIZT.js';
11
+ import { describeCallFailure, controlPlaneTokenFailure, refusalCode, resolveGoverningSource, removeStagedContext, stageGovernedContext, pinnedSourceOf, commandWithShim, shimScript } from './chunk-3FNPTQRH.js';
12
+ import { WorkCommandError } from './chunk-CQRIZNE6.js';
13
13
  import { hostAllowed } from './chunk-UXYLWVTQ.js';
14
14
  import { parseDuKilobytes } from './chunk-7RQ73DLO.js';
15
15
  import { sharedSkillNames, skillConflictMessage } from './chunk-VPEGE3QZ.js';
16
16
  import { versionAtLeast, MINIMUM_CLAUDE_VERSION } from './chunk-HCVLP7XA.js';
17
- import { setCustomScrubbers, setLocalIdentity, setRepoRoot, parseTranscript, scrubDeep, scrubText } from './chunk-D4AMAEZ7.js';
17
+ import { setCustomScrubbers, setLocalIdentity, setRepoRoot, parseTranscript, scrubDeep, scrubText } from './chunk-QE3UQAHK.js';
18
18
  import { orderSessions, extractFacts, sessionsToTimeline } from './chunk-RKOTJQVG.js';
19
19
  import { downconvertSession } from './chunk-QZBXLLTV.js';
20
20
  import { vmAssetsDir, RUNNER_DIR_MODE, rootfsPathFor, diskTemplatesDir, RUNNER_FILE_MODE, deliveryDir, ghConfigDir, runnerDirOfBuild, spoolDir, mirrorDir, buildDir, SHIM_DIR } from './chunk-ZI2ZVWKT.js';
@@ -1,25 +1,25 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
- import { releaseLease, isUnfinished, setStage, jobEnv, runHook, describeHookEnd, provisionMicroVm, deliverCommitHooks, provisionProcess, provisionEnvironment, readProvisionOut, resolveHostBuild, workdirProblem, listenOnBroker, hostEnvironment, hostCommandEnvironment, execArgv, microVmCommandLine, runCommand, commandLogOffset, execCommandLine, startSender, startHostServices, finishJob, isContainerTracked, probeCommand, appendCommandLog, judgeProbe, EXIT_CODE_FILE, isGroupAlive, outcomeFromExitCode, isTimedOut, readCpuUsec, isIdle, stopOrphanedMicroVms, unfinishedJobs, listUnreadableJobs, listAdoptableJobs, retryFailedReleases, recoverLostJobs, hookLimitsFor, AttemptLogBook, needsRenew, renewLease, RENEW_INTERVAL_SECONDS, listTrackedJobs, restartSender, ALREADY_RELEASED, inTeardown } from './chunk-3I44PQ26.js';
3
+ import { releaseLease, isUnfinished, setStage, jobEnv, runHook, describeHookEnd, provisionMicroVm, deliverCommitHooks, provisionProcess, provisionEnvironment, readProvisionOut, resolveHostBuild, workdirProblem, listenOnBroker, hostEnvironment, hostCommandEnvironment, execArgv, microVmCommandLine, runCommand, commandLogOffset, execCommandLine, startSender, startHostServices, finishJob, isContainerTracked, probeCommand, appendCommandLog, judgeProbe, EXIT_CODE_FILE, isGroupAlive, outcomeFromExitCode, isTimedOut, readCpuUsec, isIdle, stopOrphanedMicroVms, unfinishedJobs, listUnreadableJobs, listAdoptableJobs, retryFailedReleases, recoverLostJobs, hookLimitsFor, AttemptLogBook, needsRenew, renewLease, RENEW_INTERVAL_SECONDS, listTrackedJobs, restartSender, ALREADY_RELEASED, inTeardown } from './chunk-A6ORKBVJ.js';
4
4
  import { writePendingUpdate } from './chunk-XRYUJTAT.js';
5
5
  import { JOB_STATE_FORMAT, readsJobState, jobStateFormatOf } from './chunk-ZVB57WI6.js';
6
6
  import { readHousekeepingRecord, writeHousekeepingRecord } from './chunk-O2WYUIK7.js';
7
7
  import { decideInstalledSwitch } from './chunk-3JVYMD4G.js';
8
8
  import { fetchVersionMeta, npmVersion, npmSupportsProvenance, fetchTarballDigest, fetchProvenance, installVersion, auditSignatures } from './chunk-YETTWTAY.js';
9
9
  import { RUNNER_PROTOCOL } from './chunk-TPKYTORP.js';
10
- import { currentSkillCommand, formerSkillProblem, placeholderQueues, placeholderProblem } from './chunk-VPUNOGXO.js';
10
+ import { currentSkillCommand, formerSkillProblem, placeholderQueues, placeholderProblem } from './chunk-24LQ34XL.js';
11
11
  import { writeMarker, readMarker, currentVersion, removeMarker, entryIn, versionDir, startedThroughCurrent, switchCurrent, isInLayout, cleanVersions, stagingDir } from './chunk-QMQC6JCO.js';
12
12
  import { freeBytes, formatBytes } from './chunk-YYYRBYWG.js';
13
13
  import { RepoFilter } from './chunk-TBT347UY.js';
14
- import { LEASE_SECONDS, provisionContainer, leaseExpiresAtMs, deliverContainerHooks, lifecycleSteps, lifecycleFailureReason, prepareBranch, containerCommandExec, measureDisk, setUpRunnerCgroup, createContainerRuntime, parseCpuList, ensureTunnel, keepGhConfigCurrent, filesAreCopied } from './chunk-XHXDCYSK.js';
14
+ import { LEASE_SECONDS, provisionContainer, leaseExpiresAtMs, deliverContainerHooks, lifecycleSteps, lifecycleFailureReason, prepareBranch, containerCommandExec, measureDisk, setUpRunnerCgroup, createContainerRuntime, parseCpuList, ensureTunnel, keepGhConfigCurrent, filesAreCopied } from './chunk-ENFBARQP.js';
15
15
  import { tagToPull, pullInstruction, imageTag, writeUpdateStatus } from './chunk-5222PA6S.js';
16
16
  import { isVersion, compareVersions, satisfiesRange } from './chunk-TQMI335S.js';
17
17
  import { checkFit } from './chunk-IGRRD7PX.js';
18
18
  import { claimPidFile, readPidFile, releasePidFile } from './chunk-DEBOL6ON.js';
19
19
  import { startTimeOf, isSameProcess } from './chunk-JBJTC3UU.js';
20
- import { writeJobFile, ensureRunnerIdentity, readJobFile, builderName, runnerLabelValue, ensureFailureCount, builderSpec, ensureBuilder, spawnRun, BUILD_LABEL, RUNNER_LABEL, readJobFileChecked } from './chunk-QUGYGO6L.js';
21
- import { describeCallFailure, retrySend, shortClaim, relativeToRunner, formatDuration, BuildTokens, classifyRefusal, refusalCode, createRunnerLog, formatClock } from './chunk-YMKQVCKC.js';
22
- import { isSignatureRefusal, WorkCommandError, getJson, postJson } from './chunk-X5LNCIZT.js';
20
+ import { writeJobFile, ensureRunnerIdentity, readJobFile, builderName, runnerLabelValue, ensureFailureCount, builderSpec, ensureBuilder, spawnRun, BUILD_LABEL, RUNNER_LABEL, readJobFileChecked } from './chunk-N3VSI5ZI.js';
21
+ import { describeCallFailure, retrySend, shortClaim, relativeToRunner, formatDuration, BuildTokens, classifyRefusal, refusalCode, createRunnerLog, formatClock } from './chunk-3FNPTQRH.js';
22
+ import { isSignatureRefusal, WorkCommandError, getJson, postJson } from './chunk-CQRIZNE6.js';
23
23
  import { isBuiltinContainer, isBuiltinVm, isBuiltinProcess, loadRunnerConfig, checkHooks, builtinKind, DEFAULT_UPDATE_MAX_WAIT_HOURS } from './chunk-JWRX5ZTT.js';
24
24
  import { exceedsDisk } from './chunk-7RQ73DLO.js';
25
25
  import { resolveVersion } from './chunk-RA3O54FC.js';
@@ -1746,7 +1746,7 @@ var CLAIM_REFUSAL_CODES = new Set(
1746
1746
  "pull_request_from_fork pull_request_on_default_branch pull_request_ambiguous pull_request_repository_not_connected repository_not_reachable branch_claimed_elsewhere".split(" ")
1747
1747
  );
1748
1748
  async function tryClaimAndStart(state, item, queue) {
1749
- const { postJson: postJson2 } = await import('./work-cmd-LRAXUOJV.js');
1749
+ const { postJson: postJson2 } = await import('./work-cmd-6HARIBMW.js');
1750
1750
  const log = logOf(state);
1751
1751
  const hostKey = await loadHostKey(state.config.configPath);
1752
1752
  const claim = await retrySend(
@@ -2730,7 +2730,7 @@ async function start(configPath, deps = { fetchImpl: fetch }) {
2730
2730
  const outcome = await onStartUnderMarker({
2731
2731
  configPath,
2732
2732
  own: ownVersionOf(deps),
2733
- check: update.check ? () => update.check(configPath) : async () => (await import('./check-EPYRTE3R.js')).runRunnerCheck(configPath, { fetchImpl: deps.fetchImpl }),
2733
+ check: update.check ? () => update.check(configPath) : async () => (await import('./check-C6HEFW6R.js')).runRunnerCheck(configPath, { fetchImpl: deps.fetchImpl }),
2734
2734
  now: () => (deps.now ?? (() => /* @__PURE__ */ new Date()))().getTime(),
2735
2735
  log
2736
2736
  });
@@ -1,10 +1,10 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
3
  import { launchRefusalForSession } from './chunk-ESVW4MJY.js';
4
- import { autoConnect, detectActiveSession } from './chunk-HWEIFHSW.js';
4
+ import { autoConnect, detectActiveSession } from './chunk-3WZ5ECSM.js';
5
5
  import { acquireSpoolLockAt } from './chunk-BUP5N3X6.js';
6
6
  import { resolveGatewayCredentials, defaultFetch, unauthorizedMessage } from './chunk-M4B6QKNZ.js';
7
- import { resolveRepoIdentity } from './chunk-D4AMAEZ7.js';
7
+ import { resolveRepoIdentity } from './chunk-QE3UQAHK.js';
8
8
  import { C } from './chunk-ANPNT6PM.js';
9
9
  import { launchedItemForSession } from './chunk-T2Q7ISPE.js';
10
10
  import { parseTrackerNumber, trackerNumberError } from './chunk-WZBHBH3J.js';
@@ -173,7 +173,8 @@ async function waitForAgent(socketPath, options) {
173
173
  try {
174
174
  await execCapture(socketPath, { argv: ["true"], user: "root", cwd: "/", env: {} });
175
175
  return true;
176
- } catch {
176
+ } catch (err) {
177
+ options.onFailure?.(err);
177
178
  await options.sleep(options.delayMs);
178
179
  }
179
180
  }
@@ -1,8 +1,8 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
3
  import { checkStarterFiles, contextIsGoverned, checkBuildSkill } from './chunk-XFGL53GU.js';
4
- import { resolveCredentials, getJson, WorkCommandError } from './chunk-X5LNCIZT.js';
5
- import { isLinkedRepository } from './chunk-6CNHXHI2.js';
4
+ import { resolveCredentials, getJson, WorkCommandError } from './chunk-CQRIZNE6.js';
5
+ import { isLinkedRepository } from './chunk-SNQR2EYI.js';
6
6
  import { sanitizeTerminal } from './chunk-BUP5N3X6.js';
7
7
  import { checkFormerSkillNames } from './chunk-MQ743JX3.js';
8
8
  import { resolveGatewayCredentials, defaultFetch } from './chunk-M4B6QKNZ.js';
@@ -10,7 +10,7 @@ import { sanitizeForContext, spoolDir, assessSyncHealth, readSyncStatus, SYNC_ST
10
10
  import { readStatuslineState, STATE_FRESH_MS } from './chunk-DXDF43YG.js';
11
11
  import { hookCommandEscapesControlPlane, CONTROL_PLANE_DIR_VARIABLE } from './chunk-HCVLP7XA.js';
12
12
  import { findGitDirs } from './chunk-BJ3KTMDH.js';
13
- import { resolveRepoIdentity, compareVersions, SUPPORTED_VERSIONS } from './chunk-D4AMAEZ7.js';
13
+ import { resolveRepoIdentity, compareVersions, SUPPORTED_VERSIONS } from './chunk-QE3UQAHK.js';
14
14
  import { C } from './chunk-ANPNT6PM.js';
15
15
  import { cliInvocation } from './chunk-CRB3POP4.js';
16
16
  import { readSettings, settingsPath, isOurStatuslineSlot, statuslineWrappedOriginal, REGISTERED_EVENTS, isOurHookCommand, ourCommandBins, cliBinResolvable, ourDirectScriptBins, wrappedOriginalCommand } from './chunk-GNPTU4BM.js';
@@ -1186,7 +1186,7 @@ async function gatherDoctorChecks() {
1186
1186
  const { runnerVmCheck } = await import('./doctor-53F2PYY7.js');
1187
1187
  checks.push(runnerVmCheck(configPath, { lima: realLima(), home: homeFromEnv(), instance: runnerVm.instance }));
1188
1188
  } else if (hasRunnerBlock(configPath)) {
1189
- const { runnerHostChecks } = await import('./doctor-73GNT4VV.js');
1189
+ const { runnerHostChecks } = await import('./doctor-S6YCZGUU.js');
1190
1190
  const hooks = (() => {
1191
1191
  try {
1192
1192
  return loadRunnerConfig(configPath).hooks;
@@ -1,8 +1,8 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
- import { RecipeError, BUILDKIT_IMAGE } from './chunk-RGW7ERF3.js';
3
+ import { RecipeError, BUILDKIT_IMAGE } from './chunk-APBTVIM4.js';
4
4
  import { parseSize } from './chunk-7RQ73DLO.js';
5
- import { compareVersions } from './chunk-D4AMAEZ7.js';
5
+ import { compareVersions } from './chunk-QE3UQAHK.js';
6
6
  import { ensureHostKey } from './chunk-ZODVSFI4.js';
7
7
  import { RUNNER_DIR_MODE, RUNNER_FILE_MODE, runnerDir, jobsDir } from './chunk-ZI2ZVWKT.js';
8
8
  import { CLAUDE_PORT, JOB_MOUNT, GATEWAY_PORT, GATEWAY_SOCKET, CLAUDE_SOCKET, RELAY_PORT, DESTINATION_BASE_PORT } from './chunk-2K3TCQHW.js';
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
- import { detectMachine, supportsContainerBuilds, reachDockerStep, describeMachineDocker, supportsMicroVmBuilds } from './chunk-VNGENFOG.js';
4
- import { MIN_ENGINE_MAJOR } from './chunk-XHXDCYSK.js';
3
+ import { detectMachine, supportsContainerBuilds, reachDockerStep, describeMachineDocker, supportsMicroVmBuilds } from './chunk-S6AWZKJN.js';
4
+ import { MIN_ENGINE_MAJOR } from './chunk-ENFBARQP.js';
5
5
  import { hasStoredCredential, AGENT_COMMANDS, storeClaudeCredential, credentialFromStdin, isAgentName } from './chunk-ZGMQQWCV.js';
6
6
  import { runnerCredentialProblem } from './chunk-JWRX5ZTT.js';
7
7
  import { runnerDir, RUNNER_DIR_MODE, RUNNER_FILE_MODE } from './chunk-ZI2ZVWKT.js';
@@ -2,7 +2,7 @@
2
2
  import { createRequire } from 'node:module';
3
3
  import { claimPidFile, RunnerAlreadyRunningError, releasePidFile } from './chunk-DEBOL6ON.js';
4
4
  import { startTimeOf } from './chunk-JBJTC3UU.js';
5
- import { CLAUDE_CODE_VERSION, NODE_IMAGE, DEFAULT_BASE_IMAGE, RecipeError, locateRecipe, readRecipe, assertBuildable, TINI_VERSION, GH_VERSION, writeSanitizedRecipe, classifyProperties, GH_SHA256, TINI_SHA256, SANITIZED_NAME } from './chunk-RGW7ERF3.js';
5
+ import { CLAUDE_CODE_VERSION, NODE_IMAGE, DEFAULT_BASE_IMAGE, RecipeError, locateRecipe, readRecipe, assertBuildable, TINI_VERSION, GH_VERSION, writeSanitizedRecipe, classifyProperties, GH_SHA256, TINI_SHA256, SANITIZED_NAME } from './chunk-APBTVIM4.js';
6
6
  import { RUNNER_DIR_MODE, repoCacheDir, imagesDir, attemptStamp, runnerDir, rootfsPathFor, RUNNER_FILE_MODE } from './chunk-ZI2ZVWKT.js';
7
7
  import { withGitConfig, tokenHeader, PROXY_WARNING_FLAG } from './chunk-2K3TCQHW.js';
8
8
  import { RELAY_ID, RELAY_USER } from './chunk-JGD5TWQ2.js';