@dsh-enhanced/assistant-web-owner 0.1.66 → 0.1.68
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/README.md +43 -19
- package/lib/autonomy.d.ts +13 -21
- package/lib/autonomy.d.ts.map +1 -1
- package/lib/autonomy.js +45 -66
- package/lib/autonomy.js.map +1 -1
- package/lib/client.d.ts +3 -0
- package/lib/client.d.ts.map +1 -1
- package/lib/client.js +60 -6
- package/lib/client.js.map +1 -1
- package/lib/doctor.d.ts +37 -9
- package/lib/doctor.d.ts.map +1 -1
- package/lib/doctor.js +375 -30
- package/lib/doctor.js.map +1 -1
- package/lib/goal-admission.d.ts.map +1 -1
- package/lib/goal-admission.js +3 -5
- package/lib/goal-admission.js.map +1 -1
- package/lib/index.d.ts +7 -0
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js.map +1 -1
- package/lib/notices.d.ts +5 -1
- package/lib/notices.d.ts.map +1 -1
- package/lib/notices.js +4 -0
- package/lib/notices.js.map +1 -1
- package/lib/setup.d.ts.map +1 -1
- package/lib/setup.js +33 -51
- package/lib/setup.js.map +1 -1
- package/lib/typert.d.ts +114 -4
- package/lib/typert.d.ts.map +1 -1
- package/lib/typert.js +26 -0
- package/lib/typert.js.map +1 -1
- package/lib/version.d.ts +1 -1
- package/lib/version.js +1 -1
- package/package.json +12 -9
package/lib/doctor.js
CHANGED
|
@@ -5,7 +5,7 @@ import { homedir } from 'node:os';
|
|
|
5
5
|
import { isAbsolute, join, normalize } from 'node:path';
|
|
6
6
|
import { DatabaseSync } from 'node:sqlite';
|
|
7
7
|
import { isDeepStrictEqual, promisify } from 'node:util';
|
|
8
|
-
import { isMap, isScalar, isSeq, parseDocument } from 'yaml';
|
|
8
|
+
import { isMap, isScalar, isSeq, parseDocument, YAMLMap } from 'yaml';
|
|
9
9
|
import { literalAutonomyLinux, validateAutonomyLinuxPaths } from './autonomy.js';
|
|
10
10
|
function fail(message) { throw new Error(`autonomy doctor: ${message}`); }
|
|
11
11
|
function literal(node, label) {
|
|
@@ -84,21 +84,18 @@ export function inspectAutonomyProfile(source, profile, dshHome) {
|
|
|
84
84
|
const common = { stateRoot,
|
|
85
85
|
databasePath: path(delivery.get('databasePath', true), 'Delivery databasePath', dshHome),
|
|
86
86
|
grant: { ...grant }, principal: { channel: 'web', account: profile, tenant: 'local', user: 'operator' } };
|
|
87
|
-
const
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
fail('immutable local isolation image required');
|
|
100
|
-
return { ...common, image, dockerPath: isolation.has('dockerPath') ? path(isolation.get('dockerPath', true), 'Docker path') : '/usr/bin/docker',
|
|
101
|
-
...(isolation.has('backend') ? { backend: 'docker' } : {}) };
|
|
87
|
+
const declaredBackend = isolation.has('backend') ? literal(isolation.get('backend', true), 'Isolation backend') : undefined;
|
|
88
|
+
// Docker profiles are never interpreted or rewritten here. Fail closed with a
|
|
89
|
+
// migration hint so an old profile cannot be reported as healthy.
|
|
90
|
+
if (declaredBackend === 'docker' || isolation.has('image') || isolation.has('dockerPath') || isolation.has('socketPath'))
|
|
91
|
+
fail('Docker isolation was removed; migrate this profile explicitly to the linux-native backend');
|
|
92
|
+
if (declaredBackend !== undefined && declaredBackend !== 'linux-native')
|
|
93
|
+
fail('invalid isolation backend; migrate this profile explicitly to the linux-native backend');
|
|
94
|
+
if (!isolation.has('linux'))
|
|
95
|
+
fail('missing linux-native isolation descriptor; migrate this profile explicitly');
|
|
96
|
+
const linux = literalAutonomyLinux(isolation.get('linux', true));
|
|
97
|
+
validateAutonomyLinuxPaths(linux, stateRoot, dshHome);
|
|
98
|
+
return { ...common, backend: 'linux-native', linux };
|
|
102
99
|
}
|
|
103
100
|
/** A read-only snapshot, never pairing, migration, or an authorization for future execution. */
|
|
104
101
|
export function inspectAutonomyOwner(profile) {
|
|
@@ -132,33 +129,354 @@ export function inspectAutonomyOwner(profile) {
|
|
|
132
129
|
}
|
|
133
130
|
/** Verify only the persisted backend descriptor; never fetch, prepare or renew. */
|
|
134
131
|
export async function probeAutonomyProfileRuntime(profile) {
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
132
|
+
const { verifyLinuxRuntime } = await import('@dsh-enhanced/assistant-isolation');
|
|
133
|
+
const { probeLinuxIsolationRuntime } = await import('@dsh-enhanced/assistant-isolation/native-resources');
|
|
134
|
+
await verifyLinuxRuntime(profile.linux.runtime);
|
|
135
|
+
await probeLinuxIsolationRuntime(profile.linux);
|
|
136
|
+
}
|
|
137
|
+
// ---------------------------------------------------------------------------
|
|
138
|
+
// Static autonomy readiness snapshot (ordinary-use learning assembly)
|
|
139
|
+
/** Installed bundles the ordinary-use learning assembly expects in one profile. */
|
|
140
|
+
const readinessBundleSlugs = [
|
|
141
|
+
'personal-assistant',
|
|
142
|
+
'assistant-work-items',
|
|
143
|
+
'assistant-delivery',
|
|
144
|
+
'assistant-evaluation',
|
|
145
|
+
'assistant-verifier',
|
|
146
|
+
'event-triggers',
|
|
147
|
+
'assistant-memory-learning',
|
|
148
|
+
'assistant-growth-driver',
|
|
149
|
+
'assistant-proactive',
|
|
150
|
+
'plugin-control-plane',
|
|
151
|
+
];
|
|
152
|
+
/** Work-item intake evaluation levels; mirrors the work-items INTAKE_EVALUATION_LEVELS enum. */
|
|
153
|
+
const intakeEvaluationCeilings = new Set(['ignore', 'digest', 'notify', 'accept']);
|
|
154
|
+
const intakeRuleIdPattern = /^[A-Za-z0-9][A-Za-z0-9._:-]{0,127}$/u;
|
|
155
|
+
function readinessRows(source) {
|
|
156
|
+
try {
|
|
157
|
+
const document = parseDocument(source, { customTags: [{ tag: 'tag:yaml.org,2002:js', resolve: (value) => value }] });
|
|
158
|
+
return document.errors.length === 0 && isSeq(document.contents) ? document.contents : undefined;
|
|
159
|
+
}
|
|
160
|
+
catch {
|
|
161
|
+
return undefined;
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
function readinessRow(rows, slug) {
|
|
165
|
+
const id = `dsh-enhanced-${slug}`;
|
|
166
|
+
const name = `@dsh-enhanced/${slug}`;
|
|
167
|
+
const matches = rows.items.filter(item => isMap(item) && (item.get('id') === id || item.get('name') === name));
|
|
168
|
+
return matches.length === 1 ? matches[0] : undefined;
|
|
169
|
+
}
|
|
170
|
+
function readinessLoaded(rows, slug) {
|
|
171
|
+
const row = readinessRow(rows, slug);
|
|
172
|
+
return row === undefined ? undefined : row.get('disabled') !== true;
|
|
173
|
+
}
|
|
174
|
+
function readinessConfig(rows, slug) {
|
|
175
|
+
const config = readinessRow(rows, slug)?.get('config', true);
|
|
176
|
+
if (config === undefined)
|
|
177
|
+
return new YAMLMap();
|
|
178
|
+
return isMap(config) ? config : undefined;
|
|
179
|
+
}
|
|
180
|
+
function readinessPlain(node) {
|
|
181
|
+
if (node === undefined)
|
|
182
|
+
return undefined;
|
|
183
|
+
if (isScalar(node))
|
|
184
|
+
return node.value;
|
|
185
|
+
if (isMap(node) || isSeq(node))
|
|
186
|
+
return node.toJSON();
|
|
187
|
+
return node;
|
|
188
|
+
}
|
|
189
|
+
/** Read one dotted config value without evaluating tagged expressions. */
|
|
190
|
+
function readinessValue(rows, slug, key) {
|
|
191
|
+
const config = readinessConfig(rows, slug);
|
|
192
|
+
if (config === undefined)
|
|
193
|
+
return undefined;
|
|
194
|
+
let node = config;
|
|
195
|
+
for (const segment of key.split('.')) {
|
|
196
|
+
if (!isMap(node))
|
|
197
|
+
return undefined;
|
|
198
|
+
node = node.get(segment, true);
|
|
199
|
+
}
|
|
200
|
+
return readinessPlain(node);
|
|
201
|
+
}
|
|
202
|
+
function validIntakeEvaluationRules(value) {
|
|
203
|
+
if (!Array.isArray(value) || value.length === 0 || value.length > 16)
|
|
204
|
+
return false;
|
|
205
|
+
const ids = new Set();
|
|
206
|
+
return value.every(rule => {
|
|
207
|
+
if (rule === null || typeof rule !== 'object' || Array.isArray(rule))
|
|
208
|
+
return false;
|
|
209
|
+
const record = rule;
|
|
210
|
+
if (Object.keys(record).sort().join(',') !== 'ceiling,ruleId')
|
|
211
|
+
return false;
|
|
212
|
+
const { ruleId, ceiling } = record;
|
|
213
|
+
if (typeof ruleId !== 'string' || !intakeRuleIdPattern.test(ruleId) || ids.has(ruleId))
|
|
214
|
+
return false;
|
|
215
|
+
ids.add(ruleId);
|
|
216
|
+
return typeof ceiling === 'string' && intakeEvaluationCeilings.has(ceiling);
|
|
217
|
+
});
|
|
218
|
+
}
|
|
219
|
+
function routeText(value) {
|
|
220
|
+
return typeof value === 'string' && value.length > 0 && value.length <= 200 ? value : null;
|
|
221
|
+
}
|
|
222
|
+
/**
|
|
223
|
+
* Inspect the composed profile without activating anything, calling a model or
|
|
224
|
+
* reading a database. Missing or mismatched configuration is reported as
|
|
225
|
+
* `not-ready` with a reason; this function never throws for an incomplete
|
|
226
|
+
* assembly, so a doctor run degrades into a snapshot instead of a crash.
|
|
227
|
+
*/
|
|
228
|
+
export function inspectAutonomyReadiness(source, profile) {
|
|
229
|
+
const runtime = { observed: false,
|
|
230
|
+
note: 'static composed profile only; runtime registration, model calls, external delivery and Policy readiness are not observed' };
|
|
231
|
+
const rows = readinessRows(source);
|
|
232
|
+
if (rows === undefined) {
|
|
233
|
+
const check = { id: 'profile-composition', required: true, status: 'not-ready',
|
|
234
|
+
summary: 'effective profile is not an unambiguous YAML sequence',
|
|
235
|
+
reasons: [{ code: 'profile-unreadable', message: 'the composed profile could not be parsed; doctor reports not-ready instead of crashing' }],
|
|
236
|
+
details: {} };
|
|
237
|
+
return { protocol: 'dsh-enhanced/autonomy-readiness/v1', profile, scope: 'ordinary-use-learning', ready: false, checks: [check], runtime };
|
|
238
|
+
}
|
|
239
|
+
const checks = [];
|
|
240
|
+
const missing = [];
|
|
241
|
+
const disabled = [];
|
|
242
|
+
for (const slug of readinessBundleSlugs) {
|
|
243
|
+
const loaded = readinessLoaded(rows, slug);
|
|
244
|
+
if (loaded === undefined)
|
|
245
|
+
missing.push(slug);
|
|
246
|
+
else if (!loaded)
|
|
247
|
+
disabled.push(slug);
|
|
140
248
|
}
|
|
249
|
+
checks.push({
|
|
250
|
+
id: 'bundles', required: true,
|
|
251
|
+
status: missing.length === 0 && disabled.length === 0 ? 'ready' : 'not-ready',
|
|
252
|
+
summary: `${readinessBundleSlugs.length - missing.length - disabled.length}/${readinessBundleSlugs.length} expected bundles loaded`,
|
|
253
|
+
reasons: [
|
|
254
|
+
...missing.map(slug => ({ code: `bundle-missing:${slug}`, message: `@dsh-enhanced/${slug} is not installed in this profile` })),
|
|
255
|
+
...disabled.map(slug => ({ code: `bundle-disabled:${slug}`, message: `@dsh-enhanced/${slug} is installed but its loader row is disabled` })),
|
|
256
|
+
],
|
|
257
|
+
details: { expected: readinessBundleSlugs.length, missing, disabled },
|
|
258
|
+
});
|
|
259
|
+
const workItemsLoaded = readinessLoaded(rows, 'assistant-work-items');
|
|
260
|
+
const workItemsEnabled = readinessValue(rows, 'assistant-work-items', 'enabled');
|
|
261
|
+
const workItemsMode = readinessValue(rows, 'assistant-work-items', 'mode');
|
|
262
|
+
const intakeLedger = readinessValue(rows, 'assistant-work-items', 'intakeLedger.enabled');
|
|
263
|
+
const workItemsReasons = [];
|
|
264
|
+
if (workItemsLoaded !== true) {
|
|
265
|
+
workItemsReasons.push({ code: 'work-items-unavailable', message: 'assistant-work-items is not installed and loaded, so no observe ledger can be written' });
|
|
266
|
+
}
|
|
267
|
+
else {
|
|
268
|
+
if (workItemsEnabled !== true)
|
|
269
|
+
workItemsReasons.push({ code: 'work-items-not-enabled', message: 'assistant-work-items.enabled is off; the ledger is inert' });
|
|
270
|
+
if (workItemsMode !== 'observe')
|
|
271
|
+
workItemsReasons.push({ code: 'work-items-not-observe', message: `assistant-work-items.mode is ${JSON.stringify(workItemsMode ?? null)}; the default assembly stays observe-only` });
|
|
272
|
+
if (intakeLedger !== true)
|
|
273
|
+
workItemsReasons.push({ code: 'work-items-intake-disabled', message: 'assistant-work-items.intakeLedger.enabled is off; inbound metadata is not recorded' });
|
|
274
|
+
}
|
|
275
|
+
checks.push({
|
|
276
|
+
id: 'work-items-observe-intake', required: true,
|
|
277
|
+
status: workItemsReasons.length === 0 ? 'ready' : 'not-ready',
|
|
278
|
+
summary: workItemsReasons.length === 0 ? 'observe ledger enabled with the deterministic intake ledger' : 'observe ledger / intake not assembled',
|
|
279
|
+
reasons: workItemsReasons,
|
|
280
|
+
details: { enabled: workItemsEnabled === true, mode: workItemsMode ?? null, intakeLedgerEnabled: intakeLedger === true },
|
|
281
|
+
});
|
|
282
|
+
const proactiveLoaded = readinessLoaded(rows, 'assistant-proactive');
|
|
283
|
+
const intakeEvaluationEnabled = readinessValue(rows, 'assistant-proactive', 'intakeEvaluation.enabled');
|
|
284
|
+
const intakeProvider = routeText(readinessValue(rows, 'assistant-proactive', 'intakeEvaluation.provider'));
|
|
285
|
+
const intakeModel = routeText(readinessValue(rows, 'assistant-proactive', 'intakeEvaluation.model'));
|
|
286
|
+
const intakeRules = readinessValue(rows, 'assistant-proactive', 'intakeEvaluation.rules');
|
|
287
|
+
const workItemsEvaluation = readinessValue(rows, 'assistant-work-items', 'intakeLedger.evaluation.enabled');
|
|
288
|
+
const evaluatorReasons = [];
|
|
289
|
+
if (workItemsLoaded !== true)
|
|
290
|
+
evaluatorReasons.push({ code: 'intake-evaluator-work-items-missing', message: 'assistant-work-items is unavailable, so an evaluator cannot register' });
|
|
291
|
+
else if (workItemsEvaluation !== true)
|
|
292
|
+
evaluatorReasons.push({ code: 'intake-evaluator-work-items-evaluation-off', message: 'assistant-work-items.intakeLedger.evaluation.enabled is off; the queue would refuse an evaluator registration' });
|
|
293
|
+
if (proactiveLoaded !== true)
|
|
294
|
+
evaluatorReasons.push({ code: 'intake-evaluator-producer-missing', message: 'assistant-proactive is not installed and loaded, so no production intake evaluator exists' });
|
|
295
|
+
else {
|
|
296
|
+
if (intakeEvaluationEnabled !== true)
|
|
297
|
+
evaluatorReasons.push({ code: 'intake-evaluator-disabled', message: 'assistant-proactive.intakeEvaluation.enabled is off; the preset only enables it after the owner declared rules and a model route' });
|
|
298
|
+
if (intakeProvider === null)
|
|
299
|
+
evaluatorReasons.push({ code: 'intake-evaluator-provider-missing', message: 'assistant-proactive.intakeEvaluation.provider is not configured' });
|
|
300
|
+
if (intakeModel === null)
|
|
301
|
+
evaluatorReasons.push({ code: 'intake-evaluator-model-missing', message: 'assistant-proactive.intakeEvaluation.model is not configured' });
|
|
302
|
+
if (!validIntakeEvaluationRules(intakeRules))
|
|
303
|
+
evaluatorReasons.push({ code: 'intake-evaluator-rules-invalid', message: 'assistant-proactive.intakeEvaluation.rules needs 1-16 entries with unique ruleId and ceiling in ignore|digest|notify|accept' });
|
|
304
|
+
}
|
|
305
|
+
checks.push({
|
|
306
|
+
id: 'intake-evaluator', required: true,
|
|
307
|
+
status: evaluatorReasons.length === 0 ? 'ready' : 'not-ready',
|
|
308
|
+
summary: evaluatorReasons.length === 0
|
|
309
|
+
? `configured with ${Array.isArray(intakeRules) ? intakeRules.length : 0} rules; runtime registration is not observable from a static dump`
|
|
310
|
+
: 'production intake evaluator not assembled',
|
|
311
|
+
reasons: evaluatorReasons,
|
|
312
|
+
details: { configured: evaluatorReasons.length === 0, runtimeRegistration: 'not-observed',
|
|
313
|
+
provider: intakeProvider, model: intakeModel,
|
|
314
|
+
rules: Array.isArray(intakeRules) ? intakeRules.length : 0,
|
|
315
|
+
workItemsEvaluationEnabled: workItemsEvaluation === true },
|
|
316
|
+
});
|
|
317
|
+
const deliveryLoaded = readinessLoaded(rows, 'assistant-delivery');
|
|
318
|
+
const ownerReportFeedback = readinessValue(rows, 'assistant-work-items', 'ownerReportFeedback') === true;
|
|
319
|
+
const ownerReplyContinuation = readinessValue(rows, 'assistant-work-items', 'ownerReplyContinuation') === true;
|
|
320
|
+
checks.push({
|
|
321
|
+
id: 'delivery-natural-feedback', required: true,
|
|
322
|
+
status: deliveryLoaded === true ? 'ready' : 'not-ready',
|
|
323
|
+
summary: deliveryLoaded === true
|
|
324
|
+
? `Delivery loaded; the natural feedback parser ships with the bundle (work-item report feedback: ${ownerReportFeedback ? 'on' : 'off'}, reply continuation: ${ownerReplyContinuation ? 'on' : 'off'})`
|
|
325
|
+
: 'assistant-delivery is not installed and loaded, so owner replies cannot become trusted feedback',
|
|
326
|
+
reasons: deliveryLoaded === true ? [] : [{ code: 'delivery-unavailable', message: 'assistant-delivery is not installed and loaded in this profile' }],
|
|
327
|
+
details: { installed: deliveryLoaded === true, ownerReportFeedback, ownerReplyContinuation },
|
|
328
|
+
});
|
|
329
|
+
const learningReasons = [];
|
|
330
|
+
const memoryLoaded = readinessLoaded(rows, 'assistant-memory-learning');
|
|
331
|
+
const memoryFlag = readinessValue(rows, 'assistant-memory-learning', 'workItemExperiences') === true;
|
|
332
|
+
const reviewFlag = readinessValue(rows, 'assistant-verifier', 'memoryReviews.workItemExperiences') === true;
|
|
333
|
+
const adoptionFlag = readinessValue(rows, 'personal-assistant', 'personalMemory.automaticLearning.workItemExperiences') === true;
|
|
334
|
+
if (memoryLoaded !== true)
|
|
335
|
+
learningReasons.push({ code: 'memory-learning-unavailable', message: 'assistant-memory-learning is not installed and loaded' });
|
|
336
|
+
else if (!memoryFlag)
|
|
337
|
+
learningReasons.push({ code: 'memory-work-item-experiences-off', message: 'assistant-memory-learning.workItemExperiences is off; the preset only turns it on after both signed grants already carry the same flag' });
|
|
141
338
|
else {
|
|
142
|
-
|
|
143
|
-
|
|
339
|
+
if (!reviewFlag)
|
|
340
|
+
learningReasons.push({ code: 'memory-review-grant-not-expanded', message: 'assistant-verifier.memoryReviews.workItemExperiences is off; a fresh review grant is required' });
|
|
341
|
+
if (!adoptionFlag)
|
|
342
|
+
learningReasons.push({ code: 'memory-adoption-grant-not-expanded', message: 'personal-assistant.personalMemory.automaticLearning.workItemExperiences is off; a fresh adoption grant is required' });
|
|
343
|
+
}
|
|
344
|
+
const growthLoaded = readinessLoaded(rows, 'assistant-growth-driver');
|
|
345
|
+
const growthEnabled = readinessValue(rows, 'assistant-growth-driver', 'enabled') === true;
|
|
346
|
+
const usageEnabled = readinessValue(rows, 'assistant-growth-driver', 'usageLearning.enabled') === true;
|
|
347
|
+
const workItemFailures = readinessValue(rows, 'assistant-growth-driver', 'usageLearning.workItemFailures') === true;
|
|
348
|
+
if (growthLoaded !== true)
|
|
349
|
+
learningReasons.push({ code: 'growth-driver-unavailable', message: 'assistant-growth-driver is not installed and loaded' });
|
|
350
|
+
else if (!growthEnabled || !usageEnabled)
|
|
351
|
+
learningReasons.push({ code: 'growth-usage-learning-off', message: 'assistant-growth-driver enabled / usageLearning.enabled is off; ordinary usage is not scanned' });
|
|
352
|
+
else if (!workItemFailures)
|
|
353
|
+
learningReasons.push({ code: 'growth-work-item-failures-not-authorized', message: 'usageLearning.workItemFailures is off; it needs signed workItemAuthorities pins that a preset never invents or extends' });
|
|
354
|
+
const evaluationLoaded = readinessLoaded(rows, 'assistant-evaluation');
|
|
355
|
+
const notificationOutcomes = readinessValue(rows, 'assistant-evaluation', 'notificationOutcomesEnabled') === true;
|
|
356
|
+
if (evaluationLoaded !== true)
|
|
357
|
+
learningReasons.push({ code: 'evaluation-unavailable', message: 'assistant-evaluation is not installed and loaded' });
|
|
358
|
+
else if (!notificationOutcomes)
|
|
359
|
+
learningReasons.push({ code: 'evaluation-notification-outcomes-off', message: 'assistant-evaluation.notificationOutcomesEnabled is off; notification results are not synced into the ledger' });
|
|
360
|
+
const agreementPersist = readinessValue(rows, 'assistant-evaluation', 'intakeAttentionAgreementPersistIntervalMs');
|
|
361
|
+
const agreementEnabled = readinessValue(rows, 'assistant-evaluation', 'intakeAttentionAgreementEnabled') === true;
|
|
362
|
+
const agreementPersistConfigured = typeof agreementPersist === 'number' && Number.isSafeInteger(agreementPersist) && agreementPersist > 0;
|
|
363
|
+
if (evaluationLoaded === true && agreementPersistConfigured && (!notificationOutcomes || !agreementEnabled)) {
|
|
364
|
+
learningReasons.push({ code: 'evaluation-intake-agreement-persist-misconfigured',
|
|
365
|
+
message: 'assistant-evaluation.intakeAttentionAgreementPersistIntervalMs is set but intakeAttentionAgreementEnabled / notificationOutcomesEnabled is off; Evaluation refuses this configuration' });
|
|
144
366
|
}
|
|
367
|
+
checks.push({
|
|
368
|
+
id: 'background-learning', required: true,
|
|
369
|
+
status: learningReasons.length === 0 ? 'ready' : 'not-ready',
|
|
370
|
+
summary: learningReasons.length === 0 ? 'ordinary-use learning switches are assembled' : `${learningReasons.length} background learning switch(es) not ready`,
|
|
371
|
+
reasons: learningReasons,
|
|
372
|
+
details: { memoryWorkItemExperiences: memoryFlag, memoryReviewGrant: reviewFlag, memoryAdoptionGrant: adoptionFlag,
|
|
373
|
+
growthEnabled, growthUsageLearning: usageEnabled, growthWorkItemFailures: workItemFailures, notificationOutcomesEnabled: notificationOutcomes,
|
|
374
|
+
intakeAgreementPersistIntervalMs: agreementPersistConfigured ? agreementPersist : null,
|
|
375
|
+
intakeAgreementEnabled: agreementEnabled },
|
|
376
|
+
});
|
|
377
|
+
const controlLoaded = readinessLoaded(rows, 'plugin-control-plane');
|
|
378
|
+
const revisionCapabilities = readinessValue(rows, 'plugin-control-plane', 'revisionCapabilities');
|
|
379
|
+
const creationCapabilities = readinessValue(rows, 'plugin-control-plane', 'creationCapabilities');
|
|
380
|
+
const revisionVerifications = readinessValue(rows, 'plugin-control-plane', 'revisionVerifications');
|
|
381
|
+
const sourceJobs = readinessValue(rows, 'plugin-control-plane', 'sourceJobs');
|
|
382
|
+
const sourceBuild = readinessValue(rows, 'plugin-control-plane', 'sourceBuild');
|
|
383
|
+
const revisionJobs = sourceJobs !== null && typeof sourceJobs === 'object' && !Array.isArray(sourceJobs)
|
|
384
|
+
? sourceJobs.revision : undefined;
|
|
385
|
+
const revisionConfigured = revisionCapabilities !== null && typeof revisionCapabilities === 'object' && !Array.isArray(revisionCapabilities)
|
|
386
|
+
&& typeof revisionCapabilities.authorityId === 'string'
|
|
387
|
+
&& typeof revisionCapabilities.keyId === 'string'
|
|
388
|
+
&& typeof revisionCapabilities.namePrefix === 'string'
|
|
389
|
+
&& typeof revisionCapabilities.expiresAt === 'number';
|
|
390
|
+
const revisionReasons = [];
|
|
391
|
+
if (controlLoaded !== true)
|
|
392
|
+
revisionReasons.push({ code: 'control-plane-unavailable', message: 'plugin-control-plane is not installed and loaded' });
|
|
393
|
+
else if (!revisionConfigured)
|
|
394
|
+
revisionReasons.push({ code: 'revision-capabilities-not-configured', message: 'revision adoption requires owner-generated ed25519 key material and explicit adoption/rollback grants; nothing is generated by a preset' });
|
|
395
|
+
else if (creationCapabilities === undefined || revisionVerifications === undefined || revisionJobs === undefined || sourceBuild === undefined) {
|
|
396
|
+
revisionReasons.push({ code: 'revision-prerequisites-missing', message: 'revisionCapabilities also needs creationCapabilities, revisionVerifications, sourceBuild and sourceJobs.revision; verify the owner setup' });
|
|
397
|
+
}
|
|
398
|
+
checks.push({
|
|
399
|
+
id: 'revision-adoption', required: true,
|
|
400
|
+
status: revisionReasons.length === 0 ? 'ready' : 'not-ready',
|
|
401
|
+
summary: revisionReasons.length === 0 ? 'verified revision adoption and exact parent rollback are configured' : 'revision adoption authorization is not configured',
|
|
402
|
+
reasons: revisionReasons,
|
|
403
|
+
details: { configured: revisionConfigured, prerequisites: { creationCapabilities: creationCapabilities !== undefined, revisionVerifications: revisionVerifications !== undefined, sourceBuild: sourceBuild !== undefined, revisionJobs: revisionJobs !== undefined } },
|
|
404
|
+
});
|
|
405
|
+
const triggersLoaded = readinessLoaded(rows, 'event-triggers');
|
|
406
|
+
const pollerEnabled = readinessValue(rows, 'event-triggers', 'pollerEnabled') === true;
|
|
407
|
+
const triggers = readinessValue(rows, 'event-triggers', 'triggers');
|
|
408
|
+
const triggerCount = Array.isArray(triggers) ? triggers.length : 0;
|
|
409
|
+
const pollerReasons = [];
|
|
410
|
+
if (triggersLoaded !== true)
|
|
411
|
+
pollerReasons.push({ code: 'event-triggers-unavailable', message: 'event-triggers is not installed and loaded' });
|
|
412
|
+
else if (!pollerEnabled)
|
|
413
|
+
pollerReasons.push({ code: 'event-poller-disabled', message: 'event-triggers.pollerEnabled is off; configured triggers never fire' });
|
|
414
|
+
checks.push({
|
|
415
|
+
id: 'event-poller', required: true,
|
|
416
|
+
status: pollerReasons.length === 0 ? 'ready' : 'not-ready',
|
|
417
|
+
summary: pollerReasons.length === 0
|
|
418
|
+
? `poller enabled with ${triggerCount} trigger definition(s)${triggerCount === 0 ? '; none configured, so nothing will fire yet' : ''}`
|
|
419
|
+
: 'event poller not ready',
|
|
420
|
+
reasons: pollerReasons,
|
|
421
|
+
details: { pollerEnabled, triggers: triggerCount },
|
|
422
|
+
});
|
|
423
|
+
// Optional ring (Lead request): PTC presentation is a configuration hint only.
|
|
424
|
+
const toolPresentation = readinessValue(rows, 'assistant-growth-driver', 'toolPresentation');
|
|
425
|
+
const ptcConfigured = toolPresentation === 'ptc';
|
|
426
|
+
checks.push({
|
|
427
|
+
id: 'ptc-presentation', required: false,
|
|
428
|
+
status: ptcConfigured ? 'not-verified' : 'ready',
|
|
429
|
+
summary: ptcConfigured
|
|
430
|
+
? 'toolPresentation=ptc; a live run still needs a mounted ctx.ptcRuntime, run_code that does not request human approval, and an exact Policy allow rule for the growth agent background run_code (this static doctor verifies none of the runtime conditions)'
|
|
431
|
+
: 'toolPresentation is native (PTC is an explicit owner opt-in)',
|
|
432
|
+
reasons: [],
|
|
433
|
+
details: { toolPresentation: typeof toolPresentation === 'string' ? toolPresentation : 'native' },
|
|
434
|
+
});
|
|
435
|
+
const ready = checks.filter(check => check.required).every(check => check.status === 'ready');
|
|
436
|
+
return { protocol: 'dsh-enhanced/autonomy-readiness/v1', profile, scope: 'ordinary-use-learning', ready, checks, runtime };
|
|
437
|
+
}
|
|
438
|
+
/** Deterministic human-readable form of the same snapshot the JSON line carries. */
|
|
439
|
+
export function formatAutonomyReadiness(report) {
|
|
440
|
+
const label = (status) => status === 'ready' ? 'ready ' : status === 'not-ready' ? 'not-ready ' : 'not-verified';
|
|
441
|
+
const lines = [`Autonomy readiness (static composed profile, no model, no writes): ${report.ready ? 'READY' : 'NOT READY'} (profile ${report.profile})`];
|
|
442
|
+
for (const check of report.checks) {
|
|
443
|
+
lines.push(` ${label(check.status)} ${check.id}: ${check.summary}`);
|
|
444
|
+
for (const reason of check.reasons)
|
|
445
|
+
lines.push(` - [${reason.code}] ${reason.message}`);
|
|
446
|
+
}
|
|
447
|
+
lines.push(` runtime: not observed (${report.runtime.note})`);
|
|
448
|
+
return `${lines.join('\n')}\n`;
|
|
145
449
|
}
|
|
146
450
|
export async function runAutonomyDoctor(argv = process.argv.slice(2)) {
|
|
451
|
+
const usage = [
|
|
452
|
+
'Usage: dsh-autonomy-doctor [--profile web] [--dsh-home <absolute-path>] [--readiness]',
|
|
453
|
+
'Default: checks the installed finite isolation grant, paired owner and a temporary backend-specific probe.',
|
|
454
|
+
'--readiness: prints the static ordinary-use-learning readiness snapshot (text plus one JSON line) and exits 1 when a mandatory ring is not ready.',
|
|
455
|
+
'The readiness snapshot reads only the composed profile: it never activates a Host, calls a model, writes state, renews grants or verifies runtime registration, Policy or external delivery.',
|
|
456
|
+
'',
|
|
457
|
+
].join('\n');
|
|
147
458
|
if (argv.includes('--help') || argv.includes('-h')) {
|
|
148
|
-
process.stdout.write(
|
|
459
|
+
process.stdout.write(usage);
|
|
149
460
|
return;
|
|
150
461
|
}
|
|
151
462
|
let profile = 'web';
|
|
152
463
|
let dshHome = process.env.DSH_HOME ?? join(homedir(), '.dsh');
|
|
153
|
-
|
|
464
|
+
let readinessOnly = false;
|
|
465
|
+
for (let index = 0; index < argv.length;) {
|
|
154
466
|
const option = argv[index];
|
|
155
|
-
|
|
156
|
-
|
|
467
|
+
if (option === '--readiness') {
|
|
468
|
+
readinessOnly = true;
|
|
469
|
+
index += 1;
|
|
470
|
+
continue;
|
|
471
|
+
}
|
|
472
|
+
const value = argv[index + 1];
|
|
473
|
+
if (!['--profile', '--dsh-home'].includes(option ?? '') || value === undefined || value.startsWith('--'))
|
|
157
474
|
fail('invalid arguments');
|
|
158
475
|
if (option === '--profile')
|
|
159
476
|
profile = value;
|
|
160
477
|
else
|
|
161
478
|
dshHome = value;
|
|
479
|
+
index += 2;
|
|
162
480
|
}
|
|
163
481
|
if (!/^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$/u.test(profile) || !isAbsolute(dshHome) || normalize(dshHome) !== dshHome || /[\p{Cc}*]/u.test(dshHome))
|
|
164
482
|
fail('invalid profile or home');
|
|
@@ -170,9 +488,36 @@ export async function runAutonomyDoctor(argv = process.argv.slice(2)) {
|
|
|
170
488
|
fail('could not compose profile; inspect installed bundles and configuration');
|
|
171
489
|
}
|
|
172
490
|
};
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
491
|
+
if (readinessOnly) {
|
|
492
|
+
let source;
|
|
493
|
+
try {
|
|
494
|
+
source = await dump();
|
|
495
|
+
}
|
|
496
|
+
catch (error) {
|
|
497
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
498
|
+
const report = { protocol: 'dsh-enhanced/autonomy-readiness/v1', profile, scope: 'ordinary-use-learning', ready: false,
|
|
499
|
+
checks: [{ id: 'profile-composition', required: true, status: 'not-ready', summary: 'the profile could not be composed',
|
|
500
|
+
reasons: [{ code: 'profile-composition-failed', message }], details: {} }],
|
|
501
|
+
runtime: { observed: false, note: 'static composed profile only; nothing was activated' } };
|
|
502
|
+
process.stdout.write(formatAutonomyReadiness(report));
|
|
503
|
+
process.stdout.write(`${JSON.stringify(report)}\n`);
|
|
504
|
+
process.exitCode = 1;
|
|
505
|
+
return;
|
|
506
|
+
}
|
|
507
|
+
const report = inspectAutonomyReadiness(source, profile);
|
|
508
|
+
process.stdout.write(formatAutonomyReadiness(report));
|
|
509
|
+
process.stdout.write(`${JSON.stringify(report)}\n`);
|
|
510
|
+
if (!report.ready)
|
|
511
|
+
process.exitCode = 1;
|
|
512
|
+
return;
|
|
513
|
+
}
|
|
514
|
+
const source = await dump();
|
|
515
|
+
// Finite-isolation mode keeps its existing output exactly: the ordinary-use
|
|
516
|
+
// readiness snapshot is an explicit `--readiness` opt-in so an autonomy
|
|
517
|
+
// profile's diagnostic run is unchanged.
|
|
518
|
+
const parsed = inspectAutonomyProfile(source, profile, dshHome);
|
|
519
|
+
const { inspectIsolationGrant } = await import('@dsh-enhanced/assistant-isolation');
|
|
520
|
+
if (typeof inspectIsolationGrant !== 'function')
|
|
176
521
|
fail('install the matching assistant-isolation version with grant diagnostics; no state was changed');
|
|
177
522
|
const owner = inspectAutonomyOwner(parsed);
|
|
178
523
|
const grant = inspectIsolationGrant({ stateRoot: parsed.stateRoot, grant: parsed.grant });
|
package/lib/doctor.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"doctor.js","sourceRoot":"","sources":["../src/doctor.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"doctor.js","sourceRoot":"","sources":["../src/doctor.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"goal-admission.d.ts","sourceRoot":"","sources":["../src/goal-admission.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"goal-admission.d.ts","sourceRoot":"","sources":["../src/goal-admission.ts"],"names":[],"mappings":"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"}
|
package/lib/goal-admission.js
CHANGED
|
@@ -312,8 +312,8 @@ export function prepareGoalAdmission(input, source, effectiveSource, taskSource,
|
|
|
312
312
|
const policy = map(personal.get('assistantPolicy', true));
|
|
313
313
|
const principalId = `web/${input.profile}/local/operator`;
|
|
314
314
|
const profile = inspectAutonomyProfile(target.document.toString(), input.profile, input.dshHome);
|
|
315
|
-
const nativeRoots = profile.
|
|
316
|
-
if (nativeRoots
|
|
315
|
+
const nativeRoots = profile.linux.cgroupRoots;
|
|
316
|
+
if (nativeRoots.mode === 'v2')
|
|
317
317
|
fail('native Goal verification requires frozen cgroup v1 roots');
|
|
318
318
|
const { binding, owner } = snapshot;
|
|
319
319
|
if (profile.grant.workspace !== input.workspace || profile.grant.agentPreset !== input.preset || binding.workspace !== input.workspace || binding.agentPreset !== input.preset
|
|
@@ -387,9 +387,7 @@ export function prepareGoalAdmission(input, source, effectiveSource, taskSource,
|
|
|
387
387
|
}
|
|
388
388
|
};
|
|
389
389
|
const authority = { kind: 'isolated-runner', id: `${admissionId}-verify`, stateRoot: join(input.dshHome, 'assistant-goal-verification', input.profile, admissionId),
|
|
390
|
-
|
|
391
|
-
? { backend: 'linux-native', runtime: profile.linux.runtime, cgroupRoots: nativeRoots }
|
|
392
|
-
: { image: profile.image, dockerPath: profile.dockerPath }),
|
|
390
|
+
backend: 'linux-native', runtime: profile.linux.runtime, cgroupRoots: nativeRoots,
|
|
393
391
|
command: task.verification.command, expiresAt: profile.grant.expiresAt,
|
|
394
392
|
maxRuns: task.verification.maxRuns, maxTotalDurationMs: task.verification.maxTotalDurationMs, maxDurationMs: task.verification.maxDurationMs,
|
|
395
393
|
maxOutputBytes: task.verification.maxOutputBytes, testSets: [{ id: 'cases', cases: task.verification.cases }] };
|