bring the repo up to repo standards (closes #1)

Adopt the standard tooling from sneak/prompts: the Makefile and script/
entrypoints, lint and test stages in one Dockerfile, the lint config, the
CI workflow and the formatter settings. make fmt also formats Go, with a
pinned Go from script/bootstrap. The module path becomes
sneak.berlin/go/dcf.

Fix the lint findings in pkg/dcf. DCFStore becomes Store and DCFObject
becomes Object. Three behaviours change. An error listing mount points is
now returned, where a typo used to drop it. Store.String() prints Store{
instead of DCFStore{, and a negative total as 0 B instead of a huge size.

Replace the placeholder test with real tests. Move the README into the
required sections. make build compiles the library; it pointed at a
command that does not exist.

Model: opus-5-5
Co-authored-by: clawbot <sneak+clawbot@sneak.cloud>
This commit was merged in pull request #8.
This commit is contained in:
clawbot authored and clawbot committed 2026-11-02 20:30:17 +01:00
1 parent f585e8fa34
commit 623bfe9a43
32 files changed
+1828 -109

No files matched your search

+29 -8
View File
@@ -1,14 +1,35 @@
default: test
.PHONY: bootstrap setup test lint fmt fmt-check check build docker hooks
# Makefile targets are thin shims; the implementations live in script/
# per the scripts-to-rule-them-all pattern (see the Entrypoints section
# of README.md).
bootstrap:
@script/bootstrap
setup:
@script/setup
test:
go test -v ./...
@script/test
run: build
DEBUG=1 ./dcfinfo
lint:
@script/lint
fmt:
@script/fmt
fmt-check:
@script/fmt-check
check:
@script/check
build:
go env -w CGO_ENABLED="0"
cd cmd/dcfinfo && go build -o ../../dcfinfo
@script/build
clean:
rm -f dcfinfo
docker:
@script/docker
hooks:
@script/install-precommit