@outerlayer/cli 0.28.2 → 0.28.4

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 (103) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/dist/{agent-setup-YVR5RO56.js → agent-setup-IDF3EXM4.js} +7 -7
  3. package/dist/{bridge-WW2V7DTB.js → bridge-JN3VJ23L.js} +3 -3
  4. package/dist/{build-5FRC3RKM.js → build-JCYOHPLL.js} +5 -5
  5. package/dist/build-info.json +1 -1
  6. package/dist/{builder-4F2XNSFC.js → builder-HCTVP2O7.js} +5 -5
  7. package/dist/{check-YEI6TCUH.js → check-WJ4X2Q44.js} +34 -34
  8. package/dist/{chunk-MKIC65SD.js → chunk-2BZTGJII.js} +4 -4
  9. package/dist/{chunk-GLL4TN2M.js → chunk-5Q4NDYQP.js} +24 -13
  10. package/dist/{chunk-GUXWQIEY.js → chunk-6NFXOQKZ.js} +1 -1
  11. package/dist/{chunk-KU7QL4XW.js → chunk-6P2Z5AUY.js} +16 -16
  12. package/dist/{chunk-F4FA3ZUT.js → chunk-AV5MJY45.js} +3 -3
  13. package/dist/{chunk-WWQVKFN6.js → chunk-DIQN5SEL.js} +1 -1
  14. package/dist/{chunk-CTYSTE5C.js → chunk-DSKOHPXN.js} +1 -1
  15. package/dist/{chunk-5K3KB4YR.js → chunk-DWVAG73B.js} +1 -1
  16. package/dist/{chunk-6S4V4UIC.js → chunk-ERVZGWUR.js} +6 -6
  17. package/dist/{chunk-ATJOFXTE.js → chunk-EZ3DZXUH.js} +3 -3
  18. package/dist/{chunk-25X2PJDI.js → chunk-FTNCNEWE.js} +35 -24
  19. package/dist/{chunk-IVX3U7KV.js → chunk-HWOU2HDH.js} +1 -1
  20. package/dist/{chunk-MQHTM4YJ.js → chunk-JYVBEWBC.js} +3 -3
  21. package/dist/{chunk-USJZ2LDK.js → chunk-JZJLKTZT.js} +5 -5
  22. package/dist/{chunk-MNHMUZGC.js → chunk-KBB3CQTW.js} +5 -5
  23. package/dist/{chunk-7CK2TJFB.js → chunk-KJIUFOC4.js} +1 -1
  24. package/dist/{chunk-NUHZV3A4.js → chunk-M6NNXKRM.js} +1 -1
  25. package/dist/{chunk-JGD5TWQ2.js → chunk-MESOOLF4.js} +3 -1
  26. package/dist/{chunk-VC5J7QPV.js → chunk-MFI55TNI.js} +4 -4
  27. package/dist/{chunk-HXAEQPZR.js → chunk-N5EEEKT6.js} +1 -1
  28. package/dist/{chunk-TF7G2PR6.js → chunk-NKD5BNRX.js} +2 -2
  29. package/dist/{chunk-LNIFYSNK.js → chunk-NMIYK2G2.js} +2 -2
  30. package/dist/{chunk-O65LES4V.js → chunk-NVUO52YW.js} +19 -19
  31. package/dist/{chunk-Z3ASAXVU.js → chunk-O47BTZSN.js} +1 -1
  32. package/dist/{chunk-N7WAEEIU.js → chunk-OO6OADZN.js} +3 -3
  33. package/dist/{chunk-DKWQMPSL.js → chunk-OOUHNKKX.js} +1 -1
  34. package/dist/{chunk-66T6XJAB.js → chunk-QBF462QH.js} +1 -1
  35. package/dist/{chunk-VU7ZJPIR.js → chunk-QFNFBQCG.js} +1 -1
  36. package/dist/{chunk-YL2VDSNF.js → chunk-R7TMTFJP.js} +1 -1
  37. package/dist/{chunk-ZTY7HHYB.js → chunk-RXFKXZJS.js} +1 -1
  38. package/dist/{chunk-T2QSWFSU.js → chunk-TCBVV2JK.js} +4 -4
  39. package/dist/{chunk-4XN5FRRJ.js → chunk-TG7FAHRP.js} +2 -2
  40. package/dist/{chunk-QBQHQEUG.js → chunk-TOHKSZKI.js} +1 -1
  41. package/dist/{chunk-QJFDAKRF.js → chunk-UXLLWIA2.js} +1 -1
  42. package/dist/{chunk-TVZAC2NP.js → chunk-VM6BX2WJ.js} +2 -2
  43. package/dist/{chunk-HOB7Z4JQ.js → chunk-W3K6GBXY.js} +2 -2
  44. package/dist/{chunk-MHAR6S7B.js → chunk-WL3QF3QF.js} +1 -1
  45. package/dist/{chunk-X52PMPOM.js → chunk-X7SFJZIG.js} +5 -5
  46. package/dist/{chunk-SFJXGISY.js → chunk-YTR435DO.js} +2 -2
  47. package/dist/{chunk-55XLX5PA.js → chunk-YYGXCRIW.js} +1 -1
  48. package/dist/{claude-launcher-7RGVOYCD.js → claude-launcher-LVYZ4YJI.js} +1 -1
  49. package/dist/{cli-SCTKM2Y5.js → cli-X3JGBH2D.js} +101 -101
  50. package/dist/{command-PY3C2E4B.js → command-NLWZT7KR.js} +23 -23
  51. package/dist/{config-5QYIKYUP.js → config-TNV5HHLO.js} +3 -3
  52. package/dist/{connect-cmd-5TYAOK5M.js → connect-cmd-43IWARIV.js} +6 -6
  53. package/dist/{container-start-7WLZMPEI.js → container-start-3MXIUNE2.js} +22 -22
  54. package/dist/{control-plane-launch-FZMD4MXX.js → control-plane-launch-TIK265OT.js} +6 -6
  55. package/dist/{docker-ZTC4EIU4.js → docker-2IIRBQAB.js} +5 -5
  56. package/dist/{doctor-DQWRUAEB.js → doctor-PKMAUDTU.js} +25 -25
  57. package/dist/{emit-artifact-cmd-SOXLBPQB.js → emit-artifact-cmd-RM2X3PBJ.js} +10 -10
  58. package/dist/{emit-criteria-cmd-JDO2VUG5.js → emit-criteria-cmd-ZUI7DFND.js} +7 -7
  59. package/dist/{emit-finding-cmd-VCQPCLI2.js → emit-finding-cmd-W2FU4CCF.js} +7 -7
  60. package/dist/{emit-result-cmd-TKA3GAN7.js → emit-result-cmd-JINMQ7QG.js} +10 -10
  61. package/dist/{emit-step-cmd-XN44BXYU.js → emit-step-cmd-7FZWQTV3.js} +8 -8
  62. package/dist/{exec-client-VKT2XNB3.js → exec-client-6ZJJ4KVH.js} +4 -4
  63. package/dist/{fleet-readiness-G5X3MKP2.js → fleet-readiness-3A67MUAU.js} +6 -6
  64. package/dist/{governing-source-B3M2U4BC.js → governing-source-KQMKM5CI.js} +10 -10
  65. package/dist/{guest-init-QW2DPX7H.js → guest-init-A4HHI2UR.js} +5 -5
  66. package/dist/{hook-fast-EFC44SXV.js → hook-fast-UJPAWDAO.js} +1 -1
  67. package/dist/host-key-NGRCMJZ7.js +10 -0
  68. package/dist/{image-tag-SS7YKJHN.js → image-tag-TEOKZVD5.js} +4 -4
  69. package/dist/index.js +4 -4
  70. package/dist/{init-BTH5YPBC.js → init-HENNITCI.js} +22 -22
  71. package/dist/{init-5LHTF72R.js → init-Q6JV7IGF.js} +22 -22
  72. package/dist/{init-cmd-L4VW3ZCT.js → init-cmd-GJR37XGU.js} +11 -11
  73. package/dist/{init-update-RWTQSTPE.js → init-update-MZ4IRFC7.js} +9 -9
  74. package/dist/{install-35SAMY75.js → install-NPTR35MG.js} +5 -5
  75. package/dist/{install-cmd-GFY4QF72.js → install-cmd-4PXPAFQX.js} +6 -6
  76. package/dist/{logs-X2IRDP5T.js → logs-Z4L4I3OR.js} +3 -3
  77. package/dist/{loop-QDV7T65M.js → loop-DO46LFUH.js} +34 -34
  78. package/dist/{machine-PLNSGKNF.js → machine-HZGUBOUH.js} +18 -18
  79. package/dist/{mcp-serve-cmd-IITCPAAR.js → mcp-serve-cmd-NQM2WDYI.js} +5 -5
  80. package/dist/{paths-32DWGK35.js → paths-2VSGK6E2.js} +3 -3
  81. package/dist/pending-SFZ2AYSK.js +10 -0
  82. package/dist/{pidfile-CYCTH6NQ.js → pidfile-3FT5OLUE.js} +4 -4
  83. package/dist/{record-N4WPZCGK.js → record-7SSRLSI2.js} +4 -4
  84. package/dist/{relay-FJ5K37Z5.js → relay-IEYNSKAZ.js} +1 -1
  85. package/dist/{relay-protocol-HELO5SNH.js → relay-protocol-5LSWUJCW.js} +1 -1
  86. package/dist/{runner-env-EIB6WFPG.js → runner-env-2Z2DVSUJ.js} +6 -6
  87. package/dist/{runner-identity-S3V6I4I3.js → runner-identity-B37HHOZR.js} +5 -5
  88. package/dist/{runner-key-M4N2BY5A.js → runner-key-UP5YBUHR.js} +22 -22
  89. package/dist/{session-sender-UQ3VF732.js → session-sender-7MSVJZ6Q.js} +11 -11
  90. package/dist/{spec-cmd-Z6MGATWC.js → spec-cmd-KAQ7MX4O.js} +8 -8
  91. package/dist/{status-PWMPP4ES.js → status-2ICTDC2R.js} +25 -25
  92. package/dist/{sync-cmd-N4R7ST6X.js → sync-cmd-7K3WVQKO.js} +10 -10
  93. package/dist/{watch-L5MSAWEO.js → watch-NCYESLO2.js} +10 -10
  94. package/dist/{work-claim-cmd-CXALMILD.js → work-claim-cmd-IOUEHYIY.js} +11 -11
  95. package/dist/{work-cmd-COESFSHE.js → work-cmd-FOI74X5B.js} +8 -8
  96. package/dist/{work-comment-cmd-A4ZUVCSA.js → work-comment-cmd-3C44H4CG.js} +8 -8
  97. package/dist/{work-logs-cmd-CTF43MBE.js → work-logs-cmd-YGAWCX3X.js} +8 -8
  98. package/dist/{work-open-pr-cmd-EMGYJXVD.js → work-open-pr-cmd-HUG5HAVC.js} +9 -9
  99. package/dist/{work-pr-cmd-FEXMS6RH.js → work-pr-cmd-L2EDOYXH.js} +8 -8
  100. package/dist/{work-stop-cmd-NIHAN45R.js → work-stop-cmd-GGDVKC67.js} +8 -8
  101. package/package.json +1 -1
  102. package/dist/host-key-AC6LTZDS.js +0 -10
  103. package/dist/pending-CSIY4Y2I.js +0 -10
