@outerlayer/cli 0.19.1 → 0.22.0
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 +33 -0
- package/README.md +26 -7
- package/dist/{agent-setup-AM42SA2D.js → agent-setup-XAJH6MPW.js} +13 -12
- package/dist/build-GTMEADQD.js +12 -0
- package/dist/build-command-ND2ENDBS.js +50 -0
- package/dist/build-info.json +1 -1
- package/dist/{builder-C4QNTYMS.js → builder-OAUSTZHL.js} +7 -5
- package/dist/{check-W2JGXN3B.js → check-3YHMJQ3P.js} +48 -50
- package/dist/{chunk-F2KXHIFI.js → chunk-22DYXLU7.js} +360 -66
- package/dist/{chunk-P53VEAOF.js → chunk-2CMJLYV6.js} +1 -1
- package/dist/{chunk-FBTGMSQF.js → chunk-2HT2XGJX.js} +16 -9
- package/dist/{chunk-S5PCA3SN.js → chunk-2J5JGLW5.js} +1 -1
- package/dist/{chunk-R22NZSGA.js → chunk-34XORKFD.js} +9 -9
- package/dist/{chunk-QOZKPLVJ.js → chunk-3W333NFO.js} +40 -1
- package/dist/{chunk-HOKXGFDR.js → chunk-4JHVPFH6.js} +22 -16
- package/dist/{chunk-AMFWYESY.js → chunk-4NM3I3VV.js} +1 -1
- package/dist/{chunk-PIZRPNKR.js → chunk-4QKLMNI3.js} +5 -5
- package/dist/{chunk-NNLA7LLQ.js → chunk-5OCIHFGE.js} +29 -5
- package/dist/{chunk-PSN33ERW.js → chunk-6IO62VJS.js} +3 -3
- package/dist/{chunk-7YP7T6GV.js → chunk-7V7KG3YM.js} +2 -2
- package/dist/{chunk-QNLX477Q.js → chunk-AEKSX4EY.js} +165 -72
- package/dist/{chunk-JHGEBPLE.js → chunk-ATRIVTRE.js} +3 -3
- package/dist/{chunk-X5H2WYMB.js → chunk-BLW6GPBZ.js} +1 -1
- package/dist/{chunk-MLAAT4S6.js → chunk-C3HKR67W.js} +3 -3
- package/dist/{chunk-XZ4H4X5F.js → chunk-C3OVGKVJ.js} +15 -8
- package/dist/{chunk-BM63HB2M.js → chunk-EAQSOE62.js} +2 -2
- package/dist/{chunk-LW7G5TJB.js → chunk-EXV37PKS.js} +2 -2
- package/dist/{chunk-B6SCN5NY.js → chunk-FGW2774C.js} +175 -44
- package/dist/{chunk-KYS3TQAG.js → chunk-G2WME4RG.js} +4 -4
- package/dist/{chunk-LRG3ZMZD.js → chunk-G6DZCKA6.js} +4 -4
- package/dist/chunk-GISNHSYL.js +41 -0
- package/dist/{chunk-G2YNJIGF.js → chunk-HCVLP7XA.js} +10 -1
- package/dist/{chunk-QEFKA2QD.js → chunk-I66MQDXH.js} +2 -2
- package/dist/{chunk-3CWUOFV6.js → chunk-IRBNIRQJ.js} +12 -7
- package/dist/{chunk-CG36IONK.js → chunk-JRCSET55.js} +2 -2
- package/dist/{chunk-CGGPS7SI.js → chunk-JVB63NIB.js} +5 -5
- package/dist/{chunk-M2ZWWTWZ.js → chunk-KDHYLBRR.js} +1 -1
- package/dist/{chunk-N2PXGQRL.js → chunk-KIGSGZBB.js} +1 -1
- package/dist/{chunk-EAEELQVQ.js → chunk-KOQELWQ6.js} +5 -5
- package/dist/{chunk-MTP2QEVO.js → chunk-KPBQYEND.js} +1 -1
- package/dist/{chunk-VYAL7PUE.js → chunk-LOB2SUM3.js} +1 -1
- package/dist/{chunk-GGOMT6KF.js → chunk-PHHBYAL6.js} +1 -1
- package/dist/{chunk-IF2OSI5T.js → chunk-QOALB6ZD.js} +2 -2
- package/dist/{chunk-BWSUPRDK.js → chunk-TPKYTORP.js} +1 -1
- package/dist/{chunk-XNGMQ27R.js → chunk-UD3EXMKB.js} +2 -2
- package/dist/{chunk-7UWVLZXD.js → chunk-USWVXQIH.js} +1 -1
- package/dist/{chunk-BQXFBI7T.js → chunk-V7MQKOZY.js} +32 -7
- package/dist/{chunk-6X4SQ5MY.js → chunk-V7SAQ645.js} +1 -1
- package/dist/{chunk-TWF3RICI.js → chunk-VSUXCMMH.js} +110 -11
- package/dist/{chunk-FVMYKL6L.js → chunk-VWLOQ6FI.js} +1 -1
- package/dist/{chunk-3ZR7Y23Y.js → chunk-VX74ND77.js} +650 -70
- package/dist/{chunk-Z7K3L4FC.js → chunk-W3SWJ2TD.js} +2 -2
- package/dist/chunk-WERZMIKA.js +718 -0
- package/dist/{chunk-GEMQLBMW.js → chunk-WMHYIBJW.js} +6 -6
- package/dist/{chunk-5VML45HH.js → chunk-XCRZTXRL.js} +2 -2
- package/dist/{chunk-ECODQ7II.js → chunk-ZFLOGMUC.js} +1 -1
- package/dist/chunk-ZNPE7FW5.js +137 -0
- package/dist/claude-launcher-4BQNXYAF.js +267 -0
- package/dist/{cli-EXX2R73G.js → cli-NMGVZQPB.js} +189 -119
- package/dist/{command-ZQNEPDS6.js → command-GE62AJZY.js} +32 -34
- package/dist/{config-CLSGABD5.js → config-7Q52COZ3.js} +3 -2
- package/dist/{connect-cmd-UNYKGDAL.js → connect-cmd-ZFOK6HEL.js} +5 -5
- package/dist/{context-cleanup-CHEWNYU6.js → context-cleanup-DSA3HGQU.js} +1 -1
- package/dist/{control-plane-launch-34LNRJWR.js → control-plane-launch-SZTE4TUS.js} +62 -28
- package/dist/{dist-WO7NOJNG.js → dist-7IH56ELA.js} +1 -1
- package/dist/{docker-BFU3AQGY.js → docker-2OVBKVRK.js} +7 -7
- package/dist/{doctor-DHUM5DBB.js → doctor-3SQGZVYP.js} +35 -36
- package/dist/{emit-artifact-cmd-XBHM647X.js → emit-artifact-cmd-R42BE6ID.js} +19 -18
- package/dist/{emit-cmd-W55AEBCA.js → emit-cmd-3W5IO5ET.js} +3 -3
- package/dist/{emit-criteria-cmd-CRTYEF7D.js → emit-criteria-cmd-MQZE7W4Y.js} +52 -16
- package/dist/{emit-finding-cmd-7JHVRYOP.js → emit-finding-cmd-ZS5JEGGM.js} +13 -12
- package/dist/{emit-result-cmd-5NZMLCJK.js → emit-result-cmd-FUE3DXBW.js} +19 -18
- package/dist/{emit-step-cmd-347XNGPQ.js → emit-step-cmd-T7PRA44X.js} +14 -13
- package/dist/{exec-client-7UMESIE2.js → exec-client-YIDTWXMZ.js} +4 -3
- package/dist/{governing-source-HAA4OW57.js → governing-source-TORXL4I4.js} +19 -18
- package/dist/{guest-init-KPBQOFE5.js → guest-init-TO6HAWIT.js} +4 -3
- package/dist/{hook-fast-RL5E5OXE.js → hook-fast-WFB2ZMRB.js} +2 -2
- package/dist/host-key-2LXQDSBO.js +9 -0
- package/dist/{import-capture-cmd-TK4XY7RD.js → import-capture-cmd-Q56DDZVO.js} +1 -1
- package/dist/index.js +5 -5
- package/dist/init-2CRAVIUU.js +52 -0
- package/dist/{init-V6FOMD2V.js → init-AHDZCMDC.js} +32 -33
- package/dist/{init-cmd-Z4O4PPLZ.js → init-cmd-IXDL2ZSL.js} +25 -23
- package/dist/{init-update-7DVAKWW3.js → init-update-YB3PODDH.js} +69 -24
- package/dist/{install-4SEFIIW2.js → install-CZUIW2AF.js} +5 -4
- package/dist/{install-cmd-QDOTR4OM.js → install-cmd-Q7RJGFUO.js} +6 -5
- package/dist/{login-browser-DX35MARZ.js → login-browser-BN5UKPHS.js} +3 -3
- package/dist/{logout-cmd-5V5MMBSY.js → logout-cmd-RZFWTNYD.js} +2 -2
- package/dist/{logs-AMLKC3VP.js → logs-RJPYTVQE.js} +3 -2
- package/dist/loop-ZDW6TRAA.js +75 -0
- package/dist/machine-JCOHLASP.js +47 -0
- package/dist/{mcp-install-cmd-GGWB3JJ2.js → mcp-install-cmd-GD4QUP7Z.js} +2 -2
- package/dist/{mcp-serve-cmd-N3UTY6EE.js → mcp-serve-cmd-IULQPVHL.js} +6 -5
- package/dist/{paths-7XP63OAX.js → paths-N3LU4O2Z.js} +3 -2
- package/dist/pending-GRCV3ZR4.js +9 -0
- package/dist/{pidfile-3DM4OBKO.js → pidfile-IF3TCL5A.js} +4 -3
- package/dist/receive-files-T2BIUBQL.js +254 -0
- package/dist/{record-3WP6V2K5.js → record-73PQE77B.js} +4 -3
- package/dist/relay-PSZ4LGMW.js +210 -0
- package/dist/relay-protocol-K7KP2SPI.js +6 -0
- package/dist/{runner-env-FRZFFHDF.js → runner-env-LDOBJESN.js} +6 -5
- package/dist/runner-identity-RWCBTY2A.js +14 -0
- package/dist/{runner-key-5FOWCW7J.js → runner-key-HMYLP6WN.js} +32 -33
- package/dist/{session-sender-U2BBUWNO.js → session-sender-2G25JYHI.js} +20 -19
- package/dist/{spec-cmd-FVLJOFGC.js → spec-cmd-LBVXM6XS.js} +13 -12
- package/dist/{starter-pack-6LQVLBIA.js → starter-pack-5EQYGSJF.js} +2 -2
- package/dist/{status-BINH7MBG.js → status-QZB2GWXJ.js} +36 -38
- package/dist/{statusline-fast-KN3BX67H.js → statusline-fast-2OK3DVAA.js} +2 -2
- package/dist/{sync-cmd-VXOUFS4I.js → sync-cmd-TQQIR4PN.js} +19 -18
- package/dist/{watch-OH645CV2.js → watch-4JES4PCS.js} +19 -18
- package/dist/{work-claim-cmd-ZRPSHMPT.js → work-claim-cmd-XG6O7B63.js} +17 -16
- package/dist/{work-cmd-5I3J2XQQ.js → work-cmd-L6WMPAA2.js} +13 -12
- package/dist/{work-comment-cmd-UCCPWUSR.js → work-comment-cmd-SNTDCPGH.js} +13 -12
- package/dist/{work-logs-cmd-7352CJPG.js → work-logs-cmd-3S7IAVII.js} +13 -12
- package/dist/{work-open-pr-cmd-LSH4VHJM.js → work-open-pr-cmd-E3WMO5XT.js} +15 -14
- package/dist/{work-pr-cmd-H4OQR26N.js → work-pr-cmd-22T6FG4T.js} +14 -13
- package/dist/work-stop-cmd-WR7ESS4Z.js +53 -0
- package/package.json +2 -2
- package/skill-pack/maintained/outerlayer-build/SKILL.md +347 -0
- package/skill-pack/{template/build → maintained/outerlayer-build}/references/evidence.md +2 -2
- package/skill-pack/{template/build → maintained/outerlayer-build}/references/release.md +4 -4
- package/skill-pack/{template/build → maintained/outerlayer-build}/references/review-loop.md +3 -1
- package/skill-pack/shipped.json +2 -0
- package/skill-pack/template/build/SKILL.md +4 -253
- package/skill-pack/validators/acceptance-criteria.yaml +1 -1
- package/dist/build-TQ6X5PYN.js +0 -12
- package/dist/chunk-3UZTIRLF.js +0 -320
- package/dist/chunk-CX22S5BA.js +0 -45
- package/dist/chunk-LLM3I5YU.js +0 -89
- package/dist/chunk-SADUQSO4.js +0 -50
- package/dist/chunk-VMJPFQNE.js +0 -261
- package/dist/claude-launcher-J5M44PFS.js +0 -115
- package/dist/host-key-U4B5QETR.js +0 -8
- package/dist/init-XG47KCI4.js +0 -53
- package/dist/loop-TPUYUMSY.js +0 -77
- package/dist/machine-TRHBT5NE.js +0 -48
- package/dist/pending-532ABZYC.js +0 -8
- package/dist/relay-L76HDX72.js +0 -46
- package/dist/{chunk-YVZJ6GKF.js → chunk-DIB2WLBL.js} +1 -1
- package/dist/{chunk-GOSFARMS.js → chunk-F35VMF5M.js} +1 -1
- package/dist/{chunk-DSF2FWAZ.js → chunk-IZSVXRDR.js} +1 -1
- /package/skill-pack/{template/build → maintained/outerlayer-build}/references/agent-briefs.md +0 -0
- /package/skill-pack/{template/build → maintained/outerlayer-build}/references/criteria-judge.md +0 -0
- /package/skill-pack/{template/build → maintained/outerlayer-build}/references/review-briefs.md +0 -0
- /package/skill-pack/{template/build → maintained/outerlayer-build}/scripts/criterion-citations.mjs +0 -0
- /package/skill-pack/{template/build → maintained/outerlayer-build}/scripts/record-criteria.mjs +0 -0
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import { createRequire } from 'node:module';
|
|
3
|
-
export { DEFAULT_DASHBOARD, readPipedKey, realLoginDeps, runLoginCommand, sanitizeMachineName, stdinKind } from './chunk-
|
|
4
|
-
import './chunk-
|
|
5
|
-
import './chunk-ANPNT6PM.js';
|
|
3
|
+
export { DEFAULT_DASHBOARD, readPipedKey, realLoginDeps, runLoginCommand, sanitizeMachineName, stdinKind } from './chunk-EAQSOE62.js';
|
|
4
|
+
import './chunk-F35VMF5M.js';
|
|
6
5
|
import './chunk-BJ3KTMDH.js';
|
|
7
6
|
import './chunk-EABW6AJQ.js';
|
|
7
|
+
import './chunk-ANPNT6PM.js';
|
|
8
8
|
import './chunk-CRB3POP4.js';
|
|
9
9
|
import './chunk-VNVZDWO3.js';
|
|
10
10
|
import './chunk-Z5GEFMRW.js';
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import { createRequire } from 'node:module';
|
|
3
|
-
export { realLogoutDeps, revokeTokenOnDashboard, runLogoutCommand } from './chunk-
|
|
4
|
-
import './chunk-ANPNT6PM.js';
|
|
3
|
+
export { realLogoutDeps, revokeTokenOnDashboard, runLogoutCommand } from './chunk-F35VMF5M.js';
|
|
5
4
|
import './chunk-EABW6AJQ.js';
|
|
5
|
+
import './chunk-ANPNT6PM.js';
|
|
6
6
|
import './chunk-CRB3POP4.js';
|
|
7
7
|
import './chunk-VNVZDWO3.js';
|
|
8
8
|
import './chunk-Z5GEFMRW.js';
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import { createRequire } from 'node:module';
|
|
3
|
-
import { jobsDir } from './chunk-
|
|
4
|
-
import './chunk-
|
|
3
|
+
import { jobsDir } from './chunk-KIGSGZBB.js';
|
|
4
|
+
import './chunk-V7MQKOZY.js';
|
|
5
|
+
import './chunk-GISNHSYL.js';
|
|
5
6
|
import './chunk-Z5GEFMRW.js';
|
|
6
7
|
import { existsSync, watch, statSync, createReadStream } from 'fs';
|
|
7
8
|
import { join } from 'path';
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
import { createRequire } from 'node:module';
|
|
3
|
+
export { RunnerStartError, listJobFiles, probeBuild, probeCredentials, requestStop, runnerProcessState, start, tick, watchTick } from './chunk-22DYXLU7.js';
|
|
4
|
+
import './chunk-FGW2774C.js';
|
|
5
|
+
import './chunk-3JVYMD4G.js';
|
|
6
|
+
import './chunk-I2UOAV7X.js';
|
|
7
|
+
import './chunk-YETTWTAY.js';
|
|
8
|
+
import './chunk-TPKYTORP.js';
|
|
9
|
+
import './chunk-KPBQYEND.js';
|
|
10
|
+
import './chunk-2J5JGLW5.js';
|
|
11
|
+
import './chunk-ATRIVTRE.js';
|
|
12
|
+
import './chunk-UD3EXMKB.js';
|
|
13
|
+
import './chunk-34XORKFD.js';
|
|
14
|
+
import './chunk-G2WME4RG.js';
|
|
15
|
+
import './chunk-ESVW4MJY.js';
|
|
16
|
+
import './chunk-WMHYIBJW.js';
|
|
17
|
+
import './chunk-YYYRBYWG.js';
|
|
18
|
+
import './chunk-4NM3I3VV.js';
|
|
19
|
+
import './chunk-TBT347UY.js';
|
|
20
|
+
import './chunk-4QKLMNI3.js';
|
|
21
|
+
import './chunk-7V7KG3YM.js';
|
|
22
|
+
import './chunk-I66MQDXH.js';
|
|
23
|
+
import './chunk-6MZSX4M7.js';
|
|
24
|
+
import './chunk-EXV37PKS.js';
|
|
25
|
+
import './chunk-VX74ND77.js';
|
|
26
|
+
import './chunk-IRBNIRQJ.js';
|
|
27
|
+
import './chunk-OGFGZQA3.js';
|
|
28
|
+
import './chunk-WERZMIKA.js';
|
|
29
|
+
import './chunk-3W333NFO.js';
|
|
30
|
+
import './chunk-PHHBYAL6.js';
|
|
31
|
+
import './chunk-BLW6GPBZ.js';
|
|
32
|
+
import './chunk-C3OVGKVJ.js';
|
|
33
|
+
import './chunk-2HT2XGJX.js';
|
|
34
|
+
import './chunk-QOALB6ZD.js';
|
|
35
|
+
import './chunk-JRCSET55.js';
|
|
36
|
+
import './chunk-G3IJ3N6F.js';
|
|
37
|
+
import './chunk-EAQSOE62.js';
|
|
38
|
+
import './chunk-F35VMF5M.js';
|
|
39
|
+
import './chunk-2CMJLYV6.js';
|
|
40
|
+
import './chunk-UXYLWVTQ.js';
|
|
41
|
+
import './chunk-7RQ73DLO.js';
|
|
42
|
+
import './chunk-ZFLOGMUC.js';
|
|
43
|
+
import './chunk-JBJTC3UU.js';
|
|
44
|
+
import './chunk-KOQELWQ6.js';
|
|
45
|
+
import './chunk-USWVXQIH.js';
|
|
46
|
+
import './chunk-VWLOQ6FI.js';
|
|
47
|
+
import './chunk-NTRCK4NH.js';
|
|
48
|
+
import './chunk-6IO62VJS.js';
|
|
49
|
+
import './chunk-ZJSNLVCE.js';
|
|
50
|
+
import './chunk-F7CU5ABH.js';
|
|
51
|
+
import './chunk-BKO6JEZI.js';
|
|
52
|
+
import './chunk-ZNPE7FW5.js';
|
|
53
|
+
import './chunk-HCVLP7XA.js';
|
|
54
|
+
import './chunk-BJ3KTMDH.js';
|
|
55
|
+
import './chunk-AEKSX4EY.js';
|
|
56
|
+
import './chunk-EABW6AJQ.js';
|
|
57
|
+
import './chunk-5OCIHFGE.js';
|
|
58
|
+
import './chunk-ANPNT6PM.js';
|
|
59
|
+
import './chunk-T2Q7ISPE.js';
|
|
60
|
+
import './chunk-WZBHBH3J.js';
|
|
61
|
+
import './chunk-CRB3POP4.js';
|
|
62
|
+
import './chunk-5QRP3MVS.js';
|
|
63
|
+
import './chunk-YQR6E6OV.js';
|
|
64
|
+
import './chunk-TUSYOL2O.js';
|
|
65
|
+
import './chunk-WFSUUUAN.js';
|
|
66
|
+
import './chunk-7VUK5RFS.js';
|
|
67
|
+
import './chunk-VNVZDWO3.js';
|
|
68
|
+
import './chunk-RA3O54FC.js';
|
|
69
|
+
import './chunk-KDHYLBRR.js';
|
|
70
|
+
import './chunk-KIGSGZBB.js';
|
|
71
|
+
import './chunk-V7MQKOZY.js';
|
|
72
|
+
import './chunk-GISNHSYL.js';
|
|
73
|
+
import './chunk-Z5GEFMRW.js';
|
|
74
|
+
|
|
75
|
+
createRequire(import.meta.url);
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
import { createRequire } from 'node:module';
|
|
3
|
+
export { describeMachineDocker, detectMachine, microVmArchSupported, microVmAssetsPinned, reachDockerStep, supportsContainerBuilds, supportsMicroVmBuilds } from './chunk-EXV37PKS.js';
|
|
4
|
+
import './chunk-VX74ND77.js';
|
|
5
|
+
import './chunk-IRBNIRQJ.js';
|
|
6
|
+
import './chunk-OGFGZQA3.js';
|
|
7
|
+
import './chunk-WERZMIKA.js';
|
|
8
|
+
import './chunk-3W333NFO.js';
|
|
9
|
+
import './chunk-PHHBYAL6.js';
|
|
10
|
+
import './chunk-BLW6GPBZ.js';
|
|
11
|
+
import './chunk-C3OVGKVJ.js';
|
|
12
|
+
import './chunk-2HT2XGJX.js';
|
|
13
|
+
import './chunk-QOALB6ZD.js';
|
|
14
|
+
import './chunk-JRCSET55.js';
|
|
15
|
+
import './chunk-G3IJ3N6F.js';
|
|
16
|
+
import './chunk-EAQSOE62.js';
|
|
17
|
+
import './chunk-F35VMF5M.js';
|
|
18
|
+
import './chunk-UXYLWVTQ.js';
|
|
19
|
+
import './chunk-7RQ73DLO.js';
|
|
20
|
+
import './chunk-ZFLOGMUC.js';
|
|
21
|
+
import './chunk-JBJTC3UU.js';
|
|
22
|
+
import './chunk-KOQELWQ6.js';
|
|
23
|
+
import './chunk-USWVXQIH.js';
|
|
24
|
+
import './chunk-VWLOQ6FI.js';
|
|
25
|
+
import './chunk-NTRCK4NH.js';
|
|
26
|
+
import './chunk-ZJSNLVCE.js';
|
|
27
|
+
import './chunk-ZNPE7FW5.js';
|
|
28
|
+
import './chunk-HCVLP7XA.js';
|
|
29
|
+
import './chunk-BJ3KTMDH.js';
|
|
30
|
+
import './chunk-AEKSX4EY.js';
|
|
31
|
+
import './chunk-EABW6AJQ.js';
|
|
32
|
+
import './chunk-5OCIHFGE.js';
|
|
33
|
+
import './chunk-ANPNT6PM.js';
|
|
34
|
+
import './chunk-WZBHBH3J.js';
|
|
35
|
+
import './chunk-CRB3POP4.js';
|
|
36
|
+
import './chunk-YQR6E6OV.js';
|
|
37
|
+
import './chunk-WFSUUUAN.js';
|
|
38
|
+
import './chunk-7VUK5RFS.js';
|
|
39
|
+
import './chunk-VNVZDWO3.js';
|
|
40
|
+
import './chunk-RA3O54FC.js';
|
|
41
|
+
import './chunk-KDHYLBRR.js';
|
|
42
|
+
import './chunk-KIGSGZBB.js';
|
|
43
|
+
import './chunk-V7MQKOZY.js';
|
|
44
|
+
import './chunk-GISNHSYL.js';
|
|
45
|
+
import './chunk-Z5GEFMRW.js';
|
|
46
|
+
|
|
47
|
+
createRequire(import.meta.url);
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import { createRequire } from 'node:module';
|
|
3
|
-
export { DEFAULT_MCP_COMMAND, DOCS_MCP_SERVER_NAME, INIT_DOCS_ENTRY, INIT_STDIO_ENTRY, McpInstallError, addDocsMcpEntryIfAbsent, addStdioMcpEntryIfAbsent, buildServerEntry, buildStdioServerEntry, defaultMcpUrl, handleMcpInstallError, mcpTargetPath, runMcpInstall, setMcpEntry } from './chunk-
|
|
4
|
-
import './chunk-ANPNT6PM.js';
|
|
3
|
+
export { DEFAULT_MCP_COMMAND, DOCS_MCP_SERVER_NAME, INIT_DOCS_ENTRY, INIT_STDIO_ENTRY, McpInstallError, addDocsMcpEntryIfAbsent, addStdioMcpEntryIfAbsent, buildServerEntry, buildStdioServerEntry, defaultMcpUrl, handleMcpInstallError, mcpTargetPath, runMcpInstall, setMcpEntry } from './chunk-DIB2WLBL.js';
|
|
5
4
|
import './chunk-EABW6AJQ.js';
|
|
5
|
+
import './chunk-ANPNT6PM.js';
|
|
6
6
|
import './chunk-CRB3POP4.js';
|
|
7
7
|
import './chunk-VNVZDWO3.js';
|
|
8
8
|
import './chunk-Z5GEFMRW.js';
|
|
@@ -1,15 +1,16 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import { createRequire } from 'node:module';
|
|
3
|
-
import {
|
|
4
|
-
import { defaultFetch } from './chunk-FVMYKL6L.js';
|
|
3
|
+
import { defaultFetch } from './chunk-VWLOQ6FI.js';
|
|
5
4
|
import { resolveGatewayCredentials } from './chunk-NTRCK4NH.js';
|
|
6
5
|
import './chunk-BJ3KTMDH.js';
|
|
7
6
|
import { cloudConfigPath } from './chunk-EABW6AJQ.js';
|
|
7
|
+
import { C } from './chunk-ANPNT6PM.js';
|
|
8
8
|
import { cliInvocation } from './chunk-CRB3POP4.js';
|
|
9
9
|
import { homeFromEnv } from './chunk-VNVZDWO3.js';
|
|
10
|
-
import './chunk-
|
|
11
|
-
import './chunk-
|
|
12
|
-
import './chunk-
|
|
10
|
+
import './chunk-KDHYLBRR.js';
|
|
11
|
+
import './chunk-KIGSGZBB.js';
|
|
12
|
+
import './chunk-V7MQKOZY.js';
|
|
13
|
+
import './chunk-GISNHSYL.js';
|
|
13
14
|
import './chunk-Z5GEFMRW.js';
|
|
14
15
|
import { createInterface } from 'readline';
|
|
15
16
|
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import { createRequire } from 'node:module';
|
|
3
|
-
export { RUNNER_DIR_MODE, RUNNER_FILE_MODE, SHIM_DIR, attemptStamp, buildDir, contextHomeDir, deliveryDir, diskTemplatesDir, ghConfigDir, hostKeyPath, imagesDir, jobDir, jobsDir, mirrorDir, pidFilePath, repoCacheDir, rootfsDir, rootfsPathFor, runnerDir, runnerDirOfBuild, spoolDir, stagedContextDir, vmAssetsDir, vsockPath } from './chunk-
|
|
4
|
-
import './chunk-
|
|
3
|
+
export { RUNNER_DIR_MODE, RUNNER_FILE_MODE, SHIM_DIR, attemptStamp, buildDir, contextHomeDir, deliveryDir, diskTemplatesDir, ghConfigDir, hostKeyPath, imagesDir, jobDir, jobsDir, mirrorDir, pidFilePath, repoCacheDir, rootfsDir, rootfsPathFor, runnerDir, runnerDirOfBuild, spoolDir, stagedContextDir, vmAssetsDir, vsockPath } from './chunk-KIGSGZBB.js';
|
|
4
|
+
import './chunk-V7MQKOZY.js';
|
|
5
|
+
import './chunk-GISNHSYL.js';
|
|
5
6
|
import './chunk-Z5GEFMRW.js';
|
|
6
7
|
|
|
7
8
|
createRequire(import.meta.url);
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
import { createRequire } from 'node:module';
|
|
3
|
+
export { readPendingUpdate, writePendingUpdate } from './chunk-KPBQYEND.js';
|
|
4
|
+
import './chunk-KIGSGZBB.js';
|
|
5
|
+
import './chunk-V7MQKOZY.js';
|
|
6
|
+
import './chunk-GISNHSYL.js';
|
|
7
|
+
import './chunk-Z5GEFMRW.js';
|
|
8
|
+
|
|
9
|
+
createRequire(import.meta.url);
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import { createRequire } from 'node:module';
|
|
3
|
-
export { RunnerAlreadyRunningError, claimPidFile, readPidFile, releasePidFile } from './chunk-
|
|
3
|
+
export { RunnerAlreadyRunningError, claimPidFile, readPidFile, releasePidFile } from './chunk-ZFLOGMUC.js';
|
|
4
4
|
import './chunk-JBJTC3UU.js';
|
|
5
|
-
import './chunk-
|
|
6
|
-
import './chunk-
|
|
5
|
+
import './chunk-KIGSGZBB.js';
|
|
6
|
+
import './chunk-V7MQKOZY.js';
|
|
7
|
+
import './chunk-GISNHSYL.js';
|
|
7
8
|
import './chunk-Z5GEFMRW.js';
|
|
8
9
|
|
|
9
10
|
createRequire(import.meta.url);
|
|
@@ -0,0 +1,254 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
import { createRequire } from 'node:module';
|
|
3
|
+
import './chunk-Z5GEFMRW.js';
|
|
4
|
+
import { readdirSync, rmSync, mkdirSync, chmodSync, lstatSync, openSync, writeSync, closeSync, renameSync } from 'fs';
|
|
5
|
+
import { join, resolve, sep } from 'path';
|
|
6
|
+
|
|
7
|
+
createRequire(import.meta.url);
|
|
8
|
+
var RECEIVE_ROOTS = ["/outerlayer/job", "/outerlayer/judge"];
|
|
9
|
+
var BLOCK = 512;
|
|
10
|
+
var MODE_MASK = 1023;
|
|
11
|
+
var ReceiveError = class extends Error {
|
|
12
|
+
};
|
|
13
|
+
function printable(name) {
|
|
14
|
+
const flat = name.replace(/[^\x20-\x7e]/g, "?");
|
|
15
|
+
return flat.length > 120 ? `${flat.slice(0, 120)}...` : flat;
|
|
16
|
+
}
|
|
17
|
+
var ByteReader = class {
|
|
18
|
+
constructor(source) {
|
|
19
|
+
this.queue = [];
|
|
20
|
+
this.queued = 0;
|
|
21
|
+
this.done = false;
|
|
22
|
+
this.iterator = source[Symbol.asyncIterator]();
|
|
23
|
+
}
|
|
24
|
+
async fill(wanted) {
|
|
25
|
+
while (this.queued < wanted && !this.done) {
|
|
26
|
+
const next = await this.iterator.next();
|
|
27
|
+
if (next.done === true) {
|
|
28
|
+
this.done = true;
|
|
29
|
+
break;
|
|
30
|
+
}
|
|
31
|
+
const chunk = Buffer.from(next.value.buffer, next.value.byteOffset, next.value.byteLength);
|
|
32
|
+
if (chunk.length > 0) {
|
|
33
|
+
this.queue.push(chunk);
|
|
34
|
+
this.queued += chunk.length;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
shift(count) {
|
|
39
|
+
const taken = [];
|
|
40
|
+
let left = count;
|
|
41
|
+
while (left > 0) {
|
|
42
|
+
const head = this.queue[0];
|
|
43
|
+
if (head.length <= left) {
|
|
44
|
+
taken.push(this.queue.shift());
|
|
45
|
+
left -= head.length;
|
|
46
|
+
} else {
|
|
47
|
+
taken.push(head.subarray(0, left));
|
|
48
|
+
this.queue[0] = head.subarray(left);
|
|
49
|
+
left = 0;
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
this.queued -= count;
|
|
53
|
+
return taken.length === 1 ? taken[0] : Buffer.concat(taken);
|
|
54
|
+
}
|
|
55
|
+
/** Exactly `count` bytes, or `undefined` when the stream ends before them. */
|
|
56
|
+
async take(count) {
|
|
57
|
+
await this.fill(count);
|
|
58
|
+
return this.queued < count ? void 0 : this.shift(count);
|
|
59
|
+
}
|
|
60
|
+
/** The next bytes of the stream, at most `limit`, or `undefined` at its end. */
|
|
61
|
+
async some(limit) {
|
|
62
|
+
await this.fill(1);
|
|
63
|
+
return this.queued === 0 ? void 0 : this.shift(Math.min(this.queued, limit));
|
|
64
|
+
}
|
|
65
|
+
};
|
|
66
|
+
function octal(field) {
|
|
67
|
+
const text = field.toString("latin1").replace(/\0.*$/s, "").trim();
|
|
68
|
+
if (text === "") return 0;
|
|
69
|
+
if (!/^[0-7]+$/.test(text)) throw new ReceiveError("the stream is not a tar archive: a number in a header is malformed");
|
|
70
|
+
return Number.parseInt(text, 8);
|
|
71
|
+
}
|
|
72
|
+
function checksumOf(header) {
|
|
73
|
+
let sum = 0;
|
|
74
|
+
for (let at = 0; at < BLOCK; at++) sum += at >= 148 && at < 156 ? 32 : header[at];
|
|
75
|
+
return sum;
|
|
76
|
+
}
|
|
77
|
+
function paxPath(data) {
|
|
78
|
+
let at = 0;
|
|
79
|
+
let path;
|
|
80
|
+
while (at < data.length) {
|
|
81
|
+
const space = data.indexOf(32, at);
|
|
82
|
+
const length = Number(data.subarray(at, space === -1 ? at : space).toString("latin1"));
|
|
83
|
+
if (space === -1 || !Number.isInteger(length) || length < space - at + 2 || at + length > data.length) {
|
|
84
|
+
throw new ReceiveError("the stream is not a tar archive: an extended header is malformed");
|
|
85
|
+
}
|
|
86
|
+
const record = data.subarray(space + 1, at + length - 1).toString("utf8");
|
|
87
|
+
const eq = record.indexOf("=");
|
|
88
|
+
if (record.slice(0, eq) === "path") path = record.slice(eq + 1);
|
|
89
|
+
at += length;
|
|
90
|
+
}
|
|
91
|
+
return path;
|
|
92
|
+
}
|
|
93
|
+
async function walk(source, visit) {
|
|
94
|
+
const reader = new ByteReader(source);
|
|
95
|
+
let pending;
|
|
96
|
+
for (; ; ) {
|
|
97
|
+
const block = await reader.take(BLOCK);
|
|
98
|
+
if (block === void 0) throw new ReceiveError("the stream ended before the archive's end marker");
|
|
99
|
+
if (block.every((byte) => byte === 0)) {
|
|
100
|
+
const second = await reader.take(BLOCK);
|
|
101
|
+
if (second === void 0 || !second.every((byte) => byte === 0)) throw new ReceiveError("the stream ended before the archive's end marker");
|
|
102
|
+
return;
|
|
103
|
+
}
|
|
104
|
+
if (octal(block.subarray(148, 156)) !== checksumOf(block)) throw new ReceiveError("the stream is not a tar archive: a header's checksum is wrong");
|
|
105
|
+
const size = octal(block.subarray(124, 136));
|
|
106
|
+
const typeflag = String.fromCharCode(block[156]);
|
|
107
|
+
const name = block.subarray(0, 100).toString("utf8").replace(/\0.*$/s, "");
|
|
108
|
+
const prefix = block.subarray(345, 500).toString("utf8").replace(/\0.*$/s, "");
|
|
109
|
+
const padding = (BLOCK - size % BLOCK) % BLOCK;
|
|
110
|
+
const body = async function* () {
|
|
111
|
+
let left = size;
|
|
112
|
+
while (left > 0) {
|
|
113
|
+
const piece = await reader.some(Math.min(left, 1024 * 1024));
|
|
114
|
+
if (piece === void 0) throw new ReceiveError("the stream ended inside a file");
|
|
115
|
+
left -= piece.length;
|
|
116
|
+
yield piece;
|
|
117
|
+
}
|
|
118
|
+
if (padding > 0 && await reader.take(padding) === void 0) throw new ReceiveError("the stream ended inside a file");
|
|
119
|
+
};
|
|
120
|
+
if (typeflag === "x") {
|
|
121
|
+
const data = await reader.take(size);
|
|
122
|
+
if (data === void 0 || padding > 0 && await reader.take(padding) === void 0) throw new ReceiveError("the stream ended inside a file");
|
|
123
|
+
pending = paxPath(data) ?? pending;
|
|
124
|
+
continue;
|
|
125
|
+
}
|
|
126
|
+
if (typeflag === "g") {
|
|
127
|
+
for await (const piece of body()) void piece;
|
|
128
|
+
continue;
|
|
129
|
+
}
|
|
130
|
+
const path = pending ?? (prefix === "" ? name : `${prefix}/${name}`);
|
|
131
|
+
pending = void 0;
|
|
132
|
+
if (typeflag !== "0" && typeflag !== "\0" && typeflag !== "5") {
|
|
133
|
+
throw new ReceiveError(`refused ${printable(path)}: only files and folders are accepted, not a link or a device`);
|
|
134
|
+
}
|
|
135
|
+
const header = { path, type: typeflag === "5" ? "dir" : "file", mode: octal(block.subarray(100, 108)) & MODE_MASK, size };
|
|
136
|
+
let consumed = false;
|
|
137
|
+
await visit(header, () => {
|
|
138
|
+
consumed = true;
|
|
139
|
+
return body();
|
|
140
|
+
});
|
|
141
|
+
if (!consumed) for await (const piece of body()) void piece;
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
function segmentsOf(path) {
|
|
145
|
+
if (path.includes("\0")) throw new ReceiveError(`refused ${printable(path)}: the name holds a NUL byte`);
|
|
146
|
+
if (path.startsWith("/")) throw new ReceiveError(`refused ${printable(path)}: the name is absolute`);
|
|
147
|
+
const segments = path.split("/").filter((segment) => segment !== "" && segment !== ".");
|
|
148
|
+
if (segments.includes("..")) throw new ReceiveError(`refused ${printable(path)}: the name leaves the folder`);
|
|
149
|
+
return segments;
|
|
150
|
+
}
|
|
151
|
+
async function readTar(source) {
|
|
152
|
+
const entries = [];
|
|
153
|
+
await walk(source, async (header, body) => {
|
|
154
|
+
const pieces = [];
|
|
155
|
+
if (header.type === "file") for await (const piece of body()) pieces.push(piece);
|
|
156
|
+
entries.push({ path: segmentsOf(header.path).join("/"), type: header.type, mode: header.mode, data: Buffer.concat(pieces) });
|
|
157
|
+
});
|
|
158
|
+
return entries;
|
|
159
|
+
}
|
|
160
|
+
function checkTarget(into, roots) {
|
|
161
|
+
const target = resolve(into);
|
|
162
|
+
const inside = roots.some((root) => {
|
|
163
|
+
const base = resolve(root);
|
|
164
|
+
return target === base || target.startsWith(`${base}${sep}`);
|
|
165
|
+
});
|
|
166
|
+
if (!inside) throw new ReceiveError(`refused ${printable(into)}: the folder is not one a build's files go in`);
|
|
167
|
+
try {
|
|
168
|
+
const stat = lstatSync(target);
|
|
169
|
+
if (!stat.isDirectory()) throw new ReceiveError(`refused ${printable(into)}: the folder is a link or a file`);
|
|
170
|
+
} catch (err) {
|
|
171
|
+
if (err instanceof ReceiveError) throw err;
|
|
172
|
+
if (err.code !== "ENOENT") throw err;
|
|
173
|
+
}
|
|
174
|
+
return target;
|
|
175
|
+
}
|
|
176
|
+
function ensureFolders(target, segments, path) {
|
|
177
|
+
let current = target;
|
|
178
|
+
for (const segment of segments) {
|
|
179
|
+
current = join(current, segment);
|
|
180
|
+
let stat;
|
|
181
|
+
try {
|
|
182
|
+
stat = lstatSync(current);
|
|
183
|
+
} catch {
|
|
184
|
+
stat = void 0;
|
|
185
|
+
}
|
|
186
|
+
if (stat === void 0) {
|
|
187
|
+
mkdirSync(current, { mode: 493 });
|
|
188
|
+
chmodSync(current, 493);
|
|
189
|
+
} else if (!stat.isDirectory()) {
|
|
190
|
+
throw new ReceiveError(`refused ${printable(path)}: a name on the way to it is a link or a file`);
|
|
191
|
+
}
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
async function writeFile(dest, mode, body) {
|
|
195
|
+
const partial = `${dest}.${process.pid}.partial`;
|
|
196
|
+
rmSync(partial, { force: true });
|
|
197
|
+
const fd = openSync(partial, "wx", 384);
|
|
198
|
+
try {
|
|
199
|
+
try {
|
|
200
|
+
for await (const piece of body) {
|
|
201
|
+
let written = 0;
|
|
202
|
+
while (written < piece.length) written += writeSync(fd, piece, written);
|
|
203
|
+
}
|
|
204
|
+
} finally {
|
|
205
|
+
closeSync(fd);
|
|
206
|
+
}
|
|
207
|
+
chmodSync(partial, mode);
|
|
208
|
+
renameSync(partial, dest);
|
|
209
|
+
} catch (err) {
|
|
210
|
+
rmSync(partial, { force: true });
|
|
211
|
+
throw err;
|
|
212
|
+
}
|
|
213
|
+
}
|
|
214
|
+
async function receiveFiles(source, options) {
|
|
215
|
+
const target = checkTarget(options.into, options.roots ?? RECEIVE_ROOTS);
|
|
216
|
+
if (options.replace === true) {
|
|
217
|
+
try {
|
|
218
|
+
for (const name of readdirSync(target)) rmSync(join(target, name), { recursive: true, force: true });
|
|
219
|
+
} catch (err) {
|
|
220
|
+
if (err.code !== "ENOENT") throw new ReceiveError(`could not empty ${printable(options.into)}: ${err.code ?? "error"}`);
|
|
221
|
+
}
|
|
222
|
+
}
|
|
223
|
+
mkdirSync(target, { recursive: true, mode: 493 });
|
|
224
|
+
let current = "the stream";
|
|
225
|
+
try {
|
|
226
|
+
await walk(source, async (header, body) => {
|
|
227
|
+
current = header.path;
|
|
228
|
+
const segments = segmentsOf(header.path);
|
|
229
|
+
if (header.type === "dir") {
|
|
230
|
+
ensureFolders(target, segments, header.path);
|
|
231
|
+
chmodSync(join(target, ...segments), header.mode);
|
|
232
|
+
return;
|
|
233
|
+
}
|
|
234
|
+
if (segments.length === 0) throw new ReceiveError(`refused ${printable(header.path)}: a file needs a name`);
|
|
235
|
+
ensureFolders(target, segments.slice(0, -1), header.path);
|
|
236
|
+
const dest = join(target, ...segments);
|
|
237
|
+
const existing = (() => {
|
|
238
|
+
try {
|
|
239
|
+
return lstatSync(dest);
|
|
240
|
+
} catch {
|
|
241
|
+
return void 0;
|
|
242
|
+
}
|
|
243
|
+
})();
|
|
244
|
+
if (existing?.isDirectory() === true) throw new ReceiveError(`refused ${printable(header.path)}: a folder is already there`);
|
|
245
|
+
await writeFile(dest, header.mode, body());
|
|
246
|
+
});
|
|
247
|
+
} catch (err) {
|
|
248
|
+
if (err instanceof ReceiveError) throw err;
|
|
249
|
+
const code = err.code;
|
|
250
|
+
throw new ReceiveError(`could not write ${printable(current)}: ${code ?? (err instanceof Error ? err.name : "error")}`);
|
|
251
|
+
}
|
|
252
|
+
}
|
|
253
|
+
|
|
254
|
+
export { ReceiveError, readTar, receiveFiles };
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import { createRequire } from 'node:module';
|
|
3
|
-
export { readHousekeepingRecord, writeHousekeepingRecord } from './chunk-
|
|
4
|
-
import './chunk-
|
|
5
|
-
import './chunk-
|
|
3
|
+
export { readHousekeepingRecord, writeHousekeepingRecord } from './chunk-2J5JGLW5.js';
|
|
4
|
+
import './chunk-KIGSGZBB.js';
|
|
5
|
+
import './chunk-V7MQKOZY.js';
|
|
6
|
+
import './chunk-GISNHSYL.js';
|
|
6
7
|
import './chunk-Z5GEFMRW.js';
|
|
7
8
|
|
|
8
9
|
createRequire(import.meta.url);
|