All checks were successful
check / check (push) Successful in 32s
- Replace .golangci.yml with the canonical v2-schema config: linter settings move under linters.settings (the previous top-level linters-settings block was ignored by golangci-lint v2, so the configured thresholds were not applied) and the obsolete issues.exclude-use-default key is dropped. - Bump golangci-lint from the v2.10.1-era commit pin to @v2.12.2 in Dockerfile and script/bootstrap; refresh pin date comments. - Wrap long lines in attrsum.go to satisfy the now-effective lll limit of 88 columns (15 findings); move one nolint:gosec directive to its own line. - Record the change in TODO.md Completed Steps.
2.5 KiB
2.5 KiB
Workflow
- branch (from
main) - do the work in Next Step
- move Next Step to the top of Completed Steps
- move the top item of Future Steps into Next Step
- commit (
TODO.mdchanges in the same commit as the work) - merge to
mainif the branch is not protected, otherwise open a PR - push
Status
1.0+
Tagged 1.0.0 (2025-05-08). Substantial correctness fixes and features have landed since the tag.
Next Step
Policy scaffold commit: add LICENSE, REPO_POLICIES.md, .editorconfig, .golangci.yml, and a comprehensive .gitignore (currently only the attrsum binary), and extend the Makefile (only test/build/clean/try today) with lint, fmt, fmt-check, check, and hooks targets. Fix the try target to use a temp fixture instead of the hardcoded $(HOME)/Documents/_SYSADMIN/cyberdyne path.
Completed Steps
- 2026-08-07: updated golangci-lint to v2.12.2: canonical
.golangci.yml(settings moved underlinters.settingsso the configured thresholds actually apply), version pins bumped inDockerfileandscript/bootstrap, and long lines wrapped to satisfy the now-effectivellllimit of 88 - 2026-02-02: correctness pass: track actual bytes read instead of stale file size, atomic failure tracking in ProcessCheck, detect file modification during checksum (TOCTOU), propagate countFiles errors, single progress bar across paths, error on empty stdin, dead code removal
- 2026-02-01: added quiet mode, progress bar, summary report, and stdin path input; multiple file/directory arguments for all commands
- 2025-07-12: README update
- 2025-05-08: initial working tool with passing tests, skips non-regular files, Makefile, README; tagged 1.0.0
Future Steps
- Add Dockerfile and .dockerignore that run make check, images pinned by sha256, plus a Makefile docker target
- Add .gitea/workflows/check.yml
- Restructure README.md into the standard sections: Description, Getting Started, Rationale, Design, TODO, License, Author (Getting Started, Why?, TODO, License exist; Description, Design, Author are missing)
- Tag a patch release to ship the 2026-02-02 correctness fixes
- Dry-run mode (--dry-run, -n): show what would be done without making changes (from README TODO)
- JSON output (--json) for scripting and integration (from README TODO)
- Parallel processing (-j N) with multiple goroutines for faster checksumming on large trees (from README TODO)
- Formalize and document exit codes for scripting (from README TODO)