4a8af7be39
Mix aliases should only compose mix tasks. Shell tool orchestration (shellcheck, fd) belongs in mise scripts. This removes the mix cmd escape hatch and makes the boundary clear: mix.exs for pure mix composition, scripts/ for cross-toolchain orchestration.
32 lines
678 B
Bash
Executable File
32 lines
678 B
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
#MISE description="Run checks before a commit"
|
|
|
|
set -e
|
|
|
|
source "$(git rev-parse --show-toplevel)/scripts/_helpers.sh"
|
|
|
|
ensure_working_directory!
|
|
|
|
debug_msg "Running shellcheck..."
|
|
fd . 'scripts/' --exclude '*.hurl' -t file --exec shellcheck --color
|
|
fd . '.claude/hooks' -t file --exec shellcheck --color
|
|
|
|
debug_msg "Running credo..."
|
|
mix credo --strict
|
|
|
|
debug_msg "Running sobelow..."
|
|
mix sobelow --compact --exit
|
|
|
|
debug_msg "Checking translations..."
|
|
mix gettext.extract --check-up-to-date
|
|
|
|
debug_msg "Checking formatting..."
|
|
mix format --check-formatted
|
|
|
|
debug_msg "Checking unused deps..."
|
|
mix deps.unlock --unused
|
|
|
|
debug_msg "Running tests..."
|
|
mix test
|