frork-cli: move the binary entrypoint under src/bin/frork
Assisted-by: Claude Opus 5.5 via Claude Code
diff --git a/.cargo/mutants.toml b/.cargo/mutants.toml
index b36acaf..1622438 100644
--- a/.cargo/mutants.toml
+++ b/.cargo/mutants.toml
@@ -26,4 +26,4 @@ exclude_re = [
# it is excluded here the same way bin/coverage ignores it. Anything with a
# decision in it belongs in a library module instead; report.rs holds the
# wording and the prompt parsing for exactly this reason.
-exclude_globs = ["frork-cli/src/main.rs"]
+exclude_globs = ["frork-cli/src/bin/**"]
diff --git a/AGENTS.md b/AGENTS.md
index 1cb9c78..e956e4a 100644
--- a/AGENTS.md
+++ b/AGENTS.md
@@ -30,7 +30,8 @@ frork-cli/
build.rs # Sets FRORK_VERSION
fennel-1.6.0.lua # Vendored Fennel compiler
src/
- main.rs # Entrypoint — clap CLI and status rendering only
+ bin/frork/
+ main.rs # Entrypoint — clap CLI and status rendering only
lib.rs # Library root — re-exports modules
assertions.rs # Assertion types and the AssertionType trait
error.rs # thiserror + miette::Diagnostic enum (FrorkError)
diff --git a/bin/coverage b/bin/coverage
index c034cf4..2e3a392 100755
--- a/bin/coverage
+++ b/bin/coverage
@@ -33,7 +33,7 @@ main() {
--output-types covdir \
--ignore-not-existing \
--keep-only 'frork-*/src/**' \
- --ignore 'frork-*/src/main.rs' \
+ --ignore 'frork-*/src/bin/**' \
--excl-line 'cov-excl-line|unreachable!|todo!' \
--excl-start 'cov-excl-start' \
--excl-stop 'cov-excl-stop')
diff --git a/frork-cli/Cargo.toml b/frork-cli/Cargo.toml
index 12ca939..92054ad 100644
--- a/frork-cli/Cargo.toml
+++ b/frork-cli/Cargo.toml
@@ -5,7 +5,7 @@ edition = "2024"
[[bin]]
name = "frork"
-path = "src/main.rs"
+path = "src/bin/frork/main.rs"
[dependencies]
frork-lib = { path = "../frork-lib" }
diff --git a/frork-cli/src/main.rs b/frork-cli/src/bin/frork/main.rs
similarity index 100%
rename from frork-cli/src/main.rs
rename to frork-cli/src/bin/frork/main.rs