技能 编程开发 进化基准测试套件管理

进化基准测试套件管理

v20260707
harness-bench
用于管理和验证固定评估基准测试套件的工具。它能从现有代码库生成确定性的测试集,将评估过程与原始代码库的测试脱钩,确保在进化流程中,无论代码发生何种变化,性能比较的标准始终一致。
获取技能
120 次下载
概览

Surfaces metaharness-darwin bench <create|verify> — the supporting verb for harness-evolve --bench. Use when you want evolution scored against a fixed corpus (independent of npm test) so champion fitness is comparable across commits or across forks of the same harness.

When to use

  • Setting up a new evolution pipeline for a repo whose npm test is flaky, slow, or undersized — scaffold a deterministic bench suite once, then evolve against it repeatedly.
  • CI: bench verify the checked-in suite on every PR that touches it (cheap; ~5s).
  • Forking a harness to a new domain: copy and edit the suite to retarget the evaluation without losing comparability to the parent.

Algorithm

Implementation: scripts/bench.mjs.

--op create

  1. Resolve --repo path; reject if missing.
  2. Shell to metaharness-darwin bench create <repo> [--out <suite.json>].
  3. Default output path: <repo>/.metaharness/bench/suite.json (chosen by upstream).
  4. Suite shape (per upstream): array of { input, expectedOutput, weight } tasks derived from existing test cases.

--op verify

  1. Resolve --suite path; reject if missing.
  2. Shell to metaharness-darwin bench verify <suite.json>.
  3. Exit 1 if any task malformed (upstream's signal).

Output shape

{
  "success": true,
  "data": {
    "op": "verify",
    "taskCount": 42,
    "wellFormed": true,
    "durationMs": 870
  }
}

Exit codes

Code Meaning
0 OK (or degraded — Darwin absent)
1 --op verify and suite malformed
2 Config error or upstream invocation failure

Graceful degradation

When @metaharness/darwin is absent, emits the standard {degraded: true, reason: 'metaharness-darwin-not-available'} payload and exits 0.

信息
Category 编程开发
Name harness-bench
版本 v20260707
大小 2.3KB
更新时间 2026-07-09
语言