@outerlayer/cli 0.33.0-next.20261022161023 → 0.33.0-next.20261022180022

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 (110) hide show
  1. package/dist/{agent-setup-2MJXGAZ5.js → agent-setup-4WKFXVOP.js} +7 -7
  2. package/dist/{bridge-3EG6Q34K.js → bridge-DMFMBDRG.js} +3 -3
  3. package/dist/{build-NCELVKHF.js → build-2ONBPS3M.js} +5 -5
  4. package/dist/{build-disk-5GIWYDOB.js → build-disk-PCDS676T.js} +6 -6
  5. package/dist/build-info.json +1 -1
  6. package/dist/{builder-EELBB7SI.js → builder-AIKWGJHP.js} +5 -5
  7. package/dist/{check-EJKRXI2N.js → check-LGZOJYLS.js} +36 -36
  8. package/dist/{chunk-CNRMP6EN.js → chunk-5KO3TN2F.js} +1 -1
  9. package/dist/{chunk-JT3YO5MH.js → chunk-634F6J3Q.js} +1 -1
  10. package/dist/{chunk-AESNEWYR.js → chunk-6KVKEZTH.js} +2 -2
  11. package/dist/{chunk-IK6M37BI.js → chunk-7HMF7I3D.js} +4 -4
  12. package/dist/{chunk-XTBGPISI.js → chunk-7SCEDWQP.js} +8 -8
  13. package/dist/{chunk-HBBCQ5NE.js → chunk-A6MLCH76.js} +4 -4
  14. package/dist/{chunk-B3EE7OKK.js → chunk-CMNAAKFD.js} +1 -1
  15. package/dist/{chunk-HDSDUTX4.js → chunk-D5ZGMXUL.js} +1 -1
  16. package/dist/{chunk-TA6TFYAN.js → chunk-DZGLRVS3.js} +3 -3
  17. package/dist/{chunk-THTBXIK5.js → chunk-EBX2DU2M.js} +2 -2
  18. package/dist/{chunk-VQ2JGZSC.js → chunk-FLFK42YF.js} +1 -1
  19. package/dist/{chunk-QSSYXK6C.js → chunk-FSFAP7GA.js} +2 -2
  20. package/dist/{chunk-6WUQSARX.js → chunk-GDI6QGRH.js} +10 -10
  21. package/dist/{chunk-XD4ZCMA4.js → chunk-HACGUL52.js} +12 -3
  22. package/dist/{chunk-ELYHDWCC.js → chunk-HAD7LYDL.js} +3 -3
  23. package/dist/{chunk-52C3SSNF.js → chunk-HDD3BKAE.js} +4 -4
  24. package/dist/{chunk-HVIYKGK5.js → chunk-J5VNSW4W.js} +19 -19
  25. package/dist/{chunk-WHRR55PC.js → chunk-J6LFFZOY.js} +4 -4
  26. package/dist/{chunk-MBE6FEQ3.js → chunk-JFRBPBD5.js} +2 -2
  27. package/dist/{chunk-LCVR4UIS.js → chunk-JKPJQNJF.js} +5 -5
  28. package/dist/{chunk-QJNFO7TQ.js → chunk-JUVUVXQZ.js} +2 -2
  29. package/dist/{chunk-6JNCNHSV.js → chunk-KQFWTTG7.js} +5 -5
  30. package/dist/{chunk-S2IJQER5.js → chunk-LG2IQRTO.js} +3 -3
  31. package/dist/{chunk-72BIONOT.js → chunk-LOYLFW4I.js} +1 -1
  32. package/dist/{chunk-FQW7TKIU.js → chunk-M7IA4JOX.js} +5 -5
  33. package/dist/{chunk-ESP5VZBD.js → chunk-MBGS33SL.js} +11 -2
  34. package/dist/{chunk-HIGJTX5U.js → chunk-O5F376JJ.js} +1 -1
  35. package/dist/{chunk-3VGDZ23W.js → chunk-O7MSQBTH.js} +1 -1
  36. package/dist/{chunk-D7ECJX4J.js → chunk-OKTLQTWH.js} +41 -16
  37. package/dist/{chunk-533QGXGZ.js → chunk-PWB7EK4Z.js} +1 -1
  38. package/dist/{chunk-LH3KULPL.js → chunk-QPAPHQZ7.js} +1 -1
  39. package/dist/{chunk-C3XLVHN6.js → chunk-RLGSBR56.js} +2 -2
  40. package/dist/{chunk-XTNMIV77.js → chunk-TTACRX4N.js} +1 -1
  41. package/dist/{chunk-LWODW66U.js → chunk-VGIS2D3U.js} +24 -22
  42. package/dist/{chunk-2GHI2J26.js → chunk-VHRKGCBY.js} +1 -1
  43. package/dist/{chunk-M5ZXOQYS.js → chunk-W4UFGYKQ.js} +1 -1
  44. package/dist/{chunk-OJ63GRZ2.js → chunk-XCUXPSHL.js} +2 -2
  45. package/dist/{chunk-QQGZ5THT.js → chunk-XXVYHC6D.js} +1 -1
  46. package/dist/{chunk-A3H27SYX.js → chunk-Y53T3QZM.js} +1 -1
  47. package/dist/{chunk-JZ4FXSLI.js → chunk-YMGSMPPW.js} +2 -2
  48. package/dist/{chunk-L3DUKDTR.js → chunk-ZANK3WWF.js} +1 -1
  49. package/dist/{chunk-IPJ6HR7E.js → chunk-ZFJAQS3A.js} +1 -1
  50. package/dist/{chunk-ALSE7YKX.js → chunk-ZQ7VRXYM.js} +1 -1
  51. package/dist/{chunk-J42MMS4R.js → chunk-ZQSCE7M4.js} +2 -2
  52. package/dist/{chunk-V2EUC2MJ.js → chunk-ZZAA73E5.js} +3 -3
  53. package/dist/{claude-launcher-IUDNUD2J.js → claude-launcher-SNMNPDP4.js} +1 -1
  54. package/dist/{cli-OHQKHGEU.js → cli-2LCCZQA6.js} +102 -102
  55. package/dist/{command-7IY3XGAG.js → command-2EJ76XJH.js} +23 -23
  56. package/dist/{config-CUJ3Q4L2.js → config-WAIYUZUG.js} +3 -3
  57. package/dist/{connect-cmd-AQSJVDQU.js → connect-cmd-YNPOL2Y5.js} +6 -6
  58. package/dist/{container-start-BPQHJMNF.js → container-start-RWOEQUCC.js} +23 -23
  59. package/dist/{control-plane-launch-K7YD6KEN.js → control-plane-launch-O3TXH3LI.js} +6 -6
  60. package/dist/{docker-UKJBLZLW.js → docker-NDEA46KV.js} +5 -5
  61. package/dist/{doctor-JUR62PMF.js → doctor-C3JKNKEJ.js} +26 -26
  62. package/dist/{emit-artifact-cmd-HI3EYJA3.js → emit-artifact-cmd-PZW7TVHF.js} +11 -11
  63. package/dist/{emit-criteria-cmd-6D4D5ZBW.js → emit-criteria-cmd-EE7BYO34.js} +8 -8
  64. package/dist/{emit-demo-cmd-HWDC3MAK.js → emit-demo-cmd-AKRXCWLK.js} +11 -11
  65. package/dist/{emit-finding-cmd-A7RBLHTN.js → emit-finding-cmd-JXFT233D.js} +8 -8
  66. package/dist/{emit-result-cmd-2WVVAGST.js → emit-result-cmd-4K6HUK4B.js} +10 -10
  67. package/dist/{emit-step-cmd-KNVHYSXT.js → emit-step-cmd-JEADH4VS.js} +8 -8
  68. package/dist/{exec-client-JLCFGCZT.js → exec-client-ODRV5HSQ.js} +4 -4
  69. package/dist/{findings-cmd-ISP3P3UY.js → findings-cmd-MO4MCKIO.js} +8 -8
  70. package/dist/{fleet-readiness-O2WAJJVT.js → fleet-readiness-DA2UXFJW.js} +6 -6
  71. package/dist/{governing-source-PMWZJCXJ.js → governing-source-74VYUJPC.js} +10 -10
  72. package/dist/{guest-init-3LNAL3TB.js → guest-init-KDK4DQFK.js} +5 -5
  73. package/dist/{hook-fast-FJ2PMBML.js → hook-fast-PXSDGAUP.js} +1 -1
  74. package/dist/host-key-5AUIPHRG.js +10 -0
  75. package/dist/{image-tag-V2LXTKK7.js → image-tag-6U7UYPIT.js} +4 -4
  76. package/dist/index.js +4 -4
  77. package/dist/{init-ZXV6LILS.js → init-2LWFZK45.js} +22 -22
  78. package/dist/{init-YRSKJNSB.js → init-ZCZVN3AI.js} +22 -22
  79. package/dist/{init-cmd-3F436JBW.js → init-cmd-3YBDLWPR.js} +11 -11
  80. package/dist/{init-update-6OPETOBA.js → init-update-S6QVSR72.js} +9 -9
  81. package/dist/{inspect-L7JIBK3Y.js → inspect-DNLXTXLA.js} +1 -1
  82. package/dist/{install-3DBYJITP.js → install-4OPPUC72.js} +5 -5
  83. package/dist/{install-cmd-EELSKBSZ.js → install-cmd-BGUN6XFJ.js} +6 -6
  84. package/dist/{logs-ET75ZUCN.js → logs-2XVSZODP.js} +3 -3
  85. package/dist/{loop-MCR3EUSZ.js → loop-3YF4S4CA.js} +36 -36
  86. package/dist/{machine-35YQ7MGN.js → machine-X3EYEXEM.js} +18 -18
  87. package/dist/{mcp-serve-cmd-WYUP263T.js → mcp-serve-cmd-GYLU23YJ.js} +5 -5
  88. package/dist/paths-FE7TXSTA.js +9 -0
  89. package/dist/pending-ZXVJPA24.js +10 -0
  90. package/dist/{pidfile-52TGLGQH.js → pidfile-ZWJLQIJV.js} +4 -4
  91. package/dist/{record-BSY4BKJ5.js → record-JGQ3CCKH.js} +4 -4
  92. package/dist/{runner-env-H6XLACTG.js → runner-env-V37JMYNW.js} +6 -6
  93. package/dist/{runner-identity-GO762MHZ.js → runner-identity-77KVP24W.js} +5 -5
  94. package/dist/{runner-key-BQSR6MK4.js → runner-key-CBL5552Z.js} +22 -22
  95. package/dist/{session-sender-ENL3IBVD.js → session-sender-I3CQB6YL.js} +11 -11
  96. package/dist/{spec-cmd-ZJAPP2XZ.js → spec-cmd-E6LI56MR.js} +9 -9
  97. package/dist/{status-GQEAZBUJ.js → status-TGQTGC7B.js} +25 -25
  98. package/dist/{sync-cmd-Z4BYKM6K.js → sync-cmd-ONY2NA4L.js} +10 -10
  99. package/dist/{watch-MBEA6QB4.js → watch-TH3E7HC3.js} +10 -10
  100. package/dist/{work-claim-cmd-TLXRPJWO.js → work-claim-cmd-UZYGUHAF.js} +11 -11
  101. package/dist/{work-cmd-DYM67Z3F.js → work-cmd-IGYK3MVP.js} +8 -8
  102. package/dist/{work-comment-cmd-CRRWP3AH.js → work-comment-cmd-D5QETAF5.js} +8 -8
  103. package/dist/{work-logs-cmd-7LFOEVXI.js → work-logs-cmd-I2LQK72I.js} +8 -8
  104. package/dist/{work-open-pr-cmd-XXQ75PSU.js → work-open-pr-cmd-FMJKE3M4.js} +9 -9
  105. package/dist/{work-pr-cmd-ZVE7EGSC.js → work-pr-cmd-5G3FJSPI.js} +8 -8
  106. package/dist/{work-stop-cmd-GVFSTGLK.js → work-stop-cmd-7J6NG6WO.js} +8 -8
  107. package/package.json +1 -1
  108. package/dist/host-key-UEWE4PXB.js +0 -10
  109. package/dist/paths-BN7X2YPM.js +0 -9
  110. package/dist/pending-ROAIK5WO.js +0 -10
