Use when adding a language to BAKED (a new entry of SUPPORTED_LANGUAGES) or filling the `none` rows of a supported one (gate detector, test runner, formatter, reviewer, the per-language issues
中文简介正在准备中。当前显示原文说明。
Use when adding, changing or graduating a task in bench/suite/ (the nightly multi-language mini-suite), when adding a supported language or toolchain, or when a bench round stop can be reproduced by a small task.
中文简介正在准备中。当前显示原文说明。
实测评分 未实测
查看安装方法安装前可以查看交给 AI 代理的指令内容。
bench/suite/ holds small tasks that run nightly through baked workflow quick on a cheap model, k times each, so a regression in one language shows up the next morning instead of in the one round that happens to use that language. The level-5 bench round stays the capability measurement; the suite is the regression net under it.
Each task is a directory bench/suite/tasks/<id>/. Name it <language>-<toolchain>-<what> (for example java-maven-readme), in lowercase words joined by hyphens.
task.json:
id: the directory name.language: the family the per-language table groups by: typescript, javascript, python, go, rust, java, kotlin, csharp, php, lua, ruby, dart, scala, swift, shell, c, cpp, sql, powershell or r.toolchain: for example bun, npm, pytest, cargo, maven, gradle, dotnet, rspec, minitest, busted, bats, dart, sbt, swiftpm, cmake, make, sqlfluff, pester or testthat.requires: the executables that must be on PATH. Without them the runner reports the task as skipped and does not fail it.allowedPaths: the globs the plan may write: the source and test folders, README.md and the stack's config files (package.json, pyproject.toml, Cargo.toml, pom.xml, the Gradle scripts, go.mod, Makefile), as the bench loop's auto approval allows. The runner approves a plan that stays inside them; any other stop counts as an intervention.checks: the run's own gates, in the shape of workflows.policy.checks (id, executable, args, an optional fix). The runner adds cwd, required, scope, envNames and writes.origin: #N when the task reproduces a past stop.policy: optional opt-in policy fields the run gets on top of the runner's, for a task that measures an opt-in host behavior. Only the fields in POLICY_FIELDS (bench/suite/lib.ts) are allowed: today chainRewrite: "on", chainProbe: "on" (the sibling probe, #1969, which needs chainRewrite) defectClasses: "on" (the cross-run defect class list, #1970) edgeProbe: "on" (the edge-input probe of source tasks, #1808) and misquoteFix: "on" (the host's misquote fix and its bounded continuation, #2047/#2058); ts-bun-emphasis sets chainRewrite because its brief (nested emphasis delimiters) invites a defect class with many members (#1981), and ts-bun-query-depth sets misquoteFix because its rows (ten and eleven [0] segments) invite a one-literal misquote (#2058).prompt.md: the brief BAKED gets. It names the exact files, functions and behavior the hidden check tests, so a correct implementation of the brief passes. It never mentions the hidden check.seed/: the starting repository, with the build file, an empty module or .gitkeep files and a .gitignore. The repository's own bun test ignores bench/suite/tasks/ (bunfig.toml), but keep hidden JavaScript and TypeScript tests named check.ts or check.mjs and let check.sh copy them to a *.test.* name.check.sh: the hidden acceptance check. It runs with the finished workspace as its working directory, copies its tests from hidden/ into the workspace and exits 0 when the task passed.hidden/: the tests check.sh uses. Write them against the behavior in the prompt, not against one implementation.solution/: a reference solution, copied over the seed.Keep a task to about 2 planned tasks and 12 files, and keep it to about 300k tokens on quick. A task that needs more belongs in the bench round.
bun bench/suite/run.ts --self-check --task <id>. The hidden check must fail on the seed and pass on the seed with solution/ copied over. A toolchain this machine lacks is reported as skip. Say so in the pull request, and check the task on a machine that has the toolchain before it graduates.bun test tests/bench-suite.test.ts. It validates every task.json and the file layout, and checks that each language has at least two tasks.bun bench/suite/run.ts --task <id> --k 1. A first run that fails because of the task itself (an unclear prompt, a check stricter than the prompt) gets the task fixed, not an issue against BAKED.origin set to the issue it was filed as. Write the task so that it fails without the fix.mini-suite layer of the loop's escape analysis (bench/loop/AGENTS.md). A fix for a finding whose escapedLayer is mini-suite adds a task here.bun bench/suite/run.ts --per-language --k 2 # one task per language, rotating by day
bun bench/suite/run.ts --k 3 --model claude-code/haiku # every task, k = 3
bun bench/suite/run.ts --task py-roman --k 1 # one task
The runner writes results.jsonl, summary.json and table.md to --out (default bench-suite-results/<date>/) and prints the pass^k table. A failed trial keeps its workspace and prints its path. --previous <summary.json> marks the tasks that dropped from pass^k = 1. --history <nights.jsonl> appends the night and lists graduation candidates.
allowedPaths, a budget stop, a block or a failure. Plan approvals inside allowedPaths are planned and do not count.bench/suite/regression.json in a pull request. Regression tasks must stay at 100%. A regression task that fails on two nights in a row because the task itself has become flaky goes back to capability in a pull request that says why. A task that BAKED keeps failing stays in capability, and the issue for it stays open.还没有评价。欢迎分享你的使用感受。
无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。
还没有评论。来写第一条吧。
Use when adding a language to BAKED (a new entry of SUPPORTED_LANGUAGES) or filling the `none` rows of a supported one (gate detector, test runner, formatter, reviewer, the per-language issues
中文简介正在准备中。当前显示原文说明。
Use every time you open or update a GitHub issue for a BAKED bug or finding. Finds the root cause, sweeps the code for every other place with the same or a neighbouring defect, including every supported language when the bug is bound to one, and files issues that cover all of them.
中文简介正在准备中。当前显示原文说明。
Use when a change adds or changes a host decision (a stop, park, decline, refusal, retry, deadline or cap growth), when the bench loop exports a round's traces, or when replay-corpus.test fails. Keeps the bench-trace replay corpus complete and current.
中文简介正在准备中。当前显示原文说明。