@dharma-ai-labs/agent-fabric 0.2.198 → 0.2.200
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/AGENT_FABRIC_ONBOARDING.md +2 -0
- package/dist/bootstrapRelayOrdering.test.js +28 -2
- package/dist/bootstrapRelayOrdering.test.js.map +1 -1
- package/dist/bootstrapStartupPreflight.test.js +10 -0
- package/dist/bootstrapStartupPreflight.test.js.map +1 -1
- package/dist/bootstrapTargetPreflight.test.d.ts +2 -0
- package/dist/bootstrapTargetPreflight.test.d.ts.map +1 -0
- package/dist/bootstrapTargetPreflight.test.js +70 -0
- package/dist/bootstrapTargetPreflight.test.js.map +1 -0
- package/dist/codexBootstrapCompletion.test.js +16 -1
- package/dist/codexBootstrapCompletion.test.js.map +1 -1
- package/dist/codexSetupPortalIngress.test.js +61 -1
- package/dist/codexSetupPortalIngress.test.js.map +1 -1
- package/dist/codexSetupSessionHandoff.test.js +4 -2
- package/dist/codexSetupSessionHandoff.test.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +32 -14
- package/dist/index.js.map +1 -1
- package/dist/relayAutostart.d.ts +4 -2
- package/dist/relayAutostart.d.ts.map +1 -1
- package/dist/relayAutostart.js +20 -3
- package/dist/relayAutostart.js.map +1 -1
- package/dist/repositoryOnboardingCaller.test.js +22 -5
- package/dist/repositoryOnboardingCaller.test.js.map +1 -1
- package/dist/schemas/wsl-relay-host.v1.schema.json +18 -0
- package/dist/startupCommitScope.test.js +6 -0
- package/dist/startupCommitScope.test.js.map +1 -1
- package/dist/wslRelayHost.d.ts +30 -0
- package/dist/wslRelayHost.d.ts.map +1 -0
- package/dist/wslRelayHost.js +269 -0
- package/dist/wslRelayHost.js.map +1 -0
- package/dist/wslRelayHost.test.d.ts +2 -0
- package/dist/wslRelayHost.test.d.ts.map +1 -0
- package/dist/wslRelayHost.test.js +308 -0
- package/dist/wslRelayHost.test.js.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "https://schemas.dharma-ai.io/wsl-relay-host/v1",
|
|
4
|
+
"title": "Owned WSL Relay Host Registration",
|
|
5
|
+
"type": "object",
|
|
6
|
+
"additionalProperties": false,
|
|
7
|
+
"required": ["schema", "distribution", "linuxUser", "windowsSid", "executable", "taskName", "arguments", "description"],
|
|
8
|
+
"properties": {
|
|
9
|
+
"schema": {"const": "dharma.wsl-relay-host/v1"},
|
|
10
|
+
"distribution": {"type": "string", "maxLength": 64, "pattern": "^[A-Za-z0-9][A-Za-z0-9 ._-]*[A-Za-z0-9._-]$|^[A-Za-z0-9]$"},
|
|
11
|
+
"linuxUser": {"type": "string", "pattern": "^[a-z_][a-z0-9_-]{0,31}$"},
|
|
12
|
+
"windowsSid": {"type": "string", "pattern": "^S-1-5-21-(?:[0-9]{1,10}-){2}[0-9]{1,10}-[0-9]{1,10}$"},
|
|
13
|
+
"executable": {"type": "string", "maxLength": 260, "pattern": "^[A-Za-z]:\\\\[Ww][Ii][Nn][Dd][Oo][Ww][Ss]\\\\[Ss][Yy][Ss][Tt][Ee][Mm]32\\\\[Ww][Ss][Ll]\\.[Ee][Xx][Ee]$"},
|
|
14
|
+
"taskName": {"type": "string", "pattern": "^DharmaAgentFabric-WSL-[a-f0-9]{24}$"},
|
|
15
|
+
"arguments": {"type": "string", "maxLength": 512, "pattern": "^--distribution \"[A-Za-z0-9][A-Za-z0-9 ._-]{0,63}\" --user \"[a-z_][a-z0-9_-]{0,31}\" --cd / --exec /usr/bin/systemctl --user start --wait dharma-agent-fabric\\.service$"},
|
|
16
|
+
"description": {"type": "string", "pattern": "^Dharma Agent Fabric owned WSL host [a-f0-9]{64}$"}
|
|
17
|
+
}
|
|
18
|
+
}
|
|
@@ -58,6 +58,7 @@ async function fixture(phase, failure = 'withdraw') {
|
|
|
58
58
|
rm: async (path) => { removals.push(path); stored.delete(path); },
|
|
59
59
|
readRegistration: async () => { await boundary('registration'); return { ...registration, backend: 'systemd-user' }; },
|
|
60
60
|
relayAutostartStatus: async () => { await boundary('status'); return { state: 'enabled' }; },
|
|
61
|
+
startWslRelayHost: async () => boundary('host'),
|
|
61
62
|
defaultRunner: async (file, args) => { commands.push([file, args]); await boundary('os'); return { stdout: '' }; },
|
|
62
63
|
unavailable: () => new Error('container_startup_unavailable'), UNIT_NAME: 'dharma-agent-fabric.service',
|
|
63
64
|
};
|
|
@@ -169,4 +170,9 @@ test('user startup withholds a late OS acknowledgement without claiming reversal
|
|
|
169
170
|
await assert.rejects(f.start(), /codex_setup_host_scope_unavailable/);
|
|
170
171
|
assert.equal(f.commands.length, 1);
|
|
171
172
|
});
|
|
173
|
+
test('user startup withholds a late WSL host acknowledgement without replaying the Linux start', async () => {
|
|
174
|
+
const f = await fixture('host');
|
|
175
|
+
await assert.rejects(f.start(), /codex_setup_host_scope_unavailable/);
|
|
176
|
+
assert.equal(f.commands.length, 1);
|
|
177
|
+
});
|
|
172
178
|
//# sourceMappingURL=startupCommitScope.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"startupCommitScope.test.js","sourceRoot":"","sources":["../src/startupCommitScope.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"startupCommitScope.test.js","sourceRoot":"","sources":["../src/startupCommitScope.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
type Context = {
|
|
2
|
+
distribution: string;
|
|
3
|
+
linuxUser: string;
|
|
4
|
+
};
|
|
5
|
+
type Runner = (script: string) => Promise<{
|
|
6
|
+
stdout: string;
|
|
7
|
+
}>;
|
|
8
|
+
export interface WslHostOptions {
|
|
9
|
+
home: string;
|
|
10
|
+
wslHost?: {
|
|
11
|
+
context(): Promise<Context | null>;
|
|
12
|
+
run?: Runner;
|
|
13
|
+
};
|
|
14
|
+
run?: (file: string, args: string[]) => Promise<{
|
|
15
|
+
stdout: string;
|
|
16
|
+
}>;
|
|
17
|
+
}
|
|
18
|
+
type State = {
|
|
19
|
+
exists: boolean;
|
|
20
|
+
enabled: boolean;
|
|
21
|
+
running: boolean;
|
|
22
|
+
};
|
|
23
|
+
export declare function resolveWslRelayContext(distribution: string | undefined, linuxUser: string, installed?: unknown): Context;
|
|
24
|
+
export declare function assertWslHostPreflight(options: WslHostOptions): Promise<void>;
|
|
25
|
+
export declare function enableWslRelayHost(options: WslHostOptions): Promise<void>;
|
|
26
|
+
export declare function wslRelayHostStatus(options: WslHostOptions): Promise<State | null>;
|
|
27
|
+
export declare function startWslRelayHost(options: WslHostOptions): Promise<void>;
|
|
28
|
+
export declare function disableWslRelayHost(options: WslHostOptions): Promise<void>;
|
|
29
|
+
export {};
|
|
30
|
+
//# sourceMappingURL=wslRelayHost.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wslRelayHost.d.ts","sourceRoot":"","sources":["../src/wslRelayHost.ts"],"names":[],"mappings":"AAOA,KAAK,OAAO,GAAG;IAAC,YAAY,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAC,CAAC;AACzD,KAAK,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAC,CAAC,CAAC;AAC5D,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE;QAAC,OAAO,IAAI,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,CAAA;KAAC,CAAC;IAC7D,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,OAAO,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAC,CAAC,CAAC;CACnE;AAGD,KAAK,KAAK,GAAG;IAAC,MAAM,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAC,CAAC;AAUnE,wBAAgB,sBAAsB,CAAC,YAAY,EAAE,MAAM,GAAG,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,GAAE,OAAc,GAAG,OAAO,CAS9H;AA0ID,wBAAsB,sBAAsB,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAMnF;AAED,wBAAsB,kBAAkB,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAuB/E;AAED,wBAAsB,kBAAkB,CAAC,OAAO,EAAE,cAAc,yBAK/D;AAED,wBAAsB,iBAAiB,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAW9E;AAED,wBAAsB,mBAAmB,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAUhF"}
|
|
@@ -0,0 +1,269 @@
|
|
|
1
|
+
import { execFile } from 'node:child_process';
|
|
2
|
+
import { createHash } from 'node:crypto';
|
|
3
|
+
import { lstat, readFile, realpath, rm, writeFile } from 'node:fs/promises';
|
|
4
|
+
import { userInfo } from 'node:os';
|
|
5
|
+
import { join, resolve } from 'node:path';
|
|
6
|
+
import { captureBootstrapHostChild, currentBootstrapHostScope } from './bootstrapHostScope.js';
|
|
7
|
+
const fail = (conflict = false) => {
|
|
8
|
+
throw new Error(conflict
|
|
9
|
+
? 'autostart_conflict: the WSL host task is not owned by this installation.' : 'wsl_host_startup_unavailable');
|
|
10
|
+
};
|
|
11
|
+
const receiptPath = (home) => join(home, 'relay', 'wsl-host.json');
|
|
12
|
+
const literal = (value) => `'${value.replace(/'/g, "''")}'`;
|
|
13
|
+
const object = (value) => Boolean(value && typeof value === 'object' && !Array.isArray(value));
|
|
14
|
+
const digest = (home, context) => createHash('sha256').update(JSON.stringify([home, context.distribution, context.linuxUser])).digest('hex');
|
|
15
|
+
const windowsArgs = (script) => ['/mnt/c/Windows/System32/WindowsPowerShell/v1.0/powershell.exe',
|
|
16
|
+
'-NoLogo', '-NoProfile', '-NonInteractive', '-EncodedCommand', Buffer.from(script, 'utf16le').toString('base64')];
|
|
17
|
+
export function resolveWslRelayContext(distribution, linuxUser, installed = null) {
|
|
18
|
+
if (!distribution) {
|
|
19
|
+
if (!object(installed) || installed.schema !== 'dharma.wsl-relay-host/v1'
|
|
20
|
+
|| installed.linuxUser !== linuxUser || typeof installed.distribution !== 'string')
|
|
21
|
+
return fail();
|
|
22
|
+
distribution = installed.distribution;
|
|
23
|
+
}
|
|
24
|
+
if (!/^[A-Za-z0-9][A-Za-z0-9 ._-]{0,63}$/.test(distribution) || distribution.trim() !== distribution
|
|
25
|
+
|| !/^[a-z_][a-z0-9_-]{0,31}$/.test(linuxUser))
|
|
26
|
+
return fail();
|
|
27
|
+
return { distribution, linuxUser };
|
|
28
|
+
}
|
|
29
|
+
async function privateParent(options) {
|
|
30
|
+
for (const path of [options.home, join(options.home, 'relay')]) {
|
|
31
|
+
const stat = await lstat(path);
|
|
32
|
+
if (!stat.isDirectory() || stat.isSymbolicLink() || await realpath(path) !== resolve(path)
|
|
33
|
+
|| process.platform !== 'win32' && ((stat.mode & 0o077) !== 0 || stat.uid !== process.getuid()))
|
|
34
|
+
return fail(true);
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
async function windows(script) {
|
|
38
|
+
const scope = currentBootstrapHostScope();
|
|
39
|
+
const operation = () => new Promise((accept, reject) => {
|
|
40
|
+
const child = execFile('/init', windowsArgs(script), { cwd: '/mnt/c/Windows/System32', timeout: 15000, maxBuffer: 16384, signal: scope?.signal }, (error, stdout) => error ? reject(error) : accept({ stdout }));
|
|
41
|
+
if (scope)
|
|
42
|
+
captureBootstrapHostChild(scope, child);
|
|
43
|
+
});
|
|
44
|
+
return operation();
|
|
45
|
+
}
|
|
46
|
+
async function context(options) {
|
|
47
|
+
let value;
|
|
48
|
+
if (options.wslHost)
|
|
49
|
+
value = await options.wslHost.context();
|
|
50
|
+
else {
|
|
51
|
+
if (process.platform !== 'linux')
|
|
52
|
+
return null;
|
|
53
|
+
for (const marker of ['/.dockerenv', '/run/.containerenv']) {
|
|
54
|
+
try {
|
|
55
|
+
await lstat(marker);
|
|
56
|
+
return null;
|
|
57
|
+
}
|
|
58
|
+
catch (error) {
|
|
59
|
+
if (error.code !== 'ENOENT')
|
|
60
|
+
return fail();
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
const kernel = await readFile('/proc/sys/kernel/osrelease', 'utf8');
|
|
64
|
+
if (!/microsoft/i.test(kernel))
|
|
65
|
+
return null;
|
|
66
|
+
if (!process.getuid?.())
|
|
67
|
+
return fail();
|
|
68
|
+
value = resolveWslRelayContext(process.env.WSL_DISTRO_NAME, userInfo().username, process.env.WSL_DISTRO_NAME ? null : await saved(options));
|
|
69
|
+
}
|
|
70
|
+
if (value === null)
|
|
71
|
+
return null;
|
|
72
|
+
if (!object(value) || Object.keys(value).sort().join(',') !== 'distribution,linuxUser'
|
|
73
|
+
|| typeof value.distribution !== 'string' || !/^[A-Za-z0-9][A-Za-z0-9 ._-]{0,63}$/.test(value.distribution)
|
|
74
|
+
|| value.distribution.trim() !== value.distribution || typeof value.linuxUser !== 'string'
|
|
75
|
+
|| !/^[a-z_][a-z0-9_-]{0,31}$/.test(value.linuxUser))
|
|
76
|
+
return fail();
|
|
77
|
+
return value;
|
|
78
|
+
}
|
|
79
|
+
async function invoke(options, script) {
|
|
80
|
+
const scope = currentBootstrapHostScope();
|
|
81
|
+
try {
|
|
82
|
+
if (windowsArgs(script).at(-1).length > 28000)
|
|
83
|
+
return fail();
|
|
84
|
+
const run = options.wslHost?.run || (options.run
|
|
85
|
+
? value => options.run('/init', windowsArgs(value)) : windows);
|
|
86
|
+
const result = await (scope ? scope.step(() => run(script)) : run(script));
|
|
87
|
+
if (Buffer.byteLength(result.stdout) > 16384)
|
|
88
|
+
return fail();
|
|
89
|
+
return JSON.parse(result.stdout.replace(/^\uFEFF/, '').trim());
|
|
90
|
+
}
|
|
91
|
+
catch {
|
|
92
|
+
await scope?.assert();
|
|
93
|
+
return fail();
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
async function expected(options, current) {
|
|
97
|
+
const identity = await invoke(options, '# dharma-wsl-host:identity\n$ErrorActionPreference="Stop"; '
|
|
98
|
+
+ '$sid=[System.Security.Principal.WindowsIdentity]::GetCurrent().User.Value; '
|
|
99
|
+
+ '$exe=Join-Path $env:SystemRoot "System32\\wsl.exe"; '
|
|
100
|
+
+ '@{sid=$sid;executable=$exe}|ConvertTo-Json -Compress');
|
|
101
|
+
if (!object(identity) || Object.keys(identity).sort().join(',') !== 'executable,sid'
|
|
102
|
+
|| typeof identity.sid !== 'string' || !/^S-1-5-21-(?:\d{1,10}-){2}\d{1,10}-\d{1,10}$/.test(identity.sid)
|
|
103
|
+
|| typeof identity.executable !== 'string' || !/^[A-Za-z]:\\Windows\\System32\\wsl\.exe$/i.test(identity.executable))
|
|
104
|
+
return fail();
|
|
105
|
+
const hash = digest(options.home, current);
|
|
106
|
+
return { ...current, schema: 'dharma.wsl-relay-host/v1', windowsSid: identity.sid,
|
|
107
|
+
executable: identity.executable, taskName: `DharmaAgentFabric-WSL-${hash.slice(0, 24)}`,
|
|
108
|
+
arguments: `--distribution "${current.distribution}" --user "${current.linuxUser}" --cd / --exec /usr/bin/systemctl --user start --wait dharma-agent-fabric.service`,
|
|
109
|
+
description: `Dharma Agent Fabric owned WSL host ${hash}` };
|
|
110
|
+
}
|
|
111
|
+
async function saved(options) {
|
|
112
|
+
try {
|
|
113
|
+
const path = receiptPath(options.home), stat = await lstat(path);
|
|
114
|
+
if (!stat.isFile() || stat.isSymbolicLink() || stat.size > 8192
|
|
115
|
+
|| process.platform !== 'win32' && ((stat.mode & 0o077) !== 0 || stat.uid !== process.getuid()))
|
|
116
|
+
return fail(true);
|
|
117
|
+
await privateParent(options);
|
|
118
|
+
const value = JSON.parse(await readFile(path, 'utf8'));
|
|
119
|
+
if (!object(value))
|
|
120
|
+
return fail(true);
|
|
121
|
+
return value;
|
|
122
|
+
}
|
|
123
|
+
catch (error) {
|
|
124
|
+
if (error.code === 'ENOENT')
|
|
125
|
+
return null;
|
|
126
|
+
return fail(true);
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
function sameReceipt(value, target) {
|
|
130
|
+
const keys = Object.keys(target);
|
|
131
|
+
return Object.keys(value).length === keys.length && keys.every(key => Reflect.get(value, key) === Reflect.get(target, key));
|
|
132
|
+
}
|
|
133
|
+
function lookup(receipt, required = false) {
|
|
134
|
+
const query = `$task=Get-ScheduledTask -TaskPath '\\' -TaskName ${literal(receipt.taskName)} -ErrorAction Stop; `;
|
|
135
|
+
return required ? query : `$task=$null; try { ${query} } catch { `
|
|
136
|
+
+ `if ($_.FullyQualifiedErrorId -cne 'CmdletizationQuery_NotFound,Get-ScheduledTask' `
|
|
137
|
+
+ `-or [string]$_.CategoryInfo.Category -ne 'ObjectNotFound') {throw} }; `;
|
|
138
|
+
}
|
|
139
|
+
function taskAction(receipt) {
|
|
140
|
+
// Direct WSL scheduled actions can exit before Linux starts. Preserve the
|
|
141
|
+
// same limited identity while hosting the fixed native command in PowerShell.
|
|
142
|
+
const script = `$ErrorActionPreference='Stop'; & ${literal(receipt.executable)} `
|
|
143
|
+
+ `--distribution ${literal(receipt.distribution)} --user ${literal(receipt.linuxUser)} `
|
|
144
|
+
+ `--cd / --exec /usr/bin/systemctl --user start --wait dharma-agent-fabric.service; exit $LASTEXITCODE`;
|
|
145
|
+
return { executable: receipt.executable.replace(/wsl\.exe$/i, 'WindowsPowerShell\\v1.0\\powershell.exe'),
|
|
146
|
+
arguments: `-NoLogo -NoProfile -NonInteractive -WindowStyle Hidden -EncodedCommand ${Buffer.from(script, 'utf16le').toString('base64')}` };
|
|
147
|
+
}
|
|
148
|
+
function taskPreamble(receipt, operation) {
|
|
149
|
+
const action = taskAction(receipt);
|
|
150
|
+
return `# dharma-wsl-host:${operation}\n$ErrorActionPreference="Stop"; `
|
|
151
|
+
+ `$current=[System.Security.Principal.WindowsIdentity]::GetCurrent(); `
|
|
152
|
+
+ `if ($current.User.Value -cne ${literal(receipt.windowsSid)}) {throw 'wsl_host_identity_conflict'}; `
|
|
153
|
+
+ lookup(receipt)
|
|
154
|
+
+ `function Assert-OwnedTask($value) { $actions=@($value.Actions); $triggers=@($value.Triggers); `
|
|
155
|
+
+ `$definition=[xml](Export-ScheduledTask -TaskPath '\\' -TaskName ${literal(receipt.taskName)} -ErrorAction Stop); `
|
|
156
|
+
+ `$principals=@($definition.Task.Principals.Principal); `
|
|
157
|
+
+ `if ($value.Description -cne ${literal(receipt.description)} -or $actions.Count -ne 1 `
|
|
158
|
+
+ `-or $actions[0].Execute -cne ${literal(action.executable)} -or $actions[0].Arguments -cne ${literal(action.arguments)} `
|
|
159
|
+
+ `-or $principals.Count -ne 1 -or $principals[0].UserId -cne $current.User.Value `
|
|
160
|
+
+ `-or [string]$value.Principal.LogonType -ne 'Interactive' -or [string]$value.Principal.RunLevel -ne 'Limited' `
|
|
161
|
+
+ `-or $triggers.Count -ne 1 -or $triggers[0].CimClass.CimClassName -ne 'MSFT_TaskLogonTrigger' -or !$triggers[0].Enabled `
|
|
162
|
+
+ `-or ($triggers[0].UserId -cne $current.User.Value -and $triggers[0].UserId -cne $current.Name) `
|
|
163
|
+
+ `-or [string]$value.Settings.MultipleInstances -ne 'IgnoreNew' `
|
|
164
|
+
+ `-or $value.Settings.ExecutionTimeLimit -ne 'PT0S' -or $value.Settings.RestartCount -ne 0 `
|
|
165
|
+
+ `-or $value.Settings.DisallowStartIfOnBatteries -or $value.Settings.StopIfGoingOnBatteries) {throw 'wsl_host_task_conflict'} }; `;
|
|
166
|
+
}
|
|
167
|
+
const renderState = `if ($null -eq $task) { @{exists=$false;enabled=$false;running=$false}|ConvertTo-Json -Compress } `
|
|
168
|
+
+ `else { Assert-OwnedTask $task; @{exists=$true;enabled=($task.State -ne 'Disabled');running=($task.State -eq 'Running')}|ConvertTo-Json -Compress }`;
|
|
169
|
+
async function query(options, receipt) {
|
|
170
|
+
const value = await invoke(options, taskPreamble(receipt, 'status') + renderState);
|
|
171
|
+
if (!object(value) || Object.keys(value).sort().join(',') !== 'enabled,exists,running'
|
|
172
|
+
|| Object.values(value).some(field => typeof field !== 'boolean'))
|
|
173
|
+
return fail();
|
|
174
|
+
if (!value.exists && (value.enabled || value.running) || value.running && !value.enabled)
|
|
175
|
+
return fail();
|
|
176
|
+
return value;
|
|
177
|
+
}
|
|
178
|
+
export async function assertWslHostPreflight(options) {
|
|
179
|
+
const current = await context(options);
|
|
180
|
+
if (!current)
|
|
181
|
+
return;
|
|
182
|
+
const target = await expected(options, current), previous = await saved(options);
|
|
183
|
+
if (previous && !sameReceipt(previous, target))
|
|
184
|
+
return fail(true);
|
|
185
|
+
const state = await query(options, target);
|
|
186
|
+
if (state.exists && !previous)
|
|
187
|
+
return fail(true);
|
|
188
|
+
}
|
|
189
|
+
export async function enableWslRelayHost(options) {
|
|
190
|
+
const current = await context(options);
|
|
191
|
+
if (!current)
|
|
192
|
+
return;
|
|
193
|
+
const target = await expected(options, current), previous = await saved(options);
|
|
194
|
+
if (previous && !sameReceipt(previous, target))
|
|
195
|
+
return fail(true);
|
|
196
|
+
const before = await query(options, target);
|
|
197
|
+
if (before.exists && !previous)
|
|
198
|
+
return fail(true);
|
|
199
|
+
await privateParent(options);
|
|
200
|
+
if (!previous)
|
|
201
|
+
await writeFile(receiptPath(options.home), `${JSON.stringify(target, null, 2)}\n`, { flag: 'wx', mode: 0o600 });
|
|
202
|
+
if (before.exists && before.enabled)
|
|
203
|
+
return;
|
|
204
|
+
// Preserve ownership before external mutation. Lost responses require readback,
|
|
205
|
+
// not replacement of a possibly foreign task.
|
|
206
|
+
const action = taskAction(target);
|
|
207
|
+
await invoke(options, taskPreamble(target, 'register')
|
|
208
|
+
+ `if ($null -ne $task) { Assert-OwnedTask $task; Enable-ScheduledTask -TaskPath '\\' -TaskName ${literal(target.taskName)}|Out-Null } else { `
|
|
209
|
+
+ `$action=New-ScheduledTaskAction -Execute ${literal(action.executable)} -Argument ${literal(action.arguments)}; `
|
|
210
|
+
+ `$trigger=New-ScheduledTaskTrigger -AtLogOn -User $current.Name; `
|
|
211
|
+
+ `$principal=New-ScheduledTaskPrincipal -UserId $current.Name -LogonType Interactive -RunLevel Limited; `
|
|
212
|
+
+ `$settings=New-ScheduledTaskSettingsSet -MultipleInstances IgnoreNew -ExecutionTimeLimit ([TimeSpan]::Zero) -AllowStartIfOnBatteries -DontStopIfGoingOnBatteries; `
|
|
213
|
+
+ `Register-ScheduledTask -TaskPath '\\' -TaskName ${literal(target.taskName)} -Description ${literal(target.description)} `
|
|
214
|
+
+ `-Action $action -Trigger $trigger -Principal $principal -Settings $settings|Out-Null }; `
|
|
215
|
+
+ lookup(target, true) + renderState);
|
|
216
|
+
const after = await query(options, target);
|
|
217
|
+
if (!after.exists || !after.enabled)
|
|
218
|
+
return fail();
|
|
219
|
+
}
|
|
220
|
+
export async function wslRelayHostStatus(options) {
|
|
221
|
+
const current = await context(options);
|
|
222
|
+
if (!current)
|
|
223
|
+
return null;
|
|
224
|
+
const previous = await saved(options);
|
|
225
|
+
if (!previous)
|
|
226
|
+
return fail();
|
|
227
|
+
const target = await expected(options, current);
|
|
228
|
+
if (!sameReceipt(previous, target))
|
|
229
|
+
return fail(true);
|
|
230
|
+
return query(options, target);
|
|
231
|
+
}
|
|
232
|
+
export async function startWslRelayHost(options) {
|
|
233
|
+
const current = await context(options);
|
|
234
|
+
if (!current)
|
|
235
|
+
return;
|
|
236
|
+
const target = await expected(options, current), previous = await saved(options);
|
|
237
|
+
if (!previous || !sameReceipt(previous, target))
|
|
238
|
+
return fail(true);
|
|
239
|
+
const before = await query(options, target);
|
|
240
|
+
if (!before.exists || !before.enabled)
|
|
241
|
+
return fail();
|
|
242
|
+
if (before.running)
|
|
243
|
+
return;
|
|
244
|
+
await invoke(options, taskPreamble(target, 'start') + `if ($null -eq $task) {throw 'wsl_host_missing'}; Assert-OwnedTask $task; `
|
|
245
|
+
+ `Start-ScheduledTask -TaskPath '\\' -TaskName ${literal(target.taskName)}; `
|
|
246
|
+
+ `for ($attempt=0; $attempt -lt 40; $attempt++) { ` + lookup(target, true)
|
|
247
|
+
+ `Assert-OwnedTask $task; if ($task.State -eq 'Running') {break}; Start-Sleep -Milliseconds 100 }; ` + renderState);
|
|
248
|
+
if (!(await query(options, target)).running)
|
|
249
|
+
return fail();
|
|
250
|
+
}
|
|
251
|
+
export async function disableWslRelayHost(options) {
|
|
252
|
+
const previous = await saved(options);
|
|
253
|
+
if (!previous)
|
|
254
|
+
return;
|
|
255
|
+
const current = await context(options);
|
|
256
|
+
if (!current)
|
|
257
|
+
return fail(true);
|
|
258
|
+
const target = await expected(options, current);
|
|
259
|
+
if (!sameReceipt(previous, target))
|
|
260
|
+
return fail(true);
|
|
261
|
+
await query(options, target);
|
|
262
|
+
await invoke(options, taskPreamble(target, 'disable') + `if ($null -ne $task) { Assert-OwnedTask $task; `
|
|
263
|
+
+ `Unregister-ScheduledTask -TaskPath '\\' -TaskName ${literal(target.taskName)} -Confirm:$false }; `
|
|
264
|
+
+ lookup(target) + renderState);
|
|
265
|
+
if ((await query(options, target)).exists)
|
|
266
|
+
return fail();
|
|
267
|
+
await rm(receiptPath(options.home));
|
|
268
|
+
}
|
|
269
|
+
//# sourceMappingURL=wslRelayHost.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wslRelayHost.js","sourceRoot":"","sources":["../src/wslRelayHost.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wslRelayHost.test.d.ts","sourceRoot":"","sources":["../src/wslRelayHost.test.ts"],"names":[],"mappings":""}
|