@@ -1,15 +1,15 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
- import { uploadSpooledSteps } from './chunk-THTBXIK5.js';
3
+ import { uploadSpooledSteps } from './chunk-EBX2DU2M.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-EWVYQLD3.js';
7
7
  import { setCustomScrubbers, setLocalIdentity, tailTranscript, enrichSessionRepo, scanAll, setRepoRoot, resolveRepoIdentity, sessionIdFromPath, scrubDeep, SOURCE_ADAPTERS } from './chunk-5DNCFOXA.js';
8
8
  import { C } from './chunk-ANPNT6PM.js';
9
- import { cliFetch, resolveGatewayCredentials, defaultFetch, unauthorizedMessage } from './chunk-VQ2JGZSC.js';
9
+ import { cliFetch, resolveGatewayCredentials, defaultFetch, unauthorizedMessage } from './chunk-FLFK42YF.js';
10
10
  import { readCloudConfig, cloudConfigPath, writeCloudConfig } from './chunk-PJDQPF5N.js';
11
- import { signerFor, signRunnerRequest } from './chunk-JT3YO5MH.js';
12
- import { writeSyncStatus, spoolDir } from './chunk-L3DUKDTR.js';
11
+ import { signerFor, signRunnerRequest } from './chunk-634F6J3Q.js';
12
+ import { writeSyncStatus, spoolDir } from './chunk-ZANK3WWF.js';
13
13
  import { readLatestProvenanceForSession, readContextProvenance } from './chunk-ZJSNLVCE.js';
14
14
  import { hookExecSpoolPath } from './chunk-2O5KA67H.js';
15
15
  import { applyReportedCost } from './chunk-BKO6JEZI.js';
@@ -1,9 +1,9 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
3
  import { formatBytes, freeBytes } from './chunk-YYYRBYWG.js';
4
- import { BUILD_LABEL, RUNNER_LABEL, runnerLabelValue } from './chunk-S2IJQER5.js';
4
+ import { BUILD_LABEL, RUNNER_LABEL, runnerLabelValue } from './chunk-LG2IQRTO.js';
5
5
  import { parseSize } from './chunk-YJLHUKYS.js';
6
- import { buildsDir, rootfsDir, runnerDir } from './chunk-ESP5VZBD.js';
6
+ import { buildsDir, rootfsDir, runnerDir } from './chunk-MBGS33SL.js';
7
7
  import { spawnSync } from 'child_process';
8
8
  import { existsSync, statSync, readdirSync } from 'fs';
9
9
  import { join } from 'path';
@@ -1,10 +1,10 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
- import { WorkCommandError, postJson } from './chunk-6JNCNHSV.js';
4
- import { defaultGitRunner, materializeContext, isStagingWriteFault, lookupGoverningSource } from './chunk-JZ4FXSLI.js';
5
- import { signingFetchFor } from './chunk-VQ2JGZSC.js';
6
- import { signerFor } from './chunk-JT3YO5MH.js';
7
- import { SHIM_DIR, stagedContextDir, contextHomeDir, deliveryDir, keptContextDir } from './chunk-ESP5VZBD.js';
3
+ import { WorkCommandError, postJson } from './chunk-KQFWTTG7.js';
4
+ import { defaultGitRunner, materializeContext, isStagingWriteFault, lookupGoverningSource } from './chunk-YMGSMPPW.js';
5
+ import { signingFetchFor } from './chunk-FLFK42YF.js';
6
+ import { signerFor } from './chunk-634F6J3Q.js';
7
+ import { SHIM_DIR, stagedContextDir, contextHomeDir, deliveryDir, keptContextDir } from './chunk-MBGS33SL.js';
8
8
  import { unsupportedLayout, layoutRefusalReason, composeDelivery } from './chunk-FGF52V4V.js';
9
9
  import { SHIM_SCRIPT, GOVERNANCE_VARIABLE } from './chunk-HCVLP7XA.js';
10
10
  import { readDegraded, readContextManifest, readSourceCache } from './chunk-YQR6E6OV.js';
@@ -1,8 +1,8 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
- import { LiveUploader } from './chunk-WHRR55PC.js';
3
+ import { LiveUploader } from './chunk-J6LFFZOY.js';
4
4
  import { CaptureDaemon } from './chunk-5DNCFOXA.js';
5
- import { spoolDir } from './chunk-L3DUKDTR.js';
5
+ import { spoolDir } from './chunk-ZANK3WWF.js';
6
6
  import { parseWorkItemEnv } from './chunk-T2Q7ISPE.js';
