metaharness 0.4.3 → 0.4.5
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 +22 -2
- package/dist/bin.js +0 -0
- package/dist/harness-bin.js +0 -0
- package/dist/host-config.d.ts.map +1 -1
- package/dist/host-config.js +18 -1
- package/dist/host-config.js.map +1 -1
- package/dist/index.d.ts +9 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +281 -4
- package/dist/index.js.map +1 -1
- package/dist/meta-proxy-service.d.ts +72 -0
- package/dist/meta-proxy-service.d.ts.map +1 -0
- package/dist/meta-proxy-service.js +753 -0
- package/dist/meta-proxy-service.js.map +1 -0
- package/dist/meta-proxy.d.ts +11 -2
- package/dist/meta-proxy.d.ts.map +1 -1
- package/dist/meta-proxy.js +155 -10
- package/dist/meta-proxy.js.map +1 -1
- package/dist/secrets.d.ts +11 -1
- package/dist/secrets.d.ts.map +1 -1
- package/dist/secrets.js +20 -7
- package/dist/secrets.js.map +1 -1
- package/package.json +6 -4
package/README.md
CHANGED
|
@@ -50,6 +50,7 @@ npx metaharness my-legal-bot \
|
|
|
50
50
|
| `hermes` | `cli-config.yaml` + `optional-mcps/*.yaml` |
|
|
51
51
|
| `openclaw` | `~/.openclaw/openclaw.json` + workspace SKILL.md + install runbook |
|
|
52
52
|
| `rvm` | RVM partition manifest + capability table + wasm-guest + install runbook (hardware-isolated) |
|
|
53
|
+
| `prime-agent` | `.prime/agent/skills/` Python-backed skill per tool (no MCP by design) + `install-prime-agent.md` runbook; deny-lists emit `SANDBOX-REQUIRED.md` (ADR-247) |
|
|
53
54
|
|
|
54
55
|
Multi-host: pass `--host` multiple times.
|
|
55
56
|
|
|
@@ -84,7 +85,7 @@ of normal harness scaffolding. Install it only when you want a locally bound,
|
|
|
84
85
|
Claude-compatible routing endpoint with Meta-Proxy's own Cognitum OAuth flow:
|
|
85
86
|
|
|
86
87
|
```bash
|
|
87
|
-
npx metaharness proxy install --yes # signed
|
|
88
|
+
npx metaharness proxy install --yes # pinned signed download; checksum + Ed25519 verified
|
|
88
89
|
npx metaharness proxy run -- claude # starts the sidecar and routes this Claude session through it
|
|
89
90
|
npx metaharness proxy run --policy critical -- claude -p "review this migration"
|
|
90
91
|
```
|
|
@@ -98,7 +99,26 @@ select consented Cloud or Sponsored capacity per request. Cognitum login is
|
|
|
98
99
|
needed only for Cloud routing, not for installation or normal Passthrough.
|
|
99
100
|
|
|
100
101
|
Use `npx metaharness proxy login` to authorize Cognitum Cloud routing, and
|
|
101
|
-
`npx metaharness proxy status` to inspect the managed sidecar.
|
|
102
|
+
`npx metaharness proxy status` to inspect the managed sidecar. Use `proxy enable`
|
|
103
|
+
to configure login start, `proxy stop` for a stop that survives crash-restart
|
|
104
|
+
policy in the current session, `proxy start` to resume it, `proxy logs` for the
|
|
105
|
+
managed log, `proxy disable` to remove login start, and `proxy uninstall --yes`
|
|
106
|
+
to remove the managed runtime. Uninstall intentionally preserves credentials;
|
|
107
|
+
run `proxy logout` first when credential removal is required.
|
|
108
|
+
|
|
109
|
+
On Windows this is a least-privilege per-user Scheduled Task. Status comes from
|
|
110
|
+
locale-neutral ScheduledTasks API enum state and reports registration, task
|
|
111
|
+
enablement, and running state separately. Disable and ambiguous-start cleanup
|
|
112
|
+
require a stable stopped state. A failed enable restores a pre-existing absent
|
|
113
|
+
or disabled task exactly; it deletes the task/XML only when both were created by
|
|
114
|
+
that attempt. A registered task without its owned XML is never overwritten or
|
|
115
|
+
deleted by label alone, and
|
|
116
|
+
an owned disabled task removed by an ambiguous create is recreated from that XML
|
|
117
|
+
and returned to disabled after an authoritative re-read, even if the compensating
|
|
118
|
+
create response is also lost. On Linux, ambiguous `disable --now` and later `daemon-reload`
|
|
119
|
+
failures re-read manager state and restore the prior login and running state,
|
|
120
|
+
or fail closed with the owned definition preserved when restoration cannot be
|
|
121
|
+
proved.
|
|
102
122
|
|
|
103
123
|
### Per-worktree routing policy
|
|
104
124
|
|
package/dist/bin.js
CHANGED
|
File without changes
|
package/dist/harness-bin.js
CHANGED
|
File without changes
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"host-config.d.ts","sourceRoot":"","sources":["../src/host-config.ts"],"names":[],"mappings":"AAgBA,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,6EAA6E;IAC7E,GAAG,EAAE,KAAK,GAAG,OAAO,GAAG,QAAQ,CAAC;IAChC,4CAA4C;IAC5C,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAyBD;;;GAGG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,eAAe,GAAG,QAAQ,EAAE,
|
|
1
|
+
{"version":3,"file":"host-config.d.ts","sourceRoot":"","sources":["../src/host-config.ts"],"names":[],"mappings":"AAgBA,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,6EAA6E;IAC7E,GAAG,EAAE,KAAK,GAAG,OAAO,GAAG,QAAQ,CAAC;IAChC,4CAA4C;IAC5C,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAyBD;;;GAGG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,eAAe,GAAG,QAAQ,EAAE,CAsJ9E"}
|
package/dist/host-config.js
CHANGED
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
//
|
|
13
13
|
// claude-code is intentionally NOT handled here — the templates already emit a
|
|
14
14
|
// richer .claude/ tree (settings.json, commands, plugin manifest). This module
|
|
15
|
-
// emits the OTHER
|
|
15
|
+
// emits the OTHER nine hosts' native config.
|
|
16
16
|
/** The MCP server entry a host registers, or null when MCP is off. */
|
|
17
17
|
function mcpServerEntry(cfg) {
|
|
18
18
|
if (cfg.mcp === 'off')
|
|
@@ -162,6 +162,23 @@ export function hostConfigFiles(host, cfg) {
|
|
|
162
162
|
{ path: 'install.md', content: `# Installing ${cfg.name} as a GitHub Actions harness\n\n1. Commit \`.github/workflows/${slug}.yml\` + \`.github/actions/${slug}/action.yml\`.\n2. Add your model-provider key as a repo secret — one of \`ANTHROPIC_API_KEY\`, \`OPENROUTER_API_KEY\`, or \`OPENAI_API_KEY\`.\n3. Trigger: Actions → ${slug} → Run workflow, or comment on an issue.\n` },
|
|
163
163
|
];
|
|
164
164
|
}
|
|
165
|
+
case 'prime-agent': {
|
|
166
|
+
// ADR-247 — Prime Agent uses project skills, supports remote HTTP MCP,
|
|
167
|
+
// and has no native sandbox. Runtime-specific files are emitted by
|
|
168
|
+
// @metaharness/host-prime-agent; scaffold-time emits concise guidance.
|
|
169
|
+
return [
|
|
170
|
+
{ path: 'install-prime-agent.md', content: [
|
|
171
|
+
`# Install ${cfg.name} into Prime Agent`,
|
|
172
|
+
'',
|
|
173
|
+
'Prime Agent loads tools from project skills and supports remote HTTP MCP integrations; local stdio MCP is not currently wired.',
|
|
174
|
+
'',
|
|
175
|
+
cfg.mcp === 'off' ? 'MCP: off — nothing further.' : `MCP (${cfg.mcp}): remote HTTP servers are emitted as Python-backed integrations; local stdio servers are listed as unsupported.`,
|
|
176
|
+
'',
|
|
177
|
+
'Sandbox: Prime Agent is not sandboxed. Denied capabilities require an external sandbox (ADR-247).',
|
|
178
|
+
].join('\n') + '\n' },
|
|
179
|
+
{ path: '.prime/agent/skills/README.md', content: `# ${cfg.name} skills\n\nGenerated skill directories land here (one per tool).\n` },
|
|
180
|
+
];
|
|
181
|
+
}
|
|
165
182
|
default:
|
|
166
183
|
return [];
|
|
167
184
|
}
|
package/dist/host-config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"host-config.js","sourceRoot":"","sources":["../src/host-config.ts"],"names":[],"mappings":"AAAA,+BAA+B;AAC/B,EAAE;AACF,+DAA+D;AAC/D,EAAE;AACF,yEAAyE;AACzE,kEAAkE;AAClE,6EAA6E;AAC7E,+EAA+E;AAC/E,0EAA0E;AAC1E,uEAAuE;AACvE,8DAA8D;AAC9D,EAAE;AACF,+EAA+E;AAC/E,+EAA+E;AAC/E,
|
|
1
|
+
{"version":3,"file":"host-config.js","sourceRoot":"","sources":["../src/host-config.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export declare const HOSTS: readonly ["claude-code", "codex", "pi-dev", "hermes", "openclaw", "rvm", "copilot", "opencode", "github-actions"];
|
|
1
|
+
export declare const HOSTS: readonly ["claude-code", "codex", "pi-dev", "hermes", "openclaw", "rvm", "copilot", "opencode", "github-actions", "prime-agent"];
|
|
2
2
|
export type Host = (typeof HOSTS)[number];
|
|
3
3
|
export declare const TEMPLATES: readonly ["minimal", "vertical:devops", "vertical:support", "vertical:trading", "vertical:legal", "vertical:research", "vertical:coding", "vertical:business", "vertical:crm", "vertical:marketing", "vertical:advertising", "vertical:ai", "vertical:agentics", "vertical:ruview", "vertical:health", "vertical:education", "vertical:sales", "vertical:gaming", "vertical:repo-maintainer", "vertical:exotic"];
|
|
4
4
|
export type TemplateId = (typeof TEMPLATES)[number];
|
|
@@ -34,6 +34,8 @@ export interface CliArgs {
|
|
|
34
34
|
withWasm?: string;
|
|
35
35
|
/** ADR-147: include Darwin Mode self-improvement (default on; --no-darwin to skip). */
|
|
36
36
|
darwin?: boolean;
|
|
37
|
+
/** ADR-246 §2.3: include the recoverable-session log scaffold (default OFF; --sessions to enable). */
|
|
38
|
+
sessions?: boolean;
|
|
37
39
|
}
|
|
38
40
|
export declare function parseArgs(argv: string[]): CliArgs;
|
|
39
41
|
/**
|
|
@@ -64,6 +66,12 @@ export interface ScaffoldOptions {
|
|
|
64
66
|
* the darwin CLI, and the dependency. Default ON; opt out with `--no-darwin`.
|
|
65
67
|
*/
|
|
66
68
|
darwin?: boolean;
|
|
69
|
+
/**
|
|
70
|
+
* ADR-246 §2.3: emit a crash-recoverable, forkable session log scaffold
|
|
71
|
+
* (`src/sessions/log.ts`, dependency-free copy-in). Default OFF — sessions
|
|
72
|
+
* are an *optional* primitive per the ADR; opt in with `--sessions`.
|
|
73
|
+
*/
|
|
74
|
+
sessions?: boolean;
|
|
67
75
|
}
|
|
68
76
|
export interface ScaffoldResult {
|
|
69
77
|
paths: string[];
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -56,9 +56,10 @@ function resolveKernelVersion() {
|
|
|
56
56
|
}
|
|
57
57
|
const KERNEL_VERSION = resolveKernelVersion();
|
|
58
58
|
// iter 127 added copilot (ADR-032); iter 128 added opencode (ADR-036);
|
|
59
|
-
// iter 147 added github-actions (ADR-033, the first non-interactive host)
|
|
60
|
-
//
|
|
61
|
-
|
|
59
|
+
// iter 147 added github-actions (ADR-033, the first non-interactive host);
|
|
60
|
+
// prime-agent added per ADR-247 (skills-based, no MCP).
|
|
61
|
+
// HOSTS is the canonical 10-host catalog.
|
|
62
|
+
export const HOSTS = ['claude-code', 'codex', 'pi-dev', 'hermes', 'openclaw', 'rvm', 'copilot', 'opencode', 'github-actions', 'prime-agent'];
|
|
62
63
|
export const TEMPLATES = [
|
|
63
64
|
'minimal',
|
|
64
65
|
'vertical:devops',
|
|
@@ -140,6 +141,12 @@ export function parseArgs(argv) {
|
|
|
140
141
|
else if (a === '--no-darwin') {
|
|
141
142
|
out.darwin = false;
|
|
142
143
|
}
|
|
144
|
+
else if (a === '--sessions') {
|
|
145
|
+
out.sessions = true;
|
|
146
|
+
}
|
|
147
|
+
else if (a === '--no-sessions') {
|
|
148
|
+
out.sessions = false;
|
|
149
|
+
}
|
|
143
150
|
else if (a === '--description' || a === '-d') {
|
|
144
151
|
out.description = argv[++i];
|
|
145
152
|
}
|
|
@@ -242,6 +249,228 @@ Defaults worth carrying into how you evolve and run this harness (full evidence
|
|
|
242
249
|
the smallest model *above* the floor, then let evolution do the rest.
|
|
243
250
|
`;
|
|
244
251
|
}
|
|
252
|
+
/**
|
|
253
|
+
* ADR-246 §2.3: the copy-in recoverable-session log emitted with --sessions.
|
|
254
|
+
* Deliberately self-contained: node builtins only, NO @metaharness/kernel
|
|
255
|
+
* import, so the generated harness owns the file outright. The wire format
|
|
256
|
+
* and hash fold match packages/kernel-js/src/session.ts byte-for-byte.
|
|
257
|
+
* Emitted code avoids template literals so this template string stays simple.
|
|
258
|
+
*/
|
|
259
|
+
function sessionsLogTemplate() {
|
|
260
|
+
return `// SPDX-License-Identifier: MIT
|
|
261
|
+
//
|
|
262
|
+
// Recoverable session log — copy-in scaffold from ADR-246 §2.3
|
|
263
|
+
// (metaharness docs/adrs/ADR-246-prime-agent-continual-harness-refine.md).
|
|
264
|
+
// Self-contained: node builtins only, no @metaharness/kernel dependency.
|
|
265
|
+
//
|
|
266
|
+
// Append-only JSONL: one event per line, per-branch 0-based monotonic
|
|
267
|
+
// indexes; a forked branch's first event carries parent {branch, index}.
|
|
268
|
+
// Wire key order is EXACTLY index, branch, parent, kind, payload (parent
|
|
269
|
+
// omitted when absent).
|
|
270
|
+
//
|
|
271
|
+
// State-hash fold (mirrors @metaharness/kernel SessionLog exactly):
|
|
272
|
+
// hexPrev = ''; for each lineage event (root -> tip):
|
|
273
|
+
// hexPrev = lowercaseHex(sha256(utf8(hexPrev + canonicalJson(event))))
|
|
274
|
+
// where canonicalJson is recursively key-sorted (UTF-8 byte order),
|
|
275
|
+
// whitespace-free JSON.
|
|
276
|
+
//
|
|
277
|
+
// Session state lives wherever you point the constructor (suggested:
|
|
278
|
+
// .harness/sessions/<id>.jsonl). Prune old logs by deleting files.
|
|
279
|
+
|
|
280
|
+
import { appendFile, readFile } from 'node:fs/promises';
|
|
281
|
+
import { existsSync } from 'node:fs';
|
|
282
|
+
import { createHash } from 'node:crypto';
|
|
283
|
+
|
|
284
|
+
export interface SessionEvent {
|
|
285
|
+
index: number;
|
|
286
|
+
branch: string;
|
|
287
|
+
parent?: { branch: string; index: number };
|
|
288
|
+
kind: string;
|
|
289
|
+
payload: unknown;
|
|
290
|
+
}
|
|
291
|
+
|
|
292
|
+
// Keys sort by UTF-8 BYTE order (not UTF-16 code-unit order, which default
|
|
293
|
+
// .sort() uses) to match the Rust mirror's byte-wise &str ordering.
|
|
294
|
+
function canonicalJson(v: unknown): string {
|
|
295
|
+
if (v === null || typeof v !== 'object') return JSON.stringify(v) ?? 'null';
|
|
296
|
+
if (Array.isArray(v)) return '[' + v.map(canonicalJson).join(',') + ']';
|
|
297
|
+
const rec = v as Record<string, unknown>;
|
|
298
|
+
const keys = Object.keys(rec).filter(k => rec[k] !== undefined)
|
|
299
|
+
.sort((a, b) => Buffer.compare(Buffer.from(a, 'utf8'), Buffer.from(b, 'utf8')));
|
|
300
|
+
return '{' + keys.map(k => JSON.stringify(k) + ':' + canonicalJson(rec[k])).join(',') + '}';
|
|
301
|
+
}
|
|
302
|
+
|
|
303
|
+
// A raw unpaired surrogate — not valid UTF-8; a Rust mirror (serde_json)
|
|
304
|
+
// cannot parse it, so both append and read reject it.
|
|
305
|
+
const LONE_SURROGATE =
|
|
306
|
+
/(?:[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?<![\\uD800-\\uDBFF])[\\uDC00-\\uDFFF])/;
|
|
307
|
+
// Well-formed JSON.stringify renders a lone surrogate as a \\udXXX escape
|
|
308
|
+
// (paired surrogates pass through raw), preceded by an even backslash run.
|
|
309
|
+
const LONE_SURROGATE_ESCAPE = /(?<=(?:^|[^\\\\])(?:\\\\\\\\)*)\\\\u[dD][89abAB]/;
|
|
310
|
+
|
|
311
|
+
// Read-path check on DECODED data (string values AND object keys): a valid
|
|
312
|
+
// \\udXXX pair decodes to an astral character, a lone surrogate stays lone.
|
|
313
|
+
function containsLoneSurrogate(v: unknown): boolean {
|
|
314
|
+
if (typeof v === 'string') return LONE_SURROGATE.test(v);
|
|
315
|
+
if (v === null || typeof v !== 'object') return false;
|
|
316
|
+
if (Array.isArray(v)) return v.some(containsLoneSurrogate);
|
|
317
|
+
return Object.entries(v).some(([k, val]) => LONE_SURROGATE.test(k) || containsLoneSurrogate(val));
|
|
318
|
+
}
|
|
319
|
+
|
|
320
|
+
function serialize(e: SessionEvent): string {
|
|
321
|
+
return JSON.stringify(e.parent === undefined
|
|
322
|
+
? { index: e.index, branch: e.branch, kind: e.kind, payload: e.payload }
|
|
323
|
+
: { index: e.index, branch: e.branch,
|
|
324
|
+
parent: { branch: e.parent.branch, index: e.parent.index },
|
|
325
|
+
kind: e.kind, payload: e.payload });
|
|
326
|
+
}
|
|
327
|
+
|
|
328
|
+
export class SessionLog {
|
|
329
|
+
private events: SessionEvent[] = [];
|
|
330
|
+
private nextIndex = new Map<string, number>();
|
|
331
|
+
private branchParent = new Map<string, { branch: string; index: number }>();
|
|
332
|
+
private rootBranch: string;
|
|
333
|
+
|
|
334
|
+
constructor(readonly path: string, readonly branch: string = 'main') {
|
|
335
|
+
this.rootBranch = branch;
|
|
336
|
+
}
|
|
337
|
+
|
|
338
|
+
/** Resume: read + validate the JSONL log; throws on the first error. */
|
|
339
|
+
static async open(path: string, branch = 'main'): Promise<SessionLog> {
|
|
340
|
+
const log = new SessionLog(path, branch);
|
|
341
|
+
if (!existsSync(path)) return log;
|
|
342
|
+
const raw = await readFile(path, 'utf-8');
|
|
343
|
+
const errors = log.load(raw);
|
|
344
|
+
if (errors.length > 0) throw new Error(errors[0]);
|
|
345
|
+
return log;
|
|
346
|
+
}
|
|
347
|
+
|
|
348
|
+
private load(raw: string): string[] {
|
|
349
|
+
const errors: string[] = [];
|
|
350
|
+
const seen = new Set<string>();
|
|
351
|
+
const lines = raw.split('\\n');
|
|
352
|
+
for (let i = 0; i < lines.length; i++) {
|
|
353
|
+
if (lines[i]!.trim() === '') continue; // blank/whitespace-only separators (still counted for line numbers)
|
|
354
|
+
const n = i + 1;
|
|
355
|
+
let e: SessionEvent;
|
|
356
|
+
try { e = JSON.parse(lines[i]!); } catch {
|
|
357
|
+
errors.push('session: line ' + n + ': corrupted line (invalid JSON)'); continue;
|
|
358
|
+
}
|
|
359
|
+
// Mirror serde_json's accept/reject: a lone surrogate decoded from a
|
|
360
|
+
// \\udXXX escape is not representable as UTF-8, so reject the line.
|
|
361
|
+
if (containsLoneSurrogate(e)) {
|
|
362
|
+
errors.push('session: line ' + n + ': corrupted line (contains an unpaired surrogate, not valid UTF-8)'); continue;
|
|
363
|
+
}
|
|
364
|
+
if (typeof e?.index !== 'number' || typeof e?.branch !== 'string' || typeof e?.kind !== 'string' ||
|
|
365
|
+
(e.parent !== undefined && (typeof e.parent !== 'object' || e.parent === null ||
|
|
366
|
+
typeof e.parent.branch !== 'string' || typeof e.parent.index !== 'number'))) {
|
|
367
|
+
errors.push('session: line ' + n + ': corrupted line (not a valid session event)'); continue;
|
|
368
|
+
}
|
|
369
|
+
const key = e.branch + '\\u0000' + e.index;
|
|
370
|
+
if (seen.has(key)) { errors.push('session: line ' + n + ': duplicate event (' + e.branch + ', ' + e.index + ')'); continue; }
|
|
371
|
+
const expected = this.nextIndex.get(e.branch) ?? 0;
|
|
372
|
+
if (e.index !== expected) {
|
|
373
|
+
errors.push('session: line ' + n + ': branch "' + e.branch + '" index ' + e.index + ' is not monotonic (expected ' + expected + ')');
|
|
374
|
+
// Resync like the Rust mirror: after reporting index X, expect X+1
|
|
375
|
+
// next, so a single gap yields exactly ONE error, not a cascade.
|
|
376
|
+
seen.add(key);
|
|
377
|
+
this.nextIndex.set(e.branch, e.index + 1);
|
|
378
|
+
continue;
|
|
379
|
+
}
|
|
380
|
+
if (expected === 0) {
|
|
381
|
+
if (this.events.length === 0) {
|
|
382
|
+
// Root branch (first branch in the file) must not carry a parent.
|
|
383
|
+
this.rootBranch = e.branch;
|
|
384
|
+
if (e.parent !== undefined) {
|
|
385
|
+
errors.push("session: line " + n + ": root branch '" + e.branch + "' must not carry a parent"); continue;
|
|
386
|
+
}
|
|
387
|
+
} else {
|
|
388
|
+
if (!e.parent) { errors.push('session: line ' + n + ': first event of branch "' + e.branch + '" must carry a parent reference'); continue; }
|
|
389
|
+
if (!seen.has(e.parent.branch + '\\u0000' + e.parent.index)) {
|
|
390
|
+
errors.push('session: line ' + n + ': parent (' + e.parent.branch + ', ' + e.parent.index + ') does not exist'); continue;
|
|
391
|
+
}
|
|
392
|
+
this.branchParent.set(e.branch, e.parent);
|
|
393
|
+
}
|
|
394
|
+
}
|
|
395
|
+
seen.add(key);
|
|
396
|
+
this.events.push(e);
|
|
397
|
+
this.nextIndex.set(e.branch, expected + 1);
|
|
398
|
+
}
|
|
399
|
+
return errors;
|
|
400
|
+
}
|
|
401
|
+
|
|
402
|
+
/** Append an event on the active branch (next monotonic index). The first
|
|
403
|
+
* event of a forked branch carries the fork's parent ref. */
|
|
404
|
+
async append(kind: string, payload: unknown,
|
|
405
|
+
opts?: { parent?: { branch: string; index: number } }): Promise<SessionEvent> {
|
|
406
|
+
const index = this.nextIndex.get(this.branch) ?? 0;
|
|
407
|
+
const parent = opts?.parent;
|
|
408
|
+
const isRoot = this.events.length === 0 || this.branch === this.rootBranch;
|
|
409
|
+
if (index === 0 && !isRoot && parent === undefined) {
|
|
410
|
+
throw new Error('session: first event of branch "' + this.branch + '" must carry a parent reference');
|
|
411
|
+
}
|
|
412
|
+
const event: SessionEvent = parent === undefined
|
|
413
|
+
? { index, branch: this.branch, kind, payload }
|
|
414
|
+
: { index, branch: this.branch, parent, kind, payload };
|
|
415
|
+
const line = serialize(event);
|
|
416
|
+
// Reject events a Rust mirror cannot parse: a lone surrogate is not
|
|
417
|
+
// valid UTF-8 (raw form), and serde_json also rejects its escaped form.
|
|
418
|
+
if (LONE_SURROGATE.test(line) || LONE_SURROGATE_ESCAPE.test(line)) {
|
|
419
|
+
throw new Error('session: event contains an unpaired surrogate (not valid UTF-8)');
|
|
420
|
+
}
|
|
421
|
+
await appendFile(this.path, line + '\\n', 'utf-8');
|
|
422
|
+
if (this.events.length === 0) this.rootBranch = this.branch;
|
|
423
|
+
if (index === 0 && parent !== undefined) this.branchParent.set(this.branch, parent);
|
|
424
|
+
this.events.push(event);
|
|
425
|
+
this.nextIndex.set(this.branch, index + 1);
|
|
426
|
+
return event;
|
|
427
|
+
}
|
|
428
|
+
|
|
429
|
+
/** Fork at atIndex on the active branch: a sibling log over the same file.
|
|
430
|
+
* Immediately appends the new branch's synthetic first event: index 0,
|
|
431
|
+
* parent {branch: this.branch, index: atIndex}, kind 'fork', payload null. */
|
|
432
|
+
async fork(atIndex: number, newBranch: string): Promise<SessionLog> {
|
|
433
|
+
const count = this.nextIndex.get(this.branch) ?? 0;
|
|
434
|
+
if (atIndex < 0 || atIndex >= count) throw new Error('session: cannot fork at index ' + atIndex);
|
|
435
|
+
if ((this.nextIndex.get(newBranch) ?? 0) > 0 || newBranch === this.branch) {
|
|
436
|
+
throw new Error('session: branch "' + newBranch + '" already exists');
|
|
437
|
+
}
|
|
438
|
+
const log = new SessionLog(this.path, newBranch);
|
|
439
|
+
log.events = this.events; log.nextIndex = this.nextIndex; log.branchParent = this.branchParent;
|
|
440
|
+
log.rootBranch = this.rootBranch;
|
|
441
|
+
await log.append('fork', null, { parent: { branch: this.branch, index: atIndex } });
|
|
442
|
+
return log;
|
|
443
|
+
}
|
|
444
|
+
|
|
445
|
+
private lineage(branch: string): SessionEvent[] {
|
|
446
|
+
const own = this.events.filter(e => e.branch === branch).sort((a, b) => a.index - b.index);
|
|
447
|
+
const p = this.branchParent.get(branch);
|
|
448
|
+
if (!p) return own;
|
|
449
|
+
return [...this.lineage(p.branch).filter(e => e.branch !== p.branch || e.index <= p.index), ...own];
|
|
450
|
+
}
|
|
451
|
+
|
|
452
|
+
/** Lowercase-hex state hash of the branch lineage ('' when empty). */
|
|
453
|
+
stateHash(branch: string = this.branch): string {
|
|
454
|
+
let hexPrev = '';
|
|
455
|
+
for (const e of this.lineage(branch)) {
|
|
456
|
+
hexPrev = createHash('sha256').update(hexPrev + canonicalJson(e), 'utf-8').digest('hex');
|
|
457
|
+
}
|
|
458
|
+
return hexPrev;
|
|
459
|
+
}
|
|
460
|
+
|
|
461
|
+
/** Deterministic replay: lineage event count + integrity hash. */
|
|
462
|
+
replay(branch: string = this.branch): { eventCount: number; stateHash: string } {
|
|
463
|
+
return { eventCount: this.lineage(branch).length, stateHash: this.stateHash(branch) };
|
|
464
|
+
}
|
|
465
|
+
|
|
466
|
+
/** Re-read the file and report all validation errors (empty = valid). */
|
|
467
|
+
async validate(): Promise<string[]> {
|
|
468
|
+
if (!existsSync(this.path)) return [];
|
|
469
|
+
return new SessionLog(this.path, this.branch).load(await readFile(this.path, 'utf-8'));
|
|
470
|
+
}
|
|
471
|
+
}
|
|
472
|
+
`;
|
|
473
|
+
}
|
|
245
474
|
/**
|
|
246
475
|
* Run the full scaffold pipeline:
|
|
247
476
|
* 1. Validate the name
|
|
@@ -393,6 +622,39 @@ export async function scaffold(opts) {
|
|
|
393
622
|
else
|
|
394
623
|
rendered.push(skill);
|
|
395
624
|
}
|
|
625
|
+
// ADR-246 §2.3: recoverable-session scaffold. Default OFF (opt in with
|
|
626
|
+
// --sessions) — the ADR ships sessions as an *optional* primitive, unlike
|
|
627
|
+
// darwin's default-on. The emitted src/sessions/log.ts is a dependency-free
|
|
628
|
+
// copy-in (no @metaharness/kernel import); session state is host-agnostic
|
|
629
|
+
// scaffold code, NOT host config, so host-config.ts is deliberately
|
|
630
|
+
// untouched.
|
|
631
|
+
//
|
|
632
|
+
// ADR-027 asymmetric-feature note: --sessions is CLI-only this pass; the
|
|
633
|
+
// web-ui surface intentionally does NOT mirror this toggle yet. If/when it
|
|
634
|
+
// does, the manifest `surface` field distinguishes the emitters.
|
|
635
|
+
if (opts.sessions === true) {
|
|
636
|
+
const logPath = 'src/sessions/log.ts';
|
|
637
|
+
if (!rendered.some(r => r.path === logPath)) {
|
|
638
|
+
rendered.push({ path: logPath, content: sessionsLogTemplate(), rendered: false, unresolved: [] });
|
|
639
|
+
}
|
|
640
|
+
// Append a sessions note to the generated README (best-effort, darwin-style
|
|
641
|
+
// error swallowing: a README that isn't there or isn't text just skips).
|
|
642
|
+
const readmeIdx = rendered.findIndex(r => r.path === 'README.md');
|
|
643
|
+
if (readmeIdx !== -1) {
|
|
644
|
+
try {
|
|
645
|
+
let readme = rendered[readmeIdx].content;
|
|
646
|
+
while (readme.endsWith('\n'))
|
|
647
|
+
readme = readme.slice(0, -1);
|
|
648
|
+
rendered[readmeIdx].content = readme + '\n' +
|
|
649
|
+
`\n## Recoverable sessions (ADR-246 §2.3)\n\n` +
|
|
650
|
+
`This harness includes \`src/sessions/log.ts\` — a crash-recoverable, forkable\n` +
|
|
651
|
+
`JSONL session log (append-only events, deterministic replay, integrity state\n` +
|
|
652
|
+
`hash). Session state lives where you point the log (suggested:\n` +
|
|
653
|
+
`\`.harness/sessions/<id>.jsonl\`); prune by deleting old files.\n`;
|
|
654
|
+
}
|
|
655
|
+
catch { /* leave README untouched if the note can't be appended */ }
|
|
656
|
+
}
|
|
657
|
+
}
|
|
396
658
|
const fileMap = asFileMap(rendered);
|
|
397
659
|
// iter 58: stamp kernel_version at scaffold time (ADR-027 diagnostic).
|
|
398
660
|
// surface defaults to 'cli' inside emptyManifest; we override only
|
|
@@ -577,6 +839,19 @@ async function runMetaHarnessSubcommand(sub, rest) {
|
|
|
577
839
|
console.log(line);
|
|
578
840
|
return r.code;
|
|
579
841
|
}
|
|
842
|
+
case 'turn-credit': {
|
|
843
|
+
// `metaharness turn-credit <process|report>` — delegates to @metaharness/turn-credit
|
|
844
|
+
// (ADR-248): offline recursive turn-level credit for recorded trajectories
|
|
845
|
+
// (AgentOPSD, arXiv:2608.05987). Converts sparse terminal outcomes into bounded
|
|
846
|
+
// per-turn weights (belief revisions) — advisory signals for routing, retry
|
|
847
|
+
// policy, retrieval feedback, and Darwin mutation attribution. $0 and pure:
|
|
848
|
+
// the (single) teacher scoring pass that produces the input happens upstream.
|
|
849
|
+
const { dispatch } = await import('@metaharness/turn-credit/cli');
|
|
850
|
+
const r = await dispatch(rest[0], rest.slice(1));
|
|
851
|
+
for (const line of r.lines)
|
|
852
|
+
console.log(line);
|
|
853
|
+
return r.code;
|
|
854
|
+
}
|
|
580
855
|
case 'proxy': {
|
|
581
856
|
// Optional Meta-Proxy integration. The signed Rust sidecar is downloaded
|
|
582
857
|
// only through its explicit `install --yes` command, never while scaffolding.
|
|
@@ -660,12 +935,13 @@ export async function main(argv) {
|
|
|
660
935
|
console.log('Usage: npx metaharness <name> [--template <id>] [--host claude-code|codex|pi-dev|hermes] [--description "..."] [--target <path>] [--force]');
|
|
661
936
|
console.log(' --target <path> write the harness to <path> instead of ./<name>');
|
|
662
937
|
console.log(' --no-darwin skip Darwin Mode self-improvement (default: integrated; adds `npm run evolve`)');
|
|
938
|
+
console.log(' --sessions add a crash-recoverable session log (src/sessions/log.ts — ADR-246 §2.3; default: off)');
|
|
663
939
|
console.log(' --with-wasm <crate-path> build a wasm-pack crate into the harness as commands (GH #25)');
|
|
664
940
|
console.log(' npx metaharness score <repo> [--json] (scorecard: fit/cost/safety for a repo — ADR-041)');
|
|
665
941
|
console.log(' npx metaharness analyze <repo> (recommend a harness plan, no-exec)');
|
|
666
942
|
console.log(' npx metaharness genome <repo> (7-section repo readiness)');
|
|
667
943
|
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)');
|
|
668
|
-
console.log(' npx metaharness proxy <install|status|start|stop|path|login|logout> (optional signed Cognitum Meta-Proxy sidecar)');
|
|
944
|
+
console.log(' npx metaharness proxy <install|status|start|stop|enable|disable|path|login|logout> (optional signed Cognitum Meta-Proxy sidecar)');
|
|
669
945
|
console.log(' npx metaharness --from-existing [./path]');
|
|
670
946
|
console.log(' npx metaharness --wizard (iter 100 — interactive picker)');
|
|
671
947
|
console.log(' npx metaharness --list (browse all templates)');
|
|
@@ -704,6 +980,7 @@ export async function main(argv) {
|
|
|
704
980
|
targetDir,
|
|
705
981
|
force: args.force,
|
|
706
982
|
darwin: args.darwin !== false, // ADR-147: deep darwin integration, default on
|
|
983
|
+
sessions: args.sessions === true, // ADR-246 §2.3: sessions scaffold, default off
|
|
707
984
|
generatorVersion: '0.1.0',
|
|
708
985
|
});
|
|
709
986
|
console.log(`Scaffolded ${args.name} into ${targetDir}`);
|
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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"}
|