@dharma-ai-labs/agent-fabric 0.2.210 → 0.2.211

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (55) hide show
  1. package/dist/containerRelayLifecycle.d.ts +1 -0
  2. package/dist/containerRelayLifecycle.d.ts.map +1 -1
  3. package/dist/containerRelayLifecycle.js +12 -0
  4. package/dist/containerRelayLifecycle.js.map +1 -1
  5. package/dist/containerRelayLifecycle.test.js +38 -6
  6. package/dist/containerRelayLifecycle.test.js.map +1 -1
  7. package/dist/containerRelayRuntimeTrust.test.js +10 -0
  8. package/dist/containerRelayRuntimeTrust.test.js.map +1 -1
  9. package/dist/index.d.ts.map +1 -1
  10. package/dist/index.js +117 -7
  11. package/dist/index.js.map +1 -1
  12. package/dist/maintenanceControlCaller.test.d.ts +2 -0
  13. package/dist/maintenanceControlCaller.test.d.ts.map +1 -0
  14. package/dist/maintenanceControlCaller.test.js +119 -0
  15. package/dist/maintenanceControlCaller.test.js.map +1 -0
  16. package/dist/namedSessionStoppedLock.d.ts +34 -0
  17. package/dist/namedSessionStoppedLock.d.ts.map +1 -0
  18. package/dist/namedSessionStoppedLock.js +108 -0
  19. package/dist/namedSessionStoppedLock.js.map +1 -0
  20. package/dist/namedSessionStoppedLock.test.d.ts +2 -0
  21. package/dist/namedSessionStoppedLock.test.d.ts.map +1 -0
  22. package/dist/namedSessionStoppedLock.test.js +104 -0
  23. package/dist/namedSessionStoppedLock.test.js.map +1 -0
  24. package/dist/relayAutostart.d.ts +3 -0
  25. package/dist/relayAutostart.d.ts.map +1 -1
  26. package/dist/relayAutostart.js +45 -6
  27. package/dist/relayAutostart.js.map +1 -1
  28. package/dist/relayAutostart.test.js +49 -1
  29. package/dist/relayAutostart.test.js.map +1 -1
  30. package/dist/relayRuntimeUpgrade.d.ts +1 -0
  31. package/dist/relayRuntimeUpgrade.d.ts.map +1 -1
  32. package/dist/relayRuntimeUpgrade.js +3 -3
  33. package/dist/relayRuntimeUpgrade.js.map +1 -1
  34. package/dist/relayRuntimeUpgradeCaller.test.js +76 -0
  35. package/dist/relayRuntimeUpgradeCaller.test.js.map +1 -1
  36. package/dist/relaySigningMaintenanceUpgrade.d.ts +44 -0
  37. package/dist/relaySigningMaintenanceUpgrade.d.ts.map +1 -0
  38. package/dist/relaySigningMaintenanceUpgrade.js +249 -0
  39. package/dist/relaySigningMaintenanceUpgrade.js.map +1 -0
  40. package/dist/relaySigningMaintenanceUpgrade.test.d.ts +2 -0
  41. package/dist/relaySigningMaintenanceUpgrade.test.d.ts.map +1 -0
  42. package/dist/relaySigningMaintenanceUpgrade.test.js +230 -0
  43. package/dist/relaySigningMaintenanceUpgrade.test.js.map +1 -0
  44. package/dist/schemas/local-signing-maintenance-upgrade-journal.schema.json +34 -0
  45. package/dist/schemas/local-signing-maintenance-upgrade.schema.json +33 -0
  46. package/dist/usage.d.ts.map +1 -1
  47. package/dist/usage.js +3 -2
  48. package/dist/usage.js.map +1 -1
  49. package/dist/wslRelayHost.d.ts +2 -0
  50. package/dist/wslRelayHost.d.ts.map +1 -1
  51. package/dist/wslRelayHost.js +35 -0
  52. package/dist/wslRelayHost.js.map +1 -1
  53. package/dist/wslRelayHost.test.js +81 -4
  54. package/dist/wslRelayHost.test.js.map +1 -1
  55. package/package.json +1 -1