7
7
  import { homeFromEnv } from './chunk-VNVZDWO3.js';
8
8
  import { mkdirSync, writeFileSync, rmSync } from 'fs';
@@ -1,12 +1,12 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
- import { detectActiveSession, autoConnect } from './chunk-C3XLVHN6.js';
4
- import { workPageUrl } from './chunk-B3EE7OKK.js';
3
+ import { detectActiveSession, autoConnect } from './chunk-RLGSBR56.js';
4
+ import { workPageUrl } from './chunk-CMNAAKFD.js';
5
5
  import { sanitizeTerminal } from './chunk-EWVYQLD3.js';
6
6
  import { resolveRepoIdentity } from './chunk-5DNCFOXA.js';
7
7
  import { C } from './chunk-ANPNT6PM.js';
8
- import { resolveGatewayCredentials, unauthorizedMessage, defaultFetch } from './chunk-VQ2JGZSC.js';
9
- import { signRunnerRequest } from './chunk-JT3YO5MH.js';
8
+ import { resolveGatewayCredentials, unauthorizedMessage, defaultFetch } from './chunk-FLFK42YF.js';
9
+ import { signRunnerRequest } from './chunk-634F6J3Q.js';
10
10
  import { readRepoConnection } from './chunk-BJ3KTMDH.js';
11
11
  import { parseTrackerNumber, trackerNumberError } from './chunk-WZBHBH3J.js';
12
12
  import { homeFromEnv } from './chunk-VNVZDWO3.js';
@@ -441,7 +441,7 @@ async function runWorkLinkSession(opts) {
441
441
  return await linkSession(opts);
442
442
  } catch (err) {
443
443
  if (opts.logFailures) {
444
- const { logHookError } = await import('./hook-fast-FJ2PMBML.js');
444
+ const { logHookError } = await import('./hook-fast-PXSDGAUP.js');
445
445
  const reason = err instanceof Error ? err.message : String(err);
446
446
  logHookError(opts.home ?? homeFromEnv(opts.env ?? process.env), new Error(`work link-session #${opts.number} failed: ${reason}`));
447
447
  }
@@ -4,9 +4,9 @@ import { RecipeError } from './chunk-3Z3MPR55.js';
4
4
  import { BUILDKIT_IMAGE } from './chunk-R6QCSHKC.js';
5
5
  import { parseSize } from './chunk-YJLHUKYS.js';
6
6
  import { compareVersions } from './chunk-5DNCFOXA.js';
7
- import { ensureHostKey } from './chunk-JT3YO5MH.js';
8
- import { RUNNER_DIR_MODE, RUNNER_FILE_MODE, runnerDir, jobsDir } from './chunk-ESP5VZBD.js';
9
- import { CLAUDE_PORT, JOB_MOUNT, GATEWAY_PORT, GATEWAY_SOCKET, CLAUDE_SOCKET, RELAY_PORT, DESTINATION_BASE_PORT } from './chunk-HDSDUTX4.js';
7
+ import { ensureHostKey } from './chunk-634F6J3Q.js';
8
+ import { RUNNER_DIR_MODE, RUNNER_FILE_MODE, runnerDir, jobsDir } from './chunk-MBGS33SL.js';
9
+ import { CLAUDE_PORT, JOB_MOUNT, GATEWAY_PORT, GATEWAY_SOCKET, CLAUDE_SOCKET, RELAY_PORT, DESTINATION_BASE_PORT } from './chunk-D5ZGMXUL.js';
10
10
  import { JOIN_DIR, RELAY_ID, JOIN_SOCKET, TARGET_GATEWAY, TARGET_CLAUDE, destinationTarget, RELAY_USER } from './chunk-MESOOLF4.js';
11
11
  import { createHash } from 'crypto';
12
12
  import { existsSync, mkdirSync, createWriteStream, rmSync, readFileSync, chmodSync, writeFileSync, realpathSync, readdirSync, renameSync } from 'fs';
@@ -2,7 +2,7 @@
2
2
  import { createRequire } from 'node:module';
3
3
  import { sanitizeTerminal } from './chunk-EWVYQLD3.js';
4
4
  import { isAgentsMdLayout } from './chunk-HJYBWJAS.js';
5
- import { resolveGatewayCredentials, defaultFetch } from './chunk-VQ2JGZSC.js';
5
+ import { resolveGatewayCredentials, defaultFetch } from './chunk-FLFK42YF.js';
6
6
  import { versionAtLeast } from './chunk-HCVLP7XA.js';
7
7
  import { findGitDirs } from './chunk-BJ3KTMDH.js';
8
8
  import { machineSkillsState, staleClaudeSkills } from './chunk-GFYEMCPP.js';
@@ -1,10 +1,10 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
- import { hasStoredCredential, AGENT_COMMANDS, storeClaudeCredential, credentialFromStdin, isAgentName } from './chunk-52C3SSNF.js';
4
- import { detectMachine, supportsContainerBuilds, reachDockerStep, describeMachineDocker, supportsMicroVmBuilds } from './chunk-AESNEWYR.js';
5
- import { MIN_ENGINE_MAJOR } from './chunk-D7ECJX4J.js';
6
- import { runnerCredentialProblem } from './chunk-ALSE7YKX.js';
7
- import { runnerDir, RUNNER_DIR_MODE, RUNNER_FILE_MODE } from './chunk-ESP5VZBD.js';
3
+ import { hasStoredCredential, AGENT_COMMANDS, storeClaudeCredential, credentialFromStdin, isAgentName } from './chunk-HDD3BKAE.js';
4
+ import { detectMachine, supportsContainerBuilds, reachDockerStep, describeMachineDocker, supportsMicroVmBuilds } from './chunk-6KVKEZTH.js';
5
+ import { MIN_ENGINE_MAJOR } from './chunk-OKTLQTWH.js';
6
+ import { runnerCredentialProblem } from './chunk-ZQ7VRXYM.js';
7
+ import { runnerDir, RUNNER_DIR_MODE, RUNNER_FILE_MODE } from './chunk-MBGS33SL.js';
8
8
  import { existsSync, readFileSync, mkdirSync, writeFileSync } from 'fs';
9
9
  import { dirname } from 'path';
10
10
 
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
- import { BUILD_HOME } from './chunk-HDSDUTX4.js';
3
+ import { BUILD_HOME } from './chunk-D5ZGMXUL.js';
4
4
  import { join, dirname } from 'path';
5
5
 
6
6
  createRequire(import.meta.url);
@@ -86,5 +86,14 @@ function deliveryDir(repository, sha) {
86
86
  }
87
87
  return `${BUILD_HOME}/.outerlayer/context/${repository}/${sha}`;
88
88
  }
89
+ function jobConsolePath(jobDirPath) {
90
+ return join(jobDirPath, "vm-console.log");
91
+ }
92
+ function builderConsolePath(buildDirPath) {
93
+ return join(buildDirPath, "console.log");
94
+ }
95
+ function imageBuildLogsDir(configPath, owner, name) {
96
+ return join(imagesDir(configPath), owner, name, "builds");
97
+ }
89
98
 
90
- export { RUNNER_DIR_MODE, RUNNER_FILE_MODE, SHIM_DIR, attemptStamp, buildDir, builderCacheDiskPath, buildsDir, contextHomeDir, deliveryDir, diskTemplatesDir, ghConfigDir, hostKeyPath, imagesDir, jobDir, jobsDir, keptContextDir, mirrorDir, pidFilePath, repoCacheDir, rootfsDir, rootfsPathFor, runnerDir, runnerDirOfBuild, spoolDir, stagedContextDir, vmAssetsDir, vsockPath };
99
+ export { RUNNER_DIR_MODE, RUNNER_FILE_MODE, SHIM_DIR, attemptStamp, buildDir, builderCacheDiskPath, builderConsolePath, buildsDir, contextHomeDir, deliveryDir, diskTemplatesDir, ghConfigDir, hostKeyPath, imageBuildLogsDir, imagesDir, jobConsolePath, jobDir, jobsDir, keptContextDir, mirrorDir, pidFilePath, repoCacheDir, rootfsDir, rootfsPathFor, runnerDir, runnerDirOfBuild, spoolDir, stagedContextDir, vmAssetsDir, vsockPath };
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
- import { RELAY_PORT, GATEWAY_SOCKET, GATEWAY_PORT, CLAUDE_SOCKET, CLAUDE_PORT, DESTINATION_BASE_PORT } from './chunk-HDSDUTX4.js';
3
+ import { RELAY_PORT, GATEWAY_SOCKET, GATEWAY_PORT, CLAUDE_SOCKET, CLAUDE_PORT, DESTINATION_BASE_PORT } from './chunk-D5ZGMXUL.js';
4
4
  import { symlinkSync, unlinkSync } from 'fs';