@@ -1,15 +1,15 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
3
  import { checkStarterFiles, contextIsGoverned } from './chunk-ITAIEJ2T.js';
4
- import { fleetCheck, checkBuildSkill, checkMachineSkills, checkCommittedMaintainedSkills, checkMaintainedReferences } from './chunk-QBQHQEUG.js';
5
- import { resolveCredentials, getJson, WorkCommandError } from './chunk-X52PMPOM.js';
6
- import { isLinkedRepository } from './chunk-VU7ZJPIR.js';
4
+ import { fleetCheck, checkBuildSkill, checkMachineSkills, checkCommittedMaintainedSkills, checkMaintainedReferences } from './chunk-TOHKSZKI.js';
5
+ import { resolveCredentials, getJson, WorkCommandError } from './chunk-X7SFJZIG.js';
6
+ import { isLinkedRepository } from './chunk-QFNFBQCG.js';
7
7
  import { sanitizeTerminal } from './chunk-BUP5N3X6.js';
8
8
  import { resolveRepoIdentity, compareVersions, SUPPORTED_VERSIONS } from './chunk-UHU7H57K.js';
9
9
  import { C } from './chunk-ANPNT6PM.js';
10
10
  import { checkFormerSkillNames } from './chunk-P2RWZCV7.js';
11
- import { resolveGatewayCredentials, defaultFetch } from './chunk-7CK2TJFB.js';
12
- import { sanitizeForContext, spoolDir, assessSyncHealth, readSyncStatus, SYNC_STALE_AFTER_MS, formatAgo, checkInstalledCliStaleness, workspaceRootOf, hookFiredMarkerPath, refreshCommand } from './chunk-DKWQMPSL.js';
11
+ import { resolveGatewayCredentials, defaultFetch } from './chunk-KJIUFOC4.js';
12
+ import { sanitizeForContext, spoolDir, assessSyncHealth, readSyncStatus, SYNC_STALE_AFTER_MS, formatAgo, checkInstalledCliStaleness, workspaceRootOf, hookFiredMarkerPath, refreshCommand } from './chunk-OOUHNKKX.js';
13
13
  import { readStatuslineState, STATE_FRESH_MS } from './chunk-I7RZHMXW.js';
14
14
  import { hookCommandEscapesControlPlane, CONTROL_PLANE_DIR_VARIABLE } from './chunk-HCVLP7XA.js';
15
15
  import { findGitDirs } from './chunk-BJ3KTMDH.js';