@@ -0,0 +1,230 @@
1
+ import assert from 'node:assert/strict';
2
+ import { createHash } from 'node:crypto';
3
+ import { mkdir, mkdtemp, readFile, realpath, writeFile } from 'node:fs/promises';
4
+ import { tmpdir } from 'node:os';
5
+ import { join } from 'node:path';
6
+ import test from 'node:test';
7
+ import { upgradeRelayRuntime } from './relayRuntimeUpgrade.js';
8
+ import { validateContract } from '@dharma-ai-labs/agent-fabric-contracts';
9
+ import { commandExitCode } from './index.js';
10
+ const modulePath = './relaySigningMaintenanceUpgrade.js';
11
+ const hash = (value) => 'sha256:' + createHash('sha256').update(value).digest('hex');
12
+ const contents = (version) => ({ shell: `#!/bin/sh\n# verified ${version}\n`, windows: `@echo off\r\nrem verified ${version}\r\n` });
13
+ async function fixture() {
14
+ const root = await realpath(await mkdtemp(join(tmpdir(), 'relay-signing-maintenance-')));
15
+ const home = join(root, 'home'), workspace = join(root, 'repo');
16
+ await mkdir(join(workspace, '.dharma', 'bin'), { recursive: true });
17
+ await mkdir(join(home, 'relay'), { recursive: true });
18
+ const input = { home, workspace, organizationId: 'org_fixture', deviceId: '11111111-1111-4111-8111-111111111111',
19
+ workspaceId: '22222222-2222-4222-8222-222222222222', version: '0.2.211', trustGeneration: 2 };
20
+ let version = '0.2.207';
21
+ const calls = [];
22
+ const old = contents(version);
23
+ for (const [name, value] of Object.entries({ dharma: old.shell, 'dharma.cmd': old.windows }))
24
+ await writeFile(join(workspace, '.dharma', 'bin', name), value);
25
+ const deps = { assertStopped: async () => { calls.push('stopped'); }, assertNamedDisabled: async () => { calls.push('named-disabled'); },
26
+ assertStartupPaused: async () => { calls.push('paused'); },
27
+ inspectStartup: async () => ({ version, workspace }), configureStartup: async (next) => { calls.push('configure:' + next); version = next; },
28
+ stageStartup: async (next) => { calls.push('stage:' + next); version = next; },
29
+ launcherContents: contents, verifyPriorLaunchers: async (v, c) => JSON.stringify(c) === JSON.stringify(contents(v)),
30
+ verifyRecoveryLaunchers: async (v, c) => JSON.stringify(c) === JSON.stringify(contents(v)),
31
+ start: async () => { calls.push('start'); }, stop: async () => { calls.push('stop'); },
32
+ verify: async (v) => { calls.push('verify:' + v); }, assertRecoveredTrust: async (generation) => { calls.push('trust:' + generation); } };
33
+ return { input, deps, calls, old, currentVersion: () => version };
34
+ }
35
+ test('expired-signing upgrade stages offline without inventing a successful poll or starting a receiver', async () => {
36
+ const { upgradeRelayForSigningMaintenance } = await import(modulePath);
37
+ const f = await fixture();
38
+ const result = await upgradeRelayForSigningMaintenance({ ...f.input, dryRun: false }, f.deps);
39
+ assert.equal(result.state, 'staged');
40
+ assert.equal(result.upgradeComplete, false);
41
+ assert.equal(result.ready, false);
42
+ assert.equal(result.runtimeObservation, 'not_performed');
43
+ assert.equal(result.nativeContinuationAuthorized, false);
44
+ assert.equal(f.currentVersion(), f.input.version);
45
+ assert(!f.calls.includes('start'));
46
+ assert(!f.calls.some(v => v.startsWith('trust:') || v.startsWith('verify:')));
47
+ assert(f.calls.indexOf('stage:0.2.207') < f.calls.indexOf('stage:0.2.211'));
48
+ await assert.rejects(readFile(join(f.input.home, 'relay', 'runtime-upgrade.json')), /ENOENT/);
49
+ });
50
+ test('the default plan and repeated staging preserve public bytes and never start a receiver', async () => {
51
+ const { upgradeRelayForSigningMaintenance } = await import(modulePath);
52
+ const f = await fixture();
53
+ const plan = await upgradeRelayForSigningMaintenance({ ...f.input, dryRun: true }, f.deps);
54
+ assert.equal(plan.state, 'planned');
55
+ assert.equal(f.currentVersion(), '0.2.207');
56
+ assert(!f.calls.some(v => v.startsWith('configure:') || v.startsWith('stage:')));
57
+ await assert.rejects(readFile(join(f.input.home, 'relay', 'signing-maintenance-upgrade.json')), /ENOENT/);
58
+ const first = await upgradeRelayForSigningMaintenance(f.input, f.deps);
59
+ const bytes = await readFile(join(f.input.home, 'relay', 'signing-maintenance-upgrade.json'), 'utf8');
60
+ f.calls.length = 0;
61
+ const second = await upgradeRelayForSigningMaintenance(f.input, f.deps);
62
+ assert.equal(second.upgradeId, first.upgradeId);
63
+ assert.equal(second.state, 'staged');
64
+ assert.equal(await readFile(join(f.input.home, 'relay', 'signing-maintenance-upgrade.json'), 'utf8'), bytes);
65
+ assert(!f.calls.some(v => v === 'start' || v.startsWith('configure:') || v.startsWith('stage:')));
66
+ });
67
+ test('a failed legacy rollback cannot be erased or retried by a new release', async () => {
68
+ const { upgradeRelayForSigningMaintenance } = await import(modulePath);
69
+ const f = await fixture();
70
+ const legacy = await upgradeRelayRuntime({ ...f.input, version: '0.2.209' }, { ...f.deps, verify: async () => { throw Error('expired signer'); } });
71
+ assert.equal(legacy.state, 'rollback_failed');
72
+ assert.equal(f.currentVersion(), '0.2.207');
73
+ const path = join(f.input.home, 'relay', 'runtime-upgrade.json'), bytes = await readFile(path, 'utf8');
74
+ f.calls.length = 0;
75
+ await assert.rejects(upgradeRelayForSigningMaintenance(f.input, f.deps), /prior_failure_custody_required/);
76
+ await assert.rejects(upgradeRelayForSigningMaintenance({ ...f.input, previousUpgradeSha256: hash(bytes + 'tampered') }, f.deps), /prior_failure_custody_required/);
77
+ assert.equal(await readFile(path, 'utf8'), bytes);
78
+ assert(!f.calls.some(v => v.startsWith('configure:') || v.startsWith('stage:') || v === 'start'));
79
+ const staged = await upgradeRelayForSigningMaintenance({ ...f.input, previousUpgradeSha256: hash(bytes) }, f.deps);
80
+ assert.equal(staged.state, 'staged');
81
+ assert.equal(await readFile(path, 'utf8'), bytes);
82
+ assert.equal(await readFile(join(f.input.home, 'relay', staged.priorJournalArchive), 'utf8'), bytes);
83
+ });
84
+ test('changed or half-restored failed journals are refused before launcher or startup mutation', async () => {
85
+ const { upgradeRelayForSigningMaintenance } = await import(modulePath);
86
+ for (const change of ['launcher', 'context', 'state']) {
87
+ const f = await fixture();
88
+ await upgradeRelayRuntime({ ...f.input, version: '0.2.209' }, { ...f.deps, verify: async () => { throw Error('offline'); } });
89
+ const path = join(f.input.home, 'relay', 'runtime-upgrade.json');
90
+ let bytes = await readFile(path, 'utf8');
91
+ if (change === 'launcher')
92
+ await writeFile(join(f.input.workspace, '.dharma', 'bin', 'dharma'), contents('0.2.209').shell);
93
+ if (change === 'state') {
94
+ const value = JSON.parse(bytes);
95
+ value.state = 'installed';
96
+ bytes = JSON.stringify(value);
97
+ await writeFile(path, bytes, { mode: 0o600 });
98
+ }
99
+ f.calls.length = 0;
100
+ await assert.rejects(upgradeRelayForSigningMaintenance({ ...f.input, previousUpgradeSha256: hash(bytes) }, { ...f.deps, ...(change === 'context' ? { inspectStartup: async () => ({ version: '0.2.207', workspace: f.input.workspace, codexHome: '/different/profile' }) } : {}) }), /prior_failure_custody_required|launcher_conflict|context_conflict/);
101
+ assert.equal(await readFile(path, 'utf8'), bytes);
102
+ assert(!f.calls.some(v => v.startsWith('configure:') || v.startsWith('stage:') || v === 'start'));
103
+ }
104
+ });
105
+ test('finish requires recovered trust and a genuine current-version receiver verification', async () => {
106
+ const { upgradeRelayForSigningMaintenance } = await import(modulePath);
107
+ const f = await fixture();
108
+ await upgradeRelayForSigningMaintenance(f.input, f.deps);
109
+ f.calls.length = 0;
110
+ await assert.rejects(upgradeRelayForSigningMaintenance({ ...f.input, finish: true }, { ...f.deps, assertRecoveredTrust: async () => { throw Error('trust still expired'); } }), /trust still expired/);
111
+ assert(!f.calls.includes('start'));
112
+ const result = await upgradeRelayForSigningMaintenance({ ...f.input, finish: true }, f.deps);
113
+ assert.equal(result.state, 'completed');
114
+ assert.equal(result.upgradeComplete, true);
115
+ assert.equal(result.ready, false);
116
+ assert(f.calls.indexOf('trust:2') < f.calls.indexOf('start'));
117
+ assert(f.calls.includes('verify:0.2.211'));
118
+ const ordinary = JSON.parse(await readFile(join(f.input.home, 'relay', 'runtime-upgrade.json'), 'utf8'));
119
+ assert.equal(ordinary.state, 'completed');
120
+ assert.equal(ordinary.version, f.input.version);
121
+ });
122
+ test('a failed finish preserves its attempt and cannot automatically resume or restart old expired services', async () => {
123
+ const { upgradeRelayForSigningMaintenance } = await import(modulePath);
124
+ const f = await fixture();
125
+ await upgradeRelayForSigningMaintenance(f.input, f.deps);
126
+ f.calls.length = 0;
127
+ const failed = await upgradeRelayForSigningMaintenance({ ...f.input, finish: true }, { ...f.deps, verify: async () => { throw Error('no current poll'); } });
128
+ assert.equal(failed.state, 'finish_failed');
129
+ assert.equal(failed.upgradeComplete, false);
130
+ assert.equal(f.calls.filter(v => v === 'start').length, 1);
131
+ assert.equal(f.calls.filter(v => v === 'stop').length, 1);
132
+ await assert.rejects(upgradeRelayForSigningMaintenance({ ...f.input, finish: true }, f.deps), /reconciliation_required/);
133
+ assert.equal(f.calls.filter(v => v === 'start').length, 1);
134
+ });
135
+ test('staging rejects active or enabled named sessions and never removes old service locks', async () => {
136
+ const { upgradeRelayForSigningMaintenance } = await import(modulePath);
137
+ for (const boundary of ['assertStopped', 'assertNamedDisabled']) {
138
+ const f = await fixture();
139
+ await assert.rejects(upgradeRelayForSigningMaintenance(f.input, { ...f.deps, [boundary]: async () => { throw Error('not quiescent'); } }), /not quiescent/);
140
+ assert(!f.calls.some(v => v === 'start' || v.startsWith('configure:') || v.startsWith('stage:')));
141
+ assert.equal(await readFile(join(f.input.workspace, '.dharma', 'bin', 'dharma'), 'utf8'), f.old.shell);
142
+ }
143
+ });
144
+ test('staging failure restores verified public files without opening protected stores or starting the old relay', async () => {
145
+ const { upgradeRelayForSigningMaintenance } = await import(modulePath);
146
+ const f = await fixture();
147
+ let failed = false;
148
+ const result = await upgradeRelayForSigningMaintenance(f.input, { ...f.deps, stageStartup: async (v) => {
149
+ if (!failed) {
150
+ failed = true;
151
+ throw Error('configuration write failed');
152
+ }
153
+ return f.deps.stageStartup(v);
154
+ } });
155
+ assert.equal(result.state, 'staging_reverted');
156
+ assert.equal(result.upgradeComplete, false);
157
+ assert.equal(f.currentVersion(), '0.2.207');
158
+ assert.equal(await readFile(join(f.input.workspace, '.dharma', 'bin', 'dharma'), 'utf8'), f.old.shell);
159
+ assert(!f.calls.includes('start'));
160
+ assert(!f.calls.some(v => v.startsWith('trust:')));
161
+ });
162
+ test('stage and finish receipts and the persistent journal match their bounded contracts', async () => {
163
+ const { upgradeRelayForSigningMaintenance } = await import(modulePath);
164
+ const f = await fixture();
165
+ const schemaRoot = join(import.meta.dirname, 'schemas');
166
+ const staged = await upgradeRelayForSigningMaintenance(f.input, f.deps);
167
+ const journal = JSON.parse(await readFile(join(f.input.home, 'relay', 'signing-maintenance-upgrade.json'), 'utf8'));
168
+ assert.equal((await validateContract(schemaRoot, 'https://schemas.dharma-ai.io/local-signing-maintenance-upgrade/v1', staged)).ok, true);
169
+ assert.equal((await validateContract(schemaRoot, 'https://schemas.dharma-ai.io/local-signing-maintenance-upgrade-journal/v1', journal)).ok, true);
170
+ assert.equal((await validateContract(schemaRoot, 'https://schemas.dharma-ai.io/local-signing-maintenance-upgrade/v1', { ...staged, upgradeComplete: true })).ok, false);
171
+ assert.equal((await validateContract(schemaRoot, 'https://schemas.dharma-ai.io/local-signing-maintenance-upgrade-journal/v1', { ...journal, password: 'SYNTHETIC_FORBIDDEN' })).ok, false);
172
+ const completed = await upgradeRelayForSigningMaintenance({ ...f.input, finish: true }, f.deps);
173
+ assert.equal((await validateContract(schemaRoot, 'https://schemas.dharma-ai.io/local-signing-maintenance-upgrade/v1', completed)).ok, true);
174
+ });
175
+ test('journal, launcher and original-history changes prevent finish before trust access or service start', async () => {
176
+ const { upgradeRelayForSigningMaintenance } = await import(modulePath);
177
+ for (const change of ['journal', 'launcher', 'legacy']) {
178
+ const f = await fixture();
179
+ await upgradeRelayForSigningMaintenance(f.input, f.deps);
180
+ if (change === 'journal') {
181
+ const path = join(f.input.home, 'relay', 'signing-maintenance-upgrade.json');
182
+ const body = JSON.parse(await readFile(path, 'utf8'));
183
+ body.deviceId = '33333333-3333-4333-8333-333333333333';
184
+ await writeFile(path, JSON.stringify(body), { mode: 0o600 });
185
+ }
186
+ else if (change === 'launcher')
187
+ await writeFile(join(f.input.workspace, '.dharma', 'bin', 'dharma'), contents('0.2.209').shell);
188
+ else
189
+ await writeFile(join(f.input.home, 'relay', 'runtime-upgrade.json'), '{}', { mode: 0o600 });
190
+ f.calls.length = 0;
191
+ await assert.rejects(upgradeRelayForSigningMaintenance({ ...f.input, finish: true }, f.deps), /journal_unavailable|launcher_conflict|prior_journal_changed/);
192
+ assert(!f.calls.some(v => v === 'start' || v.startsWith('trust:')));
193
+ }
194
+ });
195
+ test('staging exit status cannot relabel an unfinished or failed finish as success', () => {
196
+ const base = { schema: 'dharma.local-signing-maintenance-upgrade/v1', ready: false, nativeContinuationAuthorized: false };
197
+ const stage = ['relay', 'upgrade', '--stage-signing-maintenance', '--apply'];
198
+ const finish = ['relay', 'upgrade', '--finish-signing-maintenance', '--apply'];
199
+ assert.equal(commandExitCode(stage, { ...base, state: 'staged', upgradeComplete: false }), 0);
200
+ assert.equal(commandExitCode(finish, { ...base, state: 'staged', upgradeComplete: false }), 2);
201
+ assert.equal(commandExitCode(finish, { ...base, state: 'completed', upgradeComplete: true }), 0);
202
+ for (const state of ['staging_failed', 'finish_failed', 'staging_reverted']) {
203
+ assert.equal(commandExitCode(stage, { ...base, state, upgradeComplete: false }), 2);
204
+ assert.equal(commandExitCode(finish, { ...base, state, upgradeComplete: false }), 2);
205
+ }
206
+ assert.equal(commandExitCode(stage, { ...base, state: 'staged', upgradeComplete: false, ready: true }), 2);
207
+ });
208
+ test('startup is paused and independently verified before either launcher can change', async () => {
209
+ const { upgradeRelayForSigningMaintenance } = await import(modulePath);
210
+ const f = await fixture();
211
+ const result = await upgradeRelayForSigningMaintenance(f.input, { ...f.deps,
212
+ stageStartup: async (v) => {
213
+ assert.equal(await readFile(join(f.input.workspace, '.dharma', 'bin', 'dharma'), 'utf8'), v === '0.2.207' ? f.old.shell : contents(f.input.version).shell);
214
+ await f.deps.stageStartup(v);
215
+ },
216
+ assertStartupPaused: async () => { f.calls.push('paused'); assert(!f.calls.includes('start')); } });
217
+ assert.equal(result.state, 'staged');
218
+ const firstPause = f.calls.indexOf('paused'), writeTarget = f.calls.indexOf('stage:0.2.211');
219
+ assert(firstPause >= 0 && firstPause < writeTarget);
220
+ });
221
+ test('unconfirmed pause cannot mutate launchers or open protected trust', async () => {
222
+ const { upgradeRelayForSigningMaintenance } = await import(modulePath);
223
+ const f = await fixture();
224
+ const result = await upgradeRelayForSigningMaintenance(f.input, { ...f.deps, assertStartupPaused: async () => { throw Error('pause not acknowledged'); } });
225
+ assert.equal(result.state, 'staging_failed');
226
+ assert.equal(await readFile(join(f.input.workspace, '.dharma', 'bin', 'dharma'), 'utf8'), f.old.shell);
227
+ assert(!f.calls.includes('start'));
228
+ assert(!f.calls.some(v => v.startsWith('trust:')));
229
+ });
230
+ //# sourceMappingURL=relaySigningMaintenanceUpgrade.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"relaySigningMaintenanceUpgrade.test.js","sourceRoot":"","sources":["../src/relaySigningMaintenanceUpgrade.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,34 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://schemas.dharma-ai.io/local-signing-maintenance-upgrade-journal/v1",
4
+ "type": "object",
5
+ "additionalProperties": false,
6
+ "required": ["schema", "upgradeId", "organizationId", "deviceId", "workspaceId", "workspace", "version", "previousVersion", "previousCodexHome", "previous", "next", "previousHash", "nextHash", "priorJournalSha256", "priorJournalArchive", "trustGeneration", "createdAt", "updatedAt", "state"],
7
+ "properties": {
8
+ "schema": {"const": "dharma.local-signing-maintenance-upgrade-journal/v1"},
9
+ "upgradeId": {"type": "string", "format": "uuid"},
10
+ "organizationId": {"type": "string", "pattern": "^[A-Za-z0-9][A-Za-z0-9_-]{0,199}$"},
11
+ "deviceId": {"type": "string", "format": "uuid"},
12
+ "workspaceId": {"type": "string", "format": "uuid"},
13
+ "workspace": {"type": "string", "maxLength": 4096},
14
+ "version": {"type": "string", "maxLength": 64, "pattern": "^[0-9]+\\.[0-9]+\\.[0-9]+(?:-[A-Za-z0-9.-]+)?$"},
15
+ "previousVersion": {"type": "string", "maxLength": 64, "pattern": "^[0-9]+\\.[0-9]+\\.[0-9]+(?:-[A-Za-z0-9.-]+)?$"},
16
+ "previousCodexHome": {"type": ["string", "null"], "maxLength": 4096},
17
+ "previous": {"$ref": "#/$defs/launchers"},
18
+ "next": {"$ref": "#/$defs/launchers"},
19
+ "previousHash": {"type": "string", "pattern": "^sha256:[a-f0-9]{64}$"},
20
+ "nextHash": {"type": "string", "pattern": "^sha256:[a-f0-9]{64}$"},
21
+ "priorJournalSha256": {"type": ["string", "null"], "pattern": "^sha256:[a-f0-9]{64}$"},
22
+ "priorJournalArchive": {"type": ["string", "null"], "pattern": "^runtime-upgrade\\.[a-f0-9-]{36}\\.[a-f0-9]{64}\\.history\\.json$"},
23
+ "trustGeneration": {"type": "integer", "minimum": 1},
24
+ "createdAt": {"type": "string", "format": "date-time"},
25
+ "updatedAt": {"type": "string", "format": "date-time"},
26
+ "state": {"enum": ["prepared", "staged", "finishing", "completed", "staging_reverted", "staging_failed", "finish_failed"]}
27
+ },
28
+ "$defs": {
29
+ "launchers": {
30
+ "type": "object", "additionalProperties": false, "required": ["shell", "windows"],
31
+ "properties": {"shell": {"type": "string", "maxLength": 16384}, "windows": {"type": "string", "maxLength": 16384}}
32
+ }
33
+ }
34
+ }
@@ -0,0 +1,33 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://schemas.dharma-ai.io/local-signing-maintenance-upgrade/v1",
4
+ "type": "object",
5
+ "additionalProperties": false,
6
+ "required": ["schema", "upgradeId", "organizationId", "deviceId", "workspaceId", "version", "previousVersion", "state", "upgradeComplete", "runtimeObservation", "ready", "nativeContinuationAuthorized", "priorJournalArchive", "priorJournalSha256", "createdAt"],
7
+ "properties": {
8
+ "schema": {"const": "dharma.local-signing-maintenance-upgrade/v1"},
9
+ "upgradeId": {"type": "string", "format": "uuid"},
10
+ "organizationId": {"type": "string", "pattern": "^[A-Za-z0-9][A-Za-z0-9_-]{0,199}$"},
11
+ "deviceId": {"type": "string", "format": "uuid"},
12
+ "workspaceId": {"type": "string", "format": "uuid"},
13
+ "version": {"type": "string", "maxLength": 64, "pattern": "^[0-9]+\\.[0-9]+\\.[0-9]+(?:-[A-Za-z0-9.-]+)?$"},
14
+ "previousVersion": {"type": "string", "maxLength": 64, "pattern": "^[0-9]+\\.[0-9]+\\.[0-9]+(?:-[A-Za-z0-9.-]+)?$"},
15
+ "state": {"enum": ["planned", "prepared", "staged", "finishing", "completed", "staging_reverted", "staging_failed", "finish_failed"]},
16
+ "upgradeComplete": {"type": "boolean"},
17
+ "runtimeObservation": {"enum": ["not_performed", "unconfirmed", "local_process_and_poll"]},
18
+ "ready": {"const": false},
19
+ "nativeContinuationAuthorized": {"const": false},
20
+ "priorJournalArchive": {"type": ["string", "null"], "pattern": "^runtime-upgrade\\.[a-f0-9-]{36}\\.[a-f0-9]{64}\\.history\\.json$"},
21
+ "priorJournalSha256": {"type": ["string", "null"], "pattern": "^sha256:[a-f0-9]{64}$"},
22
+ "createdAt": {"type": "string", "format": "date-time"}
23
+ },
24
+ "allOf": [
25
+ {"if": {"properties": {"state": {"const": "completed"}}},
26
+ "then": {"properties": {"upgradeComplete": {"const": true}, "runtimeObservation": {"const": "local_process_and_poll"}}},
27
+ "else": {"properties": {"upgradeComplete": {"const": false}}}},
28
+ {"if": {"properties": {"state": {"enum": ["planned", "prepared", "staged", "staging_reverted"]}}},
29
+ "then": {"properties": {"runtimeObservation": {"const": "not_performed"}}}},
30
+ {"if": {"properties": {"state": {"enum": ["finishing", "staging_failed", "finish_failed"]}}},
31
+ "then": {"properties": {"runtimeObservation": {"const": "unconfirmed"}}}}
32
+ ]
33
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"usage.d.ts","sourceRoot":"","sources":["../src/usage.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,SAAS,QAM46B,CAAC"}
1
+ {"version":3,"file":"usage.d.ts","sourceRoot":"","sources":["../src/usage.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,SAAS,QAOw7B,CAAC"}
package/dist/usage.js CHANGED
@@ -1,9 +1,10 @@
1
- const COMMAND_USAGE = 'Usage: dharma <bootstrap|onboard|login|status|signing-recovery|sessions start|sessions status|sessions readiness|sessions work|sessions stop|sessions audit|demo connect|demo transport-connect|demo status|demo package|demo package-status|demo watch|demo watch-enable|demo watch-status|demo watch-disable|demo role|demo peers|demo ask|demo reply|demo inbox|demo ack|demo resume|demo signing-client-proof|demo signing-owner-proof|providers list|repositories discover|repositories connect|repositories list|repositories status|repositories snapshot|repositories recover-installer|repositories role-register|repositories role-discover|repositories ask|repositories reply|workspace add|workspace sync|workspace recover-registry|evidence preview|evidence capture|evidence capture-batch|evidence sync|evidence run-request|relay container-entrypoint|relay probe|relay start|relay stop|relay upgrade|relay autostart status|relay autostart disable|assistant chat|assistant history|assistant status|assistant approve|assistant reject|organization status|agents list|agents bind-runtime|evaluations validate|evaluations launch|evaluations status|evaluations results|experiments list|experiments run|failures list|remediations list|remediations act|tasks list|tasks dispatch|handoffs list|skills list|skills release|skills rollout|skills rollback|skills sync|skills status|skills verify|usage list> [options]';
1
+ const COMMAND_USAGE = 'Usage: dharma <bootstrap|onboard|login|status|signing-recovery|sessions start|sessions status|sessions readiness|sessions work|sessions stop|sessions reconcile-stopped-lock|sessions audit|demo connect|demo transport-connect|demo status|demo package|demo package-status|demo watch|demo watch-enable|demo watch-status|demo watch-disable|demo role|demo peers|demo ask|demo reply|demo inbox|demo ack|demo resume|demo signing-client-proof|demo signing-owner-proof|providers list|repositories discover|repositories connect|repositories list|repositories status|repositories snapshot|repositories recover-installer|repositories role-register|repositories role-discover|repositories ask|repositories reply|workspace add|workspace sync|workspace recover-registry|evidence preview|evidence capture|evidence capture-batch|evidence sync|evidence run-request|relay container-entrypoint|relay probe|relay start|relay stop|relay upgrade|relay autostart status|relay autostart pause|relay autostart disable|assistant chat|assistant history|assistant status|assistant approve|assistant reject|organization status|agents list|agents bind-runtime|evaluations validate|evaluations launch|evaluations status|evaluations results|experiments list|experiments run|failures list|remediations list|remediations act|tasks list|tasks dispatch|handoffs list|skills list|skills release|skills rollout|skills rollback|skills sync|skills status|skills verify|usage list> [options]';
2
2
  export const CLI_USAGE = COMMAND_USAGE + '\n\nLinux named-Codex setup entry: setup codex --portal-context-sha256 <copied-context-hash> --portal-prompt-sha256 <copied-public-prompt-checksum> --portal-url <origin> --organization-id <org> --setup-reference <public-reference> --workspace <checkout> [--maximum-provider-cost-cents <1..25>] [--dry-run]. Fetches and verifies canonical public portal instructions; this is not attestation of the enclosing human message. Alternatively, legacy --stdin requires the entire original public prompt and cannot combine with either portal hash. No file, secret or human terminal entry. Requires the intended qualified private DHARMA_HOME and existing CODEX_HOME. This starts an owned named setup session with the bound tool; it does not attach to an existing desktop chat. Matching-recipient browser device approval remains required. A refused/expired/interrupted attempt is not retried. Dry-run verifies only public preparation, not execution admission or readiness. The local reservation is conservative unresolved exposure, not an invoice cap.\n\nAgent setup compatibility: bootstrap --setup-reference <public-reference> --setup-recipient-membership-id <membership> --setup-scope-digest <sha256> --setup-contract-digest <sha256> --complete [exact source/portal options]. Run inside the coding agent; approve the exact device in the browser. No terminal secret input. --dry-run produces a grant-free plan. Reference setup cannot combine with --grant, --grant-prompt, --resume, replacement, join or disabled relay startup. Legacy private setup: bootstrap --grant-prompt [exact portal options], with USER-only private terminal entry. Enrolled recovery: bootstrap --resume --complete [exact scoped options], with no grant/reference.'
3
3
  + '\n\nReturning device: login --unattended opts in to reuse the approved identity; login --no-unattended disables automatic selection; --dry-run plans either change. login --resume connects once without opting in. login --reauthenticate explicitly requests fresh browser approval for the original protected identity to recover its enrollment anchor; it never replaces keys or configuration. Opted-in bootstrap --complete can omit grants only for the same registered repository and approved policy revision. A compatible membership-guarded server admission response is required. Device admission does not sign in a provider or establish repository readiness. Standing relay lifecycle remains controlled by relay autostart commands.'
4
4
  + '\n\nRepository source conflicts: repositories source-resolve --workspace-id <workspace> [--dry-run | --prepare | --apply --plan-hash <sha256> --choose-reviewed-local]. Default is a read-only plan. Review and merge authorized source before preparation; approval is exact-input, expires after 15 minutes and does not publish. Existing relay/evaluation/signing gates remain required.'
5
5
  + '\n\nAfter a clear-baseline rollback: repositories restore --workspace-id <workspace> --dry-run reads a current-policy stable signed catalog and plans a fresh candidate. With the owned relay stopped, --apply --plan-hash <reviewed-hash> submits that exact plan through normal evaluation/signing. It never reactivates an archived release, changes enrollment or resets history. Resume the owned relay only after submission; readiness and activation remain separate checks.'
6
6
  + '\n\nFor an unresolved restoration upload, an empty lookup is not cancellation. With the owned relay stopped, --apply --plan-hash <original-hash> --fence-upload requests metadata-only fencing under current authority. An admitted operation is returned for ordinary recovery; only a terminal server fence permits checkpoint archival and a new dry-run plan. Fencing does not upload source or activate a release.'
7
7
  + '\n\nRead-only named-session diagnosis: sessions readiness --name <registered-name> --workspace-id <workspace> --diagnostic. Uses the existing owner and unchanged readiness request; never starts a session, runs a model turn or grants access. A closed local failure receipt exits 2 and is not native readiness or permission to retry/restart. No passwords, socket paths or arbitrary remote errors are returned.'
8
- + '\n\nDevice signing-trust maintenance: signing-recovery --name <original-name> --workspace-id <workspace> plans without protected-store or network access. --apply --operation-id <fresh-public-UUID> requires the same disabled/stopped original session, protected device and binding, an exclusive device signing-control lease, current source, and fresh recipient plus organization-owner browser consent. The agent controls its existing process with bounded JSONL frames: {"schema":"dharma.device-signing-maintenance-control/v1","operationId":"<same-public-UUID>","action":"progress|complete|status|cancel"}. Use complete only after the exact browser publication receipt. No password, grant, provider login, task, session enable or service restart is accepted. An uncertain action is not automatically retried. Successful trust installation still reports ready:false and nativeContinuationAuthorized:false; ordinary native/task qualification remains separate.';
8
+ + '\n\nDevice signing-trust maintenance: signing-recovery --name <original-name> --workspace-id <workspace> plans without protected-store or network access. --apply --operation-id <fresh-public-UUID> requires the same disabled/stopped original session, protected device and binding, an exclusive device signing-control lease, current source, and fresh recipient plus organization-owner browser consent. The agent controls its existing process with bounded JSONL frames: {"schema":"dharma.device-signing-maintenance-control/v1","operationId":"<same-public-UUID>","action":"progress|complete|status|cancel"}. Use complete only after the exact browser publication receipt. No password, grant, provider login, task, session enable or service restart is accepted. An uncertain action is not automatically retried. Successful trust installation still reports ready:false and nativeContinuationAuthorized:false; ordinary native/task qualification remains separate.'
9
+ + '\n\nLinux signing-maintenance runtime staging: relay upgrade --workspace <owned-checkout> --stage-signing-maintenance plans an offline upgrade of verified launchers/startup with all owned receivers stopped and the original named session disabled. --apply stages only; it never opens protected storage, starts a receiver or reports a completed upgrade. A prior failed rollback additionally requires --previous-upgrade-sha256 <exact-local-public-journal-hash>, verified restored files/context, and immutable journal archival. Normal signing-recovery remains separately required. After actual trust recovery, relay upgrade --workspace <same-checkout> --finish-signing-maintenance --apply verifies the recovered protected anchor, starts once and requires a fresh current-process poll before completion. Failed or ambiguous finish is retained without automatic retry. No customer terminal input, password, grant or enrollment replacement is part of this maintenance path.';
9
10
  //# sourceMappingURL=usage.js.map
package/dist/usage.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"usage.js","sourceRoot":"","sources":["../src/usage.ts"],"names":[],"mappings":"AAAA,MAAM,aAAa,GAAG,o3CAAo3C,CAAC;AAE34C,MAAM,CAAC,MAAM,SAAS,GAAG,aAAa,GAAG,+rDAA+rD;MACpuD,0tBAA0tB;MACxtB,8XAA8X;MAC9X,sdAAsd;MACtd,yZAAyZ;MACzZ,yZAAyZ;MACzZ,47BAA47B,CAAC"}
1
+ {"version":3,"file":"usage.js","sourceRoot":"","sources":["../src/usage.ts"],"names":[],"mappings":"AAAA,MAAM,aAAa,GAAG,06CAA06C,CAAC;AAEj8C,MAAM,CAAC,MAAM,SAAS,GAAG,aAAa,GAAG,+rDAA+rD;MACpuD,0tBAA0tB;MACxtB,8XAA8X;MAC9X,sdAAsd;MACtd,yZAAyZ;MACzZ,yZAAyZ;MACzZ,47BAA47B;MAC57B,w8BAAw8B,CAAC"}
@@ -24,6 +24,8 @@ export declare function resolveWslRelayContext(distribution: string | undefined,
24
24
  export declare function assertWslHostPreflight(options: WslHostOptions): Promise<void>;
25
25
  export declare function enableWslRelayHost(options: WslHostOptions): Promise<void>;
26
26
  export declare function wslRelayHostStatus(options: WslHostOptions): Promise<State | null>;
27
+ export declare function assertWslRelayHostPaused(options: WslHostOptions): Promise<void>;
28
+ export declare function pauseWslRelayHost(options: WslHostOptions): Promise<void>;
27
29
  export declare function startWslRelayHost(options: WslHostOptions): Promise<void>;
28
30
  export declare function disableWslRelayHost(options: WslHostOptions): Promise<void>;
29
31
  export {};
@@ -1 +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"}
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,wBAAwB,CAAC,OAAO,EAAC,cAAc,GAAE,OAAO,CAAC,IAAI,CAAC,CAQnF;AAED,wBAAsB,iBAAiB,CAAC,OAAO,EAAC,cAAc,GAAE,OAAO,CAAC,IAAI,CAAC,CAc5E;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"}
@@ -229,6 +229,41 @@ export async function wslRelayHostStatus(options) {
229
229
  return fail(true);
230
230
  return query(options, target);
231
231
  }
232
+ export async function assertWslRelayHostPaused(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
+ // Unregistration removes the receipt. Prove exact task absence under the same
240
+ // derived SID/home/action rather than interpreting a missing receipt as safety.
241
+ const state = await query(options, target);
242
+ if (state.exists && (!previous || state.enabled || state.running))
243
+ return fail(true);
244
+ }
245
+ export async function pauseWslRelayHost(options) {
246
+ const current = await context(options);
247
+ if (!current)
248
+ return;
249
+ const target = await expected(options, current), previous = await saved(options);
250
+ if (!previous || !sameReceipt(previous, target))
251
+ return fail(true);
252
+ const before = await query(options, target);
253
+ if (before.running)
254
+ return fail();
255
+ if (!before.exists)
256
+ return;
257
+ await invoke(options, taskPreamble(target, 'pause')
258
+ + `if ($null -ne $task) { Assert-OwnedTask $task; if ($task.State -eq 'Running') {throw 'wsl_host_still_running'}; `
259
+ + `Disable-ScheduledTask -TaskPath '\\' -TaskName ${literal(target.taskName)}|Out-Null }; `
260
+ + lookup(target) + renderState);
261
+ const after = await query(options, target);
262
+ if (after.enabled || after.running)
263
+ return fail();
264
+ // Preserve the exact ownership/context receipt, including receipt-backed WSL
265
+ // distribution discovery used by systemd when WSL_DISTRO_NAME is absent.
266
+ }
232
267
  export async function startWslRelayHost(options) {
233
268
  const current = await context(options);
234
269
  if (!current)
@@ -1 +1 @@
1
- {"version":3,"file":"wslRelayHost.js","sourceRoot":"","sources":["../src/wslRelayHost.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wslRelayHost.js","sourceRoot":"","sources":["../src/wslRelayHost.ts"],"names":[],"mappings":"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"}