5
5
  import { join } from 'path';
6
6
 
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
- import { runnerDir, RUNNER_DIR_MODE, RUNNER_FILE_MODE } from './chunk-ESP5VZBD.js';
3
+ import { runnerDir, RUNNER_DIR_MODE, RUNNER_FILE_MODE } from './chunk-MBGS33SL.js';
4
4
  import { readlinkSync, realpathSync, mkdirSync, unlinkSync, symlinkSync, renameSync, readFileSync, writeFileSync, rmSync, existsSync, readdirSync } from 'fs';
5
5
  import { join, basename, sep, resolve } from 'path';
6
6
 
@@ -1,28 +1,28 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
3
  import { sha256OfFile, downloadPinned, VoiceDownloadError } from './chunk-2PGI6RDE.js';
4
- import { readDefaultBranchHead, cloneRepository, buildRepositoryImage, prepareImageBuild, KEY_PREFIX, FETCHED_DIR, toolsDockerfile, TAG_HOST, metadataFromLabels, writeRecord, FETCHED_FFMPEG, FETCHED_GH, FETCHED_TINI, FETCHED_VOICE_DIR } from './chunk-IK6M37BI.js';
4
+ import { readDefaultBranchHead, cloneRepository, buildRepositoryImage, prepareImageBuild, KEY_PREFIX, FETCHED_DIR, toolsDockerfile, TAG_HOST, metadataFromLabels, writeRecord, FETCHED_FFMPEG, FETCHED_GH, FETCHED_TINI, FETCHED_VOICE_DIR } from './chunk-7HMF7I3D.js';
5
5
  import { startTimeOf, isSameProcess } from './chunk-JBJTC3UU.js';
6
6
  import { currentCliBuild } from './chunk-OGFGZQA3.js';
7
- import { runExec, execCapture, waitForAgent } from './chunk-QQGZ5THT.js';
8
- import { GUEST_CID, linkVsockSockets } from './chunk-HIGJTX5U.js';
9
- import { describeCallFailure, keepStagedContext, controlPlaneTokenFailure, refusalCode, resolveGoverningSource, removeStagedContext, stageGovernedContext, pinnedSourceOf, commandWithShim, shimScript, WORKFLOW_PERMISSION_REASON } from './chunk-LCVR4UIS.js';
10
- import { runnerImageVersion } from './chunk-533QGXGZ.js';
7
+ import { runExec, execCapture, waitForAgent } from './chunk-XXVYHC6D.js';
8
+ import { GUEST_CID, linkVsockSockets } from './chunk-O5F376JJ.js';
9
+ import { describeCallFailure, keepStagedContext, controlPlaneTokenFailure, refusalCode, resolveGoverningSource, removeStagedContext, stageGovernedContext, pinnedSourceOf, commandWithShim, shimScript, WORKFLOW_PERMISSION_REASON } from './chunk-JKPJQNJF.js';
10
+ import { runnerImageVersion } from './chunk-PWB7EK4Z.js';
11
11
  import { formatBytes } from './chunk-YYYRBYWG.js';
12
- import { createDockerHost, builderSpec, runnerLabelValue, RUNNER_LABEL, BUILD_LABEL, prepareRunArgs, containerRunArgs, HASH_ARGV, parseProgramHash, JUDGE_PROGRAM, containerExecArgs, childEnvironment, JUDGE_DIR, MAX_ITEMS_BYTES, JUDGE_ITEMS, MAX_REPORT_BYTES, JUDGE_REPORT, spawnRun } from './chunk-S2IJQER5.js';
12
+ import { createDockerHost, builderSpec, runnerLabelValue, RUNNER_LABEL, BUILD_LABEL, prepareRunArgs, containerRunArgs, HASH_ARGV, parseProgramHash, JUDGE_PROGRAM, containerExecArgs, childEnvironment, JUDGE_DIR, MAX_ITEMS_BYTES, JUDGE_ITEMS, MAX_REPORT_BYTES, JUDGE_REPORT, spawnRun } from './chunk-LG2IQRTO.js';
13
13
  import { RecipeError, DOCKER_FEATURE, writeSanitizedRecipe, classifyProperties } from './chunk-3Z3MPR55.js';
14
14
  import { FIRECRACKER_VERSION, hostHelperPinned, firecrackerArch, MICROVM_ARCHES, CLAUDE_CODE_VERSION, GUEST_HELPER_SHA256, GUEST_ASSETS_BASE_URL, GUEST_KERNEL_SHA256, JAILER_BINARY_SHA256, FIRECRACKER_BINARY_SHA256, FIRECRACKER_SHA256, GUEST_ASSETS_VERSION, BUILDER_DISK_VERSION, builderDiskPinned, FFMPEG_STATIC, FFMPEG_BUILD_TAG, GH_SHA256, GH_VERSION, TINI_SHA256, TINI_VERSION, VOICE_PACK_FILES, BUILDER_DISK_SHA256, BUILDER_DISK_BASE_URL, DEFAULT_BASE_IMAGE } from './chunk-R6QCSHKC.js';
15
15
  import { hostAllowed } from './chunk-UXYLWVTQ.js';
16
16
  import { readDu } from './chunk-YJLHUKYS.js';
17
- import { WorkCommandError } from './chunk-6JNCNHSV.js';
17
+ import { WorkCommandError } from './chunk-KQFWTTG7.js';
18
18
  import { setCustomScrubbers, setLocalIdentity, setRepoRoot, parseTranscript, scrubDeep, scrubText } from './chunk-5DNCFOXA.js';
19
- import { rootfsPathFor, diskTemplatesDir, RUNNER_FILE_MODE, buildsDir, buildDir, vmAssetsDir, RUNNER_DIR_MODE, deliveryDir, ghConfigDir, runnerDirOfBuild, spoolDir, mirrorDir, SHIM_DIR, runnerDir, vsockPath, builderCacheDiskPath } from './chunk-ESP5VZBD.js';
20
- import { repositoriesOf, primaryOf, RELAY_PORT, repositoryPath, CHECKOUT_DIR, lifecycleWorkdir, claudeCredential, buildEnvironment, startBuildServices, checkEnvironment, AGENT_CREDENTIAL_MISSING, checkoutPath, JOB_MOUNT } from './chunk-HDSDUTX4.js';
19
+ import { rootfsPathFor, diskTemplatesDir, RUNNER_FILE_MODE, buildsDir, buildDir, vmAssetsDir, RUNNER_DIR_MODE, deliveryDir, ghConfigDir, runnerDirOfBuild, spoolDir, mirrorDir, SHIM_DIR, runnerDir, vsockPath, builderCacheDiskPath, builderConsolePath } from './chunk-MBGS33SL.js';
20
+ import { repositoriesOf, primaryOf, RELAY_PORT, repositoryPath, CHECKOUT_DIR, lifecycleWorkdir, claudeCredential, buildEnvironment, startBuildServices, checkEnvironment, AGENT_CREDENTIAL_MISSING, checkoutPath, JOB_MOUNT } from './chunk-D5ZGMXUL.js';
21
21
  import { sharedSkillNames, skillConflictMessage } from './chunk-FGF52V4V.js';
22
22
  import { versionAtLeast, MINIMUM_CLAUDE_VERSION } from './chunk-HCVLP7XA.js';
23
23
  import { orderSessions, extractFacts, sessionsToTimeline } from './chunk-LJG6EMLJ.js';
24
24
  import { downconvertSession } from './chunk-E6CO3MJE.js';
25
- import { realFdStorePort } from './chunk-XD4ZCMA4.js';
25
+ import { realFdStorePort } from './chunk-HACGUL52.js';
26
26
  import { RELAY_USER, RELAY_ID, UNKNOWN_TRANSPORT_REASON, DOCKER_DESKTOP_REASON, MAX_MALFORMED_SESSIONS, MALFORMED_REASON, JOIN_WAIT_MS, MAX_OPEN_STREAMS, STREAM_RESET_RATE, STREAM_RESET_BURST, STREAM_WINDOW, SESSION_WINDOW, targetOfPath } from './chunk-MESOOLF4.js';
