@outerlayer/cli 0.26.0 → 0.26.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +19 -0
- package/README.md +3 -1
- package/dist/{agent-setup-YHFZB2BC.js → agent-setup-PZYQWN4H.js} +3 -3
- package/dist/{build-JK2DLT6X.js → build-AW4A2QPK.js} +2 -2
- package/dist/build-info.json +1 -1
- package/dist/{builder-TMA25KRR.js → builder-TDCBQ2RD.js} +2 -2
- package/dist/{check-FAGTKWHT.js → check-KL3LDAI3.js} +24 -24
- package/dist/{chunk-C3AMVSMS.js → chunk-2EAVBJMO.js} +2 -2
- package/dist/{chunk-DYEFPYME.js → chunk-2O5KA67H.js} +1 -1
- package/dist/{chunk-H3AEZIYB.js → chunk-6M4LNO22.js} +1 -1
- package/dist/{chunk-DVAAATJP.js → chunk-6OYAW5SF.js} +15 -10
- package/dist/{chunk-AINUN2TT.js → chunk-DJILFADE.js} +1 -1
- package/dist/{chunk-WVM6PM2N.js → chunk-DXHISLCI.js} +3 -3
- package/dist/{chunk-P7UQZFNY.js → chunk-EORWWFPA.js} +2 -2
- package/dist/{chunk-4R24DSL2.js → chunk-FI66JNLT.js} +4 -4
- package/dist/{chunk-DZUANBKP.js → chunk-GMPXOQTH.js} +4 -4
- package/dist/{chunk-6WZKI6LQ.js → chunk-GUT4IU7K.js} +16 -12
- package/dist/{chunk-FQCLEH34.js → chunk-HXFRJKMU.js} +2 -2
- package/dist/{chunk-DXDF43YG.js → chunk-I7RZHMXW.js} +1 -1
- package/dist/{chunk-7I6GZSN3.js → chunk-KZLLLARE.js} +1 -1
- package/dist/{chunk-2N72GPS2.js → chunk-MWPBF2XG.js} +1 -1
- package/dist/{chunk-HPOEVC2V.js → chunk-MXTN35XN.js} +3 -3
- package/dist/{chunk-4QKHBDEN.js → chunk-OL2O5PEI.js} +61 -16
- package/dist/{chunk-ARMZI56S.js → chunk-PCY7IGSL.js} +2 -2
- package/dist/{chunk-GJZEUQ6D.js → chunk-QRZLUUNN.js} +13 -0
- package/dist/{chunk-6S3UEBLB.js → chunk-RO3BRAO6.js} +2 -2
- package/dist/{chunk-G2T4HCGT.js → chunk-TEVO3RUV.js} +1 -1
- package/dist/{chunk-TI33WRBT.js → chunk-TODY3MTS.js} +3 -3
- package/dist/{chunk-CLUUAX6O.js → chunk-TPAF24PK.js} +2 -2
- package/dist/{chunk-ITP76BST.js → chunk-U2FSJBNI.js} +4 -4
- package/dist/{chunk-GNPTU4BM.js → chunk-URIZRCRY.js} +2 -1
- package/dist/{chunk-XBCJI6SV.js → chunk-V5LUWRCV.js} +2 -2
- package/dist/{chunk-D4UDE2AP.js → chunk-W3NVHOCS.js} +1 -1
- package/dist/{chunk-XK7FRM5J.js → chunk-WA7R6U2F.js} +7 -7
- package/dist/{chunk-XGJUNNXL.js → chunk-XLC7KEUV.js} +3 -1
- package/dist/{claude-launcher-FXFXYW2E.js → claude-launcher-O2U6P6ZD.js} +1 -1
- package/dist/{cli-CD4UNXBY.js → cli-UH2YQA5M.js} +77 -75
- package/dist/{command-A54TSZWD.js → command-ZECJJNLY.js} +13 -13
- package/dist/{connect-cmd-HAFFAVEO.js → connect-cmd-2JHSLBXK.js} +2 -2
- package/dist/{container-start-NRPEMKKE.js → container-start-GFH5LLSG.js} +14 -14
- package/dist/{control-plane-launch-FRK5IZXC.js → control-plane-launch-654RV5PO.js} +2 -2
- package/dist/{docker-4X2A5HDY.js → docker-Q7QJMX7I.js} +2 -2
- package/dist/{doctor-AXJQQBKY.js → doctor-3LCCPBX6.js} +15 -15
- package/dist/{emit-artifact-cmd-Y2GMWCSD.js → emit-artifact-cmd-AIBDDJGW.js} +8 -8
- package/dist/{emit-criteria-cmd-LI7OLHEC.js → emit-criteria-cmd-VMZIRJCQ.js} +3 -3
- package/dist/{emit-finding-cmd-3LU7C356.js → emit-finding-cmd-KMJNYQI7.js} +3 -3
- package/dist/{emit-result-cmd-NKAKRBW2.js → emit-result-cmd-LQN6AGGP.js} +8 -8
- package/dist/{emit-step-cmd-JQ23TRF5.js → emit-step-cmd-AUHA3EXY.js} +4 -4
- package/dist/{exec-client-KH33DICR.js → exec-client-J6L5FDRR.js} +2 -2
- package/dist/{governing-source-73APROH6.js → governing-source-5OU235UP.js} +6 -6
- package/dist/{guest-init-TOSKPGPF.js → guest-init-CXIHA5VI.js} +2 -2
- package/dist/{hook-fast-GD7F2EBL.js → hook-fast-LZSHEKUA.js} +1 -1
- package/dist/{hook-wrap-fast-NOOGDNSW.js → hook-wrap-fast-7VYYAAH4.js} +2 -2
- package/dist/index.js +6 -6
- package/dist/{init-IFQCZKY6.js → init-ARB2JUPA.js} +14 -14
- package/dist/{init-5WVPLO3G.js → init-C2RROWQU.js} +14 -14
- package/dist/{init-cmd-KNYXSA6O.js → init-cmd-SLXPX44L.js} +8 -8
- package/dist/{init-update-HTHYQOHU.js → init-update-FJDKY4SJ.js} +4 -4
- package/dist/{loop-HTWKPG3J.js → loop-QQV4PYNX.js} +24 -24
- package/dist/{machine-AYYL2WXW.js → machine-OVXDPPFK.js} +13 -13
- package/dist/{mcp-serve-cmd-QBFQN553.js → mcp-serve-cmd-U5N5DK3H.js} +1 -1
- package/dist/{runner-identity-NH6RLVMI.js → runner-identity-QQU6BUUO.js} +2 -2
- package/dist/{runner-key-3HAVHQZI.js → runner-key-WIEESRA5.js} +14 -14
- package/dist/{session-sender-535VA2CA.js → session-sender-DFB2N3DO.js} +9 -9
- package/dist/settings-3DBYKYQD.js +7 -0
- package/dist/{spec-cmd-KERLZ6GJ.js → spec-cmd-FBA4BJPZ.js} +4 -4
- package/dist/{status-IAXWRX7B.js → status-V2DWSLL3.js} +20 -20
- package/dist/{statusline-fast-GVRSBHAF.js → statusline-fast-YVHG6ZLX.js} +2 -2
- package/dist/{sync-cmd-EIRKU5FA.js → sync-cmd-KU567KX6.js} +8 -8
- package/dist/{watch-SMF5CW5T.js → watch-LBPCO6GR.js} +8 -8
- package/dist/{work-claim-cmd-JCUBRZKN.js → work-claim-cmd-IT7R7G3E.js} +6 -6
- package/dist/{work-cmd-C3CFJZYD.js → work-cmd-SJB6N6FZ.js} +4 -4
- package/dist/{work-comment-cmd-NDE3O7PN.js → work-comment-cmd-FGUQM2F3.js} +4 -4
- package/dist/{work-logs-cmd-KUGBBJAO.js → work-logs-cmd-74GRYFTW.js} +4 -4
- package/dist/{work-open-pr-cmd-TFIGKPRL.js → work-open-pr-cmd-CX7A2BE5.js} +5 -5
- package/dist/{work-pr-cmd-KKCLXRJL.js → work-pr-cmd-DKTBEFHO.js} +4 -4
- package/dist/{work-stop-cmd-QUEDBM4Q.js → work-stop-cmd-W6EKY5Y3.js} +4 -4
- package/package.json +1 -1
- package/dist/settings-AKYEOCC2.js +0 -7
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,24 @@
|
|
|
1
1
|
# @outerlayer/cli
|
|
2
2
|
|
|
3
|
+
## 0.26.2
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- 7c8012c: The hooks that `outerlayer init --org` prints, and the hooks and status line that `outerlayer init --project` and `outerlayer hooks wrap --project` write, run `outerlayer` from the PATH. They work on every machine, instead of naming the install path of the machine that wrote them. The `--org` snippet also names the Windows registry value, `Settings`, and says to install the CLI on each machine.
|
|
8
|
+
- 3c1d9ee: A microVM build powers off when its lease runs out with no runner renewing it. A build started through the root helper ends at `runner.timeLimitMinutes` plus 10 minutes, even when no runner stops it.
|
|
9
|
+
|
|
10
|
+
## 0.26.1
|
|
11
|
+
|
|
12
|
+
### Patch Changes
|
|
13
|
+
|
|
14
|
+
- a5a32a4: Pin a saved credential to its own gateway. A login or API key stored in the
|
|
15
|
+
config file is now sent only to the gateway address it was created for. If
|
|
16
|
+
`OUTERLAYER_URL` or `--url` names a different host and no key is supplied for
|
|
17
|
+
that call, the command refuses instead of sending the saved credential — and
|
|
18
|
+
the session transcripts a sync carries with it — to a host you did not choose.
|
|
19
|
+
To reach a different gateway, pass its own key: `--url <addr> --api-key <key>`,
|
|
20
|
+
or set `OUTERLAYER_API_KEY` beside `OUTERLAYER_URL`.
|
|
21
|
+
|
|
3
22
|
## 0.26.0
|
|
4
23
|
|
|
5
24
|
### Minor Changes
|
package/README.md
CHANGED
|
@@ -234,7 +234,9 @@ content:
|
|
|
234
234
|
With the root helper installed, the runner asks it over a Unix socket that only
|
|
235
235
|
the runner's account can open to start each microVM build under Firecracker's
|
|
236
236
|
jailer. That socket is local, and nothing about the host leaves the machine
|
|
237
|
-
through it.
|
|
237
|
+
through it. The runner also serves a lease socket in each build's directory,
|
|
238
|
+
which the guest reaches over vsock. The runner writes only the time left on
|
|
239
|
+
the build's lease to it, and the guest powers off when that time runs out.
|
|
238
240
|
- **`outerlayer runner install --service` with `builtin:vm` hooks** downloads the
|
|
239
241
|
root helper from github.com on each install, from the same public guest assets
|
|
240
242
|
repository, and checks it against a sha256 pinned in the CLI. The request
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import { createRequire } from 'node:module';
|
|
3
|
-
export { keepHandWritten, runAgentSetup } from './chunk-
|
|
3
|
+
export { keepHandWritten, runAgentSetup } from './chunk-6M4LNO22.js';
|
|
4
4
|
import './chunk-WX2WEERU.js';
|
|
5
5
|
import './chunk-VJBFQP3H.js';
|
|
6
|
-
import './chunk-
|
|
6
|
+
import './chunk-W3NVHOCS.js';
|
|
7
7
|
import './chunk-MQ743JX3.js';
|
|
8
|
-
import './chunk-
|
|
8
|
+
import './chunk-QRZLUUNN.js';
|
|
9
9
|
import './chunk-ZJSNLVCE.js';
|
|
10
10
|
import './chunk-BJ3KTMDH.js';
|
|
11
11
|
import './chunk-YVZJ6GKF.js';
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import { createRequire } from 'node:module';
|
|
3
|
-
export { buildRepositoryImage } from './chunk-
|
|
3
|
+
export { buildRepositoryImage } from './chunk-DJILFADE.js';
|
|
4
4
|
import './chunk-PYSKSROG.js';
|
|
5
5
|
import './chunk-JBJTC3UU.js';
|
|
6
|
-
export { RecipeError } from './chunk-
|
|
6
|
+
export { RecipeError } from './chunk-FI66JNLT.js';
|
|
7
7
|
import './chunk-L4CW6LZQ.js';
|
|
8
8
|
import './chunk-2K3TCQHW.js';
|
|
9
9
|
import './chunk-JGD5TWQ2.js';
|
package/dist/build-info.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"id":"2026-10-
|
|
1
|
+
{"id":"2026-10-16T18:16:32.915Z+7b81ff6","root":"/home/runner/_work/outerlayer/outerlayer","pkg":"outerlayer"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import { createRequire } from 'node:module';
|
|
3
|
-
export { MIN_BUILDX_VERSION, builderName, builderSpec, buildxState, ensureBuilder, ensureFailureCount, isOutOfMemory, proxyEnvironment, trackImageBuild } from './chunk-
|
|
4
|
-
import './chunk-
|
|
3
|
+
export { MIN_BUILDX_VERSION, builderName, builderSpec, buildxState, ensureBuilder, ensureFailureCount, isOutOfMemory, proxyEnvironment, trackImageBuild } from './chunk-KZLLLARE.js';
|
|
4
|
+
import './chunk-FI66JNLT.js';
|
|
5
5
|
import './chunk-7RQ73DLO.js';
|
|
6
6
|
import './chunk-QE3UQAHK.js';
|
|
7
7
|
import './chunk-QZBXLLTV.js';
|
|
@@ -1,55 +1,55 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import { createRequire } from 'node:module';
|
|
3
|
-
import { probeCredentials } from './chunk-
|
|
4
|
-
import './chunk-
|
|
3
|
+
import { probeCredentials } from './chunk-6OYAW5SF.js';
|
|
4
|
+
import './chunk-OL2O5PEI.js';
|
|
5
5
|
import './chunk-TKL74NLB.js';
|
|
6
6
|
import './chunk-ZVB57WI6.js';
|
|
7
7
|
import './chunk-6FAP657M.js';
|
|
8
8
|
import './chunk-3JVYMD4G.js';
|
|
9
9
|
import './chunk-YETTWTAY.js';
|
|
10
10
|
import './chunk-TPKYTORP.js';
|
|
11
|
-
import './chunk-
|
|
12
|
-
import './chunk-
|
|
11
|
+
import './chunk-V5LUWRCV.js';
|
|
12
|
+
import './chunk-MWPBF2XG.js';
|
|
13
13
|
import './chunk-UNF7MWEL.js';
|
|
14
|
-
import './chunk-
|
|
15
|
-
import './chunk-
|
|
14
|
+
import './chunk-U2FSJBNI.js';
|
|
15
|
+
import './chunk-EORWWFPA.js';
|
|
16
16
|
import './chunk-ESVW4MJY.js';
|
|
17
|
-
import { placeholderQueues, placeholderProblem, permissionModeProblems, permissionModeProblem, needsClaudeCredential, claudeCredentialCheck, claimPermissionProblem, formerSkillQueues, formerSkillProblem } from './chunk-
|
|
17
|
+
import { placeholderQueues, placeholderProblem, permissionModeProblems, permissionModeProblem, needsClaudeCredential, claudeCredentialCheck, claimPermissionProblem, formerSkillQueues, formerSkillProblem } from './chunk-TODY3MTS.js';
|
|
18
18
|
import './chunk-4IFKLYMM.js';
|
|
19
19
|
import './chunk-YYYRBYWG.js';
|
|
20
20
|
import './chunk-TBT347UY.js';
|
|
21
|
-
import './chunk-
|
|
22
|
-
import './chunk-
|
|
23
|
-
import './chunk-
|
|
21
|
+
import './chunk-PCY7IGSL.js';
|
|
22
|
+
import './chunk-RO3BRAO6.js';
|
|
23
|
+
import './chunk-GUT4IU7K.js';
|
|
24
24
|
import './chunk-665QWBNW.js';
|
|
25
25
|
import './chunk-TQMI335S.js';
|
|
26
26
|
import './chunk-5PMQDQFV.js';
|
|
27
27
|
import './chunk-MLD2NA7N.js';
|
|
28
28
|
import { parseRunnerEnv } from './chunk-6MZSX4M7.js';
|
|
29
|
-
import './chunk-
|
|
29
|
+
import './chunk-DJILFADE.js';
|
|
30
30
|
import './chunk-PYSKSROG.js';
|
|
31
31
|
import './chunk-JBJTC3UU.js';
|
|
32
32
|
import './chunk-OGFGZQA3.js';
|
|
33
|
-
import './chunk-
|
|
34
|
-
import './chunk-
|
|
35
|
-
import './chunk-
|
|
36
|
-
import './chunk-
|
|
37
|
-
import './chunk-
|
|
38
|
-
import './chunk-
|
|
39
|
-
import './chunk-
|
|
40
|
-
import './chunk-
|
|
33
|
+
import './chunk-KZLLLARE.js';
|
|
34
|
+
import './chunk-FI66JNLT.js';
|
|
35
|
+
import './chunk-MXTN35XN.js';
|
|
36
|
+
import './chunk-XLC7KEUV.js';
|
|
37
|
+
import './chunk-DXHISLCI.js';
|
|
38
|
+
import './chunk-GMPXOQTH.js';
|
|
39
|
+
import './chunk-HXFRJKMU.js';
|
|
40
|
+
import './chunk-TEVO3RUV.js';
|
|
41
41
|
import './chunk-BUP5N3X6.js';
|
|
42
42
|
import './chunk-XSPA5ODY.js';
|
|
43
43
|
import './chunk-GOSFARMS.js';
|
|
44
44
|
import { loadRunnerConfig, RunnerConfigError, checkHooks } from './chunk-JWRX5ZTT.js';
|
|
45
45
|
import './chunk-UXYLWVTQ.js';
|
|
46
46
|
import './chunk-7RQ73DLO.js';
|
|
47
|
-
import './chunk-
|
|
47
|
+
import './chunk-W3NVHOCS.js';
|
|
48
48
|
import './chunk-MQ743JX3.js';
|
|
49
|
-
import './chunk-
|
|
50
|
-
import './chunk-
|
|
49
|
+
import './chunk-QRZLUUNN.js';
|
|
50
|
+
import './chunk-2EAVBJMO.js';
|
|
51
51
|
import './chunk-ZJSNLVCE.js';
|
|
52
|
-
import './chunk-
|
|
52
|
+
import './chunk-2O5KA67H.js';
|
|
53
53
|
import './chunk-BKO6JEZI.js';
|
|
54
54
|
import './chunk-VPEGE3QZ.js';
|
|
55
55
|
import './chunk-HCVLP7XA.js';
|
|
@@ -62,7 +62,7 @@ import './chunk-HBISTTG3.js';
|
|
|
62
62
|
import './chunk-T2Q7ISPE.js';
|
|
63
63
|
import './chunk-WZBHBH3J.js';
|
|
64
64
|
import './chunk-CRB3POP4.js';
|
|
65
|
-
import './chunk-
|
|
65
|
+
import './chunk-URIZRCRY.js';
|
|
66
66
|
import './chunk-YQR6E6OV.js';
|
|
67
67
|
import './chunk-TUSYOL2O.js';
|
|
68
68
|
import './chunk-RKOTJQVG.js';
|
|
@@ -429,7 +429,7 @@ async function handleWorkLaunch(sessionId, home, env, spawnImpl = spawnDetached,
|
|
|
429
429
|
}
|
|
430
430
|
async function missingRenewalHookContext(home, cwd) {
|
|
431
431
|
try {
|
|
432
|
-
const { settingsPath, readSettings, isOurHookCommand } = await import('./settings-
|
|
432
|
+
const { settingsPath, readSettings, isOurHookCommand } = await import('./settings-3DBYKYQD.js');
|
|
433
433
|
const userSettings = readSettings(settingsPath("user", { home }));
|
|
434
434
|
const projectSettings = readSettings(settingsPath("project", { cwd }));
|
|
435
435
|
if (userSettings === null && projectSettings === null) return void 0;
|
|
@@ -628,7 +628,7 @@ async function missingControlPlane(cwd, sessionId, home, env) {
|
|
|
628
628
|
cleanupEarlierCopies(dirs);
|
|
629
629
|
}
|
|
630
630
|
if (!contextPossiblyGoverned(cwd, home)) return void 0;
|
|
631
|
-
const { governanceOf } = await import('./control-plane-launch-
|
|
631
|
+
const { governanceOf } = await import('./control-plane-launch-654RV5PO.js');
|
|
632
632
|
if (await governanceOf({ cwd, env, home }) !== "governed") return void 0;
|
|
633
633
|
recordMissingContext(dirs, sessionId, home);
|
|
634
634
|
const launcher = `${cliInvocation()} claude`;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import { createRequire } from 'node:module';
|
|
3
|
-
import { decodeWrappedCommand } from './chunk-
|
|
3
|
+
import { decodeWrappedCommand } from './chunk-URIZRCRY.js';
|
|
4
4
|
import { homeFromEnv } from './chunk-VNVZDWO3.js';
|
|
5
5
|
import { readFileSync, mkdirSync, appendFileSync, writeFileSync } from 'fs';
|
|
6
6
|
import { spawn } from 'child_process';
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import { createRequire } from 'node:module';
|
|
3
3
|
import { runEmit } from './chunk-WX2WEERU.js';
|
|
4
4
|
import { installStarterPack } from './chunk-VJBFQP3H.js';
|
|
5
|
-
import { resolveGitCommonDir, defaultGitRunner } from './chunk-
|
|
5
|
+
import { resolveGitCommonDir, defaultGitRunner } from './chunk-W3NVHOCS.js';
|
|
6
6
|
import { addStdioMcpEntryIfAbsent, addDocsMcpEntryIfAbsent, DOCS_MCP_SERVER_NAME } from './chunk-YVZJ6GKF.js';
|
|
7
7
|
import { C } from './chunk-ANPNT6PM.js';
|
|
8
8
|
import { AGENTS_MD_LAYOUT, declareAgentsMdLayout, linkClaudeSkills, SKILLS_LINK_PATH, describeSkillsLink, isAgentsMdLayout, holdsTodaysLayoutSources, discoverOuterlayerPaths } from './chunk-JKNYTNYD.js';
|
|
@@ -1,25 +1,25 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import { createRequire } from 'node:module';
|
|
3
|
-
import { releaseLease, isUnfinished, setStage, jobEnv, runHook, describeHookEnd, provisionMicroVm, deliverCommitHooks, provisionProcess, provisionEnvironment, readProvisionOut, resolveHostBuild, workdirProblem, listenOnBroker, hostEnvironment, hostCommandEnvironment, execArgv, microVmCommandLine, runCommand, commandLogOffset, execCommandLine, startSender, startHostServices, finishJob, isContainerTracked, probeCommand, appendCommandLog, judgeProbe, EXIT_CODE_FILE, isGroupAlive, outcomeFromExitCode, isTimedOut, readCpuUsec, isIdle, stopOrphanedMicroVms, unfinishedJobs, listUnreadableJobs, listAdoptableJobs, retryFailedReleases, recoverLostJobs, hookLimitsFor, AttemptLogBook, needsRenew, renewLease, RENEW_INTERVAL_SECONDS, listTrackedJobs, restartSender, ALREADY_RELEASED, inTeardown } from './chunk-
|
|
3
|
+
import { releaseLease, isUnfinished, setStage, jobEnv, runHook, describeHookEnd, provisionMicroVm, deliverCommitHooks, provisionProcess, provisionEnvironment, readProvisionOut, resolveHostBuild, workdirProblem, listenOnBroker, hostEnvironment, hostCommandEnvironment, execArgv, microVmCommandLine, runCommand, commandLogOffset, execCommandLine, startSender, startHostServices, finishJob, isContainerTracked, probeCommand, appendCommandLog, judgeProbe, EXIT_CODE_FILE, isGroupAlive, outcomeFromExitCode, isTimedOut, readCpuUsec, isIdle, stopOrphanedMicroVms, unfinishedJobs, listUnreadableJobs, listAdoptableJobs, retryFailedReleases, recoverLostJobs, hookLimitsFor, AttemptLogBook, needsRenew, renewLease, RENEW_INTERVAL_SECONDS, listTrackedJobs, restartSender, ALREADY_RELEASED, inTeardown } from './chunk-OL2O5PEI.js';
|
|
4
4
|
import { writePendingUpdate } from './chunk-TKL74NLB.js';
|
|
5
5
|
import { JOB_STATE_FORMAT, readsJobState, jobStateFormatOf } from './chunk-ZVB57WI6.js';
|
|
6
6
|
import { readHousekeepingRecord, writeHousekeepingRecord } from './chunk-6FAP657M.js';
|
|
7
7
|
import { decideInstalledSwitch } from './chunk-3JVYMD4G.js';
|
|
8
8
|
import { fetchVersionMeta, npmVersion, npmSupportsProvenance, fetchTarballDigest, fetchProvenance, installVersion, auditSignatures } from './chunk-YETTWTAY.js';
|
|
9
9
|
import { RUNNER_PROTOCOL } from './chunk-TPKYTORP.js';
|
|
10
|
-
import { currentSkillCommand, formerSkillProblem, placeholderQueues, placeholderProblem } from './chunk-
|
|
10
|
+
import { currentSkillCommand, formerSkillProblem, placeholderQueues, placeholderProblem } from './chunk-TODY3MTS.js';
|
|
11
11
|
import { writeMarker, readMarker, currentVersion, removeMarker, entryIn, versionDir, startedThroughCurrent, switchCurrent, isInLayout, cleanVersions, stagingDir } from './chunk-4IFKLYMM.js';
|
|
12
12
|
import { freeBytes, formatBytes } from './chunk-YYYRBYWG.js';
|
|
13
13
|
import { RepoFilter } from './chunk-TBT347UY.js';
|
|
14
|
-
import { LEASE_SECONDS, provisionContainer, leaseExpiresAtMs, deliverContainerHooks, lifecycleSteps, lifecycleFailureReason, prepareBranch, containerCommandExec, measureDisk, setUpRunnerCgroup, createContainerRuntime, parseCpuList, ensureTunnel, keepGhConfigCurrent, filesAreCopied } from './chunk-
|
|
14
|
+
import { leaseTimeLeftMs, LEASE_SECONDS, provisionContainer, leaseExpiresAtMs, deliverContainerHooks, lifecycleSteps, lifecycleFailureReason, prepareBranch, containerCommandExec, measureDisk, setUpRunnerCgroup, createContainerRuntime, parseCpuList, ensureTunnel, keepGhConfigCurrent, filesAreCopied } from './chunk-GUT4IU7K.js';
|
|
15
15
|
import { tagToPull, pullInstruction, imageTag, writeUpdateStatus } from './chunk-665QWBNW.js';
|
|
16
16
|
import { isVersion, compareVersions, satisfiesRange } from './chunk-TQMI335S.js';
|
|
17
17
|
import { checkFit } from './chunk-MLD2NA7N.js';
|
|
18
18
|
import { claimPidFile, readPidFile, releasePidFile } from './chunk-PYSKSROG.js';
|
|
19
19
|
import { startTimeOf, isSameProcess } from './chunk-JBJTC3UU.js';
|
|
20
|
-
import { writeJobFile, ensureRunnerIdentity, readJobFile, builderName, runnerLabelValue, ensureFailureCount, builderSpec, ensureBuilder, spawnRun, BUILD_LABEL, RUNNER_LABEL, readJobFileChecked } from './chunk-
|
|
21
|
-
import { describeCallFailure, retrySend, shortClaim, relativeToRunner, formatDuration, BuildTokens, classifyRefusal, refusalCode, createRunnerLog, formatClock } from './chunk-
|
|
22
|
-
import { isSignatureRefusal, WorkCommandError, getJson, postJson } from './chunk-
|
|
20
|
+
import { writeJobFile, ensureRunnerIdentity, readJobFile, builderName, runnerLabelValue, ensureFailureCount, builderSpec, ensureBuilder, spawnRun, BUILD_LABEL, RUNNER_LABEL, readJobFileChecked } from './chunk-KZLLLARE.js';
|
|
21
|
+
import { describeCallFailure, retrySend, shortClaim, relativeToRunner, formatDuration, BuildTokens, classifyRefusal, refusalCode, createRunnerLog, formatClock } from './chunk-DXHISLCI.js';
|
|
22
|
+
import { isSignatureRefusal, WorkCommandError, getJson, postJson } from './chunk-GMPXOQTH.js';
|
|
23
23
|
import { isBuiltinContainer, isBuiltinVm, isBuiltinProcess, loadRunnerConfig, checkHooks, builtinKind, DEFAULT_UPDATE_MAX_WAIT_HOURS } from './chunk-JWRX5ZTT.js';
|
|
24
24
|
import { exceedsDisk } from './chunk-7RQ73DLO.js';
|
|
25
25
|
import { resolveVersion } from './chunk-RA3O54FC.js';
|
|
@@ -1057,6 +1057,9 @@ function attemptLogsOf(state) {
|
|
|
1057
1057
|
function nowOf(state) {
|
|
1058
1058
|
return (state.deps.now ?? (() => /* @__PURE__ */ new Date()))();
|
|
1059
1059
|
}
|
|
1060
|
+
function leaseTimeLeftFor(state, active) {
|
|
1061
|
+
return () => (state.deps.leaseTimeLeftMs ?? leaseTimeLeftMs)(active.job, nowOf(state).getTime());
|
|
1062
|
+
}
|
|
1060
1063
|
function runtimeOf(state) {
|
|
1061
1064
|
state.containerRuntime ??= createContainerRuntime(state.deps.container);
|
|
1062
1065
|
return state.containerRuntime;
|
|
@@ -1746,7 +1749,7 @@ var CLAIM_REFUSAL_CODES = new Set(
|
|
|
1746
1749
|
"pull_request_from_fork pull_request_on_default_branch pull_request_ambiguous pull_request_repository_not_connected repository_not_reachable branch_claimed_elsewhere".split(" ")
|
|
1747
1750
|
);
|
|
1748
1751
|
async function tryClaimAndStart(state, item, queue) {
|
|
1749
|
-
const { postJson: postJson2 } = await import('./work-cmd-
|
|
1752
|
+
const { postJson: postJson2 } = await import('./work-cmd-SJB6N6FZ.js');
|
|
1750
1753
|
const log = logOf(state);
|
|
1751
1754
|
const hostKey = await loadHostKey(state.config.configPath);
|
|
1752
1755
|
const claim = await retrySend(
|
|
@@ -2030,7 +2033,8 @@ async function startJob(state, item, queue, claimId, itemKey, branch, identity,
|
|
|
2030
2033
|
aborted: () => active.ending,
|
|
2031
2034
|
deadlineMs: startedAt.getTime() + state.config.timeLimitMinutes * 6e4,
|
|
2032
2035
|
fetchImpl: state.deps.fetchImpl,
|
|
2033
|
-
now: state.deps.now
|
|
2036
|
+
now: state.deps.now,
|
|
2037
|
+
leaseTimeLeftMs: leaseTimeLeftFor(state, active)
|
|
2034
2038
|
}).catch((err) => ({ ok: false, reason: `provision failed: ${describeCallFailure(err)}`, aborted: false }));
|
|
2035
2039
|
const provisionTook = formatDuration(nowOf(state).getTime() - provisionStartedMs);
|
|
2036
2040
|
if (active.ending) return;
|
|
@@ -2430,6 +2434,7 @@ async function renewLeaseIfDue(state, active, nowMs) {
|
|
|
2430
2434
|
writeJobFile(join(active.dirPath, "job.json"), active.job);
|
|
2431
2435
|
log.line(`${tag} lease renewed \xB7 expires ${formatClock(new Date(nowMs + LEASE_SECONDS * 1e3), new Date(nowMs))}`);
|
|
2432
2436
|
if (active.job.container !== void 0) state.containerRuntime?.leases.get(active.job.container.buildId)?.publish();
|
|
2437
|
+
if (active.job.microvm !== void 0) state.containerRuntime?.leases.get(active.job.microvm.buildId)?.publish();
|
|
2433
2438
|
} else {
|
|
2434
2439
|
log.error(`${tag} renew did not land \xB7 retrying in ${RENEW_INTERVAL_SECONDS / 60}m`);
|
|
2435
2440
|
}
|
|
@@ -2730,7 +2735,7 @@ async function start(configPath, deps = { fetchImpl: fetch }) {
|
|
|
2730
2735
|
const outcome = await onStartUnderMarker({
|
|
2731
2736
|
configPath,
|
|
2732
2737
|
own: ownVersionOf(deps),
|
|
2733
|
-
check: update.check ? () => update.check(configPath) : async () => (await import('./check-
|
|
2738
|
+
check: update.check ? () => update.check(configPath) : async () => (await import('./check-KL3LDAI3.js')).runRunnerCheck(configPath, { fetchImpl: deps.fetchImpl }),
|
|
2734
2739
|
now: () => (deps.now ?? (() => /* @__PURE__ */ new Date()))().getTime(),
|
|
2735
2740
|
log
|
|
2736
2741
|
});
|
|
@@ -3015,4 +3020,4 @@ function runnerProcessState(configPath) {
|
|
|
3015
3020
|
return isSameProcess(entry.pid, entry.start) ? { state: "running", pid: entry.pid } : { state: "stale", pid: entry.pid };
|
|
3016
3021
|
}
|
|
3017
3022
|
|
|
3018
|
-
export { RunnerStartError, listJobFiles, logUnusableHelper, probeBuild, probeCredentials, requestStop, runnerProcessState, start, tick, watchTick };
|
|
3023
|
+
export { RunnerStartError, leaseTimeLeftFor, listJobFiles, logUnusableHelper, probeBuild, probeCredentials, requestStop, runnerProcessState, start, tick, watchTick };
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import { createRequire } from 'node:module';
|
|
3
3
|
import { claimPidFile, RunnerAlreadyRunningError, releasePidFile } from './chunk-PYSKSROG.js';
|
|
4
4
|
import { startTimeOf } from './chunk-JBJTC3UU.js';
|
|
5
|
-
import { CLAUDE_CODE_VERSION, NODE_IMAGE, DEFAULT_BASE_IMAGE, RecipeError, locateRecipe, readRecipe, assertBuildable, TINI_VERSION, GH_VERSION, writeSanitizedRecipe, classifyProperties, GH_SHA256, TINI_SHA256, SANITIZED_NAME } from './chunk-
|
|
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-FI66JNLT.js';
|
|
6
6
|
import { RUNNER_DIR_MODE, repoCacheDir, imagesDir, attemptStamp, runnerDir, rootfsPathFor, RUNNER_FILE_MODE } from './chunk-L4CW6LZQ.js';
|
|
7
7
|
import { withGitConfig, tokenHeader, PROXY_WARNING_FLAG } from './chunk-2K3TCQHW.js';
|
|
8
8
|
import { RELAY_ID, RELAY_USER } from './chunk-JGD5TWQ2.js';
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import { createRequire } from 'node:module';
|
|
3
|
-
import { WorkCommandError, postJson } from './chunk-
|
|
4
|
-
import { defaultGitRunner, materializeContext, isStagingWriteFault, lookupGoverningSource } from './chunk-
|
|
5
|
-
import { signingFetchFor } from './chunk-
|
|
3
|
+
import { WorkCommandError, postJson } from './chunk-GMPXOQTH.js';
|
|
4
|
+
import { defaultGitRunner, materializeContext, isStagingWriteFault, lookupGoverningSource } from './chunk-W3NVHOCS.js';
|
|
5
|
+
import { signingFetchFor } from './chunk-QRZLUUNN.js';
|
|
6
6
|
import { unsupportedLayout, layoutRefusalReason, composeDelivery } from './chunk-VPEGE3QZ.js';
|
|
7
7
|
import { SHIM_SCRIPT, GOVERNANCE_VARIABLE } from './chunk-HCVLP7XA.js';
|
|
8
8
|
import { readDegraded, readContextManifest, readSourceCache } from './chunk-YQR6E6OV.js';
|
|
@@ -1,9 +1,9 @@
|
|
|
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-
|
|
4
|
+
import { autoConnect, detectActiveSession } from './chunk-HXFRJKMU.js';
|
|
5
5
|
import { acquireSpoolLockAt } from './chunk-BUP5N3X6.js';
|
|
6
|
-
import { resolveGatewayCredentials, defaultFetch, unauthorizedMessage } from './chunk-
|
|
6
|
+
import { resolveGatewayCredentials, defaultFetch, unauthorizedMessage } from './chunk-QRZLUUNN.js';
|
|
7
7
|
import { resolveRepoIdentity } from './chunk-QE3UQAHK.js';
|
|
8
8
|
import { C } from './chunk-ANPNT6PM.js';
|
|
9
9
|
import { launchedItemForSession } from './chunk-T2Q7ISPE.js';
|
|
@@ -249,13 +249,13 @@ var FIRECRACKER_SHA256 = {
|
|
|
249
249
|
var FIRECRACKER_BINARY_SHA256 = {
|
|
250
250
|
x86_64: "99ad0f5cd0514a88aad0e9ae8cfdb3cc3b4ab9d190e1194602406c786b5de7a5"
|
|
251
251
|
};
|
|
252
|
-
var GUEST_ASSETS_VERSION = "
|
|
252
|
+
var GUEST_ASSETS_VERSION = "6";
|
|
253
253
|
var GUEST_ASSETS_BASE_URL = `https://github.com/outerlayerai/guest-assets/releases/download/guest-${GUEST_ASSETS_VERSION}`;
|
|
254
254
|
var GUEST_KERNEL_SHA256 = {
|
|
255
255
|
x86_64: "5a2d716d301615c69fefc2f9574954e838269f14d5e8b0d1bad88b680cd372ee"
|
|
256
256
|
};
|
|
257
257
|
var GUEST_HELPER_SHA256 = {
|
|
258
|
-
x86_64: "
|
|
258
|
+
x86_64: "0ae934d3ad3f2a94abffcc3f044ba633b1a523dc17ff0c2bc322ed7d7fc505ea"
|
|
259
259
|
};
|
|
260
260
|
function guestAssetsPinned(arch) {
|
|
261
261
|
const zero = "0".repeat(64);
|
|
@@ -264,10 +264,10 @@ function guestAssetsPinned(arch) {
|
|
|
264
264
|
var JAILER_BINARY_SHA256 = {
|
|
265
265
|
x86_64: "65ef226e96f0ceda55ba643f445801ef2cc0ea667ef67cad8ac4f406c9c8434f"
|
|
266
266
|
};
|
|
267
|
-
var HOST_HELPER_ASSETS_VERSION = "
|
|
267
|
+
var HOST_HELPER_ASSETS_VERSION = "5";
|
|
268
268
|
var HOST_HELPER_BASE_URL = `https://github.com/outerlayerai/guest-assets/releases/download/guest-${HOST_HELPER_ASSETS_VERSION}`;
|
|
269
269
|
var HOST_HELPER_SHA256 = {
|
|
270
|
-
x86_64: "
|
|
270
|
+
x86_64: "f2ec1c6a7ff29353045fad617ac1a6bf0155d6f3eb6a6259272a15342feaf957"
|
|
271
271
|
};
|
|
272
272
|
function hostHelperPinned(arch = "x86_64", hashes = HOST_HELPER_SHA256) {
|
|
273
273
|
return hashes[arch] !== "0".repeat(64);
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import { createRequire } from 'node:module';
|
|
3
|
-
import { detectActiveSession, autoConnect } from './chunk-
|
|
4
|
-
import { workPageUrl } from './chunk-
|
|
3
|
+
import { detectActiveSession, autoConnect } from './chunk-HXFRJKMU.js';
|
|
4
|
+
import { workPageUrl } from './chunk-TEVO3RUV.js';
|
|
5
5
|
import { sanitizeTerminal } from './chunk-BUP5N3X6.js';
|
|
6
|
-
import { resolveGatewayCredentials, unauthorizedMessage, defaultFetch } from './chunk-
|
|
6
|
+
import { resolveGatewayCredentials, unauthorizedMessage, defaultFetch } from './chunk-QRZLUUNN.js';
|
|
7
7
|
import { readRepoConnection } from './chunk-BJ3KTMDH.js';
|
|
8
8
|
import { resolveRepoIdentity } from './chunk-QE3UQAHK.js';
|
|
9
9
|
import { C } from './chunk-ANPNT6PM.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-
|
|
431
|
+
const { logHookError } = await import('./hook-fast-LZSHEKUA.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,15 +1,15 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import { createRequire } from 'node:module';
|
|
3
3
|
import { runnerImageVersion } from './chunk-665QWBNW.js';
|
|
4
|
-
import { readDefaultBranchHead, cloneRepository, buildRepositoryImage } from './chunk-
|
|
4
|
+
import { readDefaultBranchHead, cloneRepository, buildRepositoryImage } from './chunk-DJILFADE.js';
|
|
5
5
|
import { startTimeOf, isSameProcess } from './chunk-JBJTC3UU.js';
|
|
6
6
|
import { currentCliBuild } from './chunk-OGFGZQA3.js';
|
|
7
|
-
import { createDockerHost, builderSpec, runnerLabelValue, RUNNER_LABEL, BUILD_LABEL, prepareRunArgs, containerRunArgs, HASH_ARGV, parseProgramHash, JUDGE_PROGRAM, containerExecArgs, childEnvironment, JUDGE_DIR, JUDGE_REPORT, MAX_REPORT_BYTES, spawnRun } from './chunk-
|
|
8
|
-
import { FIRECRACKER_VERSION, hostHelperPinned, firecrackerArch, MICROVM_ARCHES, RecipeError, DOCKER_FEATURE, CLAUDE_CODE_VERSION, GUEST_HELPER_SHA256, GUEST_ASSETS_BASE_URL, GUEST_KERNEL_SHA256, JAILER_BINARY_SHA256, FIRECRACKER_BINARY_SHA256, FIRECRACKER_SHA256, GUEST_ASSETS_VERSION, DEFAULT_BASE_IMAGE } from './chunk-
|
|
9
|
-
import { execCapture } from './chunk-
|
|
10
|
-
import { GUEST_CID } from './chunk-
|
|
11
|
-
import { describeCallFailure, controlPlaneTokenFailure, refusalCode, resolveGoverningSource, removeStagedContext, stageGovernedContext, pinnedSourceOf, commandWithShim, shimScript } from './chunk-
|
|
12
|
-
import { WorkCommandError } from './chunk-
|
|
7
|
+
import { createDockerHost, builderSpec, runnerLabelValue, RUNNER_LABEL, BUILD_LABEL, prepareRunArgs, containerRunArgs, HASH_ARGV, parseProgramHash, JUDGE_PROGRAM, containerExecArgs, childEnvironment, JUDGE_DIR, JUDGE_REPORT, MAX_REPORT_BYTES, spawnRun } from './chunk-KZLLLARE.js';
|
|
8
|
+
import { FIRECRACKER_VERSION, hostHelperPinned, firecrackerArch, MICROVM_ARCHES, RecipeError, DOCKER_FEATURE, CLAUDE_CODE_VERSION, GUEST_HELPER_SHA256, GUEST_ASSETS_BASE_URL, GUEST_KERNEL_SHA256, JAILER_BINARY_SHA256, FIRECRACKER_BINARY_SHA256, FIRECRACKER_SHA256, GUEST_ASSETS_VERSION, DEFAULT_BASE_IMAGE } from './chunk-FI66JNLT.js';
|
|
9
|
+
import { execCapture } from './chunk-MXTN35XN.js';
|
|
10
|
+
import { GUEST_CID } from './chunk-XLC7KEUV.js';
|
|
11
|
+
import { describeCallFailure, controlPlaneTokenFailure, refusalCode, resolveGoverningSource, removeStagedContext, stageGovernedContext, pinnedSourceOf, commandWithShim, shimScript } from './chunk-DXHISLCI.js';
|
|
12
|
+
import { WorkCommandError } from './chunk-GMPXOQTH.js';
|
|
13
13
|
import { hostAllowed } from './chunk-UXYLWVTQ.js';
|
|
14
14
|
import { parseDuKilobytes } from './chunk-7RQ73DLO.js';
|
|
15
15
|
import { sharedSkillNames, skillConflictMessage } from './chunk-VPEGE3QZ.js';
|
|
@@ -196,8 +196,8 @@ function ask(socketPath, request, timeoutMs) {
|
|
|
196
196
|
function helperClient(socketPath, options = {}) {
|
|
197
197
|
const REQUEST_TIMEOUT_MS = options.requestTimeoutMs ?? DEFAULT_REQUEST_TIMEOUT_MS;
|
|
198
198
|
return {
|
|
199
|
-
async start({ build, kind }) {
|
|
200
|
-
const reply = await ask(socketPath, { v: 1, op: "start", build, kind }, START_TIMEOUT_MS);
|
|
199
|
+
async start({ build, kind, timeLimitMinutes }) {
|
|
200
|
+
const reply = await ask(socketPath, { v: 1, op: "start", build, kind, timeLimitMinutes }, START_TIMEOUT_MS);
|
|
201
201
|
return { unit: String(reply.unit), chroot: String(reply.chroot), vsock: String(reply.vsock) };
|
|
202
202
|
},
|
|
203
203
|
async stop(build) {
|
|
@@ -412,11 +412,14 @@ function leaseExpiresAtMs(job) {
|
|
|
412
412
|
const base = Date.parse(job.lastRenewAt ?? job.startedAt);
|
|
413
413
|
return (Number.isFinite(base) ? base : Date.now()) + LEASE_SECONDS * 1e3;
|
|
414
414
|
}
|
|
415
|
-
function
|
|
415
|
+
function leaseTimeLeftMs(job, nowMs) {
|
|
416
|
+
return Math.max(0, leaseExpiresAtMs(job) - nowMs);
|
|
417
|
+
}
|
|
418
|
+
function createLeaseChannel(valueMs) {
|
|
416
419
|
const open = /* @__PURE__ */ new Set();
|
|
417
420
|
let stopped = false;
|
|
418
421
|
const write = (stream) => {
|
|
419
|
-
if (!stopped && !stream.destroyed && stream.writable) stream.write(`${Math.floor(
|
|
422
|
+
if (!stopped && !stream.destroyed && stream.writable) stream.write(`${Math.floor(valueMs())}
|
|
420
423
|
`);
|
|
421
424
|
};
|
|
422
425
|
return {
|
|
@@ -829,6 +832,7 @@ function machineConfig(limits2, paths) {
|
|
|
829
832
|
"rootfstype=ext4",
|
|
830
833
|
`init=${INIT}`,
|
|
831
834
|
...paths.relayPorts.length === 0 ? [] : [`outerlayer.relay=${paths.relayPorts.join(",")}`],
|
|
835
|
+
...paths.leasePort === void 0 ? [] : [`outerlayer.lease=${paths.leasePort}`],
|
|
832
836
|
...paths.docker === true ? ["outerlayer.docker=1"] : []
|
|
833
837
|
];
|
|
834
838
|
return {
|
|
@@ -3311,4 +3315,4 @@ async function startCheckContainer(input) {
|
|
|
3311
3315
|
};
|
|
3312
3316
|
}
|
|
3313
3317
|
|
|
3314
|
-
export { ADDED_USER, AgentUserError, AssetError, DeliveryFailure, EVAL_INPUT_NAME, GH_CONFIG_YML, HelperRefusal, LEASE_SECONDS, MIN_ENGINE_MAJOR, cleanupContainer, containerCommandExec, containerJudgeEnvironment, containerSenderCommand, copyJudgeTree, copyTranscripts, copyTranscriptsFromContainer, createBuildDisk, createContainerRuntime, deleteBuildDisk, deliverContainerHooks, ensureFirecrackerAndJailer, ensureRootfs, ensureTunnel, filesAreCopied, ghHostsYml, gitRemoteFor, helperFirecrackerNote, helperSocketPath, isLiteralAddress, keepGhConfigCurrent, leaseExpiresAtMs, lifecycleFailureReason, lifecycleSteps, machineConfig, measureDisk, obtainImage, outOfMemoryReason, parseCpuList, prepareBranch, probeHelper, provisionContainer, resolveAgentUser, runBuildSteps, senderAliveScript, senderSignalScript, setUpRunnerCgroup, shellQuote, signalInContainer, startCheckContainer, startServicesFor, stopContainer, syncInContainer, writeEvalInput };
|
|
3318
|
+
export { ADDED_USER, AgentUserError, AssetError, DeliveryFailure, EVAL_INPUT_NAME, GH_CONFIG_YML, HelperRefusal, LEASE_SECONDS, MIN_ENGINE_MAJOR, cleanupContainer, containerCommandExec, containerJudgeEnvironment, containerSenderCommand, copyJudgeTree, copyTranscripts, copyTranscriptsFromContainer, createBuildDisk, createContainerRuntime, createLeaseChannel, deleteBuildDisk, deliverContainerHooks, ensureFirecrackerAndJailer, ensureRootfs, ensureTunnel, filesAreCopied, ghHostsYml, gitRemoteFor, helperFirecrackerNote, helperSocketPath, isLiteralAddress, keepGhConfigCurrent, leaseExpiresAtMs, leaseTimeLeftMs, lifecycleFailureReason, lifecycleSteps, machineConfig, measureDisk, obtainImage, outOfMemoryReason, parseCpuList, prepareBranch, probeHelper, provisionContainer, resolveAgentUser, runBuildSteps, senderAliveScript, senderSignalScript, setUpRunnerCgroup, shellQuote, signalInContainer, startCheckContainer, startServicesFor, stopContainer, syncInContainer, writeEvalInput };
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import { createRequire } from 'node:module';
|
|
3
|
-
import { fetchFactories, selectFactory, saveFactoryConnection, autoConnectedLine } from './chunk-
|
|
4
|
-
import { resolveGatewayCredentials } from './chunk-
|
|
3
|
+
import { fetchFactories, selectFactory, saveFactoryConnection, autoConnectedLine } from './chunk-TEVO3RUV.js';
|
|
4
|
+
import { resolveGatewayCredentials } from './chunk-QRZLUUNN.js';
|
|
5
5
|
import { findGitDirs, readRepoConnection } from './chunk-BJ3KTMDH.js';
|
|
6
6
|
import { resolveRepoIdentity } from './chunk-QE3UQAHK.js';
|
|
7
7
|
import { cliInvocation } from './chunk-CRB3POP4.js';
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import { createRequire } from 'node:module';
|
|
3
3
|
import { recordReportedCost } from './chunk-BKO6JEZI.js';
|
|
4
4
|
import { cliInvocation } from './chunk-CRB3POP4.js';
|
|
5
|
-
import { decodeWrappedCommand } from './chunk-
|
|
5
|
+
import { decodeWrappedCommand } from './chunk-URIZRCRY.js';
|
|
6
6
|
import { homeFromEnv } from './chunk-VNVZDWO3.js';
|
|
7
7
|
import { readFileSync } from 'fs';
|
|
8
8
|
import { spawn } from 'child_process';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import { createRequire } from 'node:module';
|
|
3
|
-
import { RecipeError, BUILDKIT_IMAGE } from './chunk-
|
|
3
|
+
import { RecipeError, BUILDKIT_IMAGE } from './chunk-FI66JNLT.js';
|
|
4
4
|
import { parseSize } from './chunk-7RQ73DLO.js';
|
|
5
5
|
import { compareVersions } from './chunk-QE3UQAHK.js';
|
|
6
6
|
import { ensureHostKey } from './chunk-F6DIHHBS.js';
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import { createRequire } from 'node:module';
|
|
3
3
|
import { BRIDGE_ADDRESS, TUNNEL_PORT, BRIDGE_CIDR } from './chunk-UNF7MWEL.js';
|
|
4
4
|
import { startTimeOf } from './chunk-JBJTC3UU.js';
|
|
5
|
-
import { EXEC_PORT } from './chunk-
|
|
5
|
+
import { EXEC_PORT } from './chunk-XLC7KEUV.js';
|
|
6
6
|
import { RELAY_PORT } from './chunk-2K3TCQHW.js';
|
|
7
7
|
import { spawn, spawnSync } from 'child_process';
|
|
8
8
|
import { writeFileSync, chmodSync, mkdirSync } 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-
|
|
3
|
+
import { EXEC_PORT } from './chunk-XLC7KEUV.js';
|
|
4
4
|
import { createConnection } from 'net';
|
|
5
5
|
|
|
6
6
|
createRequire(import.meta.url);
|
|
@@ -41,8 +41,8 @@ var FrameDecoder = class {
|
|
|
41
41
|
}
|
|
42
42
|
};
|
|
43
43
|
function encodeRequest(request) {
|
|
44
|
-
const { argv, user, cwd, env } = request;
|
|
45
|
-
return Buffer.from(JSON.stringify({ argv, user, cwd, env }), "utf8");
|
|
44
|
+
const { argv, user, cwd, env, detach } = request;
|
|
45
|
+
return Buffer.from(JSON.stringify({ argv, user, cwd, env, ...detach === void 0 ? {} : { detach } }), "utf8");
|
|
46
46
|
}
|
|
47
47
|
function decodeExit(payload) {
|
|
48
48
|
if (payload.length !== 4) throw new ProtocolError(`an exit frame holds ${payload.length} bytes, not 4`);
|