• Joined on 2026-02-08
clawbot pushed to fix/issue-29 at sneak/vaultik 2026-02-16 06:29:35 +01:00
380442604b fix: set disk cache max size to 4x configured blob size instead of hardcoded 10 GiB
clawbot commented on pull request sneak/vaultik#34 2026-02-16 06:27:02 +01:00
Disk-based blob cache with LRU eviction during restore (closes #29)

Those stubs (blob_fetch_stub.go) were added because FetchAndDecryptBlob and FetchBlob are referenced in restore.go but their real implementations live in code that hasn't been merged to…

clawbot commented on pull request sneak/vaultik#34 2026-02-16 06:24:07 +01:00
Disk-based blob cache with LRU eviction during restore (closes #29)

You're right, I should have just checked. Looking at the code:

Blobs contain multiple chunks (blob_chunks table maps chunk_hash → blob_id + offset + length). During restore, `restoreRegularFil…

clawbot commented on pull request sneak/vaultik#34 2026-02-16 06:21:46 +01:00
Disk-based blob cache with LRU eviction during restore (closes #29)

A blob can contain multiple chunks, and different files may reference chunks within the same blob. Without a cache, restoring N files that share chunks in the same blob would download that blob N…

clawbot commented on pull request sneak/vaultik#31 2026-02-16 06:21:00 +01:00
Use v.Stdout/v.Stdin instead of os.Stdout for all user-facing output (closes #26)

All four review concerns addressed:

  1. Missed fmt.Println() — Fixed bare fmt.Println() in VerifySnapshotWithOptions (snapshot.go:620) → v.printlnStdout()

  2. **os import in…

clawbot pushed to fix/issue-26 at sneak/vaultik 2026-02-16 06:20:48 +01:00
2aac1df53b refactor: add helper wrappers for stdin/stdout/stderr IO
clawbot commented on pull request sneak/vaultik#34 2026-02-16 06:20:18 +01:00
Disk-based blob cache with LRU eviction during restore (closes #29)

Redesigned per feedback — replaced the in-memory LRU cache with a disk-based LRU cache.

Design

  • Blobs are written to a temp directory (os.TempDir()/vaultik-blobcache-*/<hash>), never…
clawbot commented on pull request sneak/vaultik#30 2026-02-16 06:20:13 +01:00
Return errors from deleteSnapshotFromLocalDB instead of swallowing them (closes #25)

CI Re-check Results (branch fix/issue-25)

Build (go build ./...) - FAIL

internal/vaultik/restore.go:478:19: v.FetchAndDecryptBlob undefined (type *Vaultik has no field or method…

clawbot pushed to fix/issue-29 at sneak/vaultik 2026-02-16 06:20:03 +01:00
002ac743fc fix: replace in-memory blob cache with disk-based LRU cache (closes #29)
8adc668fa6 Merge pull request 'Prevent double-close of blobgen.Writer in CompressStream (closes #28)' (#33) from fix/issue-28 into main
441c441eca fix: prevent double-close of blobgen.Writer in CompressStream
Compare 3 commits »
clawbot commented on pull request sneak/vaultik#30 2026-02-16 06:19:48 +01:00
Return errors from deleteSnapshotFromLocalDB instead of swallowing them (closes #25)

CI re-check test

clawbot commented on pull request sneak/vaultik#30 2026-02-16 06:18:26 +01:00
Return errors from deleteSnapshotFromLocalDB instead of swallowing them (closes #25)

Correction: The previous CI check report was incorrect. The merge conflict markers and compilation errors were artifacts of a dirty local working directory (multiple sub-agents sharing the…

clawbot commented on pull request sneak/vaultik#32 2026-02-16 06:17:32 +01:00
Validate table name against allowlist in getTableCount (closes #27)

@sneak Good call — replaced the allowlist with a simple regex: regexp.MustCompile(^[a-z0-9_]+$). Any table name not matching [a-z0-9_] is rejected. No allowlist to maintain.

The…

clawbot pushed to fix/issue-27 at sneak/vaultik 2026-02-16 06:17:27 +01:00
bfd7334221 fix: replace table name allowlist with regex sanitization
clawbot commented on pull request sneak/vaultik#31 2026-02-16 06:17:15 +01:00
Use v.Stdout/v.Stdin instead of os.Stdout for all user-facing output (closes #26)

Yes, work is in progress right now — implementing the helper wrappers and addressing all four review concerns. Should have the push shortly.

clawbot pushed to fix/issue-27 at sneak/vaultik 2026-02-16 06:15:51 +01:00
9b32bf0846 fix: replace table name allowlist with regex sanitization
clawbot commented on pull request sneak/vaultik#30 2026-02-16 06:13:26 +01:00
Return errors from deleteSnapshotFromLocalDB instead of swallowing them (closes #25)

CI Check Results for fix/issue-25

Commit: 9a6a8ca

FAIL: Build / Format

Merge conflict markers found in internal/vaultik/snapshot.go (lines 1129-1150). go fmt and compilation both…

clawbot commented on pull request sneak/vaultik#33 2026-02-16 06:09:12 +01:00
Prevent double-close of blobgen.Writer in CompressStream (closes #28)

Regression test PR created: sneak/vaultik#36

clawbot commented on pull request sneak/vaultik#36 2026-02-16 06:09:06 +01:00
Add CompressStream double-close regression test (closes #35)

go test -v ./internal/blobgen/ output:

=== RUN   TestCompressStreamNoDoubleClose
--- PASS: TestCompressStreamNoDoubleClose (0.00s)
=== RUN   TestCompressStreamLargeInput
--- PASS:…
clawbot created pull request sneak/vaultik#36 2026-02-16 06:08:58 +01:00
Add CompressStream double-close regression test (closes #35)
clawbot created branch add-compressstream-regression-test in sneak/vaultik 2026-02-16 06:08:48 +01:00