27
27
  import { readFileSync, existsSync, mkdirSync, chmodSync, truncateSync, rmSync, statSync, readdirSync, mkdtempSync, writeFileSync, lstatSync, copyFileSync, accessSync, constants, rmdirSync, renameSync, unlinkSync, linkSync, openSync, closeSync, cpSync, writeSync, appendFileSync, createWriteStream, createReadStream } from 'fs';
28
28
  import { join, dirname, relative, resolve, basename } from 'path';
@@ -709,10 +709,18 @@ var LOG_TAIL_LINES = 30;
709
709
  var MAX_PENDING_BYTES = 64 * 1024;
710
710
  var MAX_LOG_BYTES = 64 * 1024 * 1024;
711
711
  var RESULT_PREFIX = "OL-RESULT ";
712
+ var ENGINE_PANIC_PREFIX = "OL-ENGINE-PANIC ";
713
+ var ENGINE_STOPPED_LINE = "the Docker engine in the builder is stopped";
712
714
  var REFUSALS_NAMED = 5;
713
715
  var GUEST_OUTPUT = "/out/rootfs.ext4";
714
716
  var DOCKER_WAIT_SECONDS = 90;
715
717
  var BUILD_CACHE_KEEP = "2GB";
718
+ function unpackCommand(target) {
719
+ return ["sh", "-c", 'tar -x --no-same-owner -C "$1"; s=$?; cat >/dev/null; exit $s', "unpack", target];
720
+ }
721
+ function engineLogExcerpt(log) {
722
+ return `grep -m1 'panic:' ${log} | sed 's/^/${ENGINE_PANIC_PREFIX}/' || true; tail -n 20 ${log}`;
723
+ }
716
724
  function builderMachineConfig(limits2, paths) {
717
725
  return machineConfig(limits2, { ...paths, guestInit: BUILDER_INIT });
718
726
  }
