name: compiler-commit
description: Use when you want to verify compiler changes and commit with the correct convention. Runs tests, lint, and format, then commits with the [compiler] or [rust-compiler] prefix.
Compiler Commit
Verify and commit compiler changes with the correct convention.
Arguments:
- $ARGUMENTS: Commit title (required). Optionally a test pattern after -- (e.g., Fix aliasing bug -- aliasing)
Instructions
Run
/compiler-verifyfirst (with test pattern if provided after--). Stop on any failure.Run
/compiler-reviewon the uncommitted changes. Report the findings to the user. If any issues are found, stop and do NOT commit — let the user decide how to proceed.Detect commit prefix from changed files:
- If any files in
compiler/crates/changed: use[rust-compiler] - Otherwise: use
[compiler]
- If any files in
Update orchestrator log: If
compiler/docs/rust-port/rust-port-orchestrator-log.mdexists and the commit includes Rust changes (compiler/crates/):
Run test-rust-port with --json to get machine-readable results:
bash
bash compiler/scripts/test-rust-port.sh --json 2>/dev/null
This outputs a JSON object with fields: pass, autoDetected, total, passed, failed, frontier, perPass, failures.
Then update the orchestrator log:
- Update the # Status section with the results (use the frontier, per-pass counts, and pass/fail totals)
- Add a ## YYYYMMDD-HHMMSS log entry noting the commit and what changed
Stage files — stage only the relevant changed files by name (including the orchestrator log if updated in step 4). Do NOT use
git add -Aorgit add ..Compose commit message: ``` [prefix] </p></li> </ol> <p><summary of what changed and why, 1-3 sentences> ``` The title comes from $ARGUMENTS. Write the summary yourself based on the actual changes.</p> <ol> <li><strong>Commit</strong> using a heredoc for the message: ```bash git commit -m "$(cat <<'EOF' [rust-compiler] Title here</li> </ol> <p>Summary here. EOF )" ```</p> <ol> <li><strong>Do NOT push</strong> unless the user explicitly asks.</li> </ol> <h2 id="examples" class="heading-anchored"><a class="heading-anchor" href="#examples" aria-hidden="true">#</a>Examples</h2> <ul> <li><code>/compiler-commit Fix aliasing bug in optional chains</code> — runs full verify, commits as <code>[compiler] Fix aliasing bug in optional chains</code></li> <li><code>/compiler-commit Implement scope tree types -- round_trip</code> — runs verify with <code>-p round_trip</code>, commits as <code>[rust-compiler] Implement scope tree types</code></li> </ul>