rust: drop the COVERAGE_THRESHOLD override
Assisted-by: Claude Opus 5.5 via Claude Code
diff --git a/ai/skills/rust/coverage.sh b/ai/skills/rust/coverage.sh
index 631a3220..001796cc 100755
--- a/ai/skills/rust/coverage.sh
+++ b/ai/skills/rust/coverage.sh
@@ -1,9 +1,8 @@
#!/usr/bin/env bash
-# Measures library line coverage with grcov and fails below the
-# threshold. Uses a separate CARGO_TARGET_DIR so instrumented and
-# normal build artifacts never mix — mixing causes phantom uncovered
-# lines. Override the gate with COVERAGE_THRESHOLD (defaults to 100).
+# Measures library line coverage with grcov and fails below 100%.
+# Uses a separate CARGO_TARGET_DIR so instrumented and normal build
+# artifacts never mix — mixing causes phantom uncovered lines.
#
# Scaffolded into a project as bin/coverage; the `coverage` justfile
# recipe runs it. See the rust skill's coverage.md and scaffolding.md.
@@ -13,7 +12,7 @@ if [[ "${TRACE-0}" == "1" ]]; then
set -o xtrace
fi
-readonly THRESHOLD="${COVERAGE_THRESHOLD:-100}"
+readonly THRESHOLD=100
readonly TARGET_DIR="target/coverage"
main() {
diff --git a/ai/skills/rust/scaffolding.md b/ai/skills/rust/scaffolding.md
index 3f057135..018d71b2 100644
--- a/ai/skills/rust/scaffolding.md
+++ b/ai/skills/rust/scaffolding.md
@@ -164,8 +164,7 @@ give it the executable bit (`chmod +x bin/coverage`). Read
phantom uncovered lines with grcov.
- 100% coverage on library code only — `--keep-only 'src/**'
--ignore 'src/bin/**'`. Binary code is tested via integration tests
- but not measured. Lower the gate for a project with
- `COVERAGE_THRESHOLD=90 just coverage`.
+ but not measured.
- `covdir` output — machine-readable JSON, parsed with `jq` for a
clean summary. Exclusion markers (`cov-excl-line`, etc.) are
documented in `coverage.md`.