@@ -743,13 +751,25 @@ function builderGuestScript(parts) {
743
751
  "export NODE_USE_ENV_PROXY=1",
744
752
  "export DOCKER_CONFIG=/run/builder/docker DOCKER_BUILDKIT=1",
745
753
  "mkdir -p /run/builder/docker /cache/docker",
754
+ "dockerd_pid=",
746
755
  // Whatever way the script ends, the cache keeps the recipe image and a bounded build cache, so a repository's cache disk cannot fill with the images of old recipes.
747
756
  "trim() {",
748
757
  ` docker image ls --format '{{.Repository}}:{{.Tag}}' 2>/dev/null | grep -vxF -e '<none>:<none>' -e ${recipeTag} | xargs -r docker rmi > /dev/null 2>&1 || true`,
749
758
  " docker image prune --force > /dev/null 2>&1 || true",
750
759
  ` docker builder prune --force --keep-storage ${BUILD_CACHE_KEEP} > /dev/null 2>&1 || true`,
751
760
  "}",
752
- "trap trim EXIT",
761
+ // The engine stops and the disks sync before the microVM does: the runner stops a builder without a shutdown, and an engine still running leaves BuildKit's database half-written on the cache disk.
762
+ "settle() {",
763
+ " trim",
764
+ ' if [ -n "$dockerd_pid" ]; then',
765
+ ' kill "$dockerd_pid" 2>/dev/null || true',
766
+ " waited_stop=0",
767
+ ' while kill -0 "$dockerd_pid" 2>/dev/null && [ "$waited_stop" -lt 60 ]; do waited_stop=$((waited_stop + 1)); sleep 1; done',
768
+ ` if ! kill -0 "$dockerd_pid" 2>/dev/null; then echo "${ENGINE_STOPPED_LINE}"; fi`,
769
+ " fi",
770
+ " sync",
771
+ "}",
772
+ "trap settle EXIT",
753
773
  "cat > /run/builder/daemon.json <<'OL_DAEMON_JSON'",
754
774
  JSON.stringify(daemonConfig(), null, 2),
755
775
  "OL_DAEMON_JSON",
@@ -764,10 +784,11 @@ function builderGuestScript(parts) {
764
784
  "mount -t cgroup2 cgroup2 /sys/fs/cgroup 2>/dev/null || true",
765
785
  `node /work/tools/dist/index.js vm-forward --listen ${BRIDGE_ADDRESS}:${TUNNEL_PORT} --to 127.0.0.1:${TUNNEL_PORT} > /run/builder/forward.log 2>&1 &`,
766
786
  "dockerd --config-file /run/builder/daemon.json > /run/builder/dockerd.log 2>&1 &",
787
+ "dockerd_pid=$!",
767
788
  "waited=0",
768
789
  "until docker info > /dev/null 2>&1; do",
769
790
  " waited=$((waited + 1))",
770
- ` if [ "$waited" -gt ${DOCKER_WAIT_SECONDS} ]; then echo "the Docker engine in the builder did not start:"; tail -n 20 /run/builder/dockerd.log; exit 1; fi`,
791
+ ` if [ "$waited" -gt ${DOCKER_WAIT_SECONDS} ]; then echo "the Docker engine in the builder did not start:"; ${engineLogExcerpt("/run/builder/dockerd.log")}; exit 1; fi`,
771
792
  " sleep 1",
772
793
  "done",
773
794
  build,
@@ -896,6 +917,7 @@ async function buildInBuilder(opts, deps, prepared) {
896
917
  }, Math.max(0, opts.deadlineMs - Date.now()));
897
918
  const tail = [];
898
919
  let result;
920
+ let enginePanic;
899
921
  let pending = "";
900
922
  let logged = 0;
901
923
  let hostFailure;
@@ -925,6 +947,8 @@ async function buildInBuilder(opts, deps, prepared) {
925
947
  }
926
948
  for (const line of lines) {
927
949
  if (line.startsWith(RESULT_PREFIX)) result = line.slice(RESULT_PREFIX.length);
950
+ else if (line.startsWith(ENGINE_PANIC_PREFIX)) enginePanic ??= line.slice(ENGINE_PANIC_PREFIX.length);
951
+ else if (line === ENGINE_STOPPED_LINE) continue;
928
952
  else {
929
953
  tail.push(line);
930
954
  if (tail.length > LOG_TAIL_LINES) tail.shift();
@@ -983,12 +1007,12 @@ async function buildInBuilder(opts, deps, prepared) {
983
1007
  } else {
984
1008
  state.cgroup = ports.cgroup.create(id, opts.limits.memoryBytes);
985
1009
  if (state.cgroup !== void 0) record.cgroup = state.cgroup;
986
- state.firecracker = await ports.firecracker.spawn({ binary: opts.firecracker, configPath, consolePath: join(dir, "console.log"), cgroup: state.cgroup });
1010
+ state.firecracker = await ports.firecracker.spawn({ binary: opts.firecracker, configPath, consolePath: builderConsolePath(dir), cgroup: state.cgroup });
987
1011
  record.firecracker = state.firecracker;
988
1012
  writeBuilderRecord(dir, record);
989
1013
  }
990
1014
  if (!await waitForAgent(state.vsockPath, { attempts: BOOT_ATTEMPTS, delayMs: BOOT_POLL_MS, sleep, onFailure: () => void 0 })) {
991
- throw new StepFailed(`the builder microVM did not start: its exec agent did not answer${state.jailed === void 0 ? ` (console in ${join(dir, "console.log")})` : `; its console output is in the journal of the unit ${state.jailed.unit}`}`);
1015
+ throw new StepFailed(`the builder microVM did not start: its exec agent did not answer${state.jailed === void 0 ? ` (console in ${builderConsolePath(dir)})` : `; its console output is in the journal of the unit ${state.jailed.unit}`}`);
992
1016
  }
993
1017
  const space = await cacheSpace();
994
1018
  check(0, "checking the builder's cache disk");
@@ -1020,7 +1044,7 @@ async function buildInBuilder(opts, deps, prepared) {
1020
1044
  for (const { target, stream } of inputs) {
1021
1045
  let status;
1022
1046
  try {
1023
- status = (await ports.exec(state.vsockPath, exec(["tar", "-x", "--no-same-owner", "-C", target]), { stdin: stream, signal: controller.signal })).status;
1047
+ status = (await ports.exec(state.vsockPath, exec(unpackCommand(target)), { stdin: stream, signal: controller.signal })).status;
1024
1048
  } catch (err) {
1025
1049
  if (hostFailure !== void 0 || controller.signal.aborted) throw err;
1026
1050
  throw new StepFailed(`unpacking ${target} in the builder failed: ${err instanceof Error ? err.message : String(err)}${await spaceNote()}`);
@@ -1115,7 +1139,8 @@ async function buildInBuilder(opts, deps, prepared) {
1115
1139
  if (err instanceof StepFailed && refusals.length > 0) return new RecipeError("image_builder_failed", refusalReason(refusals, logPath), logPath);
1116
1140
  const last = tail.filter((line) => line.trim() !== "").at(-1);
1117
1141
  const why = err instanceof StepFailed ? err.message : `the builder microVM failed: ${describeCallFailure(err)}`;
1118
- return new RecipeError("image_builder_failed", `${why}${last === void 0 ? "" : `; the last line was: ${last}`}. The build log is at ${logPath}`, logPath);
1142
+ const panicNote = enginePanic === void 0 ? "" : `; the first panic in the Docker engine's log was: ${enginePanic}`;
1143
+ return new RecipeError("image_builder_failed", `${why}${panicNote}${last === void 0 ? "" : `; the last line was: ${last}`}. The build log is at ${logPath}`, logPath);
1119
1144
  }
1120
1145
  async function stopBuilder() {
1121
1146
  let ok = true;
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
3
  import { isVersion, compareVersions } from './chunk-TQMI335S.js';
4
- import { RUNNER_DIR_MODE, RUNNER_FILE_MODE } from './chunk-ESP5VZBD.js';
4
+ import { RUNNER_DIR_MODE, RUNNER_FILE_MODE } from './chunk-MBGS33SL.js';
5
5
  import { readFileSync, mkdirSync, writeFileSync, renameSync } from 'fs';
6
6
  import { join } from 'path';
7
7
 
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
- import { RUNNER_DIR_MODE, RUNNER_FILE_MODE } from './chunk-ESP5VZBD.js';
3
+ import { RUNNER_DIR_MODE, RUNNER_FILE_MODE } from './chunk-MBGS33SL.js';
4
4
  import { readFileSync, mkdirSync, writeFileSync, renameSync } from 'fs';
5
5
  import { join } from 'path';
6
6
 
@@ -1,8 +1,8 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
- import { fetchFactories, selectFactory, saveFactoryConnection, autoConnectedLine } from './chunk-B3EE7OKK.js';
3
+ import { fetchFactories, selectFactory, saveFactoryConnection, autoConnectedLine } from './chunk-CMNAAKFD.js';
4
4
  import { resolveRepoIdentity } from './chunk-5DNCFOXA.js';
5
- import { resolveGatewayCredentials } from './chunk-VQ2JGZSC.js';
5
+ import { resolveGatewayCredentials } from './chunk-FLFK42YF.js';
6
6
  import { findGitDirs, readRepoConnection } from './chunk-BJ3KTMDH.js';
7
7
  import { cliInvocation } from './chunk-CRB3POP4.js';
8
8
  import { homeFromEnv } from './chunk-VNVZDWO3.js';
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
- import { RELAY_PORT, BUILD_HOME } from './chunk-HDSDUTX4.js';
3
+ import { RELAY_PORT, BUILD_HOME } from './chunk-D5ZGMXUL.js';
4
4
  import { createServer, connect } from 'net';
5
5
 
6
6
  createRequire(import.meta.url);
@@ -1,35 +1,35 @@
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 { DOCKERD_LOG, HELPER_PATH, HELPER_RECORD } from './chunk-ELYHDWCC.js';
5
- import { writeDockerClientConfig } from './chunk-XTNMIV77.js';
4
+ import { DOCKERD_LOG, HELPER_PATH, HELPER_RECORD } from './chunk-HAD7LYDL.js';
5
+ import { writeDockerClientConfig } from './chunk-TTACRX4N.js';
6
6
  import { zodProblem } from './chunk-I3LTIAOR.js';
7
- import { senderPidfile } from './chunk-QJNFO7TQ.js';
8
- import { installScrubContext } from './chunk-WHRR55PC.js';
9
- import { ADDED_USER, shellQuote, GH_CONFIG_YML, ghHostsYml, AssetError, obtainImage, ensureRootfs, makeBuildsDirPrivate, gitRemoteFor, startServicesFor, createLeaseChannel, createBuildDisk, machineConfig, startJailedInto, resolveAgentUser, AgentUserError, runBuildSteps, LEASE_SECONDS, createContainerRuntime, stopContainer, cleanupContainer, outOfMemoryReason, containerSenderCommand, signalInContainer, syncInContainer, copyTranscriptsFromContainer, MANAGED_UNJAILED_REASON, senderAliveScript, helperFirecrackerNote, isLiteralAddress, stopJailed, deleteBuildDisk, startCheckContainer, lifecycleSteps, lifecycleFailureReason, writeEvalInput, DeliveryFailure, EVAL_INPUT_NAME, copyTranscripts, senderSignalScript, containerJudgeEnvironment, ROOT_DISK_ID_PREFIX, copyJudgeTree } from './chunk-D7ECJX4J.js';
10
- import { readBranchHead, fetchCommit, diffBetween } from './chunk-IK6M37BI.js';
7
+ import { senderPidfile } from './chunk-JUVUVXQZ.js';
8
+ import { installScrubContext } from './chunk-J6LFFZOY.js';
9
+ import { ADDED_USER, shellQuote, GH_CONFIG_YML, ghHostsYml, AssetError, obtainImage, ensureRootfs, makeBuildsDirPrivate, gitRemoteFor, startServicesFor, createLeaseChannel, createBuildDisk, machineConfig, startJailedInto, resolveAgentUser, AgentUserError, runBuildSteps, LEASE_SECONDS, createContainerRuntime, stopContainer, cleanupContainer, outOfMemoryReason, containerSenderCommand, signalInContainer, syncInContainer, copyTranscriptsFromContainer, MANAGED_UNJAILED_REASON, senderAliveScript, helperFirecrackerNote, isLiteralAddress, stopJailed, deleteBuildDisk, startCheckContainer, lifecycleSteps, lifecycleFailureReason, writeEvalInput, DeliveryFailure, EVAL_INPUT_NAME, copyTranscripts, senderSignalScript, containerJudgeEnvironment, ROOT_DISK_ID_PREFIX, copyJudgeTree } from './chunk-OKTLQTWH.js';
10
+ import { readBranchHead, fetchCommit, diffBetween } from './chunk-7HMF7I3D.js';
11
11
  import { isSameProcess, startTimeOf } from './chunk-JBJTC3UU.js';
12
- import { waitForAgent, vmExecArgs } from './chunk-QQGZ5THT.js';
13
- import { socketPathProblem, vsockLinks, LEASE_LINK, linkVsockSockets } from './chunk-HIGJTX5U.js';
14
- import { describeCallFailure, resolveGoverningSource, refusalCode, removeStagedContext, stageGovernedContext, pinnedSourceOf, commandWithShim, logStamp, createRunnerLog, removeKeptContext, formatDuration, retrySend, formatClock, WORKFLOW_PERMISSION_REASON, keptContextTree } from './chunk-LCVR4UIS.js';
15
- import { HASH_ARGV, parseProgramHash, JUDGE_PROGRAM, writeJobFile, readJobFile, childEnvironment, withAnswerProtocol, judgeCommand, MAX_REPORT_BYTES, JUDGE_MAX_TURNS, JUDGE_DIR, COMMAND_DIR, MAX_ITEMS_BYTES } from './chunk-S2IJQER5.js';
12
+ import { waitForAgent, vmExecArgs } from './chunk-XXVYHC6D.js';
13
+ import { socketPathProblem, vsockLinks, LEASE_LINK, linkVsockSockets } from './chunk-O5F376JJ.js';
14
+ import { describeCallFailure, resolveGoverningSource, refusalCode, removeStagedContext, stageGovernedContext, pinnedSourceOf, commandWithShim, logStamp, createRunnerLog, removeKeptContext, formatDuration, retrySend, formatClock, WORKFLOW_PERMISSION_REASON, keptContextTree } from './chunk-JKPJQNJF.js';
15
+ import { HASH_ARGV, parseProgramHash, JUDGE_PROGRAM, writeJobFile, readJobFile, childEnvironment, withAnswerProtocol, judgeCommand, MAX_REPORT_BYTES, JUDGE_MAX_TURNS, JUDGE_DIR, COMMAND_DIR, MAX_ITEMS_BYTES } from './chunk-LG2IQRTO.js';
16
16
  import { CLAUDE_CODE_VERSION, FIRECRACKER_VERSION } from './chunk-R6QCSHKC.js';
17
- import { imageBuildOf, isBuiltinContainer, isBuiltinProcess, isBuiltinVm, DEFAULT_CHECK_TIME_LIMIT_MINUTES } from './chunk-ALSE7YKX.js';
17
+ import { imageBuildOf, isBuiltinContainer, isBuiltinProcess, isBuiltinVm, DEFAULT_CHECK_TIME_LIMIT_MINUTES } from './chunk-ZQ7VRXYM.js';
18
18
  import { parseSize } from './chunk-YJLHUKYS.js';
19
- import { WorkCommandError, postJson, isSignatureRefusal, getJson } from './chunk-6JNCNHSV.js';
19
+ import { WorkCommandError, postJson, isSignatureRefusal, getJson } from './chunk-KQFWTTG7.js';
20
20
  import { planArtifactUpload } from './chunk-EWVYQLD3.js';
21
21
  import { scrubText } from './chunk-5DNCFOXA.js';
22
22
  import { readCloudConfig } from './chunk-PJDQPF5N.js';
23
- import { signerFor } from './chunk-JT3YO5MH.js';
24
- import { RUNNER_FILE_MODE, runnerDir, buildDir, vsockPath } from './chunk-ESP5VZBD.js';
25
- import { JOB_MOUNT, claudeCredential, repositoriesOf, primaryOf, buildEnvironment, CHECKOUT_DIR, parseIsolation, proxyEnvironment, withProxyWarningHidden, containerLocalAddress, destinationEnvironment, CLAUDE_CREDENTIAL_VARIABLES, builtInEnvironment, withHooksPath, startBuildServices, BUILT_IN_NAMES, AGENT_CREDENTIAL_MISSING, sharedUserEnvironment, headerVariables, authorEnvironment, withTunnelRecord, commitIdentityRecord, RELAY_PORT, repositoryPath, lifecycleWorkdir, CHECK_ITEMS_FILE, currentClaudeCredential, removedClaudeCredentialValues, checkEnvironment, EVAL_INPUT_DIR } from './chunk-HDSDUTX4.js';
23
+ import { signerFor } from './chunk-634F6J3Q.js';
24
+ import { RUNNER_FILE_MODE, runnerDir, buildDir, vsockPath, jobConsolePath } from './chunk-MBGS33SL.js';
25
+ import { JOB_MOUNT, claudeCredential, repositoriesOf, primaryOf, buildEnvironment, CHECKOUT_DIR, parseIsolation, proxyEnvironment, withProxyWarningHidden, containerLocalAddress, destinationEnvironment, CLAUDE_CREDENTIAL_VARIABLES, builtInEnvironment, withHooksPath, startBuildServices, BUILT_IN_NAMES, AGENT_CREDENTIAL_MISSING, sharedUserEnvironment, headerVariables, authorEnvironment, withTunnelRecord, commitIdentityRecord, RELAY_PORT, repositoryPath, lifecycleWorkdir, CHECK_ITEMS_FILE, currentClaudeCredential, removedClaudeCredentialValues, checkEnvironment, EVAL_INPUT_DIR } from './chunk-D5ZGMXUL.js';
26
26
  import { resolvePackRoot } from './chunk-G63KT5I5.js';
27
27
  import { MAINTAINED_SKILLS } from './chunk-CDDED64E.js';
28
28
  import { resolveVersion } from './chunk-RA3O54FC.js';
29
29
  import { parsePolicy } from './chunk-LJG6EMLJ.js';
30
30
  import { CheckItemsSchema, CHECK_ITEM_REASON_MAX_LENGTH } from './chunk-E6CO3MJE.js';
31
31
  import { homeFromEnv } from './chunk-VNVZDWO3.js';
32
- import { fdName } from './chunk-XD4ZCMA4.js';
32
+ import { fdName } from './chunk-HACGUL52.js';
33
33
  import { RUNNER_WORDED_REASONS, UNKNOWN_TRACKING_REASON } from './chunk-MESOOLF4.js';
34
34
  import { existsSync, statSync, appendFileSync, rmSync, mkdirSync, chmodSync, writeFileSync, accessSync, constants, openSync, readFileSync, closeSync, readdirSync, lstatSync, fstatSync, readSync, realpathSync } from 'fs';
35
35
  import { join, isAbsolute, dirname, delimiter, sep } from 'path';
@@ -280,7 +280,7 @@ async function keepSockets(runtime, buildId, listeners, leaseServer, line, error
280
280
  }
281
281
  } catch (err) {
282
282
  error(`this build ends with its runner: its sockets could not be kept for the next one: ${describeCallFailure(err)}`);
283
- for (const name of stored) await store.remove(name).catch(() => void 0);
283
+ for (const name of stored) await store.remove(name).catch((removeErr) => error(`the descriptor ${name} could not be taken out of the store: ${describeCallFailure(removeErr)}`));
284
284
  return [];
285
285
  }
286
286
  return stored;
@@ -476,7 +476,7 @@ async function provisionMicroVm(input) {
476
476
  }
477
477
  if (state.cgroup !== void 0) input.save(state, environment);
478
478
  }
479
- const consolePath = join(jobDir, "vm-console.log");
479
+ const consolePath = jobConsolePath(jobDir);
480
480
  if (helper !== void 0) {
481
481
  try {
482
482
  await startJailedInto(
@@ -872,7 +872,7 @@ async function startCheckMicroVm(input) {
872
872
  };
873
873
  const checksDir = join(jobDir, "checks");
874
874
  mkdirSync(checksDir, { recursive: true });
875
- const consolePath = join(checksDir, "vm-console.log");
875
+ const consolePath = jobConsolePath(checksDir);
876
876
  input.save(state);
877
877
  const fail = async (reason) => {
878
878
  try {
@@ -1024,7 +1024,7 @@ async function stopBuildMicroVm(runtime, state, jobDir) {
1024
1024
  await runtime.vm.firecracker.stop(state.firecracker);
1025
1025
  if (runtime.vm.firecracker.alive(state.firecracker)) throw new Error(`the microVM (pid ${state.firecracker.pid}) is still running after it was stopped`);
1026
1026
  }
1027
- async function cleanupMicroVm(runtime, state, jobDir) {
1027
+ async function cleanupMicroVm(runtime, state, jobDir, warn) {
1028
1028
  const failures = [];
1029
1029
  if (jobDir !== void 0) await copyHookErrors(runtime, state, jobDir);
1030
1030
  if (state.jailed !== void 0) {
@@ -1056,7 +1056,9 @@ async function cleanupMicroVm(runtime, state, jobDir) {
1056
1056
  runtime.tunnels.delete(state.buildId);
1057
1057
  await tunnel.close();
1058
1058
  }
1059
- for (const name of state.fdStore ?? []) await runtime.vm.fdStore.remove(name).catch(() => void 0);
1059
+ for (const name of state.fdStore ?? []) {
1060
+ await runtime.vm.fdStore.remove(name).catch((err) => warn?.(`the descriptor ${name} could not be taken out of the store: ${describeCallFailure(err)}`));
1061
+ }
1060
1062
  rmSync(state.buildDir, { recursive: true, force: true });
1061
1063
  if (failures.length > 0) throw new Error(failures.join("; "));
1062
1064
  }
@@ -3205,7 +3207,7 @@ async function finishJob(job, jobDirPath, outcome, config, deps, ending) {
3205
3207
  let cleanedUp = true;
3206
3208
  tunnelRecord = vmBuild.runtime.tunnels.get(vmBuild.state.buildId)?.record();
3207
3209
  try {
3208
- await cleanupMicroVm(vmBuild.runtime, vmBuild.state, jobDirPath);
3210
+ await cleanupMicroVm(vmBuild.runtime, vmBuild.state, jobDirPath, (text2) => log.error(`${tag} ${text2}`));
3209
3211
  } catch (err) {
3210
3212
  cleanedUp = false;
3211
3213
  log.error(`${tag} cleanup failed: ${describeCallFailure(err)} \xB7 continuing`);
@@ -5,7 +5,7 @@ import { addStdioMcpEntryIfAbsent, addDocsMcpEntryIfAbsent, DOCS_MCP_SERVER_NAME
5
5
  import { installStarterPack } from './chunk-DY7Y7UT4.js';
6
6
  import { AGENTS_MD_LAYOUT, declareAgentsMdLayout, linkClaudeSkills, SKILLS_LINK_PATH, describeSkillsLink, isAgentsMdLayout, holdsTodaysLayoutSources, discoverOuterlayerPaths } from './chunk-HJYBWJAS.js';
7
7
  import { C } from './chunk-ANPNT6PM.js';
8
- import { resolveGitCommonDir, defaultGitRunner } from './chunk-JZ4FXSLI.js';
8
+ import { resolveGitCommonDir, defaultGitRunner } from './chunk-YMGSMPPW.js';
9
9
  import { loadTemplateFiles, loadMaintainedFiles, skillDir, AGENTS_SKILLS_BASE } from './chunk-G63KT5I5.js';
10
10
  import { cliInvocation } from './chunk-CRB3POP4.js';
11
11
  import { linkedAgentsPath } from './chunk-AVTI3FL5.js';
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
- import { checkFit, RUNNER_RESERVE_BYTES } from './chunk-HBBCQ5NE.js';
3
+ import { checkFit, RUNNER_RESERVE_BYTES } from './chunk-A6MLCH76.js';
4
4
  import { readFileSync } from 'fs';
5
5
 
6
6
  createRequire(import.meta.url);
@@ -1,9 +1,9 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
- import { autoConnect, detectActiveSession } from './chunk-C3XLVHN6.js';
3
+ import { autoConnect, detectActiveSession } from './chunk-RLGSBR56.js';
4
4
  import { resolveRepoIdentity } from './chunk-5DNCFOXA.js';
5
5
  import { C } from './chunk-ANPNT6PM.js';
6
- import { defaultFetch, unauthorizedMessage, resolveGatewayCredentials } from './chunk-VQ2JGZSC.js';
6
+ import { defaultFetch, unauthorizedMessage, resolveGatewayCredentials } from './chunk-FLFK42YF.js';
7
7
  import { parseWorkItemEnv } from './chunk-T2Q7ISPE.js';
8
8
  import { parseTrackerNumber, trackerNumberError } from './chunk-WZBHBH3J.js';
9
9
  import { homeFromEnv } from './chunk-VNVZDWO3.js';
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
- import { EXEC_PORT } from './chunk-HIGJTX5U.js';
3
+ import { EXEC_PORT } from './chunk-O5F376JJ.js';
4
4
  import { createConnection } from 'net';
5
5
 
6
6
  createRequire(import.meta.url);
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
- import { currentLink } from './chunk-3VGDZ23W.js';
3
+ import { currentLink } from './chunk-O7MSQBTH.js';
4
4
  import { readFileSync, statSync, chmodSync, mkdirSync, writeFileSync, renameSync, rmSync, existsSync, lstatSync, accessSync, constants, realpathSync } from 'fs';
5
5
  import { randomBytes } from 'crypto';
6
6
  import { join, dirname, delimiter, resolve } from 'path';
@@ -1,8 +1,8 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
3
  import { removeRetiredSkills } from './chunk-UIUGTW5C.js';
4
- import { defaultFetch, resolveGatewayCredentials } from './chunk-VQ2JGZSC.js';
5
- import { withTokenHeader } from './chunk-HDSDUTX4.js';
4
+ import { defaultFetch, resolveGatewayCredentials } from './chunk-FLFK42YF.js';
5
+ import { withTokenHeader } from './chunk-D5ZGMXUL.js';
6
6
  import { appendContextProvenance } from './chunk-ZJSNLVCE.js';
7
7
  import { loadMaintainedFiles, writeMaintainedFiles } from './chunk-G63KT5I5.js';
8
8
  import { cliInvocation } from './chunk-CRB3POP4.js';
@@ -684,7 +684,7 @@ async function missingControlPlane(cwd, sessionId, home, env) {
684
684
  cleanupEarlierCopies(dirs);
685
685
  }
686
686
  if (!contextPossiblyGoverned(cwd, home)) return void 0;
687
- const { governanceOf } = await import('./control-plane-launch-K7YD6KEN.js');
687
+ const { governanceOf } = await import('./control-plane-launch-O3TXH3LI.js');
688
688
  if (await governanceOf({ cwd, env, home }) !== "governed") return void 0;
689
689
  recordMissingContext(dirs, sessionId, home);
690
690
  const launcher = `${cliInvocation()} claude`;
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
3
  import { isSameProcess } from './chunk-JBJTC3UU.js';
4
- import { RUNNER_DIR_MODE, RUNNER_FILE_MODE } from './chunk-ESP5VZBD.js';
4
+ import { RUNNER_DIR_MODE, RUNNER_FILE_MODE } from './chunk-MBGS33SL.js';
5
5
  import { existsSync, readFileSync, mkdirSync, writeFileSync, rmSync } from 'fs';
6
6
  import { dirname } from 'path';
7
7
 
@@ -2,7 +2,7 @@
2
2
  import { createRequire } from 'node:module';
3
3
  import { MAX_ALLOW_HOSTS, allowHostProblem } from './chunk-UXYLWVTQ.js';
4
4
  import { parseSize } from './chunk-YJLHUKYS.js';
5
- import { isRefusedInConfig, resolveDestinations, isReservedVariable } from './chunk-HDSDUTX4.js';
5
+ import { isRefusedInConfig, resolveDestinations, isReservedVariable } from './chunk-D5ZGMXUL.js';
6
6
  import { homeFromEnv } from './chunk-VNVZDWO3.js';
7
7
  import { existsSync, statSync, accessSync, constants, readFileSync } from 'fs';
8
8
  import { hostname } from 'os';
@@ -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 { detectActiveSession, autoConnect } from './chunk-C3XLVHN6.js';
4
+ import { detectActiveSession, autoConnect } from './chunk-RLGSBR56.js';
5
5
  import { resolveRepoIdentity } from './chunk-5DNCFOXA.js';
6
6
  import { C } from './chunk-ANPNT6PM.js';
7
- import { resolveGatewayCredentials, defaultFetch, unauthorizedMessage } from './chunk-VQ2JGZSC.js';
7
+ import { resolveGatewayCredentials, defaultFetch, unauthorizedMessage } from './chunk-FLFK42YF.js';
8
8
  import { launchedItemForSession } from './chunk-T2Q7ISPE.js';
9
9
  import { parseTrackerNumber, trackerNumberError } from './chunk-WZBHBH3J.js';
10
10
  import { CriteriaListSchema } from './chunk-E6CO3MJE.js';
@@ -1,12 +1,12 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
- import { staleBuildRefusal, staleBuildWarning, detectCi } from './chunk-WHRR55PC.js';
3
+ import { staleBuildRefusal, staleBuildWarning, detectCi } from './chunk-J6LFFZOY.js';
4
4
  import { launchRefusalForSession } from './chunk-ESVW4MJY.js';
5
- import { detectActiveSession, autoConnect } from './chunk-C3XLVHN6.js';
5
+ import { detectActiveSession, autoConnect } from './chunk-RLGSBR56.js';
6
6
  import { readEffectiveArtifactSpoolState, localArtifactIds, isArtifactTombstoned, artifactBlobsDir, appendArtifactRecord, artifactsSpoolPath, findPendingArtifactRecord, sanitizeTerminal, appendArtifactTombstone } from './chunk-EWVYQLD3.js';
7
7
  import { resolveRepoIdentity } from './chunk-5DNCFOXA.js';
8
8
  import { C } from './chunk-ANPNT6PM.js';
9
- import { resolveGatewayCredentials, defaultFetch, unauthorizedMessage } from './chunk-VQ2JGZSC.js';
9
+ import { resolveGatewayCredentials, defaultFetch, unauthorizedMessage } from './chunk-FLFK42YF.js';
10
10
  import { parseTrackerNumber, trackerNumberError } from './chunk-WZBHBH3J.js';
11
11
  import { cliInvocation } from './chunk-CRB3POP4.js';
12
12
  import { ARTIFACT_MAX_CAPTION_LENGTH, ArtifactCriterionIdSchema, ARTIFACT_MAX_BYTES, ARTIFACT_MAX_FILENAME_LENGTH, mediaTypeForArtifactPath, inferArtifactKind, ARTIFACT_MAX_REPLACES_TARGETS, parseTestSelector, parseJunit, bindTests } from './chunk-E6CO3MJE.js';