metaharness 0.2.7 → 0.3.0
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/dist/bin.js +0 -0
- package/dist/harness-bin.js +0 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +37 -0
- package/dist/index.js.map +1 -1
- package/dist/learn.d.ts +52 -0
- package/dist/learn.d.ts.map +1 -0
- package/dist/learn.js +236 -0
- package/dist/learn.js.map +1 -0
- package/genomes/README.md +23 -0
- package/genomes/genome-promoted-cand6-edit-by-midpoint.json +27 -0
- package/package.json +5 -2
package/dist/bin.js
CHANGED
|
File without changes
|
package/dist/harness-bin.js
CHANGED
|
File without changes
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AA+DA,eAAO,MAAM,KAAK,mHAAoH,CAAC;AACvI,MAAM,MAAM,IAAI,GAAG,CAAC,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC;AAE1C,eAAO,MAAM,SAAS,kZAqBZ,CAAC;AACX,MAAM,MAAM,UAAU,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC;AAEpD,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,QAAQ,EAAE,OAAO,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,6EAA6E;AAC7E,wBAAgB,WAAW,IAAI,YAAY,EAAE,CAS5C;AAED,iEAAiE;AACjE,wBAAgB,aAAa,CAAC,OAAO,EAAE,YAAY,EAAE,GAAG,MAAM,EAAE,CAa/D;AAED,MAAM,WAAW,OAAO;IACtB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,uFAAuF;IACvF,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CA4CjD;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAM9C;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,uEAAuE;IACvE,IAAI,EAAE,IAAI,CAAC;IACX;;;;OAIG;IACH,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,gBAAgB,EAAE,MAAM,CAAC;IACzB;;;;OAIG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AA+DD,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,EAAE,CAAC;CACtB;AAyCD,wBAAsB,QAAQ,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,cAAc,CAAC,CAkJ7E;AAED,iEAAiE;AACjE,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG;IAC/C,KAAK,EAAE,OAAO,CAAC;IACf,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB,CAOA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -529,6 +529,42 @@ async function runMetaHarnessSubcommand(sub, rest) {
|
|
|
529
529
|
console.log(line);
|
|
530
530
|
return r.code;
|
|
531
531
|
}
|
|
532
|
+
case 'weight-eft': {
|
|
533
|
+
// `metaharness weight-eft <export|train|eval|status>` (ADR-198) — delegates
|
|
534
|
+
// to @metaharness/weight-eft: evolutionary fine-tuning. Distil the archive
|
|
535
|
+
// into the open cheap tier via LoRA so the cost-cascade escalates to a
|
|
536
|
+
// frontier model less often. $0 by default (export + dry-run plan); a real
|
|
537
|
+
// train is GPU-gated behind --train.
|
|
538
|
+
const { dispatch } = await import('@metaharness/weight-eft/cli');
|
|
539
|
+
const r = await dispatch(rest[0], rest.slice(1));
|
|
540
|
+
for (const line of r.lines)
|
|
541
|
+
console.log(line);
|
|
542
|
+
return r.code;
|
|
543
|
+
}
|
|
544
|
+
case 'learn': {
|
|
545
|
+
// `metaharness learn --host <h> --model <m> --slice <manifest> [--seed cand6]
|
|
546
|
+
// [--train-first N] [--max-cost $] [--via-gateway] [--run]` — ADR-235: cheap-tier
|
|
547
|
+
// optimization as a managed learning service. Delegates to the repo's GEPA harness
|
|
548
|
+
// (gepa/learn.mjs); REPO-CHECKOUT-GATED (the harness needs bench scripts + Docker +
|
|
549
|
+
// SWE-bench and cannot ship in the tarball). $0 by default: --dry-run is always
|
|
550
|
+
// forwarded unless --run is passed. `--seed cand6` resolves to the packaged
|
|
551
|
+
// holdout-confirmed cand-6 genome (genomes/).
|
|
552
|
+
const { learnCmd } = await import('./learn.js');
|
|
553
|
+
return learnCmd(rest);
|
|
554
|
+
}
|
|
555
|
+
case 'redblue': {
|
|
556
|
+
// `metaharness redblue <init|run|attack|patch|retest|report>` — delegates to
|
|
557
|
+
// @metaharness/redblue: defensive red/blue adversarial testing of an AI
|
|
558
|
+
// agent/workflow/prompt/toolchain you own. Operationalizes NIST AI RMF +
|
|
559
|
+
// OWASP LLM Top-10 as repeatable tests; capability-contained (no real
|
|
560
|
+
// creds / live targets / shell / network). $0 with --mock-judge; the real
|
|
561
|
+
// model judge gates on OPENROUTER_API_KEY.
|
|
562
|
+
const { dispatch } = await import('@metaharness/redblue/cli');
|
|
563
|
+
const r = await dispatch(rest[0], rest.slice(1));
|
|
564
|
+
for (const line of r.lines)
|
|
565
|
+
console.log(line);
|
|
566
|
+
return r.code;
|
|
567
|
+
}
|
|
532
568
|
default:
|
|
533
569
|
return null; // not a known subcommand
|
|
534
570
|
}
|
|
@@ -607,6 +643,7 @@ export async function main(argv) {
|
|
|
607
643
|
console.log(' npx metaharness score <repo> [--json] (scorecard: fit/cost/safety for a repo — ADR-041)');
|
|
608
644
|
console.log(' npx metaharness analyze <repo> (recommend a harness plan, no-exec)');
|
|
609
645
|
console.log(' npx metaharness genome <repo> (7-section repo readiness)');
|
|
646
|
+
console.log(' npx metaharness learn --host <h> --model <m> --slice <manifest> (ADR-235 GEPA learning run — $0 dry-run by default, --run to spend; needs a repo checkout)');
|
|
610
647
|
console.log(' npx metaharness --from-existing [./path]');
|
|
611
648
|
console.log(' npx metaharness --wizard (iter 100 — interactive picker)');
|
|
612
649
|
console.log(' npx metaharness --list (browse all templates)');
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/learn.d.ts
ADDED
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
/** Where the learning harness lives inside a metaharness repo checkout. */
|
|
2
|
+
export declare const LEARN_MJS_REL: string;
|
|
3
|
+
export declare const GATEWAY_BASE_URL = "https://apicompletions-63rzcdswba-uc.a.run.app/v1";
|
|
4
|
+
export declare const GATEWAY_API_KEY_ENV = "COGNITUM_DEV_KEY";
|
|
5
|
+
/** Packaged seed aliases → tarball-shipped genome files (resolved against GENOMES_ROOT). */
|
|
6
|
+
export declare const PACKAGED_SEEDS: Record<string, string>;
|
|
7
|
+
export interface LearnArgs {
|
|
8
|
+
host?: string;
|
|
9
|
+
model?: string;
|
|
10
|
+
slice?: string;
|
|
11
|
+
seed?: string;
|
|
12
|
+
trainFirst?: string;
|
|
13
|
+
maxCost?: string;
|
|
14
|
+
viaGateway: boolean;
|
|
15
|
+
run: boolean;
|
|
16
|
+
/** Unrecognized `--flag [value]` pairs, forwarded to learn.mjs verbatim. */
|
|
17
|
+
passthrough: string[];
|
|
18
|
+
errors: string[];
|
|
19
|
+
}
|
|
20
|
+
/** Parse `metaharness learn` argv. Pure. */
|
|
21
|
+
export declare function parseLearnArgs(rest: string[]): LearnArgs;
|
|
22
|
+
/**
|
|
23
|
+
* Locate the GEPA learning harness. Honors `env.METAHARNESS_REPO` first, then walks up
|
|
24
|
+
* from `startDir` looking for LEARN_MJS_REL. Returns the absolute learn.mjs path or null.
|
|
25
|
+
* Pure given the injected `exists` predicate.
|
|
26
|
+
*/
|
|
27
|
+
export declare function findLearnHarness(startDir: string, env?: Record<string, string | undefined>, exists?: (p: string) => boolean): string | null;
|
|
28
|
+
/**
|
|
29
|
+
* Resolve `--seed`. `cand6` (any case) → the packaged promoted genome; any other value
|
|
30
|
+
* passes through unchanged (learn.mjs resolves relative paths against its bench dir);
|
|
31
|
+
* undefined → undefined (learn.mjs uses its default frozen seed). Pure.
|
|
32
|
+
*/
|
|
33
|
+
export declare function resolveSeed(seed: string | undefined, genomesRoot?: string): string | undefined;
|
|
34
|
+
/**
|
|
35
|
+
* Assemble the argv for `node learn.mjs`. Pure.
|
|
36
|
+
*
|
|
37
|
+
* $0-default rule: `--dry-run` is appended UNLESS args.run is true. `--via-gateway`
|
|
38
|
+
* expands to `--base-url` + `--api-key-env` (cognitum meta-llm Completions API) unless the
|
|
39
|
+
* caller already supplied either flag explicitly.
|
|
40
|
+
*/
|
|
41
|
+
export declare function buildLearnArgs(args: LearnArgs, seedPath?: string): string[];
|
|
42
|
+
/** The actionable no-repo message (no stack trace — printed and exited cleanly). Pure. */
|
|
43
|
+
export declare function repoRequiredMessage(): string[];
|
|
44
|
+
/**
|
|
45
|
+
* `metaharness learn` entrypoint: gate on a repo checkout, resolve the seed, then spawn
|
|
46
|
+
* `node learn.mjs <args>` with stdio inherited, propagating its exit code.
|
|
47
|
+
*/
|
|
48
|
+
export declare function learnCmd(rest: string[], opts?: {
|
|
49
|
+
cwd?: string;
|
|
50
|
+
env?: Record<string, string | undefined>;
|
|
51
|
+
}): Promise<number>;
|
|
52
|
+
//# sourceMappingURL=learn.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"learn.d.ts","sourceRoot":"","sources":["../src/learn.ts"],"names":[],"mappings":"AAmCA,2EAA2E;AAC3E,eAAO,MAAM,aAAa,QAEzB,CAAC;AAKF,eAAO,MAAM,gBAAgB,sDAAsD,CAAC;AACpF,eAAO,MAAM,mBAAmB,qBAAqB,CAAC;AAEtD,4FAA4F;AAC5F,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAEjD,CAAC;AAEF,MAAM,WAAW,SAAS;IACxB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,OAAO,CAAC;IACpB,GAAG,EAAE,OAAO,CAAC;IACb,4EAA4E;IAC5E,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAWD,4CAA4C;AAC5C,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,SAAS,CA8BxD;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,MAAM,EAChB,GAAG,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAM,EAC5C,MAAM,GAAE,CAAC,CAAC,EAAE,MAAM,KAAK,OAAoB,GAC1C,MAAM,GAAG,IAAI,CAaf;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CACzB,IAAI,EAAE,MAAM,GAAG,SAAS,EACxB,WAAW,GAAE,MAAqB,GACjC,MAAM,GAAG,SAAS,CAIpB;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,SAAS,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAe3E;AAED,0FAA0F;AAC1F,wBAAgB,mBAAmB,IAAI,MAAM,EAAE,CAkB9C;AAED;;;GAGG;AACH,wBAAsB,QAAQ,CAC5B,IAAI,EAAE,MAAM,EAAE,EACd,IAAI,GAAE;IAAE,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAA;CAAO,GACpE,OAAO,CAAC,MAAM,CAAC,CAOjB"}
|
package/dist/learn.js
ADDED
|
@@ -0,0 +1,236 @@
|
|
|
1
|
+
// SPDX-License-Identifier: MIT
|
|
2
|
+
//
|
|
3
|
+
// `metaharness learn` — the ADR-235 managed-learning command surface.
|
|
4
|
+
//
|
|
5
|
+
// This is a THIN, repo-checkout-gated delegate to the GEPA learning harness at
|
|
6
|
+
// `packages/darwin-mode/bench/swebench/gepa/learn.mjs` (ADR-228). The harness needs the
|
|
7
|
+
// repo's bench scripts + Docker + the SWE-bench dataset, so it CANNOT ship in the npm
|
|
8
|
+
// tarball — the CLI locates a metaharness repo checkout (walking up from cwd, or via the
|
|
9
|
+
// METAHARNESS_REPO env var) and spawns `node learn.mjs <args>` with stdio inherited.
|
|
10
|
+
// It re-implements NO learn logic.
|
|
11
|
+
//
|
|
12
|
+
// House rules enforced here:
|
|
13
|
+
// - $0 by default: without `--run`, `--dry-run` is ALWAYS passed to learn.mjs (prints
|
|
14
|
+
// the plan, spends nothing). `--run` is the only way to unlock real spend.
|
|
15
|
+
// - Secret hygiene: an `--api-key-env` value names an env var that holds a key — it is
|
|
16
|
+
// forwarded to learn.mjs (which keeps it out of its own logs) and is NEVER echoed,
|
|
17
|
+
// logged, or interpolated into any message by this module.
|
|
18
|
+
// - `--seed cand6` resolves to the PACKAGED promoted cand-6 genome
|
|
19
|
+
// (genomes/genome-promoted-cand6-edit-by-midpoint.json — the first holdout-confirmed
|
|
20
|
+
// cheap-tier policy, see genomes/README.md). Absent --seed ⇒ learn.mjs's default seed.
|
|
21
|
+
//
|
|
22
|
+
// The managed-service path (gateway-side learn jobs, ADR-235 §9) is the follow-up; today
|
|
23
|
+
// `--via-gateway` only routes the ROLLOUTS through the cognitum meta-llm Completions API.
|
|
24
|
+
//
|
|
25
|
+
// Everything except the final spawn is a pure function, unit-tested $0 in
|
|
26
|
+
// __tests__/learn.test.ts.
|
|
27
|
+
import { existsSync } from 'node:fs';
|
|
28
|
+
import { dirname, join, resolve, parse as parsePath, isAbsolute } from 'node:path';
|
|
29
|
+
import { fileURLToPath } from 'node:url';
|
|
30
|
+
const __dirname = dirname(fileURLToPath(import.meta.url));
|
|
31
|
+
/** Packaged genomes live at packages/create-agent-harness/genomes/, one level above dist/. */
|
|
32
|
+
const GENOMES_ROOT = resolve(__dirname, '..', 'genomes');
|
|
33
|
+
/** Where the learning harness lives inside a metaharness repo checkout. */
|
|
34
|
+
export const LEARN_MJS_REL = join('packages', 'darwin-mode', 'bench', 'swebench', 'gepa', 'learn.mjs');
|
|
35
|
+
// The cognitum meta-llm Completions API backing --via-gateway (ADR-203/204). Mirrors the
|
|
36
|
+
// constants in packages/darwin-mode/bench/swebench/gepa/overnight-train.mjs. The key lives
|
|
37
|
+
// ONLY in the named env var and is never logged by this module or by learn.mjs.
|
|
38
|
+
export const GATEWAY_BASE_URL = 'https://apicompletions-63rzcdswba-uc.a.run.app/v1';
|
|
39
|
+
export const GATEWAY_API_KEY_ENV = 'COGNITUM_DEV_KEY';
|
|
40
|
+
/** Packaged seed aliases → tarball-shipped genome files (resolved against GENOMES_ROOT). */
|
|
41
|
+
export const PACKAGED_SEEDS = {
|
|
42
|
+
cand6: 'genome-promoted-cand6-edit-by-midpoint.json',
|
|
43
|
+
};
|
|
44
|
+
/** Flags whose next token is a value (for pass-through parsing). */
|
|
45
|
+
const VALUE_FLAGS = new Set([
|
|
46
|
+
'--host', '--model', '--slice', '--manifest', '--seed', '--train-first', '--max-cost',
|
|
47
|
+
// learn.mjs pass-throughs we forward untouched:
|
|
48
|
+
'--reflection-model', '--max-candidates', '--max-steps', '--concurrency',
|
|
49
|
+
'--per-eval-max-cost', '--run-id', '--vertical', '--language', '--task-class',
|
|
50
|
+
'--base-url', '--api-key-env', '--work-dir', '--out', '--report',
|
|
51
|
+
]);
|
|
52
|
+
/** Parse `metaharness learn` argv. Pure. */
|
|
53
|
+
export function parseLearnArgs(rest) {
|
|
54
|
+
const out = { viaGateway: false, run: false, passthrough: [], errors: [] };
|
|
55
|
+
for (let i = 0; i < rest.length; i++) {
|
|
56
|
+
const a = rest[i];
|
|
57
|
+
if (!a)
|
|
58
|
+
continue;
|
|
59
|
+
const takeValue = () => {
|
|
60
|
+
const v = rest[++i];
|
|
61
|
+
if (v === undefined)
|
|
62
|
+
out.errors.push(`missing value for ${a}`);
|
|
63
|
+
return v;
|
|
64
|
+
};
|
|
65
|
+
switch (a) {
|
|
66
|
+
case '--host':
|
|
67
|
+
out.host = takeValue();
|
|
68
|
+
break;
|
|
69
|
+
case '--model':
|
|
70
|
+
out.model = takeValue();
|
|
71
|
+
break;
|
|
72
|
+
case '--slice':
|
|
73
|
+
case '--manifest':
|
|
74
|
+
out.slice = takeValue();
|
|
75
|
+
break;
|
|
76
|
+
case '--seed':
|
|
77
|
+
out.seed = takeValue();
|
|
78
|
+
break;
|
|
79
|
+
case '--train-first':
|
|
80
|
+
out.trainFirst = takeValue();
|
|
81
|
+
break;
|
|
82
|
+
case '--max-cost':
|
|
83
|
+
out.maxCost = takeValue();
|
|
84
|
+
break;
|
|
85
|
+
case '--via-gateway':
|
|
86
|
+
out.viaGateway = true;
|
|
87
|
+
break;
|
|
88
|
+
case '--run':
|
|
89
|
+
out.run = true;
|
|
90
|
+
break;
|
|
91
|
+
case '--dry-run': break; // dry-run is the default; absorb it silently
|
|
92
|
+
default:
|
|
93
|
+
out.passthrough.push(a);
|
|
94
|
+
if (VALUE_FLAGS.has(a)) {
|
|
95
|
+
const v = takeValue();
|
|
96
|
+
if (v !== undefined)
|
|
97
|
+
out.passthrough.push(v);
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
return out;
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* Locate the GEPA learning harness. Honors `env.METAHARNESS_REPO` first, then walks up
|
|
105
|
+
* from `startDir` looking for LEARN_MJS_REL. Returns the absolute learn.mjs path or null.
|
|
106
|
+
* Pure given the injected `exists` predicate.
|
|
107
|
+
*/
|
|
108
|
+
export function findLearnHarness(startDir, env = {}, exists = existsSync) {
|
|
109
|
+
if (env.METAHARNESS_REPO) {
|
|
110
|
+
const p = join(resolve(env.METAHARNESS_REPO), LEARN_MJS_REL);
|
|
111
|
+
return exists(p) ? p : null;
|
|
112
|
+
}
|
|
113
|
+
let dir = resolve(startDir);
|
|
114
|
+
const { root } = parsePath(dir);
|
|
115
|
+
for (;;) {
|
|
116
|
+
const p = join(dir, LEARN_MJS_REL);
|
|
117
|
+
if (exists(p))
|
|
118
|
+
return p;
|
|
119
|
+
if (dir === root)
|
|
120
|
+
return null;
|
|
121
|
+
dir = dirname(dir);
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
/**
|
|
125
|
+
* Resolve `--seed`. `cand6` (any case) → the packaged promoted genome; any other value
|
|
126
|
+
* passes through unchanged (learn.mjs resolves relative paths against its bench dir);
|
|
127
|
+
* undefined → undefined (learn.mjs uses its default frozen seed). Pure.
|
|
128
|
+
*/
|
|
129
|
+
export function resolveSeed(seed, genomesRoot = GENOMES_ROOT) {
|
|
130
|
+
if (seed === undefined)
|
|
131
|
+
return undefined;
|
|
132
|
+
const packaged = PACKAGED_SEEDS[seed.toLowerCase()];
|
|
133
|
+
return packaged ? join(genomesRoot, packaged) : seed;
|
|
134
|
+
}
|
|
135
|
+
/**
|
|
136
|
+
* Assemble the argv for `node learn.mjs`. Pure.
|
|
137
|
+
*
|
|
138
|
+
* $0-default rule: `--dry-run` is appended UNLESS args.run is true. `--via-gateway`
|
|
139
|
+
* expands to `--base-url` + `--api-key-env` (cognitum meta-llm Completions API) unless the
|
|
140
|
+
* caller already supplied either flag explicitly.
|
|
141
|
+
*/
|
|
142
|
+
export function buildLearnArgs(args, seedPath) {
|
|
143
|
+
const out = [];
|
|
144
|
+
if (args.host !== undefined)
|
|
145
|
+
out.push('--host', args.host);
|
|
146
|
+
if (args.model !== undefined)
|
|
147
|
+
out.push('--model', args.model);
|
|
148
|
+
if (args.slice !== undefined)
|
|
149
|
+
out.push('--slice', args.slice);
|
|
150
|
+
if (seedPath !== undefined)
|
|
151
|
+
out.push('--seed', seedPath);
|
|
152
|
+
if (args.trainFirst !== undefined)
|
|
153
|
+
out.push('--train-first', args.trainFirst);
|
|
154
|
+
if (args.maxCost !== undefined)
|
|
155
|
+
out.push('--max-cost', args.maxCost);
|
|
156
|
+
if (args.viaGateway) {
|
|
157
|
+
if (!args.passthrough.includes('--base-url'))
|
|
158
|
+
out.push('--base-url', GATEWAY_BASE_URL);
|
|
159
|
+
if (!args.passthrough.includes('--api-key-env'))
|
|
160
|
+
out.push('--api-key-env', GATEWAY_API_KEY_ENV);
|
|
161
|
+
}
|
|
162
|
+
out.push(...args.passthrough);
|
|
163
|
+
if (!args.run)
|
|
164
|
+
out.push('--dry-run'); // $0 by default — real spend only behind --run
|
|
165
|
+
return out;
|
|
166
|
+
}
|
|
167
|
+
/** The actionable no-repo message (no stack trace — printed and exited cleanly). Pure. */
|
|
168
|
+
export function repoRequiredMessage() {
|
|
169
|
+
return [
|
|
170
|
+
'`metaharness learn` requires a metaharness repo checkout.',
|
|
171
|
+
'',
|
|
172
|
+
'The learning harness (GEPA + SWE-bench + Docker) is too heavy to ship in the npm',
|
|
173
|
+
'package, so this command runs against a local clone of the repo:',
|
|
174
|
+
'',
|
|
175
|
+
' git clone https://github.com/ruvnet/metaharness.git',
|
|
176
|
+
' cd metaharness',
|
|
177
|
+
' npx metaharness learn --host <h> --model <m> --slice <manifest>',
|
|
178
|
+
'',
|
|
179
|
+
'Alternatively point METAHARNESS_REPO at an existing checkout:',
|
|
180
|
+
'',
|
|
181
|
+
' METAHARNESS_REPO=/path/to/metaharness npx metaharness learn ...',
|
|
182
|
+
'',
|
|
183
|
+
'The managed-service path — gateway-side learn jobs, no local checkout needed — is the',
|
|
184
|
+
'ADR-235 follow-up and is not available yet.',
|
|
185
|
+
];
|
|
186
|
+
}
|
|
187
|
+
/**
|
|
188
|
+
* `metaharness learn` entrypoint: gate on a repo checkout, resolve the seed, then spawn
|
|
189
|
+
* `node learn.mjs <args>` with stdio inherited, propagating its exit code.
|
|
190
|
+
*/
|
|
191
|
+
export async function learnCmd(rest, opts = {}) {
|
|
192
|
+
// bin.js historically discards main()'s return value (usage exits 0). A learn run —
|
|
193
|
+
// especially a real --run — must propagate failure to CI, so this command sets
|
|
194
|
+
// process.exitCode itself (scoped: no other subcommand's behavior changes).
|
|
195
|
+
const code = await runLearn(rest, opts);
|
|
196
|
+
process.exitCode = code;
|
|
197
|
+
return code;
|
|
198
|
+
}
|
|
199
|
+
async function runLearn(rest, opts = {}) {
|
|
200
|
+
const cwd = opts.cwd ?? process.cwd();
|
|
201
|
+
const env = opts.env ?? process.env;
|
|
202
|
+
const args = parseLearnArgs(rest);
|
|
203
|
+
if (args.errors.length) {
|
|
204
|
+
for (const e of args.errors)
|
|
205
|
+
console.error(`metaharness learn: ${e}`);
|
|
206
|
+
return 2;
|
|
207
|
+
}
|
|
208
|
+
const learnMjs = findLearnHarness(cwd, env);
|
|
209
|
+
if (!learnMjs) {
|
|
210
|
+
for (const line of repoRequiredMessage())
|
|
211
|
+
console.error(line);
|
|
212
|
+
return 2;
|
|
213
|
+
}
|
|
214
|
+
const seedPath = resolveSeed(args.seed);
|
|
215
|
+
if (seedPath !== undefined && isAbsolute(seedPath) && !existsSync(seedPath)) {
|
|
216
|
+
console.error(`metaharness learn: seed genome not found at ${seedPath}`);
|
|
217
|
+
return 2;
|
|
218
|
+
}
|
|
219
|
+
const spawnArgs = buildLearnArgs(args, seedPath);
|
|
220
|
+
if (!args.run) {
|
|
221
|
+
console.error('[metaharness learn] $0 mode — forwarding --dry-run (pass --run to spend).');
|
|
222
|
+
}
|
|
223
|
+
// NOTE: spawnArgs may carry an --api-key-env pair; never log spawnArgs. learn.mjs
|
|
224
|
+
// applies the same rule to its own output.
|
|
225
|
+
const { spawnSync } = await import('node:child_process');
|
|
226
|
+
const r = spawnSync(process.execPath, ['--no-warnings', learnMjs, ...spawnArgs], {
|
|
227
|
+
stdio: 'inherit',
|
|
228
|
+
env: env,
|
|
229
|
+
});
|
|
230
|
+
if (r.error) {
|
|
231
|
+
console.error(`metaharness learn: failed to launch harness: ${r.error.message}`);
|
|
232
|
+
return 1;
|
|
233
|
+
}
|
|
234
|
+
return r.status ?? 1;
|
|
235
|
+
}
|
|
236
|
+
//# sourceMappingURL=learn.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"learn.js","sourceRoot":"","sources":["../src/learn.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
# Packaged executor genomes
|
|
2
|
+
|
|
3
|
+
Promoted cheap-tier executor operating policies, shipped with the `metaharness` CLI so
|
|
4
|
+
`metaharness learn --seed cand6` can seed a learning run from the current promoted base
|
|
5
|
+
(ADR-235 — cheap-tier optimization is a managed learning service).
|
|
6
|
+
|
|
7
|
+
## genome-promoted-cand6-edit-by-midpoint.json
|
|
8
|
+
|
|
9
|
+
- **Id:** `cand-6` (parent `cand-5`, mutation class `test_policy`) — promoted **2026-07-02**
|
|
10
|
+
as the cheap code-repair executor base (ADR-228; model `z-ai/glm-5.2`, SWE-bench code-repair).
|
|
11
|
+
- **Primary behavioral change (generalized):** *edit-by-midpoint* — make at least one real
|
|
12
|
+
code edit by the midpoint of the step budget; never end with an empty patch.
|
|
13
|
+
- **Honest holdout evidence:** unseen-holdout gold **2/12 → 3/12** (strict superset, zero
|
|
14
|
+
regressions); holdout empty-patch rate **0.583 → 0.333** (the load-bearing win).
|
|
15
|
+
- **Not claimed:** the secondary rerun-thrash suppression did NOT generalize (holdout
|
|
16
|
+
thrash 2 → 4). Kept in the policy, not claimed as an out-of-sample win.
|
|
17
|
+
- **Scope honesty:** this is a **positive screening signal**, below the pre-registered
|
|
18
|
+
≥10/24 "useful" bar — it funds confirmatory runs, it is not a headline capability claim.
|
|
19
|
+
|
|
20
|
+
Canonical source + full promotion record: `packages/darwin-mode/bench/swebench/gepa/`
|
|
21
|
+
(`genome-promoted-cand6-edit-by-midpoint.json`, `PROMOTION.md`) in the metaharness repo.
|
|
22
|
+
The frozen seed baseline (`seed-genome.json`) is never modified; comparisons always run
|
|
23
|
+
against it.
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 1,
|
|
3
|
+
"meta": {
|
|
4
|
+
"id": "cand-6",
|
|
5
|
+
"parent": "cand-5",
|
|
6
|
+
"source": "extracted from agentic-loop.mjs buildAgenticSystem + advisor-loop.mjs (ADR-228 §3)",
|
|
7
|
+
"notes": "escalation/verifier components present but OFF in solo (D0) rendering unless enabled",
|
|
8
|
+
"mutated": "test_policy"
|
|
9
|
+
},
|
|
10
|
+
"components": {
|
|
11
|
+
"executor_preamble": "You are an autonomous bug-fixing agent working inside a real repository. Each turn, output EXACTLY ONE JSON object on a single line — a tool call — and NOTHING else (no prose, no markdown, no XML). Do NOT use <invoke> XML syntax. Do NOT prefix with >>>. Just the raw JSON object. Tools:",
|
|
12
|
+
"tool_ls": "{\"tool\":\"ls\",\"dir\":\"path/\"} list a directory",
|
|
13
|
+
"tool_read": "{\"tool\":\"read\",\"path\":\"f.{{ext}}\",\"start\":1,\"end\":80} read a file (range optional; omit for whole file)",
|
|
14
|
+
"tool_grep": "{\"tool\":\"grep\",\"pattern\":\"reg\",\"glob\":\"{{glob}}\"} search the repo (glob optional)",
|
|
15
|
+
"tool_edit": "{\"tool\":\"edit\",\"path\":\"f.{{ext}}\",\"search\":\"<exact lines incl. indentation>\",\"replace\":\"<new lines>\"} apply a search/replace edit",
|
|
16
|
+
"tool_line_edit": "{\"tool\":\"line_edit\",\"path\":\"f.{{ext}}\",\"start\":12,\"end\":15,\"replace\":\"<new text for lines 12-15>\"} replace an inclusive LINE RANGE (robust — line numbers come from `read`)",
|
|
17
|
+
"tool_run_tests": "{\"tool\":\"run_tests\"} run the failing tests against your current edits; returns the trace",
|
|
18
|
+
"tool_submit": "{\"tool\":\"submit\"} finalize your patch and stop",
|
|
19
|
+
"retrieval_policy": "Strategy: explore just enough to locate the fix, then commit to an edit. Exploration is capped hard — never repeat this mistake: do not let read/grep/ls count exceed 4 before your first edit attempt, regardless of confidence. If step 5 arrives with no edit, make your best-guess edit immediately — an imperfect edit beats an empty patch.\n\nRules:\n1. Hard cap: max 4 read/grep/ls actions before the first edit. Track count explicitly; on the 4th such action, immediately plan and make an edit next — no exceptions, no \"one more grep.\"\n2. Never repeat an identical read/grep on the same target — track what you've already seen.\n3. Before editing, read the full function/class (not just the matched line) so you see sibling conditionals, related branches, mode/orientation flags, and other call sites the fix must also handle.\n4. Gold fixes often span multiple hunks in the same file: after making your first edit, scan the same function/class and nearby similar code (e.g. parallel branches, mirrored assignments, adjacent attributes) for a second spot that needs the analogous change before running tests.\n5. After run_tests fails, do not immediately rerun without changing something: re-read the failure trace, diagnose which assumption was wrong (missing import, unhandled branch, off-by-one, missing companion hunk), adjust the edit, then rerun. Never issue 2+ consecutive run_tests without an intervening edit.\n6. If run_tests fails twice on the same edit, broaden your view: look for other spots in the same file or an imported module that mirror the changed logic — the gold fix likely touches more than one line/branch.\n7. Do not edit test files. Only submit after run_tests passes.",
|
|
20
|
+
"edit_policy": "PREFER line_edit (use the line numbers from `read`) — it is far more reliable than search/replace, which must match the file character-for-character. If an `edit` fails to match, switch to line_edit.",
|
|
21
|
+
"test_policy": "Never edit test files. Use them only to understand expected behavior.\n\nBy the midpoint of your step budget, make at least one real code edit — do not spend the whole budget reading/grepping. If you cannot find the exact fix location, edit your best-guess file anyway rather than ending with an empty patch.\n\nWhen editing, copy the exact surrounding lines (whitespace, indentation, imports) from the file before changing them — mismatched context is why edits fail to apply. Re-check the target lines exist verbatim before submitting a line_edit.\n\nAfter every edit, run the tests. Before submitting, tests must have been run at least once and must pass.\n\nIf a test run fails, read the failure output carefully and diagnose the actual cause — trace which line/condition triggered it. Do not rerun the same tests unchanged more than twice: two identical failures mean your fix is wrong, not that the test needs retrying. On the second failure, stop, re-read the traceback plus the relevant source lines again, and change your actual code logic, not just re-execute.\n\nBefore submitting, confirm your edit is in the file that the failure trace points to and that it addresses the root cause (not just a symptom or unrelated line). Only submit once tests pass, or you are certain — after inspecting the failure trace — that the remaining failure is unrelated to your fix.",
|
|
22
|
+
"protocol_reminder": "Output ONE JSON action per turn.",
|
|
23
|
+
"tool_advise": "{\"tool\":\"advise\",\"question\":\"<what you are unsure about — the plan, the root cause, or whether your fix is right>\"} consult your STRONG read-only advisor; it sees your full transcript + current diff and replies with guidance",
|
|
24
|
+
"escalation_policy": "You are a fast agent with a STRONG senior ADVISOR on call. The advisor cannot run tools or edit — it only critiques. Consult it when uncertain about the plan, the root cause, or fix correctness — never for mechanical steps you can just do. Its reply is guidance; YOU still choose and execute every action. Your final submit is automatically reviewed by the advisor.",
|
|
25
|
+
"verifier_prompt": "You are a READ-ONLY senior engineer reviewing an autonomous junior bug-fixing agent mid-task. You will receive: the problem statement, the agent's full action/observation transcript, the current working-tree diff, and a PHASE tag. You cannot execute tools or edit files, and you must NOT output JSON tool calls — reply in plain prose, ≤300 words: (1) is the diagnosis/root-cause right? (2) is the diff correct, minimal, non-test-touching? (3) the exact next 1-3 actions (file, line, what to change — e.g. which .{{ext}} file). Reference only files present in the transcript or diff. If PHASE is pre-submit, your FIRST line must be exactly `VERDICT: APPROVE` or `VERDICT: REVISE — <one-line reason>`."
|
|
26
|
+
}
|
|
27
|
+
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "metaharness",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.3.0",
|
|
4
4
|
"description": "MetaHarness — mint a custom AI agent harness from any repo. Browser Studio + `npx metaharness` CLI. Runs on Claude Code, Codex, pi.dev, Hermes, OpenClaw, RVM.",
|
|
5
5
|
"homepage": "https://github.com/ruvnet/agent-harness-generator",
|
|
6
6
|
"repository": {
|
|
@@ -26,6 +26,7 @@
|
|
|
26
26
|
"files": [
|
|
27
27
|
"dist/**",
|
|
28
28
|
"templates/**",
|
|
29
|
+
"genomes/**",
|
|
29
30
|
"README.md",
|
|
30
31
|
"LICENSE"
|
|
31
32
|
],
|
|
@@ -97,7 +98,9 @@
|
|
|
97
98
|
"dependencies": {
|
|
98
99
|
"kolorist": "^1.8.0",
|
|
99
100
|
"prompts": "^2.4.2",
|
|
100
|
-
"@metaharness/darwin": "^0.2.2"
|
|
101
|
+
"@metaharness/darwin": "^0.2.2",
|
|
102
|
+
"@metaharness/weight-eft": "^0.1.0",
|
|
103
|
+
"@metaharness/redblue": "^0.1.1"
|
|
101
104
|
},
|
|
102
105
|
"peerDependencies": {
|
|
103
106
|
"@metaharness/kernel": "^0.1.0"
|