@tangle-network/starter-foundry 0.7.0 → 0.7.3

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 (36) hide show
  1. package/corpus/held-out-validation.json +2 -2
  2. package/dist/cli.js +0 -0
  3. package/dist/eval/scaffold-bridge.d.ts +99 -2
  4. package/dist/eval/scaffold-bridge.js +252 -59
  5. package/dist/eval/scaffold-bridge.js.map +1 -1
  6. package/dist/lib/compose.js +41 -2
  7. package/dist/lib/compose.js.map +1 -1
  8. package/dist/lib/promoter-gates.d.ts +114 -0
  9. package/dist/lib/promoter-gates.js +426 -0
  10. package/dist/lib/promoter-gates.js.map +1 -0
  11. package/dist/lib/prompt-e2e.d.ts +1 -0
  12. package/dist/lib/prompt-e2e.js +20 -6
  13. package/dist/lib/prompt-e2e.js.map +1 -1
  14. package/dist/lib/template-quality.js +20 -4
  15. package/dist/lib/template-quality.js.map +1 -1
  16. package/package.json +20 -19
  17. package/registry/families/fraud-ops-console/files/src/main.tsx +11 -8
  18. package/registry/families/fraud-ops-console/manifest.json +13 -17
  19. package/registry/families/kyc-onboarding/files/index.html +1 -1
  20. package/registry/families/kyc-onboarding/files/vite.config.ts +0 -1
  21. package/registry/families/kyc-onboarding/manifest.json +12 -12
  22. package/registry/families/polymarket-portfolio-hedging/files/src/main.tsx +11 -8
  23. package/registry/families/polymarket-portfolio-hedging/manifest.json +7 -6
  24. package/registry/layers/capability/agent-eval/files/.github/workflows/eval.yml +60 -0
  25. package/registry/layers/capability/agent-eval/files/scripts/eval-baseline.mjs +87 -0
  26. package/registry/layers/capability/agent-eval/files/tests/eval/README.md +76 -0
  27. package/registry/layers/capability/agent-eval/files/tests/eval/judge.mjs +35 -0
  28. package/registry/layers/capability/agent-eval/files/tests/eval/run-eval.mjs +204 -0
  29. package/registry/layers/capability/agent-eval/files/tests/eval/scenarios.json +47 -0
  30. package/registry/layers/capability/agent-eval/manifest.json +73 -0
  31. package/registry/layers/framework/forge-foundation/files/foundry.toml +14 -0
  32. package/registry/layers/framework/tangle-blueprint/files/foundry.toml +8 -0
  33. package/dist/lib/planner/zk-preferences.d.ts +0 -9
  34. package/dist/lib/planner/zk-preferences.js +0 -91
  35. package/dist/lib/planner/zk-preferences.js.map +0 -1
  36. /package/registry/families/kyc-onboarding/files/src/{main.ts → main.tsx} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"compose.js","sourceRoot":"","sources":["../../src/lib/compose.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"compose.js","sourceRoot":"","sources":["../../src/lib/compose.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,114 @@
1
+ export type GateStatus = 'pass' | 'fail' | 'skipped';
2
+ export interface BaseGateResult {
3
+ gate: string;
4
+ status: GateStatus;
5
+ message?: string;
6
+ reason?: string;
7
+ }
8
+ export interface DeclaredDepUsedResult extends BaseGateResult {
9
+ gate: 'declared-dep-used';
10
+ /** All packageDeps keys that had no matching import/require in any emitted file. Populated on fail. */
11
+ unusedDeps?: string[];
12
+ /** Files searched for import/require (relative paths). Populated always so the scorecard shows search scope. */
13
+ filesSearched?: string[];
14
+ }
15
+ export interface ScaffoldRunsResult extends BaseGateResult {
16
+ gate: 'scaffold-runs';
17
+ reason?: string;
18
+ stderr?: string;
19
+ /** Port the scaffold was booted on (pass case only). */
20
+ port?: number;
21
+ /** Handle to the still-running process so gate 3 can reuse it. Only set on pass. */
22
+ process?: {
23
+ pid: number;
24
+ kill: () => void;
25
+ };
26
+ }
27
+ export interface EvalScoresResult extends BaseGateResult {
28
+ gate: 'eval-scores';
29
+ aggregate?: number;
30
+ threshold?: number;
31
+ failing?: string[];
32
+ reason?: string;
33
+ }
34
+ /**
35
+ * Walk every emitted file in the composed output. For each declared
36
+ * package (dependencies + devDependencies + peerDependencies on the
37
+ * capability/family manifest), assert at least one file contains
38
+ * `import ... from '<pkg>'` or `require('<pkg>')`.
39
+ *
40
+ * Handles scoped packages (`@scope/name`) — the regex is built from
41
+ * escaped package names, so the `@` and `/` don't trip the pattern.
42
+ *
43
+ * Search scope: the ENTIRE composed output, not just the capability's
44
+ * own files/. Rationale: the motivating case is a capability declaring
45
+ * a dep whose consumer sits one layer up (family framework layer uses
46
+ * it; the capability-under-audit just declares it because it composes
47
+ * alongside). Limiting to the capability's own files would false-fail
48
+ * those valid cases. A broken declaration is still caught — the scope
49
+ * widening preserves correctness while accepting a superset.
50
+ */
51
+ export declare function checkDeclaredDepUsed(args: {
52
+ manifest: Record<string, unknown>;
53
+ composedDir: string;
54
+ }): DeclaredDepUsedResult;
55
+ export interface ScaffoldRunsOptions {
56
+ /** Override port — defaults to manifest `defaults.port` then 3100. */
57
+ port?: number;
58
+ /** Max time to wait for /health 2xx. Defaults to 20s. */
59
+ readyTimeoutMs?: number;
60
+ /** Skip cleanup of the process — gate 3 will reuse it. */
61
+ keepProcess?: boolean;
62
+ }
63
+ /**
64
+ * Boot the composed scaffold's `start` script, wait for /health 2xx on
65
+ * PORT, then either SIGTERM or return a handle for gate 3 to reuse.
66
+ *
67
+ * Language dispatch:
68
+ * - TS/JS: checks package.json for a `start` script. Runs
69
+ * `pnpm start` with PORT=<port>, waits on /health.
70
+ * - Other: returns skipped with `reason: 'unsupported-lang'`. See
71
+ * TODO below — second iteration will add language branches for
72
+ * rust/python/go.
73
+ *
74
+ * Skip contract: we DO NOT silently pass. When there's no `start`
75
+ * script, we emit `status: 'skipped'` with `reason: 'no-start-script'`.
76
+ * The scorecard can detect "scaffold has an agent surface but didn't
77
+ * declare a boot contract" from a higher level.
78
+ */
79
+ export declare function checkScaffoldRuns(args: {
80
+ composedDir: string;
81
+ manifest: Record<string, unknown>;
82
+ options?: ScaffoldRunsOptions;
83
+ }): Promise<ScaffoldRunsResult>;
84
+ export interface EvalScoresOptions {
85
+ /** Port where the agent is already listening (from gate 2). */
86
+ port: number;
87
+ /** Max time for the eval harness to finish. */
88
+ timeoutMs?: number;
89
+ }
90
+ /**
91
+ * If the scaffold composed `capability:agent-eval`, run its own
92
+ * `tests/eval/run-eval.mjs --no-spawn --base <url>` against the
93
+ * already-booted agent (gate 2 hands the port in). Read
94
+ * `.evolve/eval/latest.json`, assert aggregate ≥ manifest threshold
95
+ * (fall back to 0.7).
96
+ *
97
+ * Why reuse the booted process from gate 2: the eval runner's default
98
+ * lifecycle spawns the agent itself, but we already have it running.
99
+ * Passing `--no-spawn` tells it to skip spawn and talk to `--base`.
100
+ * This matches how a user would run `run-eval.mjs` against a local
101
+ * dev server, which is the scenario we're dogfooding.
102
+ *
103
+ * Skip conditions:
104
+ * - scaffold did not compose capability:agent-eval (check
105
+ * composedLayers arg).
106
+ * - run-eval.mjs is missing (defensive — should not happen if the
107
+ * capability composed).
108
+ */
109
+ export declare function checkEvalScores(args: {
110
+ composedDir: string;
111
+ manifest: Record<string, unknown>;
112
+ composedLayers: string[];
113
+ options: EvalScoresOptions;
114
+ }): Promise<EvalScoresResult>;
@@ -0,0 +1,426 @@
1
+ // Gen 9 dogfood gates. Three promoter-side checks that run AFTER the
2
+ // Build gate (tsc --noEmit / cargo check / etc. pass) and BEFORE the
3
+ // LLM-driven Fidelity gate. They catch the "ships silently broken" class
4
+ // that compile-gates + manifest schema can't see:
5
+ //
6
+ // 1. declared-dep-used — every packageDeps entry is actually imported
7
+ // somewhere in the composed output. Motivating bug: PR #55 shipped
8
+ // capability:agent-eval declaring `@tangle-network/agent-eval` but
9
+ // no source file imported it. Compile passed, fidelity passed, the
10
+ // dep was inert.
11
+ //
12
+ // 2. scaffold-runs — if the composed scaffold has a `start`
13
+ // script, actually boot it and hit GET /health. Proves the thing
14
+ // doesn't just compile — it can start.
15
+ //
16
+ // 3. eval-scores — if the scaffold composed capability:agent-eval,
17
+ // run its OWN eval harness against the still-booted agent and assert
18
+ // the aggregate score clears the manifest threshold.
19
+ //
20
+ // Each gate returns `{ gate, status, ...detail }`. `status` is one of:
21
+ // - 'pass' — gate ran, passed
22
+ // - 'fail' — gate ran, failed (promoter MUST short-circuit)
23
+ // - 'skipped' — gate intentionally inapplicable to this scaffold;
24
+ // promoter continues. Skip reasons are enumerated per-gate
25
+ // so a skipped gate on a scaffold that SHOULD have run it
26
+ // (e.g. agent-eval composed but scaffold-runs skipped
27
+ // for no-start-script) is still visible in the scorecard.
28
+ import { readFileSync, existsSync, statSync, readdirSync } from 'node:fs';
29
+ import { join, extname, relative } from 'node:path';
30
+ import { spawn } from 'node:child_process';
31
+ // ──────────────────────────────────────────────────────────────────
32
+ // Gate 1 — declared-dep-used
33
+ // ──────────────────────────────────────────────────────────────────
34
+ /**
35
+ * Walk every emitted file in the composed output. For each declared
36
+ * package (dependencies + devDependencies + peerDependencies on the
37
+ * capability/family manifest), assert at least one file contains
38
+ * `import ... from '<pkg>'` or `require('<pkg>')`.
39
+ *
40
+ * Handles scoped packages (`@scope/name`) — the regex is built from
41
+ * escaped package names, so the `@` and `/` don't trip the pattern.
42
+ *
43
+ * Search scope: the ENTIRE composed output, not just the capability's
44
+ * own files/. Rationale: the motivating case is a capability declaring
45
+ * a dep whose consumer sits one layer up (family framework layer uses
46
+ * it; the capability-under-audit just declares it because it composes
47
+ * alongside). Limiting to the capability's own files would false-fail
48
+ * those valid cases. A broken declaration is still caught — the scope
49
+ * widening preserves correctness while accepting a superset.
50
+ */
51
+ export function checkDeclaredDepUsed(args) {
52
+ const { manifest, composedDir } = args;
53
+ const deps = manifestPackageDeps(manifest);
54
+ if (deps.length === 0) {
55
+ return { gate: 'declared-dep-used', status: 'skipped', reason: 'no-package-deps', filesSearched: [] };
56
+ }
57
+ const files = listScannableFiles(composedDir);
58
+ const unused = [];
59
+ for (const pkg of deps) {
60
+ if (!anyFileImports(files, composedDir, pkg)) {
61
+ unused.push(pkg);
62
+ }
63
+ }
64
+ const filesSearched = files.map((f) => relative(composedDir, f));
65
+ if (unused.length > 0) {
66
+ return {
67
+ gate: 'declared-dep-used',
68
+ status: 'fail',
69
+ unusedDeps: unused,
70
+ filesSearched,
71
+ message: `packageDeps declared but unused in composed output: ${unused.join(', ')}`,
72
+ };
73
+ }
74
+ return { gate: 'declared-dep-used', status: 'pass', filesSearched };
75
+ }
76
+ function manifestPackageDeps(manifest) {
77
+ const pkg = manifest.packageDeps;
78
+ if (!pkg)
79
+ return [];
80
+ const names = new Set();
81
+ for (const group of [pkg.dependencies, pkg.devDependencies, pkg.peerDependencies]) {
82
+ if (!group)
83
+ continue;
84
+ for (const name of Object.keys(group))
85
+ names.add(name);
86
+ }
87
+ return [...names];
88
+ }
89
+ // Extensions we'll scan for import/require. Skip binary + asset + lockfile
90
+ // — they're never the site of a JS/TS import statement.
91
+ const SCANNABLE_EXTS = new Set([
92
+ '.ts', '.tsx', '.js', '.jsx', '.mjs', '.cjs',
93
+ '.json', // package.json references, JSON-imports via bundlers
94
+ '.md', // README examples
95
+ '.py', '.rs', '.go', '.sol', '.move',
96
+ '.yml', '.yaml',
97
+ ]);
98
+ function listScannableFiles(rootDir) {
99
+ const out = [];
100
+ const walk = (dir) => {
101
+ let entries;
102
+ try {
103
+ entries = readdirSync(dir);
104
+ }
105
+ catch {
106
+ return;
107
+ }
108
+ for (const entry of entries) {
109
+ if (entry === 'node_modules' || entry === '.git' || entry === 'dist' || entry === 'target')
110
+ continue;
111
+ const full = join(dir, entry);
112
+ let s;
113
+ try {
114
+ s = statSync(full);
115
+ }
116
+ catch {
117
+ continue;
118
+ }
119
+ if (s.isDirectory()) {
120
+ walk(full);
121
+ continue;
122
+ }
123
+ const ext = extname(entry).toLowerCase();
124
+ if (SCANNABLE_EXTS.has(ext) || entry === 'package.json')
125
+ out.push(full);
126
+ }
127
+ };
128
+ walk(rootDir);
129
+ return out;
130
+ }
131
+ function anyFileImports(files, root, pkg) {
132
+ // For scoped packages like `@tangle-network/agent-eval`, escape both
133
+ // `@` and `/`. The general import regex accepts both static and
134
+ // dynamic imports, bare-specifier re-exports, and CJS require().
135
+ const escaped = pkg.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
136
+ const patterns = [
137
+ new RegExp(`from\\s+['"]${escaped}(?:/[^'"\\s]*)?['"]`),
138
+ new RegExp(`require\\(\\s*['"]${escaped}(?:/[^'"\\s]*)?['"]\\s*\\)`),
139
+ new RegExp(`import\\s*\\(\\s*['"]${escaped}(?:/[^'"\\s]*)?['"]\\s*\\)`),
140
+ // `import '<pkg>'` side-effect import (no `from`) — covers e.g. polyfills.
141
+ new RegExp(`import\\s+['"]${escaped}(?:/[^'"\\s]*)?['"]`),
142
+ // package.json references (dependencies/peerDeps declared by consumer
143
+ // scaffolds are legitimate usage of a dep even without an import).
144
+ new RegExp(`"${escaped}"\\s*:`),
145
+ ];
146
+ for (const abs of files) {
147
+ let text;
148
+ try {
149
+ text = readFileSync(abs, 'utf8');
150
+ }
151
+ catch {
152
+ continue;
153
+ }
154
+ // Skip the root-level package.json — it's where the dep is DECLARED,
155
+ // not "used". A scaffold's own package.json listing the dep cannot
156
+ // count as proof-of-use (otherwise this gate would always pass). We
157
+ // still include nested package.json (e.g. workspace sub-projects).
158
+ const rel = relative(root, abs);
159
+ if (rel === 'package.json')
160
+ continue;
161
+ for (const pattern of patterns) {
162
+ if (pattern.test(text))
163
+ return true;
164
+ }
165
+ }
166
+ return false;
167
+ }
168
+ /**
169
+ * Boot the composed scaffold's `start` script, wait for /health 2xx on
170
+ * PORT, then either SIGTERM or return a handle for gate 3 to reuse.
171
+ *
172
+ * Language dispatch:
173
+ * - TS/JS: checks package.json for a `start` script. Runs
174
+ * `pnpm start` with PORT=<port>, waits on /health.
175
+ * - Other: returns skipped with `reason: 'unsupported-lang'`. See
176
+ * TODO below — second iteration will add language branches for
177
+ * rust/python/go.
178
+ *
179
+ * Skip contract: we DO NOT silently pass. When there's no `start`
180
+ * script, we emit `status: 'skipped'` with `reason: 'no-start-script'`.
181
+ * The scorecard can detect "scaffold has an agent surface but didn't
182
+ * declare a boot contract" from a higher level.
183
+ */
184
+ export async function checkScaffoldRuns(args) {
185
+ const { composedDir, manifest, options = {} } = args;
186
+ const port = resolveScaffoldPort(manifest, options.port);
187
+ const readyTimeoutMs = options.readyTimeoutMs ?? 20_000;
188
+ const language = manifest.taxonomy?.language;
189
+ const tsOrJs = language === 'typescript' || language === 'javascript' || language === undefined;
190
+ // TODO: add rust-runs / python-runs / go-runs branches — first iteration
191
+ // targets JS/TS because that's where capability:agent-eval lives.
192
+ if (!tsOrJs) {
193
+ return {
194
+ gate: 'scaffold-runs',
195
+ status: 'skipped',
196
+ reason: 'unsupported-lang',
197
+ message: `language '${language ?? 'unknown'}' not yet supported; TODO: add <lang>-runs branch`,
198
+ };
199
+ }
200
+ const pkgPath = join(composedDir, 'package.json');
201
+ if (!existsSync(pkgPath)) {
202
+ return { gate: 'scaffold-runs', status: 'skipped', reason: 'no-package-json' };
203
+ }
204
+ let pkg;
205
+ try {
206
+ pkg = JSON.parse(readFileSync(pkgPath, 'utf8'));
207
+ }
208
+ catch {
209
+ return { gate: 'scaffold-runs', status: 'skipped', reason: 'unreadable-package-json' };
210
+ }
211
+ const startCmd = pkg.scripts?.start;
212
+ if (!startCmd) {
213
+ return { gate: 'scaffold-runs', status: 'skipped', reason: 'no-start-script' };
214
+ }
215
+ // Spawn pnpm start. We use node-native spawn rather than
216
+ // SubprocessSandboxDriver here because we need a long-lived handle
217
+ // (the driver's exec awaits exit, which never happens for a server).
218
+ const child = spawn('pnpm', ['start'], {
219
+ cwd: composedDir,
220
+ env: { ...process.env, PORT: String(port), HOST: '127.0.0.1' },
221
+ detached: true,
222
+ stdio: ['ignore', 'pipe', 'pipe'],
223
+ });
224
+ let stderrBuf = '';
225
+ child.stderr.setEncoding('utf8');
226
+ child.stderr.on('data', (chunk) => { stderrBuf = (stderrBuf + chunk).slice(-4000); });
227
+ child.stdout.setEncoding('utf8');
228
+ // Keep stdout drained so the child's pipe buffer doesn't block it.
229
+ child.stdout.on('data', () => { });
230
+ let earlyExit = null;
231
+ child.on('exit', (code, signal) => { earlyExit = { code, signal }; });
232
+ const baseUrl = `http://127.0.0.1:${port}`;
233
+ const ready = await waitForHealth(baseUrl, readyTimeoutMs, () => earlyExit !== null);
234
+ if (earlyExit !== null) {
235
+ const exit = earlyExit;
236
+ return {
237
+ gate: 'scaffold-runs',
238
+ status: 'fail',
239
+ reason: `start-exited-early (code=${exit.code ?? 'null'} signal=${exit.signal ?? 'null'})`,
240
+ stderr: stderrBuf.slice(-1000),
241
+ };
242
+ }
243
+ if (!ready) {
244
+ killProcess(child);
245
+ return {
246
+ gate: 'scaffold-runs',
247
+ status: 'fail',
248
+ reason: `health-endpoint-unreachable (${baseUrl}/health within ${readyTimeoutMs}ms)`,
249
+ stderr: stderrBuf.slice(-1000),
250
+ };
251
+ }
252
+ // Pass. Either hand the process to caller for gate 3, or SIGTERM now.
253
+ if (options.keepProcess) {
254
+ return {
255
+ gate: 'scaffold-runs',
256
+ status: 'pass',
257
+ port,
258
+ process: { pid: child.pid ?? -1, kill: () => killProcess(child) },
259
+ };
260
+ }
261
+ killProcess(child);
262
+ return { gate: 'scaffold-runs', status: 'pass', port };
263
+ }
264
+ function resolveScaffoldPort(manifest, override) {
265
+ if (override)
266
+ return override;
267
+ const defaults = manifest.defaults;
268
+ // agent-eval uses `evalPort`; generic scaffolds use `port`. Accept both.
269
+ const raw = defaults?.port ?? defaults?.evalPort;
270
+ if (raw != null) {
271
+ const n = Number(raw);
272
+ if (Number.isFinite(n) && n > 0)
273
+ return n;
274
+ }
275
+ return 3100;
276
+ }
277
+ async function waitForHealth(baseUrl, timeoutMs, exited) {
278
+ const deadline = Date.now() + timeoutMs;
279
+ while (Date.now() < deadline) {
280
+ if (exited())
281
+ return false;
282
+ try {
283
+ const res = await fetch(`${baseUrl}/health`, { signal: AbortSignal.timeout(1500) });
284
+ if (res.ok)
285
+ return true;
286
+ }
287
+ catch { /* retry */ }
288
+ await new Promise((r) => setTimeout(r, 250));
289
+ }
290
+ return false;
291
+ }
292
+ function killProcess(child) {
293
+ // Kill the process group. `pnpm start` spawns a child node which IS
294
+ // the server; killing only the pnpm pid leaves the node child alive
295
+ // and holding the port. SIGTERM first for clean shutdown, SIGKILL
296
+ // follow-up after a short grace in case pnpm swallows SIGTERM
297
+ // (observed with some npm/pnpm builds).
298
+ try {
299
+ if (child.pid) {
300
+ try {
301
+ process.kill(-child.pid, 'SIGTERM');
302
+ }
303
+ catch { /* group may not exist */ }
304
+ try {
305
+ child.kill('SIGTERM');
306
+ }
307
+ catch { /* noop */ }
308
+ setTimeout(() => {
309
+ try {
310
+ process.kill(-child.pid, 'SIGKILL');
311
+ }
312
+ catch { /* already dead */ }
313
+ try {
314
+ child.kill('SIGKILL');
315
+ }
316
+ catch { /* noop */ }
317
+ }, 500).unref();
318
+ }
319
+ }
320
+ catch { /* already dead */ }
321
+ }
322
+ /**
323
+ * If the scaffold composed `capability:agent-eval`, run its own
324
+ * `tests/eval/run-eval.mjs --no-spawn --base <url>` against the
325
+ * already-booted agent (gate 2 hands the port in). Read
326
+ * `.evolve/eval/latest.json`, assert aggregate ≥ manifest threshold
327
+ * (fall back to 0.7).
328
+ *
329
+ * Why reuse the booted process from gate 2: the eval runner's default
330
+ * lifecycle spawns the agent itself, but we already have it running.
331
+ * Passing `--no-spawn` tells it to skip spawn and talk to `--base`.
332
+ * This matches how a user would run `run-eval.mjs` against a local
333
+ * dev server, which is the scenario we're dogfooding.
334
+ *
335
+ * Skip conditions:
336
+ * - scaffold did not compose capability:agent-eval (check
337
+ * composedLayers arg).
338
+ * - run-eval.mjs is missing (defensive — should not happen if the
339
+ * capability composed).
340
+ */
341
+ export async function checkEvalScores(args) {
342
+ const { composedDir, manifest, composedLayers, options } = args;
343
+ if (!composedLayers.some((l) => l === 'capability:agent-eval' || l.endsWith(':agent-eval'))) {
344
+ return {
345
+ gate: 'eval-scores',
346
+ status: 'skipped',
347
+ reason: 'no-agent-eval-capability',
348
+ };
349
+ }
350
+ const runnerPath = join(composedDir, 'tests/eval/run-eval.mjs');
351
+ if (!existsSync(runnerPath)) {
352
+ return {
353
+ gate: 'eval-scores',
354
+ status: 'skipped',
355
+ reason: 'no-run-eval-script',
356
+ };
357
+ }
358
+ const threshold = resolveEvalThreshold(manifest);
359
+ const baseUrl = `http://127.0.0.1:${options.port}`;
360
+ const timeoutMs = options.timeoutMs ?? 120_000;
361
+ // Spawn run-eval.mjs. Unlike gate 2 this awaits completion.
362
+ const runnerRes = await new Promise((resolve) => {
363
+ const child = spawn('node', ['tests/eval/run-eval.mjs', '--no-spawn', '--base', baseUrl, '--threshold', String(threshold)], { cwd: composedDir, env: { ...process.env }, stdio: ['ignore', 'pipe', 'pipe'] });
364
+ let stdout = '';
365
+ let stderr = '';
366
+ child.stdout.on('data', (c) => { stdout += c.toString('utf8'); });
367
+ child.stderr.on('data', (c) => { stderr += c.toString('utf8'); });
368
+ const timer = setTimeout(() => {
369
+ try {
370
+ child.kill('SIGKILL');
371
+ }
372
+ catch { /* noop */ }
373
+ }, timeoutMs);
374
+ child.on('exit', (code) => { clearTimeout(timer); resolve({ code, stdout, stderr }); });
375
+ });
376
+ // Read the scorecard — run-eval.mjs writes to .evolve/eval/latest.json
377
+ // inside the scaffold dir.
378
+ const scorecardPath = join(composedDir, '.evolve/eval/latest.json');
379
+ let scorecard = null;
380
+ if (existsSync(scorecardPath)) {
381
+ try {
382
+ scorecard = JSON.parse(readFileSync(scorecardPath, 'utf8'));
383
+ }
384
+ catch { /* leave null */ }
385
+ }
386
+ if (!scorecard) {
387
+ return {
388
+ gate: 'eval-scores',
389
+ status: 'fail',
390
+ threshold,
391
+ reason: `run-eval exited ${runnerRes.code} but no .evolve/eval/latest.json produced. stderr tail: ${runnerRes.stderr.slice(-500)}`,
392
+ };
393
+ }
394
+ const aggregate = typeof scorecard.aggregate === 'number' ? scorecard.aggregate : 0;
395
+ const failing = (scorecard.scenarios ?? [])
396
+ .filter((s) => s && s.pass === false)
397
+ .map((s) => s.id ?? '(unnamed)');
398
+ if (aggregate < threshold) {
399
+ return {
400
+ gate: 'eval-scores',
401
+ status: 'fail',
402
+ aggregate,
403
+ threshold,
404
+ failing,
405
+ message: `aggregate ${aggregate.toFixed(2)} < threshold ${threshold.toFixed(2)} (failing scenarios: ${failing.join(', ') || 'none'})`,
406
+ };
407
+ }
408
+ return {
409
+ gate: 'eval-scores',
410
+ status: 'pass',
411
+ aggregate,
412
+ threshold,
413
+ failing,
414
+ };
415
+ }
416
+ function resolveEvalThreshold(manifest) {
417
+ const defaults = manifest.defaults;
418
+ const raw = defaults?.evalThreshold;
419
+ if (raw != null) {
420
+ const n = Number(raw);
421
+ if (Number.isFinite(n) && n >= 0 && n <= 1)
422
+ return n;
423
+ }
424
+ return 0.7;
425
+ }
426
+ //# sourceMappingURL=promoter-gates.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"promoter-gates.js","sourceRoot":"","sources":["../../src/lib/promoter-gates.ts"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,qEAAqE;AACrE,yEAAyE;AACzE,kDAAkD;AAClD,EAAE;AACF,yEAAyE;AACzE,wEAAwE;AACxE,wEAAwE;AACxE,wEAAwE;AACxE,sBAAsB;AACtB,EAAE;AACF,oEAAoE;AACpE,sEAAsE;AACtE,4CAA4C;AAC5C,EAAE;AACF,6EAA6E;AAC7E,0EAA0E;AAC1E,0DAA0D;AAC1D,EAAE;AACF,uEAAuE;AACvE,oCAAoC;AACpC,kEAAkE;AAClE,qEAAqE;AACrE,4EAA4E;AAC5E,2EAA2E;AAC3E,uEAAuE;AACvE,2EAA2E;AAE3E,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AACzE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACnD,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAyC1C,qEAAqE;AACrE,6BAA6B;AAC7B,qEAAqE;AAErE;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,oBAAoB,CAAC,IAGpC;IACC,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,GAAG,IAAI,CAAA;IACtC,MAAM,IAAI,GAAG,mBAAmB,CAAC,QAAQ,CAAC,CAAA;IAC1C,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtB,OAAO,EAAE,IAAI,EAAE,mBAAmB,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,iBAAiB,EAAE,aAAa,EAAE,EAAE,EAAE,CAAA;IACvG,CAAC;IAED,MAAM,KAAK,GAAG,kBAAkB,CAAC,WAAW,CAAC,CAAA;IAC7C,MAAM,MAAM,GAAa,EAAE,CAAA;IAC3B,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,WAAW,EAAE,GAAG,CAAC,EAAE,CAAC;YAC7C,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAClB,CAAC;IACH,CAAC;IAED,MAAM,aAAa,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,CAAA;IAChE,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtB,OAAO;YACL,IAAI,EAAE,mBAAmB;YACzB,MAAM,EAAE,MAAM;YACd,UAAU,EAAE,MAAM;YAClB,aAAa;YACb,OAAO,EAAE,uDAAuD,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;SACpF,CAAA;IACH,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,mBAAmB,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,CAAA;AACrE,CAAC;AAED,SAAS,mBAAmB,CAAC,QAAiC;IAC5D,MAAM,GAAG,GAAG,QAAQ,CAAC,WAER,CAAA;IACb,IAAI,CAAC,GAAG;QAAE,OAAO,EAAE,CAAA;IACnB,MAAM,KAAK,GAAG,IAAI,GAAG,EAAU,CAAA;IAC/B,KAAK,MAAM,KAAK,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,GAAG,CAAC,eAAe,EAAE,GAAG,CAAC,gBAAgB,CAAC,EAAE,CAAC;QAClF,IAAI,CAAC,KAAK;YAAE,SAAQ;QACpB,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;YAAE,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;IACxD,CAAC;IACD,OAAO,CAAC,GAAG,KAAK,CAAC,CAAA;AACnB,CAAC;AAED,2EAA2E;AAC3E,wDAAwD;AACxD,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC;IAC7B,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IAC5C,OAAO,EAAE,qDAAqD;IAC9D,KAAK,EAAI,kBAAkB;IAC3B,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO;IACpC,MAAM,EAAE,OAAO;CAChB,CAAC,CAAA;AAEF,SAAS,kBAAkB,CAAC,OAAe;IACzC,MAAM,GAAG,GAAa,EAAE,CAAA;IACxB,MAAM,IAAI,GAAG,CAAC,GAAW,EAAE,EAAE;QAC3B,IAAI,OAAiB,CAAA;QACrB,IAAI,CAAC;YAAC,OAAO,GAAG,WAAW,CAAC,GAAG,CAAC,CAAA;QAAC,CAAC;QAAC,MAAM,CAAC;YAAC,OAAM;QAAC,CAAC;QACnD,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;YAC5B,IAAI,KAAK,KAAK,cAAc,IAAI,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,QAAQ;gBAAE,SAAQ;YACpG,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;YAC7B,IAAI,CAAC,CAAA;YACL,IAAI,CAAC;gBAAC,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAA;YAAC,CAAC;YAAC,MAAM,CAAC;gBAAC,SAAQ;YAAC,CAAC;YAC7C,IAAI,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC;gBAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAAC,SAAQ;YAAC,CAAC;YAC7C,MAAM,GAAG,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE,CAAA;YACxC,IAAI,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,KAAK,KAAK,cAAc;gBAAE,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACzE,CAAC;IACH,CAAC,CAAA;IACD,IAAI,CAAC,OAAO,CAAC,CAAA;IACb,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,SAAS,cAAc,CAAC,KAAe,EAAE,IAAY,EAAE,GAAW;IAChE,qEAAqE;IACrE,gEAAgE;IAChE,iEAAiE;IACjE,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAA;IAC1D,MAAM,QAAQ,GAAG;QACf,IAAI,MAAM,CAAC,eAAe,OAAO,qBAAqB,CAAC;QACvD,IAAI,MAAM,CAAC,qBAAqB,OAAO,4BAA4B,CAAC;QACpE,IAAI,MAAM,CAAC,wBAAwB,OAAO,4BAA4B,CAAC;QACvE,2EAA2E;QAC3E,IAAI,MAAM,CAAC,iBAAiB,OAAO,qBAAqB,CAAC;QACzD,sEAAsE;QACtE,mEAAmE;QACnE,IAAI,MAAM,CAAC,IAAI,OAAO,QAAQ,CAAC;KAChC,CAAA;IACD,KAAK,MAAM,GAAG,IAAI,KAAK,EAAE,CAAC;QACxB,IAAI,IAAY,CAAA;QAChB,IAAI,CAAC;YAAC,IAAI,GAAG,YAAY,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;QAAC,CAAC;QAAC,MAAM,CAAC;YAAC,SAAQ;QAAC,CAAC;QAC3D,qEAAqE;QACrE,mEAAmE;QACnE,oEAAoE;QACpE,mEAAmE;QACnE,MAAM,GAAG,GAAG,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;QAC/B,IAAI,GAAG,KAAK,cAAc;YAAE,SAAQ;QACpC,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;YAC/B,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;gBAAE,OAAO,IAAI,CAAA;QACrC,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC;AAeD;;;;;;;;;;;;;;;GAeG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,IAIvC;IACC,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,OAAO,GAAG,EAAE,EAAE,GAAG,IAAI,CAAA;IACpD,MAAM,IAAI,GAAG,mBAAmB,CAAC,QAAQ,EAAE,OAAO,CAAC,IAAI,CAAC,CAAA;IACxD,MAAM,cAAc,GAAG,OAAO,CAAC,cAAc,IAAI,MAAM,CAAA;IAEvD,MAAM,QAAQ,GAAI,QAAQ,CAAC,QAAgD,EAAE,QAA8B,CAAA;IAC3G,MAAM,MAAM,GAAG,QAAQ,KAAK,YAAY,IAAI,QAAQ,KAAK,YAAY,IAAI,QAAQ,KAAK,SAAS,CAAA;IAC/F,yEAAyE;IACzE,kEAAkE;IAClE,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO;YACL,IAAI,EAAE,eAAe;YACrB,MAAM,EAAE,SAAS;YACjB,MAAM,EAAE,kBAAkB;YAC1B,OAAO,EAAE,aAAa,QAAQ,IAAI,SAAS,mDAAmD;SAC/F,CAAA;IACH,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,EAAE,cAAc,CAAC,CAAA;IACjD,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QACzB,OAAO,EAAE,IAAI,EAAE,eAAe,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,iBAAiB,EAAE,CAAA;IAChF,CAAC;IACD,IAAI,GAAyC,CAAA;IAC7C,IAAI,CAAC;QACH,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAA;IACjD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,IAAI,EAAE,eAAe,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,yBAAyB,EAAE,CAAA;IACxF,CAAC;IACD,MAAM,QAAQ,GAAG,GAAG,CAAC,OAAO,EAAE,KAAK,CAAA;IACnC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,EAAE,IAAI,EAAE,eAAe,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,iBAAiB,EAAE,CAAA;IAChF,CAAC;IAED,yDAAyD;IACzD,mEAAmE;IACnE,qEAAqE;IACrE,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE;QACrC,GAAG,EAAE,WAAW;QAChB,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE;QAC9D,QAAQ,EAAE,IAAI;QACd,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC;KAClC,CAAC,CAAA;IACF,IAAI,SAAS,GAAG,EAAE,CAAA;IAClB,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,CAAA;IAChC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAa,EAAE,EAAE,GAAG,SAAS,GAAG,CAAC,SAAS,GAAG,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAA,CAAC,CAAC,CAAC,CAAA;IAC5F,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,CAAA;IAChC,mEAAmE;IACnE,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,GAAe,CAAC,CAAC,CAAA;IAK9C,IAAI,SAAS,GAAoB,IAAI,CAAA;IACrC,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,SAAS,GAAG,EAAE,IAAI,EAAE,MAAM,EAAc,CAAA,CAAC,CAAC,CAAC,CAAA;IAEhF,MAAM,OAAO,GAAG,oBAAoB,IAAI,EAAE,CAAA;IAC1C,MAAM,KAAK,GAAG,MAAM,aAAa,CAAC,OAAO,EAAE,cAAc,EAAE,GAAG,EAAE,CAAC,SAAS,KAAK,IAAI,CAAC,CAAA;IAEpF,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;QACvB,MAAM,IAAI,GAAa,SAAS,CAAA;QAChC,OAAO;YACL,IAAI,EAAE,eAAe;YACrB,MAAM,EAAE,MAAM;YACd,MAAM,EAAE,4BAA4B,IAAI,CAAC,IAAI,IAAI,MAAM,WAAW,IAAI,CAAC,MAAM,IAAI,MAAM,GAAG;YAC1F,MAAM,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC;SAC/B,CAAA;IACH,CAAC;IAED,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,WAAW,CAAC,KAAK,CAAC,CAAA;QAClB,OAAO;YACL,IAAI,EAAE,eAAe;YACrB,MAAM,EAAE,MAAM;YACd,MAAM,EAAE,gCAAgC,OAAO,kBAAkB,cAAc,KAAK;YACpF,MAAM,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC;SAC/B,CAAA;IACH,CAAC;IAED,sEAAsE;IACtE,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;QACxB,OAAO;YACL,IAAI,EAAE,eAAe;YACrB,MAAM,EAAE,MAAM;YACd,IAAI;YACJ,OAAO,EAAE,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE;SAClE,CAAA;IACH,CAAC;IACD,WAAW,CAAC,KAAK,CAAC,CAAA;IAClB,OAAO,EAAE,IAAI,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,CAAA;AACxD,CAAC;AAED,SAAS,mBAAmB,CAAC,QAAiC,EAAE,QAAiB;IAC/E,IAAI,QAAQ;QAAE,OAAO,QAAQ,CAAA;IAC7B,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAA+C,CAAA;IACzE,yEAAyE;IACzE,MAAM,GAAG,GAAG,QAAQ,EAAE,IAAI,IAAI,QAAQ,EAAE,QAAQ,CAAA;IAChD,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAChB,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAA;QACrB,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;YAAE,OAAO,CAAC,CAAA;IAC3C,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAED,KAAK,UAAU,aAAa,CAAC,OAAe,EAAE,SAAiB,EAAE,MAAqB;IACpF,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAA;IACvC,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,EAAE,CAAC;QAC7B,IAAI,MAAM,EAAE;YAAE,OAAO,KAAK,CAAA;QAC1B,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,OAAO,SAAS,EAAE,EAAE,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YACnF,IAAI,GAAG,CAAC,EAAE;gBAAE,OAAO,IAAI,CAAA;QACzB,CAAC;QAAC,MAAM,CAAC,CAAC,WAAW,CAAC,CAAC;QACvB,MAAM,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAA;IAC9C,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC;AAED,SAAS,WAAW,CAAC,KAA+B;IAClD,oEAAoE;IACpE,oEAAoE;IACpE,kEAAkE;IAClE,8DAA8D;IAC9D,wCAAwC;IACxC,IAAI,CAAC;QACH,IAAI,KAAK,CAAC,GAAG,EAAE,CAAC;YACd,IAAI,CAAC;gBAAC,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,SAAS,CAAC,CAAA;YAAC,CAAC;YAAC,MAAM,CAAC,CAAC,yBAAyB,CAAC,CAAC;YAC/E,IAAI,CAAC;gBAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;YAAC,CAAC;YAAC,MAAM,CAAC,CAAC,UAAU,CAAC,CAAC;YAClD,UAAU,CAAC,GAAG,EAAE;gBACd,IAAI,CAAC;oBAAC,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,GAAI,EAAE,SAAS,CAAC,CAAA;gBAAC,CAAC;gBAAC,MAAM,CAAC,CAAC,kBAAkB,CAAC,CAAC;gBACzE,IAAI,CAAC;oBAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;gBAAC,CAAC;gBAAC,MAAM,CAAC,CAAC,UAAU,CAAC,CAAC;YACpD,CAAC,EAAE,GAAG,CAAC,CAAC,KAAK,EAAE,CAAA;QACjB,CAAC;IACH,CAAC;IAAC,MAAM,CAAC,CAAC,kBAAkB,CAAC,CAAC;AAChC,CAAC;AAaD;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,IAKrC;IACC,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,cAAc,EAAE,OAAO,EAAE,GAAG,IAAI,CAAA;IAE/D,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,uBAAuB,IAAI,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC;QAC5F,OAAO;YACL,IAAI,EAAE,aAAa;YACnB,MAAM,EAAE,SAAS;YACjB,MAAM,EAAE,0BAA0B;SACnC,CAAA;IACH,CAAC;IAED,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,EAAE,yBAAyB,CAAC,CAAA;IAC/D,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC5B,OAAO;YACL,IAAI,EAAE,aAAa;YACnB,MAAM,EAAE,SAAS;YACjB,MAAM,EAAE,oBAAoB;SAC7B,CAAA;IACH,CAAC;IAED,MAAM,SAAS,GAAG,oBAAoB,CAAC,QAAQ,CAAC,CAAA;IAChD,MAAM,OAAO,GAAG,oBAAoB,OAAO,CAAC,IAAI,EAAE,CAAA;IAClD,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,OAAO,CAAA;IAE9C,4DAA4D;IAC5D,MAAM,SAAS,GAAG,MAAM,IAAI,OAAO,CAA0D,CAAC,OAAO,EAAE,EAAE;QACvG,MAAM,KAAK,GAAG,KAAK,CACjB,MAAM,EACN,CAAC,yBAAyB,EAAE,YAAY,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC,EAC9F,EAAE,GAAG,EAAE,WAAW,EAAE,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,CACjF,CAAA;QACD,IAAI,MAAM,GAAG,EAAE,CAAA;QACf,IAAI,MAAM,GAAG,EAAE,CAAA;QACf,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,CAAS,EAAE,EAAE,GAAG,MAAM,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA,CAAC,CAAC,CAAC,CAAA;QACxE,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,CAAS,EAAE,EAAE,GAAG,MAAM,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA,CAAC,CAAC,CAAC,CAAA;QACxE,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;YAC5B,IAAI,CAAC;gBAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;YAAC,CAAC;YAAC,MAAM,CAAC,CAAC,UAAU,CAAC,CAAC;QACpD,CAAC,EAAE,SAAS,CAAC,CAAA;QACb,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA,CAAC,CAAC,CAAC,CAAA;IACxF,CAAC,CAAC,CAAA;IAEF,uEAAuE;IACvE,2BAA2B;IAC3B,MAAM,aAAa,GAAG,IAAI,CAAC,WAAW,EAAE,0BAA0B,CAAC,CAAA;IACnE,IAAI,SAAS,GAAsF,IAAI,CAAA;IACvG,IAAI,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;QAC9B,IAAI,CAAC;YAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC,CAAA;QAAC,CAAC;QAAC,MAAM,CAAC,CAAC,gBAAgB,CAAC,CAAC;IAChG,CAAC;IAED,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO;YACL,IAAI,EAAE,aAAa;YACnB,MAAM,EAAE,MAAM;YACd,SAAS;YACT,MAAM,EAAE,mBAAmB,SAAS,CAAC,IAAI,2DAA2D,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,EAAE;SACnI,CAAA;IACH,CAAC;IAED,MAAM,SAAS,GAAG,OAAO,SAAS,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAA;IACnF,MAAM,OAAO,GAAG,CAAC,SAAS,CAAC,SAAS,IAAI,EAAE,CAAC;SACxC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC;SACpC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,WAAW,CAAC,CAAA;IAElC,IAAI,SAAS,GAAG,SAAS,EAAE,CAAC;QAC1B,OAAO;YACL,IAAI,EAAE,aAAa;YACnB,MAAM,EAAE,MAAM;YACd,SAAS;YACT,SAAS;YACT,OAAO;YACP,OAAO,EAAE,aAAa,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,gBAAgB,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,wBAAwB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,MAAM,GAAG;SACtI,CAAA;IACH,CAAC;IAED,OAAO;QACL,IAAI,EAAE,aAAa;QACnB,MAAM,EAAE,MAAM;QACd,SAAS;QACT,SAAS;QACT,OAAO;KACR,CAAA;AACH,CAAC;AAED,SAAS,oBAAoB,CAAC,QAAiC;IAC7D,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAA+C,CAAA;IACzE,MAAM,GAAG,GAAG,QAAQ,EAAE,aAAa,CAAA;IACnC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAChB,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAA;QACrB,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;YAAE,OAAO,CAAC,CAAA;IACtD,CAAC;IACD,OAAO,GAAG,CAAA;AACZ,CAAC"}
@@ -30,6 +30,7 @@ interface CorpusResult {
30
30
  confidence: string;
31
31
  route: Route;
32
32
  routeOk: boolean;
33
+ hasExpectation: boolean;
33
34
  validationOk: boolean;
34
35
  primaryArtifactHit: boolean;
35
36
  validationEvidence: ValidationEvidence;