Commit Graph
4 Commits
Author SHA1 Message Date
sneak fc0b42294d Test that expired negative cache rows are deleted in batches
One statement deletes one batch and no more, CleanExpired removes the
rest, and it deletes nothing once its context has ended.

Model: opus-5-5
2026-10-15 04:43:01 +00:00
sneak c1c51c4e15 Test that the eviction loop removes expired negative cache rows
A failed fetch stored in the negative cache must be removed by the
eviction loop once it has expired, although its URL is never requested
again, with the disk cache enabled and disabled; a row that has not
expired stays. Fails until the fix for
#244 lands.

Model: opus-5-5
2026-10-15 04:43:01 +00:00
clawbot ca512fdb4f Remove the unused cache lifetime setting (closes #69)
check / check (push) Canceled after 0s
CacheConfig.CacheTTL was set to DefaultCacheTTL (24 hours) and never
read, so cached images never expired. Remove the field, the constant
and the line that set it. Cached source and transformed images stay
until eviction removes them to keep the cache within cache_max_bytes.

A new test caches a source and a transformed image, sets every time
pixa stores for them two days back (database rows, metadata files and
file times), and checks that both are still served from the cache
without a new upstream fetch.

Existing tests lose only the CacheTTL line of their cache config.

Model: opus-5-5
2026-10-13 07:58:55 +02:00
clawbot 04b5db6fbf next -> main (1.0.0 milestone) (#105)
check / check (push) Successful in 5s
Accumulating milestone branch. One squashed commit per closed issue; `next` is kept green and mergeable to `main` at any time without notice.

Landed so far:

- `chore: update golangci-lint to v2.12.2 with canonical config` (#54) — canonical v2-schema `.golangci.yml`, pins bumped in `Dockerfile` and `script/bootstrap`, tree at `0 issues.`. Three behaviour deltas are recorded in that PR's body: `Cache.StoreVariant` takes a context, `MetadataStorage.Store` no longer leaks temp files on failure, and the `signing_key` too-short error text gained a `value too short:` prefix.

Sequencing for the milestone is tracked in #103.

Reviewed-on: #105
Co-authored-by: clawbot <clawbot@noreply.example.org>
2026-09-21 09:31:54 +02:00