@dsh-enhanced/assistant-evaluation 0.1.32 → 0.1.34
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 +10 -2
- package/lib/benchmark/cli.d.ts.map +1 -1
- package/lib/benchmark/cli.js +57 -21
- package/lib/benchmark/cli.js.map +1 -1
- package/lib/benchmark/native-goal-services.d.ts +64 -0
- package/lib/benchmark/native-goal-services.d.ts.map +1 -0
- package/lib/benchmark/native-goal-services.js +52 -0
- package/lib/benchmark/native-goal-services.js.map +1 -0
- package/lib/benchmark/native-skills-runtime.d.ts +155 -0
- package/lib/benchmark/native-skills-runtime.d.ts.map +1 -0
- package/lib/benchmark/native-skills-runtime.js +336 -0
- package/lib/benchmark/native-skills-runtime.js.map +1 -0
- package/lib/benchmark/native-skills.d.ts +142 -0
- package/lib/benchmark/native-skills.d.ts.map +1 -0
- package/lib/benchmark/native-skills.js +259 -0
- package/lib/benchmark/native-skills.js.map +1 -0
- package/lib/benchmark/native.d.ts +7 -0
- package/lib/benchmark/native.d.ts.map +1 -1
- package/lib/benchmark/native.js.map +1 -1
- package/lib/benchmark/strategy-capabilities.d.ts.map +1 -1
- package/lib/benchmark/strategy-capabilities.js +9 -0
- package/lib/benchmark/strategy-capabilities.js.map +1 -1
- package/lib/benchmark/strategy-config.d.ts +3 -2
- package/lib/benchmark/strategy-config.d.ts.map +1 -1
- package/lib/benchmark/strategy-config.js +19 -6
- package/lib/benchmark/strategy-config.js.map +1 -1
- package/lib/benchmark/strategy-corpus-v2.d.ts +18 -0
- package/lib/benchmark/strategy-corpus-v2.d.ts.map +1 -0
- package/lib/benchmark/strategy-corpus-v2.js +143 -0
- package/lib/benchmark/strategy-corpus-v2.js.map +1 -0
- package/lib/benchmark/strategy-corpus.d.ts +9 -0
- package/lib/benchmark/strategy-corpus.d.ts.map +1 -1
- package/lib/benchmark/strategy-corpus.js +3 -3
- package/lib/benchmark/strategy-corpus.js.map +1 -1
- package/lib/benchmark/strategy-evidence.d.ts.map +1 -1
- package/lib/benchmark/strategy-evidence.js +50 -9
- package/lib/benchmark/strategy-evidence.js.map +1 -1
- package/lib/benchmark/strategy-executor.d.ts.map +1 -1
- package/lib/benchmark/strategy-executor.js +6 -4
- package/lib/benchmark/strategy-executor.js.map +1 -1
- package/lib/benchmark/strategy-goal-runtime.d.ts.map +1 -1
- package/lib/benchmark/strategy-goal-runtime.js +13 -55
- package/lib/benchmark/strategy-goal-runtime.js.map +1 -1
- package/lib/benchmark/strategy-meter.d.ts +2 -2
- package/lib/benchmark/strategy-meter.d.ts.map +1 -1
- package/lib/benchmark/strategy-meter.js +98 -4
- package/lib/benchmark/strategy-meter.js.map +1 -1
- package/lib/benchmark/strategy-plan.d.ts +7 -0
- package/lib/benchmark/strategy-plan.d.ts.map +1 -1
- package/lib/benchmark/strategy-plan.js +12 -2
- package/lib/benchmark/strategy-plan.js.map +1 -1
- package/lib/benchmark/strategy-projection.d.ts +157 -0
- package/lib/benchmark/strategy-projection.d.ts.map +1 -0
- package/lib/benchmark/strategy-projection.js +171 -0
- package/lib/benchmark/strategy-projection.js.map +1 -0
- package/lib/benchmark/super-relay.d.ts +26 -0
- package/lib/benchmark/super-relay.d.ts.map +1 -0
- package/lib/benchmark/super-relay.js +173 -0
- package/lib/benchmark/super-relay.js.map +1 -0
- package/lib/benchmark/traex.d.ts +17 -0
- package/lib/benchmark/traex.d.ts.map +1 -0
- package/lib/benchmark/traex.js +139 -0
- package/lib/benchmark/traex.js.map +1 -0
- package/lib/service.d.ts +25 -1
- package/lib/service.d.ts.map +1 -1
- package/lib/service.js +20 -4
- package/lib/service.js.map +1 -1
- package/lib/sqlite.d.ts +1 -1
- package/lib/sqlite.d.ts.map +1 -1
- package/lib/sqlite.js +46 -1
- package/lib/sqlite.js.map +1 -1
- package/lib/store.d.ts +13 -1
- package/lib/store.d.ts.map +1 -1
- package/lib/store.js +90 -4
- package/lib/store.js.map +1 -1
- package/lib/types.d.ts +13 -0
- package/lib/types.d.ts.map +1 -1
- package/lib/types.js.map +1 -1
- package/lib/version.d.ts +1 -1
- package/lib/version.js +1 -1
- package/package.json +49 -12
|
@@ -0,0 +1,336 @@
|
|
|
1
|
+
var __rewriteRelativeImportExtension = (this && this.__rewriteRelativeImportExtension) || function (path, preserveJsx) {
|
|
2
|
+
if (typeof path === "string" && /^\.\.?\//.test(path)) {
|
|
3
|
+
return path.replace(/\.(tsx)$|((?:\.d)?)((?:\.[^./]+?)?)\.([cm]?)ts$/i, function (m, tsx, d, ext, cm) {
|
|
4
|
+
return tsx ? preserveJsx ? ".jsx" : ".js" : d && (!ext || !cm) ? m : (d + ext + "." + cm.toLowerCase() + "js");
|
|
5
|
+
});
|
|
6
|
+
}
|
|
7
|
+
return path;
|
|
8
|
+
};
|
|
9
|
+
/** Native Goal cells for skill reuse. Host orchestration; no second model or Goal loop. */
|
|
10
|
+
import { Context } from '@deepseek-ai/cordis';
|
|
11
|
+
import { SessionId } from '@deepseek-ai/dsh-session';
|
|
12
|
+
import { isAbsolute, join } from 'node:path';
|
|
13
|
+
import { acceptanceDigest, validateTaskAcceptanceContract, validateTaskVerificationReceipt } from '@dsh-enhanced/task-acceptance-contract';
|
|
14
|
+
import { benchmarkAssert, benchmarkInteger, benchmarkSnapshot } from './schema.js';
|
|
15
|
+
import { createBenchmarkStrategyOwnerRuntime } from './strategy-owner.js';
|
|
16
|
+
import { installNativeGoalServices } from './native-goal-services.js';
|
|
17
|
+
import { installStrategyBenchmarkMeter } from './strategy-meter.js';
|
|
18
|
+
import { strategyGoalTaskDigests } from './strategy-goal-runtime.js';
|
|
19
|
+
const original = Symbol.for('cordis.original');
|
|
20
|
+
const raw = (value) => value?.[original] ?? value;
|
|
21
|
+
function bounded(work, signal) {
|
|
22
|
+
return new Promise((resolve, reject) => {
|
|
23
|
+
const abort = () => reject(signal.reason ?? new Error('native skill cell cancelled'));
|
|
24
|
+
signal.addEventListener('abort', abort, { once: true });
|
|
25
|
+
work.then(value => { signal.removeEventListener('abort', abort); if (signal.aborted)
|
|
26
|
+
abort();
|
|
27
|
+
else
|
|
28
|
+
resolve(value); }, error => { signal.removeEventListener('abort', abort); reject(error); });
|
|
29
|
+
if (signal.aborted) {
|
|
30
|
+
signal.removeEventListener('abort', abort);
|
|
31
|
+
abort();
|
|
32
|
+
}
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
const plugin = (ctx, value, config = {}) => ctx.plugin(value, config);
|
|
36
|
+
function validateNativeSkillGoalOptions(input) {
|
|
37
|
+
const route = (value) => typeof value === 'string' && /^[A-Za-z0-9][A-Za-z0-9._:/-]{0,255}$/u.test(value);
|
|
38
|
+
const digest = (value) => typeof value === 'string' && /^[a-f0-9]{64}$/u.test(value);
|
|
39
|
+
benchmarkAssert(typeof input.cellId === 'string' && /^[A-Za-z0-9][A-Za-z0-9._-]{0,127}$/u.test(input.cellId), 'invalid native skill cell id');
|
|
40
|
+
benchmarkAssert(typeof input.workspace === 'string' && isAbsolute(input.workspace) && typeof input.stateRoot === 'string' && isAbsolute(input.stateRoot), 'native skill workspace and state root must be absolute');
|
|
41
|
+
benchmarkAssert(typeof input.persona === 'string' && Buffer.byteLength(input.persona) <= 32768 && typeof input.factory === 'function', 'invalid native skill runtime input');
|
|
42
|
+
benchmarkInteger(input.budget.durationMs, 1, 86_400_000);
|
|
43
|
+
for (const value of [input.budget.inputTokens, input.budget.outputTokens, input.budget.toolCalls])
|
|
44
|
+
benchmarkInteger(value, 0, 1_000_000_000);
|
|
45
|
+
if (input.budget.costUsdMicros !== null)
|
|
46
|
+
benchmarkInteger(input.budget.costUsdMicros, 0, 1_000_000_000);
|
|
47
|
+
benchmarkAssert(route(input.model.provider) && route(input.model.model), 'invalid native skill model route');
|
|
48
|
+
benchmarkAssert(input.model.temperature === null || (typeof input.model.temperature === 'number' && Number.isFinite(input.model.temperature) && input.model.temperature >= 0 && input.model.temperature <= 2), 'invalid native skill temperature');
|
|
49
|
+
benchmarkAssert(input.model.inputLimitMode === undefined || input.model.inputLimitMode === 'upper-bound', 'native skills requires an input upper bound');
|
|
50
|
+
benchmarkAssert(input.model.outputLimitMode === undefined || input.model.outputLimitMode === 'provider', 'native skills requires a provider output limit');
|
|
51
|
+
benchmarkAssert(input.model.observationMode === undefined || input.model.observationMode === 'enforced-upper-bound-provider-output', 'native skills requires enforced output observation');
|
|
52
|
+
benchmarkInteger(input.model.maxOutputTokens, 1, input.budget.outputTokens);
|
|
53
|
+
benchmarkAssert(digest(input.model.adapterDigest) && digest(input.model.tokenCounterDigest), 'invalid native skill model digest');
|
|
54
|
+
const rates = [input.model.inputUsdMicrosPerMillionTokens, input.model.outputUsdMicrosPerMillionTokens, input.model.cacheReadUsdMicrosPerMillionTokens, input.model.cacheWriteUsdMicrosPerMillionTokens];
|
|
55
|
+
benchmarkAssert((rates[0] === null) === (rates[1] === null), 'native skill token rates must be paired');
|
|
56
|
+
for (const rate of rates)
|
|
57
|
+
if (rate !== undefined && rate !== null)
|
|
58
|
+
benchmarkInteger(rate, 0, 1_000_000_000);
|
|
59
|
+
if (input.budget.costUsdMicros !== null)
|
|
60
|
+
benchmarkAssert(rates.every(rate => rate !== null && rate !== undefined), 'priced native skills requires all token rates');
|
|
61
|
+
benchmarkInteger(input.execution.modelCalls, 1, 10000);
|
|
62
|
+
benchmarkInteger(input.execution.maxGoalRounds, 1, 32);
|
|
63
|
+
benchmarkInteger(input.execution.maxOutputTokensPerCall, 1, input.budget.outputTokens);
|
|
64
|
+
benchmarkInteger(input.stepMaxDurationMs, 1000, 300000);
|
|
65
|
+
benchmarkAssert(/^sha256:[a-f0-9]{64}$/u.test(input.image) && typeof input.dockerPath === 'string' && isAbsolute(input.dockerPath), 'immutable image and absolute Docker path required');
|
|
66
|
+
benchmarkAssert(input.stepMaxDurationMs * 3 < input.budget.durationMs && input.task.verification.maxDurationMs * input.task.verification.cases.length < input.stepMaxDurationMs, 'native skill verification exceeds budget');
|
|
67
|
+
}
|
|
68
|
+
export async function createNativeSkillGoalRuntime(input) {
|
|
69
|
+
benchmarkAssert(!(input.source && input.arm), 'source capture and delegated arm cannot share a cell');
|
|
70
|
+
strategyGoalTaskDigests(input.task);
|
|
71
|
+
validateNativeSkillGoalOptions(input);
|
|
72
|
+
benchmarkAssert(input.model.maxOutputTokens === input.execution.maxOutputTokensPerCall && input.model.observationMode !== 'observed-call-count', 'native skills requires the same enforced token contract');
|
|
73
|
+
const stopTimeoutMs = input.stopTimeoutMs ?? 10000;
|
|
74
|
+
benchmarkInteger(stopTimeoutMs, 1000, 30000);
|
|
75
|
+
if (input.source)
|
|
76
|
+
benchmarkInteger(input.source.validityMs, 1000, 86400000);
|
|
77
|
+
const captured = input.arm?.captured;
|
|
78
|
+
const frozen = benchmarkSnapshot({ cellId: input.cellId, persona: input.persona, model: input.model, budget: input.budget, execution: input.execution,
|
|
79
|
+
task: input.task, image: input.image, dockerPath: input.dockerPath, stepMaxDurationMs: input.stepMaxDurationMs,
|
|
80
|
+
source: input.source ?? null, arm: input.arm ? { planDigest: input.arm.planDigest, variantId: input.arm.variantId, selection: captured.selection, snapshot: captured.snapshot } : null });
|
|
81
|
+
if (captured)
|
|
82
|
+
benchmarkAssert(acceptanceDigest({ model: captured.origin.model, budget: captured.origin.budget, execution: captured.origin.execution, task: captured.origin.task, persona: captured.origin.persona })
|
|
83
|
+
=== acceptanceDigest({ model: frozen.model, budget: frozen.budget, execution: frozen.execution, task: frozen.task, persona: frozen.persona }), 'delegated native skill must reuse the source supplier and execution contract');
|
|
84
|
+
const ctx = new Context(), lifetime = new AbortController(), execution = new AbortController();
|
|
85
|
+
const signal = AbortSignal.any([input.signal, lifetime.signal, execution.signal]);
|
|
86
|
+
const deadline = setTimeout(() => execution.abort(new Error('native skill cell deadline')), input.budget.durationMs);
|
|
87
|
+
deadline.unref?.();
|
|
88
|
+
let owner, goals, skills;
|
|
89
|
+
let adapter, meter, mount;
|
|
90
|
+
let factoryPending, mountPending, disposeAdapterFlight, disposeMountFlight, closeFlight;
|
|
91
|
+
let stage = 'setup', cleanup = 'pending', stopped = false, started = false, setupSettled = false;
|
|
92
|
+
let goal, delegation = null, result = null;
|
|
93
|
+
let captureFlight;
|
|
94
|
+
let captureCleanup = 'not-started';
|
|
95
|
+
let mountDelegated;
|
|
96
|
+
const capabilities = [], skillRuns = [];
|
|
97
|
+
const toolCalls = [];
|
|
98
|
+
const live = () => { signal.throwIfAborted(); benchmarkAssert(!stopped, 'native skill runtime closed'); };
|
|
99
|
+
const disposeAdapter = (value) => disposeAdapterFlight ??= Promise.resolve().then(() => value?.dispose());
|
|
100
|
+
const disposeMount = (value) => disposeMountFlight ??= Promise.resolve().then(() => value?.dispose());
|
|
101
|
+
const disposeCapture = async (handle) => {
|
|
102
|
+
try {
|
|
103
|
+
await handle.dispose();
|
|
104
|
+
captureCleanup = 'succeeded';
|
|
105
|
+
}
|
|
106
|
+
catch (error) {
|
|
107
|
+
captureCleanup = 'unknown';
|
|
108
|
+
throw error;
|
|
109
|
+
}
|
|
110
|
+
};
|
|
111
|
+
const snapshot = () => ({ runtimeRoot: owner?.runtimeRoot ?? null, stage, meter: meter?.snapshot() ?? null, result, cleanup });
|
|
112
|
+
const close = () => {
|
|
113
|
+
if (closeFlight)
|
|
114
|
+
return closeFlight;
|
|
115
|
+
stopped = true;
|
|
116
|
+
stage = 'cleanup';
|
|
117
|
+
clearTimeout(deadline);
|
|
118
|
+
lifetime.abort();
|
|
119
|
+
meter?.dispose();
|
|
120
|
+
// Factory, delegated mount, and capture can all outlive the foreground
|
|
121
|
+
// operation. Drain each one so a late resource is disposed before a
|
|
122
|
+
// successful close is reported.
|
|
123
|
+
// A rejected source/authority check is an operation result. Cleanup still
|
|
124
|
+
// waits for that exact flight and separately requires an observed disposer.
|
|
125
|
+
// If Agent creation rejects before returning its handle, no cleanup proof
|
|
126
|
+
// is available; keep unknown even if a native factory later cleans up.
|
|
127
|
+
const drainedCapture = captureFlight?.catch(() => { }).then(() => {
|
|
128
|
+
benchmarkAssert(captureCleanup === 'not-started' || captureCleanup === 'succeeded', 'native skill capture cleanup unconfirmed');
|
|
129
|
+
}) ?? Promise.resolve();
|
|
130
|
+
const work = Promise.allSettled([owner?.shutdown() ?? ctx.fiber.dispose(), ...(adapter ? [disposeAdapter(adapter)] : []), ...(mount ? [disposeMount(mount)] : []), factoryPending ?? Promise.resolve(), mountPending ?? Promise.resolve(), drainedCapture]).then(async (values) => {
|
|
131
|
+
await Promise.resolve();
|
|
132
|
+
const failed = values.filter((value) => value.status === 'rejected');
|
|
133
|
+
if (!setupSettled || failed.length)
|
|
134
|
+
throw new AggregateError(failed.map(value => value.reason), 'native skill runtime did not quiesce');
|
|
135
|
+
});
|
|
136
|
+
closeFlight = new Promise((resolve, reject) => {
|
|
137
|
+
const timer = setTimeout(() => { cleanup = 'unknown'; reject(new Error('native skill shutdown deadline')); }, stopTimeoutMs);
|
|
138
|
+
work.then(() => { clearTimeout(timer); if (cleanup === 'unknown')
|
|
139
|
+
return; cleanup = 'succeeded'; stage = 'closed'; resolve(); }, error => { clearTimeout(timer); cleanup = 'unknown'; reject(error); });
|
|
140
|
+
});
|
|
141
|
+
return closeFlight;
|
|
142
|
+
};
|
|
143
|
+
try {
|
|
144
|
+
input.lifecycle?.({ close, snapshot });
|
|
145
|
+
const tools = ['goal_create', 'goal_context', 'goal_checkpoint', 'isolation_run', ...(captured ? ['skill_status', 'skill_run'] : [])];
|
|
146
|
+
const subject = { kind: 'agent', id: 'benchmark', workspace: input.workspace };
|
|
147
|
+
owner = await createBenchmarkStrategyOwnerRuntime({ ctx, workspace: input.workspace, stateRoot: input.stateRoot, cellId: frozen.cellId,
|
|
148
|
+
provider: frozen.model.provider, model: frozen.model.model, maxOutputTokens: frozen.execution.maxOutputTokensPerCall, persona: frozen.persona,
|
|
149
|
+
allowedToolNames: tools, goalContinuationTimeoutMs: Math.min(300000, frozen.budget.durationMs), policyRules: [
|
|
150
|
+
{ id: 'native-skills-goal', effect: 'allow', subject, actions: ['create', 'observe', 'inspect', 'focus', 'checkpoint', 'snapshot', 'execute'], resource: { kind: 'goal', id: 'business-context' }, context: { initiators: ['external'] } },
|
|
151
|
+
...[...tools, 'isolation:benchmark-work'].map(id => ({ id: `allow-${id.replace(':', '-')}`, effect: 'allow', subject, actions: ['execute'], resource: { kind: 'tool', id }, context: { initiators: ['external'] } })),
|
|
152
|
+
...(captured || frozen.source ? [
|
|
153
|
+
{ id: 'native-skills-use', effect: 'allow', subject, actions: ['inspect', 'run', ...(frozen.source ? ['draft'] : [])], resource: { kind: 'evolution', id: 'verified-workflows' }, context: { initiators: ['external'] } },
|
|
154
|
+
{ id: 'native-skills-compare', effect: 'allow', subject: { kind: 'background', id: 'dsh-enhanced-assistant-skills', workspace: input.workspace }, actions: ['compare'], resource: { kind: 'evolution', id: 'verified-workflows' }, context: { initiators: ['background'] } },
|
|
155
|
+
...(frozen.source ? [{ id: 'native-skills-capture', effect: 'allow', subject, actions: ['draft'], resource: { kind: 'evolution', id: 'verified-workflows' }, context: { initiators: ['background'] } }] : []),
|
|
156
|
+
] : []),
|
|
157
|
+
] });
|
|
158
|
+
if (stopped || signal.aborted)
|
|
159
|
+
await owner.shutdown();
|
|
160
|
+
live();
|
|
161
|
+
const services = await installNativeGoalServices({ ctx, owner, model: frozen.model, budget: frozen.budget, limits: { ...frozen.execution, observationMode: 'enforced-upper-bound-provider-output' },
|
|
162
|
+
task: frozen.task, image: frozen.image, dockerPath: frozen.dockerPath, stepMaxDurationMs: frozen.stepMaxDurationMs, enabledStrategy: false, assertLive: live,
|
|
163
|
+
...(frozen.source ? { acceptanceValidityMs: frozen.source.validityMs } : {}) });
|
|
164
|
+
goals = services.goals;
|
|
165
|
+
if (captured || frozen.source) {
|
|
166
|
+
const skillsPackage = '@dsh-enhanced/assistant-skills', queryPackage = '@deepseek-ai/dsh-session-query';
|
|
167
|
+
const skillsModule = await import(__rewriteRelativeImportExtension(skillsPackage));
|
|
168
|
+
live();
|
|
169
|
+
await plugin(ctx, skillsModule.default, { databasePath: join(owner.runtimeRoot, 'skills.sqlite'), allowedTools: ['isolation_run'], maxDurationMs: Math.min(300000, frozen.budget.durationMs), candidateTtlMs: frozen.source?.validityMs ?? frozen.budget.durationMs });
|
|
170
|
+
live();
|
|
171
|
+
skills = ctx.get('assistantSkills');
|
|
172
|
+
if (frozen.source) {
|
|
173
|
+
// The upstream service's concrete exact-read/observeSession contract is
|
|
174
|
+
// used here; no search methods or model-visible query tools are mounted.
|
|
175
|
+
const query = await import(__rewriteRelativeImportExtension(queryPackage));
|
|
176
|
+
await plugin(ctx, query.SessionQueryEngine);
|
|
177
|
+
live();
|
|
178
|
+
}
|
|
179
|
+
if (captured)
|
|
180
|
+
mountDelegated = async () => {
|
|
181
|
+
const recipient = owner.ownerScope(), scope = { principalId: recipient.principalId, ...recipient.owner, workspace: recipient.workspace, preset: recipient.preset };
|
|
182
|
+
delegation = { protocol: 'assistant-skills/delegated-arm/v1', planDigest: frozen.arm.planDigest, cellId: frozen.cellId, variantId: frozen.arm.variantId,
|
|
183
|
+
definitionDigest: frozen.arm.snapshot.definitionDigest, sourceDigest: frozen.arm.snapshot.sourceDigest, recipientScopeDigest: acceptanceDigest(scope),
|
|
184
|
+
skillName: frozen.arm.selection.skillName, version: frozen.arm.snapshot.version, expiresAt: Math.min(frozen.arm.snapshot.expiresAt, Date.now() + Math.min(300000, frozen.budget.durationMs)) };
|
|
185
|
+
const pending = (async () => {
|
|
186
|
+
const capability = await captured.source.mintBenchmarkArm({ selection: frozen.arm.selection, recipient: skills, recipientScope: scope, recipientOwnerRouteId: owner.ownerRouteId, binding: delegation }, signal);
|
|
187
|
+
return skills.mountBenchmarkArm(capability, delegation);
|
|
188
|
+
})();
|
|
189
|
+
mountPending = pending.then(async (value) => {
|
|
190
|
+
if (stopped || signal.aborted)
|
|
191
|
+
await disposeMount(value);
|
|
192
|
+
else
|
|
193
|
+
mount = value;
|
|
194
|
+
});
|
|
195
|
+
await bounded(mountPending, signal);
|
|
196
|
+
live();
|
|
197
|
+
};
|
|
198
|
+
}
|
|
199
|
+
const pending = Promise.resolve().then(() => input.factory(frozen.model, { ctx, workspace: owner.workspace }));
|
|
200
|
+
factoryPending = pending.then(async (value) => { if (stopped || signal.aborted)
|
|
201
|
+
await disposeAdapter(value); }, () => { });
|
|
202
|
+
adapter = await bounded(pending, signal);
|
|
203
|
+
live();
|
|
204
|
+
meter = installStrategyBenchmarkMeter(ctx, { budget: frozen.budget, modelCalls: frozen.execution.modelCalls, maxOutputTokens: frozen.execution.maxOutputTokensPerCall, model: frozen.model, binding: adapter, signal });
|
|
205
|
+
goals.registerBudgetMeter({ id: 'benchmark-model', provider: frozen.model.provider, model: frozen.model.model, inputTokenUpperBound: adapter.inputTokenUpperBound?.bind(adapter),
|
|
206
|
+
inputUsdMicrosPerMillionTokens: frozen.model.inputUsdMicrosPerMillionTokens, outputUsdMicrosPerMillionTokens: frozen.model.outputUsdMicrosPerMillionTokens,
|
|
207
|
+
cacheReadUsdMicrosPerMillionTokens: frozen.model.cacheReadUsdMicrosPerMillionTokens, cacheWriteUsdMicrosPerMillionTokens: frozen.model.cacheWriteUsdMicrosPerMillionTokens });
|
|
208
|
+
ctx.on('agent/request', async (_payload, next) => ({ ...await next(), maxTokens: frozen.execution.maxOutputTokensPerCall, ...(frozen.model.temperature === null ? {} : { temperature: frozen.model.temperature }) }));
|
|
209
|
+
ctx.on('llm/stream', async function* (options, next) {
|
|
210
|
+
const agent = ctx.agents.currentInitiator();
|
|
211
|
+
benchmarkAssert(agent !== undefined, 'native skill request has no Agent');
|
|
212
|
+
const names = (options.tools ?? []).map(tool => tool.name).sort();
|
|
213
|
+
benchmarkAssert(names.every(name => tools.includes(name)) && (captured ? names.includes('skill_run') && names.includes('skill_status') : !names.some(name => name.startsWith('skill'))), `native skill tool surface drift: ${names.join(',')}`);
|
|
214
|
+
capabilities.push({ sessionId: String(agent.session.id), toolNames: names, toolsDigest: acceptanceDigest(options.tools ?? []), systemDigest: acceptanceDigest(options.system ?? '') });
|
|
215
|
+
yield* next();
|
|
216
|
+
});
|
|
217
|
+
ctx.on('tools/result', (execution, value) => {
|
|
218
|
+
if (!execution.agent)
|
|
219
|
+
return;
|
|
220
|
+
toolCalls.push({ name: execution.name, inputDigest: acceptanceDigest(execution.arguments), outputDigest: acceptanceDigest(value) });
|
|
221
|
+
if (execution.name === 'goal_create') {
|
|
222
|
+
const matches = goals.list(execution.agent).filter(value => value.native.sessionId === String(execution.agent.session.id) && value.native.objective === frozen.task.objective);
|
|
223
|
+
if (matches.length === 1)
|
|
224
|
+
goal = { id: matches[0].id, sessionId: matches[0].native.sessionId };
|
|
225
|
+
}
|
|
226
|
+
if (execution.name === 'skill_run' && skills) {
|
|
227
|
+
if (value && !value.isError && value.value && typeof value.value === 'object' && 'context' in value.value && typeof value.value.context === 'string') {
|
|
228
|
+
const parsed = JSON.parse(value.value.context);
|
|
229
|
+
if (parsed && typeof parsed === 'object' && 'id' in parsed && typeof parsed.id === 'string') {
|
|
230
|
+
const run = raw(skills).inspect(execution.agent, parsed.id);
|
|
231
|
+
if (run && typeof run === 'object')
|
|
232
|
+
skillRuns.push(benchmarkSnapshot(run));
|
|
233
|
+
}
|
|
234
|
+
}
|
|
235
|
+
}
|
|
236
|
+
});
|
|
237
|
+
await owner.installModel(adapter.adapter);
|
|
238
|
+
live();
|
|
239
|
+
setupSettled = true;
|
|
240
|
+
const runtime = owner, accounting = meter;
|
|
241
|
+
return { close, snapshot, runtimeRoot: runtime.runtimeRoot,
|
|
242
|
+
async execute() {
|
|
243
|
+
benchmarkAssert(!started && !stopped, 'native skill cell can execute only once');
|
|
244
|
+
started = true;
|
|
245
|
+
stage = 'executing';
|
|
246
|
+
try {
|
|
247
|
+
await bounded(runtime.sendPublicInbound(frozen.task.publicPrompt), accounting.signal);
|
|
248
|
+
if (mountDelegated)
|
|
249
|
+
await bounded(mountDelegated(), accounting.signal);
|
|
250
|
+
await bounded(runtime.waitForQuiescence(goals), accounting.signal);
|
|
251
|
+
accounting.assertComplete();
|
|
252
|
+
benchmarkAssert(goal !== undefined, 'model did not create the requested Goal');
|
|
253
|
+
result = benchmarkSnapshot({ snapshot: goals.inspectOwnerGoalExecution({ ownerRouteId: runtime.ownerRouteId, principalId: runtime.principalId, workspace: runtime.workspace, preset: 'benchmark', sessionId: goal.sessionId, goalId: goal.id }),
|
|
254
|
+
meter: accounting.snapshot(), capabilities, skillRuns, delegation, toolCalls });
|
|
255
|
+
stage = 'observed';
|
|
256
|
+
clearTimeout(deadline);
|
|
257
|
+
accounting.dispose();
|
|
258
|
+
return result;
|
|
259
|
+
}
|
|
260
|
+
catch (error) {
|
|
261
|
+
try {
|
|
262
|
+
await close();
|
|
263
|
+
}
|
|
264
|
+
catch { }
|
|
265
|
+
throw error;
|
|
266
|
+
}
|
|
267
|
+
},
|
|
268
|
+
readAcceptedArtifact() {
|
|
269
|
+
benchmarkAssert(result !== null && !stopped && !input.signal.aborted, 'live observed runtime required for artifact readback');
|
|
270
|
+
runtime.ownerScope();
|
|
271
|
+
const outcome = result.snapshot.outcome;
|
|
272
|
+
const assessments = result.snapshot.outcomeAssessments;
|
|
273
|
+
const selected = assessments.find(value => value.contract.task.ref === outcome?.assessmentId);
|
|
274
|
+
benchmarkAssert(selected?.triggerRunId !== undefined && selected.triggerRunId !== null, 'independent outcome artifact run unavailable');
|
|
275
|
+
const tasks = result.snapshot.acceptedTasks;
|
|
276
|
+
const task = tasks.find(value => value.contract?.task?.kind === 'goal-step'
|
|
277
|
+
&& value.contract.task.ref === selected.triggerRunId);
|
|
278
|
+
benchmarkAssert(task !== undefined, 'independent step artifact contract unavailable');
|
|
279
|
+
const contract = validateTaskAcceptanceContract(task.contract);
|
|
280
|
+
validateTaskVerificationReceipt(contract, task.receipt);
|
|
281
|
+
const isolation = ctx.get('assistantIsolation');
|
|
282
|
+
const artifact = isolation.readAcceptedArtifact(contract, frozen.task.artifactPath);
|
|
283
|
+
runtime.ownerScope();
|
|
284
|
+
return { content: artifact.content, sha256: artifact.sha256, contractId: contract.id };
|
|
285
|
+
},
|
|
286
|
+
captureVerifiedSkill() {
|
|
287
|
+
return captureFlight ??= (async () => {
|
|
288
|
+
benchmarkAssert(frozen.source !== null && skills !== undefined && result !== null && goal !== undefined && !stopped && !input.signal.aborted, 'live accepted source runtime required');
|
|
289
|
+
benchmarkAssert(result.snapshot.outcome?.status === 'achieved', 'source Goal is not independently achieved');
|
|
290
|
+
const lineage = runtime.ownerScope(), scope = { principalId: lineage.principalId, ...lineage.owner, workspace: lineage.workspace, preset: lineage.preset };
|
|
291
|
+
const captureSignal = AbortSignal.any([input.signal, lifetime.signal, AbortSignal.timeout(10000)]);
|
|
292
|
+
const assertCurrent = () => { captureSignal.throwIfAborted(); benchmarkAssert(!stopped && acceptanceDigest(runtime.ownerScope()) === acceptanceDigest(lineage), 'source capture owner changed'); };
|
|
293
|
+
// Delivery disposes the original foreground Agent at completion. Use
|
|
294
|
+
// the existing growth-deposit contract from an inert, owned background
|
|
295
|
+
// Agent. No prompt, native Goal, model request or invented trace is made.
|
|
296
|
+
captureCleanup = 'pending';
|
|
297
|
+
const handle = await ctx.agents.create({ sessionId: SessionId(`skill-capture-${acceptanceDigest([scope, frozen.cellId]).slice(0, 40)}`),
|
|
298
|
+
meta: { cwd: scope.workspace, agentPreset: scope.preset }, signal: captureSignal,
|
|
299
|
+
agentOptions: { provider: frozen.model.provider, model: frozen.model.model, maxTokens: frozen.execution.maxOutputTokensPerCall },
|
|
300
|
+
setup(agentCtx, preparedAgent) {
|
|
301
|
+
assertCurrent();
|
|
302
|
+
const agent = preparedAgent ?? agentCtx.agent;
|
|
303
|
+
benchmarkAssert(agent !== undefined, 'capture Agent unavailable');
|
|
304
|
+
agentCtx.effect(() => raw(ctx.assistantPolicy).bindInitiator(agent, 'background', scope.principalId));
|
|
305
|
+
agentCtx.tools.restrict({ allow: [] });
|
|
306
|
+
} });
|
|
307
|
+
let candidate;
|
|
308
|
+
try {
|
|
309
|
+
assertCurrent();
|
|
310
|
+
candidate = await raw(skills).stageOwnerVerifiedSuccessCandidate({ agent: handle.agent, signal: captureSignal }, { ownerRouteId: runtime.ownerRouteId, successLocators: [{ sessionId: goal.sessionId, goalId: goal.id }], minimumOccurrences: 1, name: frozen.source.name, description: frozen.source.description }, { id: `benchmark-source-${frozen.cellId}`, scope, ownerRouteId: runtime.ownerRouteId, expiresAt: Date.now() + 10000, assertCurrent });
|
|
311
|
+
assertCurrent();
|
|
312
|
+
}
|
|
313
|
+
finally {
|
|
314
|
+
await disposeCapture(handle);
|
|
315
|
+
}
|
|
316
|
+
const selection = { scope, ownerRouteId: runtime.ownerRouteId, skillName: frozen.source.name, version: candidate.parentVersion + 1, candidateId: candidate.id };
|
|
317
|
+
const snapshot = await skills.inspectOwnerBenchmarkArm(selection, captureSignal);
|
|
318
|
+
return Object.freeze({ source: skills, selection, snapshot, origin: Object.freeze({ model: frozen.model, budget: frozen.budget, execution: frozen.execution,
|
|
319
|
+
task: frozen.task, persona: frozen.persona, result }) });
|
|
320
|
+
})();
|
|
321
|
+
},
|
|
322
|
+
};
|
|
323
|
+
}
|
|
324
|
+
catch (error) {
|
|
325
|
+
setupSettled = true;
|
|
326
|
+
try {
|
|
327
|
+
await close();
|
|
328
|
+
}
|
|
329
|
+
catch (cleanupError) {
|
|
330
|
+
throw new AggregateError([error, cleanupError], 'native skill setup failed');
|
|
331
|
+
}
|
|
332
|
+
;
|
|
333
|
+
throw error;
|
|
334
|
+
}
|
|
335
|
+
}
|
|
336
|
+
//# sourceMappingURL=native-skills-runtime.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"native-skills-runtime.js","sourceRoot":"","sources":["../../src/benchmark/native-skills-runtime.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
import type { CellObservation, HoldoutReceipt, ProspectiveBenchmarkManifest, QualificationBinding } from '@dsh-enhanced/task-acceptance-contract/holdout-authority';
|
|
2
|
+
import type { NativeAdapterFactory } from './native.js';
|
|
3
|
+
import { type NativeCapturedSkill, type NativeSkillGoalOptions, type NativeSkillGoalResult } from './native-skills-runtime.js';
|
|
4
|
+
import type { BenchmarkPlan, BenchmarkResult } from './types.js';
|
|
5
|
+
export { createNativeSkillGoalRuntime } from './native-skills-runtime.js';
|
|
6
|
+
export type { NativeCapturedSkill, NativeSkillGoalOptions, NativeSkillGoalResult } from './native-skills-runtime.js';
|
|
7
|
+
export declare const nativeSkillBenchmarkProtocol: "dsh-native-skill-benchmark/v1";
|
|
8
|
+
export interface NativeSkillBenchmarkConfig {
|
|
9
|
+
id: string;
|
|
10
|
+
/** Private Host evidence/journal root; never a model workspace. */
|
|
11
|
+
stateRoot: string;
|
|
12
|
+
workspaceRoot: string;
|
|
13
|
+
persona: string;
|
|
14
|
+
model: NativeSkillGoalOptions['model'];
|
|
15
|
+
budget: NativeSkillGoalOptions['budget'];
|
|
16
|
+
execution: NativeSkillGoalOptions['execution'];
|
|
17
|
+
/** Public program specification and separate, provisional native Goal smoke checks. */
|
|
18
|
+
task: NativeSkillGoalOptions['task'];
|
|
19
|
+
image: string;
|
|
20
|
+
dockerPath: string;
|
|
21
|
+
stepMaxDurationMs: number;
|
|
22
|
+
stopTimeoutMs?: number;
|
|
23
|
+
repeats: number;
|
|
24
|
+
seed: number;
|
|
25
|
+
expiresAt: number;
|
|
26
|
+
authority: {
|
|
27
|
+
executable: string;
|
|
28
|
+
args: readonly string[];
|
|
29
|
+
publicKey: string;
|
|
30
|
+
generatorDigest: string;
|
|
31
|
+
};
|
|
32
|
+
verification: {
|
|
33
|
+
command: string;
|
|
34
|
+
maxDurationMs: number;
|
|
35
|
+
maxOutputBytes: number;
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
export interface NativeSkillBenchmarkEvidence {
|
|
39
|
+
protocol: typeof nativeSkillBenchmarkProtocol;
|
|
40
|
+
binding: QualificationBinding;
|
|
41
|
+
config: NativeSkillBenchmarkConfig;
|
|
42
|
+
runtimeDigest: string;
|
|
43
|
+
sourceDigest: string;
|
|
44
|
+
training: NativeCapturedSkill['origin'];
|
|
45
|
+
nativeResults: readonly {
|
|
46
|
+
cellId: string;
|
|
47
|
+
value: NativeSkillGoalResult;
|
|
48
|
+
}[];
|
|
49
|
+
manifest: ProspectiveBenchmarkManifest;
|
|
50
|
+
plan: BenchmarkPlan;
|
|
51
|
+
receipt: HoldoutReceipt;
|
|
52
|
+
/** Provisional ledger results: never promoted from an unsigned per-cell response. */
|
|
53
|
+
executionResults: readonly BenchmarkResult[];
|
|
54
|
+
observations: readonly CellObservation[];
|
|
55
|
+
}
|
|
56
|
+
/** Fixed deployed modules, re-read before each cell; no caller-supplied runtime digest. */
|
|
57
|
+
export declare function nativeSkillRuntimeIdentity(provider: string): string;
|
|
58
|
+
export declare function nativeSkillJournalPlan(config: NativeSkillBenchmarkConfig, binding: QualificationBinding, manifest: ProspectiveBenchmarkManifest, runtimeDigest: string): Readonly<BenchmarkPlan>;
|
|
59
|
+
/** Recheck final signatures and exact per-cell observations before exposing any quality result. */
|
|
60
|
+
export declare function nativeSkillBenchmarkReport(evidence: NativeSkillBenchmarkEvidence, publicKey: string, generatorDigest: string): Promise<{
|
|
61
|
+
complete: boolean;
|
|
62
|
+
schemaVersion: 1;
|
|
63
|
+
planDigest: string;
|
|
64
|
+
expectedCells: number;
|
|
65
|
+
recordedCells: number;
|
|
66
|
+
variants: readonly {
|
|
67
|
+
id: string;
|
|
68
|
+
expected: number;
|
|
69
|
+
recorded: number;
|
|
70
|
+
achieved: number;
|
|
71
|
+
notAchieved: number;
|
|
72
|
+
unknown: number;
|
|
73
|
+
successRate: number;
|
|
74
|
+
successInterval95: readonly [number, number] | null;
|
|
75
|
+
metrics: Readonly<Record<keyof import("./types.js").BenchmarkMetrics, {
|
|
76
|
+
measured: number;
|
|
77
|
+
missing: number;
|
|
78
|
+
mean: number | null;
|
|
79
|
+
median: number | null;
|
|
80
|
+
p95: number | null;
|
|
81
|
+
}>>;
|
|
82
|
+
}[];
|
|
83
|
+
comparisons: readonly {
|
|
84
|
+
baselineId: string;
|
|
85
|
+
variantId: string;
|
|
86
|
+
paired: number;
|
|
87
|
+
missingPairs: number;
|
|
88
|
+
wins: number;
|
|
89
|
+
losses: number;
|
|
90
|
+
ties: number;
|
|
91
|
+
unknownPairs: number;
|
|
92
|
+
successRateDelta: number | null;
|
|
93
|
+
taskBootstrapInterval95: readonly [number, number] | null;
|
|
94
|
+
}[];
|
|
95
|
+
promotionAuthorized: false;
|
|
96
|
+
}>;
|
|
97
|
+
/** Caller keeps the genuine source runtime alive through the last cell. */
|
|
98
|
+
export declare function runNativeSkillBenchmark(input: NativeSkillBenchmarkConfig, captured: NativeCapturedSkill, factory: NativeAdapterFactory, signal: AbortSignal): Promise<{
|
|
99
|
+
report: {
|
|
100
|
+
complete: boolean;
|
|
101
|
+
schemaVersion: 1;
|
|
102
|
+
planDigest: string;
|
|
103
|
+
expectedCells: number;
|
|
104
|
+
recordedCells: number;
|
|
105
|
+
variants: readonly {
|
|
106
|
+
id: string;
|
|
107
|
+
expected: number;
|
|
108
|
+
recorded: number;
|
|
109
|
+
achieved: number;
|
|
110
|
+
notAchieved: number;
|
|
111
|
+
unknown: number;
|
|
112
|
+
successRate: number;
|
|
113
|
+
successInterval95: readonly [number, number] | null;
|
|
114
|
+
metrics: Readonly<Record<keyof import("./types.js").BenchmarkMetrics, {
|
|
115
|
+
measured: number;
|
|
116
|
+
missing: number;
|
|
117
|
+
mean: number | null;
|
|
118
|
+
median: number | null;
|
|
119
|
+
p95: number | null;
|
|
120
|
+
}>>;
|
|
121
|
+
}[];
|
|
122
|
+
comparisons: readonly {
|
|
123
|
+
baselineId: string;
|
|
124
|
+
variantId: string;
|
|
125
|
+
paired: number;
|
|
126
|
+
missingPairs: number;
|
|
127
|
+
wins: number;
|
|
128
|
+
losses: number;
|
|
129
|
+
ties: number;
|
|
130
|
+
unknownPairs: number;
|
|
131
|
+
successRateDelta: number | null;
|
|
132
|
+
taskBootstrapInterval95: readonly [number, number] | null;
|
|
133
|
+
}[];
|
|
134
|
+
promotionAuthorized: false;
|
|
135
|
+
};
|
|
136
|
+
receipt: HoldoutReceipt;
|
|
137
|
+
plan: Readonly<BenchmarkPlan>;
|
|
138
|
+
training: Readonly<import("./strategy-meter.js").StrategyBenchmarkMeterSnapshot>;
|
|
139
|
+
reuse: string[];
|
|
140
|
+
promotionAuthorized: false;
|
|
141
|
+
}>;
|
|
142
|
+
//# sourceMappingURL=native-skills.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"native-skills.d.ts","sourceRoot":"","sources":["../../src/benchmark/native-skills.ts"],"names":[],"mappings":"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"}
|