Measure Wado's performance or the size of the Wasm it generates, and refresh the benchmark/ and wasm-size/ README files. Use for any benchmarking or size-measurement request, whichever benchmark it names.
日本語の概要は準備中です。原文の説明を表示しています。
Investigate and improve code coverage for the wado-compiler crate. Use for any question about what the tests do and do not reach, dead code included.
日本語の概要は準備中です。原文の説明を表示しています。
実行スコア 未検証
インストール方法を見るインストールする前に、エージェントに与えられる指示の中身を確認できます。
Use cargo-llvm-cov to generate line-level coverage. The tool must be installed via cargo install cargo-llvm-cov.
Each cargo llvm-cov that is not report runs the whole test suite again, so
run the tests once and read every report from that run:
cargo llvm-cov clean --workspace # a stale profile would merge into this run
cargo llvm-cov --no-report -p wado-compiler -p wado-compiler-tests
cargo llvm-cov report --html # target/llvm-cov/html/
cargo llvm-cov report --json --output-path scratchpad/cov.json
jq '.data[0].totals.lines' scratchpad/cov.json # overall
Sort files by uncovered line count to find the biggest improvement opportunities:
jq -r '.data[0].files[] | "\(.summary.lines.count - .summary.lines.covered)\t\(.summary.lines.percent | round)%\t\(.filename)"' \
scratchpad/cov.json | sort -rn | head -30
Focus on files with:
For each low-coverage file, classify gaps into categories:
| Category | Action | Coverage Impact |
|---|---|---|
| Dead code | Delete it | Immediate improvement, no test needed |
| Untested language features | Add e2e test fixtures | Medium effort, high impact |
| Error handling paths | Add compile_error test fixtures | Low effort |
| Optimizer-specific paths | Add wir_expect/wir_not_expect tests | Medium effort |
| Edge cases in codegen | Add targeted e2e tests | Varies |
To see exactly which lines are uncovered in a file:
# lcov from the same run
cargo llvm-cov report --lcov --output-path scratchpad/lcov.info
# Or read the HTML report from Step 1:
# target/llvm-cov/html/src/synthesis/inspect.rs.html etc.
To find dead code (functions never called):
# Check if a function has any callers
rg 'function_name' wado-compiler/src/ --type rust
E2E tests are .wado files in wado-compiler/tests/fixtures/. Each file has a __DATA__ section with JSON expectations.
Guidelines for test files:
closure_nested.wado not codegen_closure.wado)closure_*, global_*, match_*)touch wado-compiler/tests/e2e.rs to trigger rediscoveryTest patterns that maximize coverage:
test "..." { ... } with {"test": {}} — exercises codegen without needing stdoutcompile_error tests — exercise error reporting pathswir_expect:O2 / wir_not_expect:O2 — exercise optimizer paths{expr:?} — exercise inspect/display synthesisAfter changes, run Step 1 again and compare
jq '.data[0].totals.lines.percent' scratchpad/cov.json with the earlier total.
synthesis/inspect.rs (~1400 lines) has dead code for type variants that never appear in practice (e.g., Never type inspect). Deleting dead code directly improves coverage.codegen.rs and emit.rs are the largest files but have relatively high coverage. Incremental improvements here require many targeted tests.datatest_mini which discovers .wado fixtures at compile time — new files need touch wado-compiler/tests/e2e.rs.wado test runs test-world fixtures; wado run runs CLI-world fixtures. Choose the right world for your test.WADO_FULL_TEST=1.まだレビューはありません。使ってみた感想をお寄せください。
ログインなしで書き込めます。使ってみた感想、質問、動かなかった環境などを気軽にどうぞ。
まだコメントはありません。最初のコメントを書いてみませんか。
Measure Wado's performance or the size of the Wasm it generates, and refresh the benchmark/ and wasm-size/ README files. Use for any benchmarking or size-measurement request, whichever benchmark it names.
日本語の概要は準備中です。原文の説明を表示しています。
Measure how long GitHub Actions jobs and steps took across past runs, and find the pull request that made CI slower. Use for any question about CI duration, a slow job, or when CI got slow.
日本語の概要は準備中です。原文の説明を表示しています。
How to answer code review feedback — a human reviewer, CodeRabbit, or any review bot. Verify the findings, report the classes they are instances of to the user before fixing, then fix the class rather than the sites named. Put design decisions to the user, then run /distill. Invoke when responding to review comments on a pull request, or to the findings of a /code-review run.
日本語の概要は準備中です。原文の説明を表示しています。
Review the branch with /code-review at high, then answer the findings with /code-review-response.
日本語の概要は準備中です。原文の説明を表示しています。
Use rust-gdb to inspect variables and step through code without modifying it. Prefer it over print debugging for any investigation into what the compiler is actually doing (lldb is unavailable on Claude Code Web).
日本語の概要は準備中です。原文の説明を表示しています。
Cut the branch down to what the code cannot say: reuse what exists, remove duplication, dead code, and wasted work, turn invariants into asserts, and delete the comments the code already speaks. Run it after answering review feedback too — a fix written to satisfy a reviewer is the least distilled code on the branch.
日本語の概要は準備中です。原文の説明を表示しています。