check / check (push) Failing after 0s
Add the standard scaffold and bring the tree to a clean lint under the vendored `default: all` config: `script/` Scripts-to-Rule-Them-All entrypoints with the `Makefile` as thin shims; a `Dockerfile` whose `lint` and `test` phases gate the build; `.gitea/workflows/` CI running `script/cibuild`; `REPO_POLICIES.md`, `.editorconfig`, `.dockerignore`, `LICENSE` (WTFPL), `TODO.md`, `.gitignore`. The `.golangci.yml` is byte-identical to the canonical copy in the `prompts` repo (`https://git.eeqj.de/sneak/prompts/raw/branch/main/.golangci.yml`). The 211 lint findings were fixed, not suppressed: package globals became functions/fields/a command constructor, magic numbers became named constants, `ctx` threads into the probes, loop functions were split to cut complexity. Behavior is unchanged; the log file mode stays `0644`. Four `//nolint:gosec` remain — G204 on the fixed-argv subprocess calls, G304 on the operator-chosen log file — matching the reference repos. `make check` is green (lint and tests run in Docker). Model: opus-4-8
22 lines
517 B
Bash
Executable File
22 lines
517 B
Bash
Executable File
#!/bin/sh
|
|
# script/precommit: run by the git pre-commit hook; fails the commit if
|
|
# checks fail. Our extension to scripts-to-rule-them-all. Go repo extra:
|
|
# `go mod tidy` must not change go.mod/go.sum.
|
|
set -eu
|
|
|
|
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd -P)"
|
|
ROOT="$(cd "$SCRIPT_DIR/.." && pwd -P)"
|
|
|
|
main() {
|
|
cd "$ROOT"
|
|
go mod tidy
|
|
git diff --exit-code -- go.mod go.sum || {
|
|
echo "precommit: go mod tidy changed go.mod/go.sum;" \
|
|
"stage the changes and retry" >&2
|
|
exit 1
|
|
}
|
|
"$SCRIPT_DIR/check"
|
|
}
|
|
|
|
main "$@"
|