@@ -176,17 +176,18 @@ function runDoctor(env = {}) {
176
176
  const home = env.home ?? homeFromEnv();
177
177
  const now = env.now ?? Date.now;
178
178
  const laptop = env.runnerHost !== true;
179
+ const buildsInOwnImages = env.runnerHost === true && (env.runnerHooks === "builtin:container" || env.runnerHooks === "builtin:vm");
179
180
  const transcripts = laptop ? scanTranscripts(home) : void 0;
180
181
  const starter = laptop ? checkStarterFiles(env.cwd) : void 0;
181
182
  return [
182
183
  ...laptop ? [checkClaudeDir(home), checkTranscripts(transcripts, now), ...checkHooks(home, env.cwd, transcripts, now)] : [LAPTOP_CHECKS_NOT_APPLICABLE],
183
184
  ...checkDeadHooksState(env.cwd),
184
185
  ...laptop ? [checkSpoolWritable(home)] : [],
185
- checkLastSync(home, now),
186
+ ...buildsInOwnImages ? [] : [checkLastSync(home, now)],
186
187
  ...laptop ? [checkDaemon(home)] : [],
187
188
  checkCleanupPeriod(home),
188
189
  checkDiskHeadroom(home),
189
- checkClaudeVersion(env),
190
+ ...buildsInOwnImages ? [] : [checkClaudeVersion(env)],
190
191
  checkSettingsValid(home, env.cwd),
191
192
  ...laptop ? checkStatusline(home, now, env.cwd) : [],
192
193
  ...checkInstalls(env),
@@ -920,6 +921,7 @@ var CREDENTIAL_CHECK_TIMEOUT_MS = 15e3;
920
921
  var LOGIN_FIX = `Run \`${cliInvocation()} login\` to sign in again.`;
921
922
  var CONNECT_FIX = `Run \`${cliInvocation()} connect\` to choose a factory for this repository.`;
922
923
  var SETUP_PANEL_FIX = "Link the repository on the factory's setup panel in the dashboard.";
924
+ var RUNNER_KEY_PATH = "/v1/runner/host-key";
923
925
  var MINT_KEY_FIX = "Mint a key for a factory that exists: dashboard \u2192 Settings \u2192 API keys.";
924
926
  async function askGateway(fetchImpl, url, path, credential, appId) {
925
927
  const headers = { authorization: `Bearer ${credential}` };
@@ -1019,7 +1021,7 @@ async function loginChecks(fetchImpl, url, token, appId, local, inRepository) {
1019
1021
  const fix = elsewhere === void 0 ? SETUP_PANEL_FIX : `Run \`${cliInvocation()} connect --factory ${factorySlug(elsewhere)}\` to use the factory this repository is linked to.`;
1020
1022
  return [login, factoryCheck, { name: "Repository", status: "warn", detail: `${shown} is not linked to ${factorySlug(factory)}`, fix }];
1021
1023
  }
1022
- async function factoryKeyChecks(fetchImpl, url, key, appId, source, local) {
1024
+ async function factoryKeyChecks(fetchImpl, url, key, appId, source, local, runnerHost) {
1023
1025
  const name = "Factory key";
1024
1026
  if (appId === void 0) {
1025
1027
  return withSkippedRest(
@@ -1028,7 +1030,7 @@ async function factoryKeyChecks(fetchImpl, url, key, appId, source, local) {
1028
1030
  );
1029
1031
  }
1030
1032
  const factoryPath = `/v1/apps/${encodeURIComponent(appId)}`;
1031
- const reply = await askGateway(fetchImpl, url, factoryPath, key, appId);
1033
+ const reply = await askGateway(fetchImpl, url, runnerHost ? RUNNER_KEY_PATH : factoryPath, key, appId);
1032
1034
  const unanswered = unansweredDetail(reply);
1033
1035
  if (unanswered !== void 0) {
1034
1036
  return withSkippedRest({ name, status: "warn", detail: unanswered, fix: NETWORK_FIX }, "the factory key check did not finish");
@@ -1051,10 +1053,11 @@ async function factoryKeyChecks(fetchImpl, url, key, appId, source, local) {
1051
1053
  const accepted = { name, status: "pass", detail: `the gateway accepts the key from ${source}` };
1052
1054
  const shownAppId = sanitizeTerminal(appId);
1053
1055
  if (status === 403 && /missing required permission/i.test(message)) {
1054
- const permission = /'([^']+)'/.exec(message)?.[1] ?? "factory.read";
1056
+ const permission = /'([^']+)'/.exec(message)?.[1] ?? (runnerHost ? "work.claim" : "factory.read");
1057
+ const cannot = runnerHost ? `the key lacks a permission that a runner needs for the factory ${shownAppId}` : `the key cannot read the factory ${shownAppId}`;
1055
1058
  return [
1056
1059
  accepted,
1057
- { name: "Factory", status: "fail", detail: `the key cannot read the factory ${shownAppId}: ${message}`, fix: `Use a key that holds ${permission}.` },
1060
+ { name: "Factory", status: "fail", detail: `${cannot}: ${message}`, fix: `Use a key that holds ${permission}.` },
1058
1061
  skippedCheck("Repository", "the factory check failed")
1059
1062
  ];
1060
1063
  }
@@ -1082,6 +1085,10 @@ async function factoryKeyChecks(fetchImpl, url, key, appId, source, local) {
1082
1085
  "the factory key check did not finish"
1083
1086
  );
1084
1087
  }
1088
+ if (runnerHost) {
1089
+ const factory2 = { name: "Factory", status: "pass", detail: `the factory ${shownAppId} accepts this runner key` };
1090
+ return withRepository(fetchImpl, url, key, appId, factoryPath, local, accepted, factory2);
1091
+ }
1085
1092
  const row = body?.data;
1086
1093
  if (typeof row?.id !== "string") {
1087
1094
  return withSkippedRest(
@@ -1091,6 +1098,9 @@ async function factoryKeyChecks(fetchImpl, url, key, appId, source, local) {
1091
1098
  }
1092
1099
  const label = [row.display_name, row.name].find((v) => typeof v === "string") ?? appId;
1093
1100
  const factory = { name: "Factory", status: "pass", detail: `${sanitizeTerminal(label)} (${shownAppId}) is readable with this key` };
1101
+ return withRepository(fetchImpl, url, key, appId, factoryPath, local, accepted, factory);
1102
+ }
1103
+ async function withRepository(fetchImpl, url, key, appId, factoryPath, local, accepted, factory) {
1094
1104
  if (local === void 0) return [accepted, factory, skippedCheck("Repository", "not inside a git repository with a remote")];
1095
1105
  const links = await askGateway(fetchImpl, url, `${factoryPath}/git/links`, key, appId);
1096
1106
  const shown = sanitizeTerminal(local);
@@ -1122,7 +1132,7 @@ async function credentialChecks(options = {}) {
1122
1132
  return loginChecks(fetchImpl, resolved.url, resolved.credential, resolved.appId, local, findGitDirs(cwd) !== void 0);
1123
1133
  }
1124
1134
  const source = env.OUTERLAYER_API_KEY ? "OUTERLAYER_API_KEY" : "~/.outerlayer/config.json";
1125
- return factoryKeyChecks(fetchImpl, resolved.url, resolved.credential, resolved.appId, source, local);
1135
+ return factoryKeyChecks(fetchImpl, resolved.url, resolved.credential, resolved.appId, source, local, options.runnerHost === true);
1126
1136
  }
1127
1137
  function governedDetail(source) {
1128
1138
  return `governed by ${sanitizeTerminal(source.repository)} (ref ${sanitizeTerminal(source.ref)}, stored commit ${sanitizeTerminal(source.sha.slice(0, 7))})`;
@@ -1180,10 +1190,18 @@ function doctorExitCode(checks) {
1180
1190
 
1181
1191
  // src/doctor-report.ts
1182
1192
  async function gatherDoctorChecks() {
1183
- const { defaultRunnerConfigPath, hasRunnerBlock, loadRunnerConfig, runnerVmOf } = await import('./config-5QYIKYUP.js');
1193
+ const { defaultRunnerConfigPath, hasRunnerBlock, loadRunnerConfig, runnerVmOf } = await import('./config-TNV5HHLO.js');
1184
1194
  const configPath = defaultRunnerConfigPath();
1185
- const checks = runDoctor({ runnerHost: hasRunnerBlock(configPath) });
1186
- const credential = await credentialChecks();
1195
+ const runnerHost = hasRunnerBlock(configPath);
1196
+ const hooks = (() => {
1197
+ try {
1198
+ return runnerHost ? loadRunnerConfig(configPath).hooks : void 0;
1199
+ } catch {
1200
+ return void 0;
1201
+ }
1202
+ })();
1203
+ const checks = runDoctor({ runnerHost, ...hooks === void 0 ? {} : { runnerHooks: hooks.provision } });
1204
+ const credential = await credentialChecks({ runnerHost });
1187
1205
  checks.push(...credential);
1188
1206
  if (credential[0]?.status === "pass") checks.push(...await githubAppChecks(), ...await governanceChecks());
1189
1207
  if (credential[0]?.status === "pass") checks.push(...await fleetCheck());
@@ -1193,14 +1211,7 @@ async function gatherDoctorChecks() {
1193
1211
  const { runnerVmCheck } = await import('./doctor-53F2PYY7.js');
1194
1212
  checks.push(runnerVmCheck(configPath, { lima: realLima(), home: homeFromEnv(), instance: runnerVm.instance }));
1195
1213
  } else if (hasRunnerBlock(configPath)) {
1196
- const { runnerHostChecks } = await import('./doctor-DQWRUAEB.js');
1197
- const hooks = (() => {
1198
- try {
1199
- return loadRunnerConfig(configPath).hooks;
1200
- } catch {
1201
- return void 0;
1202
- }
1203
- })();
1214
+ const { runnerHostChecks } = await import('./doctor-PKMAUDTU.js');
1204
1215
  const gateway = (() => {
1205
1216
  try {
1206
1217
  const { url, apiKey, appId } = loadRunnerConfig(configPath);
@@ -1228,7 +1239,7 @@ async function gatherDoctorChecks() {
1228
1239
  const { existsSync: existsSync3 } = await import('fs');
1229
1240
  if (process.platform !== "linux" || !existsSync3("/run/systemd/system")) return void 0;
1230
1241
  const { inspectService, realInspectProbes } = await import('./inspect-L7JIBK3Y.js');
1231
- const { DEFAULT_UNIT_NAME } = await import('./install-35SAMY75.js');
1242
+ const { DEFAULT_UNIT_NAME } = await import('./install-NPTR35MG.js');
1232
1243
  const { dirname: dirname2 } = await import('path');
1233
1244
  return inspectService(DEFAULT_UNIT_NAME, dirname2(configPath), realInspectProbes());
1234
1245
  })();
@@ -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-5K3KB4YR.js';
3
+ import { RUNNER_DIR_MODE, RUNNER_FILE_MODE } from './chunk-DWVAG73B.js';
4
4
  import { readFileSync, existsSync, rmSync, mkdirSync, writeFileSync, renameSync } from 'fs';
5
5
  import { join } from 'path';
6
6
 
@@ -1,9 +1,9 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
- import { builtinKind } from './chunk-55XLX5PA.js';
3
+ import { builtinKind } from './chunk-YYGXCRIW.js';
4
4
  import { parseSize } from './chunk-YJLHUKYS.js';
5
- import { runnerDir } from './chunk-5K3KB4YR.js';
6
- import { CLAUDE_CREDENTIAL_ID, CLAUDE_ENV_FILE, credentialLineIn, withoutCredentialLines } from './chunk-HXAEQPZR.js';
5
+ import { runnerDir } from './chunk-DWVAG73B.js';
6
+ import { CLAUDE_CREDENTIAL_ID, CLAUDE_ENV_FILE, credentialLineIn, withoutCredentialLines } from './chunk-N5EEEKT6.js';
7
7
  import { FD_SLOTS_PER_BUILD, FD_STORE_ENV } from './chunk-XD4ZCMA4.js';
8
8
  import { existsSync, readFileSync, writeFileSync, chmodSync, renameSync } from 'fs';
9
9
  import { dirname, 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-X52PMPOM.js';
4
- import { defaultGitRunner, materializeContext, isStagingWriteFault, lookupGoverningSource } from './chunk-4XN5FRRJ.js';
5
- import { signingFetchFor } from './chunk-7CK2TJFB.js';
6
- import { signerFor } from './chunk-YL2VDSNF.js';
7
- import { SHIM_DIR, stagedContextDir, contextHomeDir, deliveryDir, keptContextDir } from './chunk-5K3KB4YR.js';
3
+ import { WorkCommandError, postJson } from './chunk-X7SFJZIG.js';
4
+ import { defaultGitRunner, materializeContext, isStagingWriteFault, lookupGoverningSource } from './chunk-TG7FAHRP.js';
5
+ import { signingFetchFor } from './chunk-KJIUFOC4.js';
6
+ import { signerFor } from './chunk-R7TMTFJP.js';
7
+ import { SHIM_DIR, stagedContextDir, contextHomeDir, deliveryDir, keptContextDir } from './chunk-DWVAG73B.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,10 +1,10 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
- import { detectMachine, supportsContainerBuilds, reachDockerStep, describeMachineDocker, supportsMicroVmBuilds } from './chunk-HOB7Z4JQ.js';
4
- import { MIN_ENGINE_MAJOR } from './chunk-GLL4TN2M.js';
5
- import { hasStoredCredential, AGENT_COMMANDS, storeClaudeCredential, credentialFromStdin, isAgentName } from './chunk-F4FA3ZUT.js';
6
- import { runnerCredentialProblem } from './chunk-55XLX5PA.js';
7
- import { runnerDir, RUNNER_DIR_MODE, RUNNER_FILE_MODE } from './chunk-5K3KB4YR.js';
3
+ import { detectMachine, supportsContainerBuilds, reachDockerStep, describeMachineDocker, supportsMicroVmBuilds } from './chunk-W3K6GBXY.js';
4
+ import { MIN_ENGINE_MAJOR } from './chunk-5Q4NDYQP.js';
5
+ import { hasStoredCredential, AGENT_COMMANDS, storeClaudeCredential, credentialFromStdin, isAgentName } from './chunk-AV5MJY45.js';
6
+ import { runnerCredentialProblem } from './chunk-YYGXCRIW.js';
7
+ import { runnerDir, RUNNER_DIR_MODE, RUNNER_FILE_MODE } from './chunk-DWVAG73B.js';
8
8
  import { existsSync, readFileSync, mkdirSync, writeFileSync } from 'fs';
9
9
  import { dirname } from 'path';
10
10
 
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
3
  import { readCloudConfigStrict, readCloudConfig, cloudConfigPath } from './chunk-PJDQPF5N.js';
4
- import { signRunnerRequest, signerFor } from './chunk-YL2VDSNF.js';
4
+ import { signRunnerRequest, signerFor } from './chunk-R7TMTFJP.js';
5
5
  import { readRepoConnection, findGitDirs } from './chunk-BJ3KTMDH.js';
6
6
  import { PLAIN_VERSION, recordCliVersion, removeRecordedVersion } from './chunk-5BHIBJDA.js';
7
7
  import { resolvePackageVersion } from './chunk-RA3O54FC.js';
@@ -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-5K3KB4YR.js';
4
+ import { RUNNER_DIR_MODE, RUNNER_FILE_MODE } from './chunk-DWVAG73B.js';
5
5
  import { existsSync, readFileSync, mkdirSync, writeFileSync, rmSync } from 'fs';
6
6
  import { dirname } from 'path';
7
7
 
@@ -13,6 +13,8 @@ var JOIN_WAIT_MS = 3e4;
13
13
  var MAX_MALFORMED_SESSIONS = 5;
14
14
  var STREAM_WINDOW = 256 * 1024;
15
15
  var SESSION_WINDOW = MAX_OPEN_STREAMS * STREAM_WINDOW;
16
+ var STREAM_RESET_BURST = 10 * MAX_OPEN_STREAMS;
17
+ var STREAM_RESET_RATE = 1e3;
16
18
  var TARGET_TUNNEL = "tunnel";
17
19
  var TARGET_GATEWAY = "gateway";
18
20
  var TARGET_CLAUDE = "claude";
@@ -40,4 +42,4 @@ var RUNNER_WORDED_REASONS = /* @__PURE__ */ new Set([
40
42
  DOCKER_DESKTOP_REASON
41
43
  ]);
42
44
 
43
- export { COMMAND_LOST_REASON, CONTAINER_STOPPED_REASON, DOCKER_DESKTOP_REASON, JOIN_DIR, JOIN_SOCKET, JOIN_WAIT_MS, MALFORMED_REASON, MAX_MALFORMED_SESSIONS, MAX_OPEN_STREAMS, RELAY_ID, RELAY_USER, RUNNER_WORDED_REASONS, SESSION_WINDOW, STREAM_WINDOW, TARGET_CLAUDE, TARGET_GATEWAY, TARGET_LEASE, TARGET_TUNNEL, UNKNOWN_TRACKING_REASON, UNKNOWN_TRANSPORT_REASON, destinationTarget, targetOfPath };
45
+ export { COMMAND_LOST_REASON, CONTAINER_STOPPED_REASON, DOCKER_DESKTOP_REASON, JOIN_DIR, JOIN_SOCKET, JOIN_WAIT_MS, MALFORMED_REASON, MAX_MALFORMED_SESSIONS, MAX_OPEN_STREAMS, RELAY_ID, RELAY_USER, RUNNER_WORDED_REASONS, SESSION_WINDOW, STREAM_RESET_BURST, STREAM_RESET_RATE, STREAM_WINDOW, TARGET_CLAUDE, TARGET_GATEWAY, TARGET_LEASE, TARGET_TUNNEL, UNKNOWN_TRACKING_REASON, UNKNOWN_TRANSPORT_REASON, destinationTarget, targetOfPath };
@@ -3,10 +3,10 @@ import { createRequire } from 'node:module';
3
3
  import { parseSize } from './chunk-YJLHUKYS.js';
4
4
  import { RecipeError, BUILDKIT_IMAGE } from './chunk-SJZL5F3F.js';
5
5
  import { compareVersions } from './chunk-UHU7H57K.js';
6
- import { ensureHostKey } from './chunk-YL2VDSNF.js';
7
- import { RUNNER_DIR_MODE, RUNNER_FILE_MODE, runnerDir, jobsDir } from './chunk-5K3KB4YR.js';
8
- import { CLAUDE_PORT, JOB_MOUNT, GATEWAY_PORT, GATEWAY_SOCKET, CLAUDE_SOCKET, RELAY_PORT, DESTINATION_BASE_PORT } from './chunk-HXAEQPZR.js';
9
- import { JOIN_DIR, RELAY_ID, JOIN_SOCKET, TARGET_GATEWAY, TARGET_CLAUDE, destinationTarget, RELAY_USER } from './chunk-JGD5TWQ2.js';
6
+ import { ensureHostKey } from './chunk-R7TMTFJP.js';
7
+ import { RUNNER_DIR_MODE, RUNNER_FILE_MODE, runnerDir, jobsDir } from './chunk-DWVAG73B.js';
8
+ import { CLAUDE_PORT, JOB_MOUNT, GATEWAY_PORT, GATEWAY_SOCKET, CLAUDE_SOCKET, RELAY_PORT, DESTINATION_BASE_PORT } from './chunk-N5EEEKT6.js';
9
+ import { JOIN_DIR, RELAY_ID, JOIN_SOCKET, TARGET_GATEWAY, TARGET_CLAUDE, destinationTarget, RELAY_USER } from './chunk-MESOOLF4.js';
10
10
  import { StringDecoder } from 'string_decoder';
11
11
  import { spawn } from 'child_process';
12
12
  import { existsSync, readFileSync, mkdirSync, createWriteStream, rmSync, chmodSync, writeFileSync, realpathSync, readdirSync, renameSync } from 'fs';
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
3
  import { parseRunnerEnv } from './chunk-XD4ZCMA4.js';
4
- import { TARGET_TUNNEL, TARGET_LEASE, destinationTarget } from './chunk-JGD5TWQ2.js';
4
+ import { TARGET_TUNNEL, TARGET_LEASE, destinationTarget } from './chunk-MESOOLF4.js';
5
5
  import { readFileSync, existsSync, unlinkSync, chmodSync } from 'fs';
6
6
  import { join, dirname } from 'path';
7
7
  import { request as request$1, createServer } from 'http';
@@ -1,9 +1,9 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
- import { autoConnect, detectActiveSession } from './chunk-LNIFYSNK.js';
3
+ import { autoConnect, detectActiveSession } from './chunk-NMIYK2G2.js';
4
4
  import { resolveRepoIdentity } from './chunk-UHU7H57K.js';
5
5
  import { C } from './chunk-ANPNT6PM.js';
6
- import { defaultFetch, unauthorizedMessage, resolveGatewayCredentials } from './chunk-7CK2TJFB.js';
6
+ import { defaultFetch, unauthorizedMessage, resolveGatewayCredentials } from './chunk-KJIUFOC4.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,8 +1,8 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
- import { fetchFactories, selectFactory, saveFactoryConnection, autoConnectedLine } from './chunk-VU7ZJPIR.js';
3
+ import { fetchFactories, selectFactory, saveFactoryConnection, autoConnectedLine } from './chunk-QFNFBQCG.js';
4
4
  import { resolveRepoIdentity } from './chunk-UHU7H57K.js';
5
- import { resolveGatewayCredentials } from './chunk-7CK2TJFB.js';
5
+ import { resolveGatewayCredentials } from './chunk-KJIUFOC4.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,33 +1,33 @@
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, MICROVM_COMMAND_DIR, commandLogOffset, startMicroVmCommand, microVmCommandLine, runCommand, execCommandLine, startSender, startHostServices, finishJob, isContainerTracked, isMicroVmTracked, probeMicroVmCommand, probeCommand, appendCommandLog, judgeProbe, EXIT_CODE_FILE, isTracked, isGroupAlive, outcomeFromExitCode, isTimedOut, readCpuUsec, isIdle, stopOrphanedMicroVms, unfinishedJobs, listUnreadableJobs, listAdoptableJobs, retryFailedReleases, recoverLostJobs, hookLimitsFor, AttemptLogBook, microVmOomKills, needsRenew, renewLease, RENEW_INTERVAL_SECONDS, listTrackedJobs, restartSender, serveLease, vmAlive, writeGuestGhConfig, ALREADY_RELEASED, inTeardown } from './chunk-KU7QL4XW.js';
3
+ import { releaseLease, isUnfinished, setStage, jobEnv, runHook, describeHookEnd, provisionMicroVm, deliverCommitHooks, provisionProcess, provisionEnvironment, readProvisionOut, resolveHostBuild, workdirProblem, listenOnBroker, hostEnvironment, hostCommandEnvironment, execArgv, MICROVM_COMMAND_DIR, commandLogOffset, startMicroVmCommand, microVmCommandLine, runCommand, execCommandLine, startSender, startHostServices, finishJob, isContainerTracked, isMicroVmTracked, probeMicroVmCommand, probeCommand, appendCommandLog, judgeProbe, EXIT_CODE_FILE, isTracked, isGroupAlive, outcomeFromExitCode, isTimedOut, readCpuUsec, isIdle, stopOrphanedMicroVms, unfinishedJobs, listUnreadableJobs, listAdoptableJobs, retryFailedReleases, recoverLostJobs, hookLimitsFor, AttemptLogBook, microVmOomKills, needsRenew, renewLease, RENEW_INTERVAL_SECONDS, listTrackedJobs, restartSender, serveLease, vmAlive, writeGuestGhConfig, ALREADY_RELEASED, inTeardown } from './chunk-6P2Z5AUY.js';
4
4
  import { decideInstalledSwitch } from './chunk-3JVYMD4G.js';
5
5
  import { fetchVersionMeta, npmVersion, npmSupportsProvenance, fetchTarballDigest, fetchProvenance, installVersion, auditSignatures } from './chunk-E7R2GIAW.js';
6
6
  import { RUNNER_PROTOCOL } from './chunk-TPKYTORP.js';
7
- import { writePendingUpdate } from './chunk-IVX3U7KV.js';
7
+ import { writePendingUpdate } from './chunk-HWOU2HDH.js';
8
8
  import { JOB_STATE_FORMAT, readsJobState, jobStateFormatOf } from './chunk-ZVB57WI6.js';
9
- import { readHousekeepingRecord, writeHousekeepingRecord } from './chunk-66T6XJAB.js';
10
- import { currentSkillCommand, formerSkillProblem, placeholderQueues, placeholderProblem } from './chunk-6S4V4UIC.js';
9
+ import { readHousekeepingRecord, writeHousekeepingRecord } from './chunk-QBF462QH.js';
10
+ import { currentSkillCommand, formerSkillProblem, placeholderQueues, placeholderProblem } from './chunk-ERVZGWUR.js';
11
11
  import { freeBytes, formatBytes } from './chunk-YYYRBYWG.js';
12
- import { writeMarker, readMarker, currentVersion, removeMarker, entryIn, versionDir, startedThroughCurrent, switchCurrent, isInLayout, cleanVersions, stagingDir } from './chunk-GUXWQIEY.js';
12
+ import { writeMarker, readMarker, currentVersion, removeMarker, entryIn, versionDir, startedThroughCurrent, switchCurrent, isInLayout, cleanVersions, stagingDir } from './chunk-6NFXOQKZ.js';
13
13
  import { RepoFilter } from './chunk-TBT347UY.js';
14
- import { leaseTimeLeftMs, createContainerRuntime, withTunnelLog, LEASE_SECONDS, provisionContainer, leaseExpiresAtMs, deliverContainerHooks, lifecycleSteps, lifecycleFailureReason, prepareBranch, containerCommandExec, setUpRunnerCgroup, measureDisk, parseCpuList, ensureTunnel, keepGhConfigCurrent, filesAreCopied, gitRemoteFor, startServicesFor, createLeaseChannel } from './chunk-GLL4TN2M.js';
15
- import { describeCallFailure, retrySend, shortClaim, relativeToRunner, formatDuration, BuildTokens, classifyRefusal, refusalCode, createRunnerLog, formatClock } from './chunk-USJZ2LDK.js';
16
- import { tagToPull, pullInstruction, imageTag, writeUpdateStatus } from './chunk-Z3ASAXVU.js';
14
+ import { leaseTimeLeftMs, createContainerRuntime, withTunnelLog, LEASE_SECONDS, provisionContainer, leaseExpiresAtMs, deliverContainerHooks, lifecycleSteps, lifecycleFailureReason, prepareBranch, containerCommandExec, setUpRunnerCgroup, measureDisk, parseCpuList, ensureTunnel, keepGhConfigCurrent, filesAreCopied, gitRemoteFor, startServicesFor, createLeaseChannel } from './chunk-5Q4NDYQP.js';
15
+ import { describeCallFailure, retrySend, shortClaim, relativeToRunner, formatDuration, BuildTokens, classifyRefusal, refusalCode, createRunnerLog, formatClock } from './chunk-JZJLKTZT.js';
16
+ import { tagToPull, pullInstruction, imageTag, writeUpdateStatus } from './chunk-O47BTZSN.js';
17
17
  import { isVersion, compareVersions, satisfiesRange } from './chunk-TQMI335S.js';
18
- import { checkFit } from './chunk-MQHTM4YJ.js';
19
- import { isBuiltinContainer, isBuiltinVm, isBuiltinProcess, loadRunnerConfig, checkHooks, builtinKind, DEFAULT_UPDATE_MAX_WAIT_HOURS } from './chunk-55XLX5PA.js';
20
- import { claimPidFile, writePidFile, readPidFile, releasePidFile } from './chunk-NUHZV3A4.js';
18
+ import { checkFit } from './chunk-JYVBEWBC.js';
19
+ import { isBuiltinContainer, isBuiltinVm, isBuiltinProcess, loadRunnerConfig, checkHooks, builtinKind, DEFAULT_UPDATE_MAX_WAIT_HOURS } from './chunk-YYGXCRIW.js';
20
+ import { claimPidFile, writePidFile, readPidFile, releasePidFile } from './chunk-M6NNXKRM.js';
21
21
  import { startTimeOf, isSameProcess } from './chunk-JBJTC3UU.js';
22
- import { writeJobFile, ensureRunnerIdentity, readJobFile, builderName, runnerLabelValue, ensureFailureCount, builderSpec, ensureBuilder, spawnRun, BUILD_LABEL, RUNNER_LABEL, readJobFileChecked } from './chunk-VC5J7QPV.js';
22
+ import { writeJobFile, ensureRunnerIdentity, readJobFile, builderName, runnerLabelValue, ensureFailureCount, builderSpec, ensureBuilder, spawnRun, BUILD_LABEL, RUNNER_LABEL, readJobFileChecked } from './chunk-MFI55TNI.js';
23
23
  import { exceedsDisk } from './chunk-YJLHUKYS.js';
24
- import { isSignatureRefusal, WorkCommandError, getJson, postJson } from './chunk-X52PMPOM.js';
25
- import { loadHostKey, ensureHostKey, signerFor } from './chunk-YL2VDSNF.js';
26
- import { RUNNER_DIR_MODE, runnerDir, buildDir, attemptStamp, jobDir, RUNNER_FILE_MODE, jobsDir, pidFilePath, spoolDir, rootfsDir } from './chunk-5K3KB4YR.js';
27
- import { parseClaimIdentity, parseClaimedRepositories, parseUnreachable, repositoriesOf, primaryOf, sharedUserEnvironment, JOB_MOUNT, takeClaudeCredential, heldClaudeCredential, claudeCredential, currentClaudeCredential } from './chunk-HXAEQPZR.js';
24
+ import { isSignatureRefusal, WorkCommandError, getJson, postJson } from './chunk-X7SFJZIG.js';
25
+ import { loadHostKey, ensureHostKey, signerFor } from './chunk-R7TMTFJP.js';
26
+ import { RUNNER_DIR_MODE, runnerDir, buildDir, attemptStamp, jobDir, RUNNER_FILE_MODE, jobsDir, pidFilePath, spoolDir, rootfsDir } from './chunk-DWVAG73B.js';
27
+ import { parseClaimIdentity, parseClaimedRepositories, parseUnreachable, repositoriesOf, primaryOf, sharedUserEnvironment, JOB_MOUNT, takeClaudeCredential, heldClaudeCredential, claudeCredential, currentClaudeCredential } from './chunk-N5EEEKT6.js';
28
28
  import { resolveVersion } from './chunk-RA3O54FC.js';
29
29
  import { fdName } from './chunk-XD4ZCMA4.js';
30
- import { COMMAND_LOST_REASON, CONTAINER_STOPPED_REASON } from './chunk-JGD5TWQ2.js';
30
+ import { COMMAND_LOST_REASON, CONTAINER_STOPPED_REASON } from './chunk-MESOOLF4.js';
31
31
  import { randomBytes } from 'crypto';
32
32
  import { mkdirSync, existsSync, chmodSync, writeFileSync, renameSync, statSync, readdirSync, readFileSync, closeSync, rmSync, openSync, constants, lstatSync } from 'fs';
33
33
  import { join, dirname } from 'path';
@@ -1779,7 +1779,7 @@ var CLAIM_REFUSAL_CODES = new Set(
1779
1779
  "pull_request_from_fork pull_request_on_default_branch pull_request_ambiguous pull_request_repository_not_connected repository_not_reachable branch_claimed_elsewhere".split(" ")
1780
1780
  );
1781
1781
  async function tryClaimAndStart(state, item, queue) {
1782
- const { postJson: postJson2 } = await import('./work-cmd-COESFSHE.js');
1782
+ const { postJson: postJson2 } = await import('./work-cmd-FOI74X5B.js');
1783
1783
  const log = logOf(state);
1784
1784
  const hostKey = await loadHostKey(state.config.configPath);
1785
1785
  const claim = await retrySend(
@@ -2955,7 +2955,7 @@ async function start(configPath, deps = { fetchImpl: fetch }) {
2955
2955
  check: update.check ? () => update.check(configPath) : async () => {
2956
2956
  const held = heldClaudeCredential();
2957
2957
  const env = held === void 0 ? process.env : { ...process.env, [held.variable]: held.value };
2958
- return (await import('./check-YEI6TCUH.js')).runRunnerCheck(configPath, { fetchImpl: deps.fetchImpl, env });
2958
+ return (await import('./check-WJ4X2Q44.js')).runRunnerCheck(configPath, { fetchImpl: deps.fetchImpl, env });
2959
2959
  },
2960
2960
  now: () => (deps.now ?? (() => /* @__PURE__ */ new Date()))().getTime(),
2961
2961
  log
@@ -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-5K3KB4YR.js';
4
+ import { RUNNER_DIR_MODE, RUNNER_FILE_MODE } from './chunk-DWVAG73B.js';
5
5
  import { readFileSync, mkdirSync, writeFileSync, renameSync } from 'fs';
6
6
  import { join } from 'path';
7
7
 
@@ -1,9 +1,9 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
- import { BRIDGE_ADDRESS, TUNNEL_PORT, BRIDGE_CIDR } from './chunk-ZTY7HHYB.js';
4
- import { EXEC_PORT } from './chunk-WWQVKFN6.js';
3
+ import { BRIDGE_ADDRESS, TUNNEL_PORT, BRIDGE_CIDR } from './chunk-RXFKXZJS.js';
4
+ import { EXEC_PORT } from './chunk-DIQN5SEL.js';
5
5
  import { startTimeOf } from './chunk-JBJTC3UU.js';
6
- import { RELAY_PORT } from './chunk-HXAEQPZR.js';
6
+ import { RELAY_PORT } from './chunk-N5EEEKT6.js';
7
7
  import { spawn, spawnSync } from 'child_process';
8
8
  import { symlinkSync, lstatSync, writeFileSync, chmodSync, mkdirSync } from 'fs';
9
9
 
@@ -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-FZMD4MXX.js');
687
+ const { governanceOf } = await import('./control-plane-launch-TIK265OT.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,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-5K3KB4YR.js';
3
+ import { RUNNER_DIR_MODE, RUNNER_FILE_MODE } from './chunk-DWVAG73B.js';
4
4
  import { readFileSync, mkdirSync, writeFileSync, renameSync } from 'fs';
5
5
  import { join } from 'path';
6
6
 
@@ -4,7 +4,7 @@ import { sanitizeTerminal } from './chunk-BUP5N3X6.js';
4
4
  import { remoteLookupFailed } from './chunk-UHU7H57K.js';
5
5
  import { isAgentsMdLayout } from './chunk-5B7BEQPR.js';
6
6
  import { DEFAULT_DASHBOARD } from './chunk-HOU33DW5.js';
7
- import { cliFetch, resolveGatewayCredentials } from './chunk-7CK2TJFB.js';
7
+ import { cliFetch, resolveGatewayCredentials } from './chunk-KJIUFOC4.js';
8
8
  import { readCloudConfig } from './chunk-PJDQPF5N.js';
9
9
  import { writeRepoConnection, findGitDirs, readRepoConnection } from './chunk-BJ3KTMDH.js';
10
10
  import { cliInvocation } from './chunk-CRB3POP4.js';
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
- import { hostKeyPath, runnerDir, RUNNER_DIR_MODE, RUNNER_FILE_MODE } from './chunk-5K3KB4YR.js';
3
+ import { hostKeyPath, runnerDir, RUNNER_DIR_MODE, RUNNER_FILE_MODE } from './chunk-DWVAG73B.js';
4
4
  import { generateKeyPairSync, createPrivateKey, createPublicKey, sign } from 'crypto';
5
5
  import { existsSync, mkdirSync, writeFileSync, readFileSync } from 'fs';
6
6
 
@@ -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-HXAEQPZR.js';
3
+ import { RELAY_PORT, BUILD_HOME } from './chunk-N5EEEKT6.js';
4
4
  import { createServer, connect } from 'net';
5
5
 
6
6
  createRequire(import.meta.url);
@@ -1,11 +1,11 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
- import { claimPidFile, RunnerAlreadyRunningError, releasePidFile } from './chunk-NUHZV3A4.js';
3
+ import { claimPidFile, RunnerAlreadyRunningError, releasePidFile } from './chunk-M6NNXKRM.js';
4
4
  import { startTimeOf } from './chunk-JBJTC3UU.js';
5
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-SJZL5F3F.js';
6
- import { RUNNER_DIR_MODE, repoCacheDir, imagesDir, attemptStamp, runnerDir, rootfsPathFor, RUNNER_FILE_MODE } from './chunk-5K3KB4YR.js';
7
- import { withGitConfig, tokenHeader, PROXY_WARNING_FLAG } from './chunk-HXAEQPZR.js';
8
- import { RELAY_ID, RELAY_USER } from './chunk-JGD5TWQ2.js';
6
+ import { RUNNER_DIR_MODE, repoCacheDir, imagesDir, attemptStamp, runnerDir, rootfsPathFor, RUNNER_FILE_MODE } from './chunk-DWVAG73B.js';
7
+ import { withGitConfig, tokenHeader, PROXY_WARNING_FLAG } from './chunk-N5EEEKT6.js';
8
+ import { RELAY_ID, RELAY_USER } from './chunk-MESOOLF4.js';
9
9
  import { mkdirSync, rmSync, existsSync, mkdtempSync, cpSync, readFileSync, writeFileSync, readdirSync, lstatSync, readlinkSync } from 'fs';
10
10
  import { tmpdir } from 'os';
11
11
  import { dirname, join } 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-P2RWZCV7.js';
4
- import { defaultFetch, resolveGatewayCredentials } from './chunk-7CK2TJFB.js';
5
- import { withTokenHeader } from './chunk-HXAEQPZR.js';
4
+ import { defaultFetch, resolveGatewayCredentials } from './chunk-KJIUFOC4.js';
5
+ import { withTokenHeader } from './chunk-N5EEEKT6.js';
6
6
  import { appendContextProvenance } from './chunk-ZJSNLVCE.js';
7
7
  import { loadMaintainedFiles, writeMaintainedFiles } from './chunk-JGML2VUN.js';
8
8
  import { cliInvocation } from './chunk-CRB3POP4.js';
@@ -2,7 +2,7 @@
2
2
  import { createRequire } from 'node:module';
3
3
  import { sanitizeTerminal } from './chunk-BUP5N3X6.js';
4
4
  import { isAgentsMdLayout } from './chunk-5B7BEQPR.js';
5
- import { resolveGatewayCredentials, defaultFetch } from './chunk-7CK2TJFB.js';
5
+ import { resolveGatewayCredentials, defaultFetch } from './chunk-KJIUFOC4.js';
6
6
  import { versionAtLeast } from './chunk-HCVLP7XA.js';
7
7
  import { findGitDirs } from './chunk-BJ3KTMDH.js';
8
8
  import { machineSkillsState, staleClaudeSkills } from './chunk-DQYMQ47E.js';
@@ -5,7 +5,7 @@ import { addStdioMcpEntryIfAbsent, addDocsMcpEntryIfAbsent, DOCS_MCP_SERVER_NAME
5
5
  import { installStarterPack } from './chunk-SATUCMAJ.js';
6
6
  import { AGENTS_MD_LAYOUT, declareAgentsMdLayout, linkClaudeSkills, SKILLS_LINK_PATH, describeSkillsLink, isAgentsMdLayout, holdsTodaysLayoutSources, discoverOuterlayerPaths } from './chunk-5B7BEQPR.js';
7
7
  import { C } from './chunk-ANPNT6PM.js';
8
- import { resolveGitCommonDir, defaultGitRunner } from './chunk-4XN5FRRJ.js';
8
+ import { resolveGitCommonDir, defaultGitRunner } from './chunk-TG7FAHRP.js';
9
9
  import { loadTemplateFiles, loadMaintainedFiles, skillDir, AGENTS_SKILLS_BASE } from './chunk-JGML2VUN.js';
10
10
  import { cliInvocation } from './chunk-CRB3POP4.js';
11
11
  import { linkedAgentsPath } from './chunk-VWFOKRYS.js';
@@ -1,11 +1,11 @@
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-LNIFYSNK.js';
4
+ import { autoConnect, detectActiveSession } from './chunk-NMIYK2G2.js';
5
5
  import { acquireSpoolLockAt } from './chunk-BUP5N3X6.js';
6
6
  import { resolveRepoIdentity } from './chunk-UHU7H57K.js';
7
7
  import { C } from './chunk-ANPNT6PM.js';
8
- import { resolveGatewayCredentials, defaultFetch, unauthorizedMessage } from './chunk-7CK2TJFB.js';
8
+ import { resolveGatewayCredentials, defaultFetch, unauthorizedMessage } from './chunk-KJIUFOC4.js';
9
9
  import { launchedItemForSession } from './chunk-T2Q7ISPE.js';
10
10
  import { parseTrackerNumber, trackerNumberError } from './chunk-WZBHBH3J.js';
11
11
  import { StepNameSchema, StepBodySchema } from './chunk-QZBXLLTV.js';
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
- import { MIN_ENGINE_MAJOR } from './chunk-GLL4TN2M.js';
4
- import { runnerImageVersion } from './chunk-Z3ASAXVU.js';
3
+ import { MIN_ENGINE_MAJOR } from './chunk-5Q4NDYQP.js';
4
+ import { runnerImageVersion } from './chunk-O47BTZSN.js';
5
5
  import { firecrackerArch, MICROVM_ARCHES, guestAssetsPinned } from './chunk-SJZL5F3F.js';
6
6
  import { spawnSync } from 'child_process';
7
7
  import { existsSync, accessSync, constants, statSync, readFileSync } from 'fs';
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
- import { EXEC_PORT } from './chunk-WWQVKFN6.js';
3
+ import { EXEC_PORT } from './chunk-DIQN5SEL.js';
4
4
  import { createConnection } from 'net';
5
5
 
6
6
  createRequire(import.meta.url);
@@ -1,12 +1,12 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
- import { detectActiveSession, autoConnect } from './chunk-LNIFYSNK.js';
4
- import { workPageUrl } from './chunk-VU7ZJPIR.js';
3
+ import { detectActiveSession, autoConnect } from './chunk-NMIYK2G2.js';
4
+ import { workPageUrl } from './chunk-QFNFBQCG.js';
5
5
  import { sanitizeTerminal } from './chunk-BUP5N3X6.js';
6
6
  import { resolveRepoIdentity } from './chunk-UHU7H57K.js';
7
7
  import { C } from './chunk-ANPNT6PM.js';
8
- import { resolveGatewayCredentials, unauthorizedMessage, defaultFetch } from './chunk-7CK2TJFB.js';
9
- import { signRunnerRequest } from './chunk-YL2VDSNF.js';
8
+ import { resolveGatewayCredentials, unauthorizedMessage, defaultFetch } from './chunk-KJIUFOC4.js';
9
+ import { signRunnerRequest } from './chunk-R7TMTFJP.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';
@@ -428,7 +428,7 @@ async function runWorkLinkSession(opts) {
428
428
  return await linkSession(opts);
429
429
  } catch (err) {
430
430
  if (opts.logFailures) {
431
- const { logHookError } = await import('./hook-fast-EFC44SXV.js');
431
+ const { logHookError } = await import('./hook-fast-UJPAWDAO.js');
432
432
  const reason = err instanceof Error ? err.message : String(err);
433
433
  logHookError(opts.home ?? homeFromEnv(opts.env ?? process.env), new Error(`work link-session #${opts.number} failed: ${reason}`));
434
434
  }
@@ -1,8 +1,8 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
- import { LiveUploader } from './chunk-MKIC65SD.js';
3
+ import { LiveUploader } from './chunk-2BZTGJII.js';
4
4
  import { CaptureDaemon } from './chunk-UHU7H57K.js';
5
- import { spoolDir } from './chunk-DKWQMPSL.js';
5
+ import { spoolDir } from './chunk-OOUHNKKX.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';
@@ -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-HXAEQPZR.js';
5
+ import { isRefusedInConfig, resolveDestinations, isReservedVariable } from './chunk-N5EEEKT6.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';
@@ -241,7 +241,7 @@ async function runClaudeLauncher(args, deps = {}) {
241
241
  return 1;
242
242
  }
243
243
  } else {
244
- const { resolveLaunchPlane } = await import('./control-plane-launch-FZMD4MXX.js');
244
+ const { resolveLaunchPlane } = await import('./control-plane-launch-TIK265OT.js');
245
245
  const plane = env[GOVERNANCE_VARIABLE] === "self" ? { kind: "none" } : await resolveLaunchPlane({ cwd, env, home, fetchImpl: deps.fetchImpl, stderr });
246
246
  if (plane.kind === "none") {
247
247
  const own2 = ownSkillsDirFor(cwd, home, [], stderr);