Doc and help sentences that are false about the current tree #233

Open
opened 2026-10-06 01:49:48 +02:00 by clawbot · 0 comments
Collaborator

Each of these was checked against next at 0700901 (the last three at 81f83b2; line numbers have moved since). Each needs only its sentence changed to match the code. The code changes are tracked in other issues.

  • ARCHITECTURE.md:85 says chunks are "streamed to storage". In fact each blob is written in full to a temp file in the OS temp directory (internal/blob/packer.go:338-360) and uploaded only after it is finalized (:582-610). A backup therefore needs up to blob_size_limit of free space under $TMPDIR, and no document says so. The README's blob_size_limit entry and config.example.yml should state it.
  • docs/DATAMODEL.md:113 gives the snapshot ID format as hostname-YYYYMMDD-HHMMSSZ. The actual format is hostname_name_TIMESTAMP, with an RFC 3339 timestamp (internal/snapshot/snapshot.go:121-128).
  • docs/DATAMODEL.md:229-235 says incomplete snapshots are checked against the destination before deletion. PruneDatabase deletes every incomplete snapshot unconditionally (snapshot.go:1678-1687), which #177 accepted.
  • docs/DATAMODEL.md:220 says restore "Downloads required blobs based on manifest". Restore never reads the manifest; it uses the snapshot database.
  • ARCHITECTURE.md:57 and internal/types/types.go:159 say source_path is "for restore path stripping". Restore strips nothing.
  • config.example.yml:296 gives the index_path default as /var/lib/vaultik/index.sqlite. The default is in the platform data directory (internal/config/config.go:247).
  • internal/cli/snapshot.go:69 says the config is at /etc/vaultik/config.yml by default. The platform config directory is searched first (internal/cli/root.go:146-150), as the README's --config entry says.
  • internal/cli/prune.go:25 says snapshot remove runs the same cleanup. It leaves blobs alone and prints a hint instead.
  • The README section on the release workflow says the release uses actions/setup-go, which contradicts the README's own script/install-go entry. The workflow uses script/install-go.
  • Since #236, the script/release header comment and the README's goreleaser entry compare goreleaser handling to rules script/lint no longer has.
  • script/fmt-check says it has the same scope as script/fmt. It also checks testdata and dot-directories, which go fmt ./... skips.

Definition of done

  1. Every sentence above matches the code.
  2. make check passes.

Model: fable-5-1 (audit); opus-5-5 (issue)

Each of these was checked against `next` at `0700901` (the last three at `81f83b2`; line numbers have moved since). Each needs only its sentence changed to match the code. The code changes are tracked in other issues. - `ARCHITECTURE.md:85` says chunks are "streamed to storage". In fact each blob is written in full to a temp file in the OS temp directory (`internal/blob/packer.go:338-360`) and uploaded only after it is finalized (`:582-610`). A backup therefore needs up to `blob_size_limit` of free space under `$TMPDIR`, and no document says so. The README's `blob_size_limit` entry and `config.example.yml` should state it. - `docs/DATAMODEL.md:113` gives the snapshot ID format as `hostname-YYYYMMDD-HHMMSSZ`. The actual format is `hostname_name_TIMESTAMP`, with an RFC 3339 timestamp (`internal/snapshot/snapshot.go:121-128`). - `docs/DATAMODEL.md:229-235` says incomplete snapshots are checked against the destination before deletion. `PruneDatabase` deletes every incomplete snapshot unconditionally (`snapshot.go:1678-1687`), which https://git.eeqj.de/sneak/vaultik/issues/177 accepted. - `docs/DATAMODEL.md:220` says restore "Downloads required blobs based on manifest". Restore never reads the manifest; it uses the snapshot database. - `ARCHITECTURE.md:57` and `internal/types/types.go:159` say `source_path` is "for restore path stripping". Restore strips nothing. - `config.example.yml:296` gives the `index_path` default as `/var/lib/vaultik/index.sqlite`. The default is in the platform data directory (`internal/config/config.go:247`). - `internal/cli/snapshot.go:69` says the config is at `/etc/vaultik/config.yml` by default. The platform config directory is searched first (`internal/cli/root.go:146-150`), as the README's `--config` entry says. - `internal/cli/prune.go:25` says `snapshot remove` runs the same cleanup. It leaves blobs alone and prints a hint instead. - The README section on the release workflow says the release uses `actions/setup-go`, which contradicts the README's own `script/install-go` entry. The workflow uses `script/install-go`. - Since https://git.eeqj.de/sneak/vaultik/pulls/236, the `script/release` header comment and the README's `goreleaser` entry compare goreleaser handling to rules `script/lint` no longer has. - `script/fmt-check` says it has the same scope as `script/fmt`. It also checks `testdata` and dot-directories, which `go fmt ./...` skips. ## Definition of done 1. Every sentence above matches the code. 2. `make check` passes. Model: fable-5-1 (audit); opus-5-5 (issue)
clawbot self-assigned this 2026-10-06 01:49:48 +02:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: sneak/vaultik#233