check / check (push) Waiting to run
cmd/bsdaily/main.go now only passes Version to cli.Main and exits with the status it returns, as REPO_POLICIES.md requires of cmd/. The cobra command, the flag rules and the date parsing moved unchanged into internal/cli, so flags, help text, error messages, exit status and the first log line stay as they were. The fallback to dev for an empty version moved with them into cli.Main. parseTargetDates is exported as ParseTargetDates so that a table test outside the package can reach it; the test never touches the filesystem or runs the extraction. README describes the new layout and TODO.md records the step. Model: opus-5-5 Co-authored-by: clawbot <sneak+clawbot@sneak.cloud>
2.6 KiB
2.6 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
pre-1.0
Next Step
Expand the internal/bsdaily tests beyond the compilation smoke test: unit
tests for the extraction, verification, and atomic-publish paths.
Completed Steps
- 2026-10-06: Moved the command line (flags, the rules for combining them, date
parsing) from
cmd/bsdailyintointernal/cli, with unit tests for the flag rules and the dates;cmd/bsdaily/main.gois now a single call into it (#8). - 2026-10-06: A plain
docker build .and a hostmakebuild stamp the git tag or short commit into the binary, whichbsdailylogs on the first line of every run and prints with--version(#4). - 2026-10-06: Added the canonical
.golangci.yml, moved the lint phase to golangci-lint v2.14.0, and fixed the code to pass it (#6). - 2026-10-06: Formatted Markdown with prettier:
script/fmtwrites andscript/fmt-checkchecks every Markdown file; prettier pinned inpackage.jsonandyarn.lock, installed byscript/bootstrap, which installs node and yarn at pinned versions when absent and otherwise uses the ones already installed; existing Markdown reformatted. - 2026-10-05: Brought the repo up to the standard layout: canonical
.gitignore,.dockerignoreand.editorconfig;lintandtestphases in theDockerfile, built byscript/lintandscript/test; canonicalscript/cibuild,script/dockerand CI workflow; no linter installed on the host; re-vendoredREPO_POLICIES.md. - 2026-07-07 Adopted scripts-to-rule-them-all:
script/entrypoints, Makefile shims, README Entrypoints section - 2026-06-28: Fixed errcheck lint failures; added compilation smoke test; tidied go.mod.
- 2026-06-28: Added repo scaffolding: README, LICENSE, Makefile, Dockerfile, REPO_POLICIES.md, and Gitea CI.
- 2026-02-12: Fixed SQLite database locking by removing parallel processing; fixed Linux build via golang.org/x/sys/unix Fadvise.
- 2026-02-12: Optimized file copy for large databases; moved temp directory to NVMe scratch storage.
- 2026-02-11: Added date range support.
- 2026-02-09: Initial implementation: single-day extraction, specific-date targeting, faster pruning of throwaway database copies.
Future Steps
- Cut a first SemVer release once compliance and test coverage land.