From b684fa5113239e595ecd1ccbcbd267ebbed9e62d Mon Sep 17 00:00:00 2001 From: Paul Buetow Date: Mon, 15 Jun 2026 18:16:47 +0300 Subject: Persist the EXIF cache in a volatile ./cache dir parallel to ./dist The per-photo `identify -verbose` cache lived in $DIST_DIR/.shuriken-cache, which is inside the throwaway staging dir and the published dist: a fresh/cleared dist lost it (forcing a full, slow re-identify of every original) and it got deployed to web servers. Move it to a volatile ./cache/exif directory parallel to ./dist (dirname of DIST_DIR resolves to the working dir in both the staging and direct contexts). Now an unchanged photo skips identify on every regenerate, the cache survives a cleared dist, and it is never deployed. --force clears ./cache/exif once up front (clear_exif_cache) and the run repopulates it, so force still does exactly one identify per photo. Dropped .shuriken-cache from the staging-copy loop. Tests and the audit doc updated for the new cache location. Co-Authored-By: Claude Opus 4.8 --- src/lib/config.staging.source.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/lib/config.staging.source.sh') diff --git a/src/lib/config.staging.source.sh b/src/lib/config.staging.source.sh index 8a5f8f1..ebb2694 100644 --- a/src/lib/config.staging.source.sh +++ b/src/lib/config.staging.source.sh @@ -19,7 +19,7 @@ prepare_generation_staging_dir() { return fi - for cache_dir in photos thumbs blurs .shuriken-cache; do + for cache_dir in photos thumbs blurs; do if [ -d "$final_dist/$cache_dir" ]; then if ! mkdir -p "$staging_dir/$cache_dir"; then return 1 -- cgit v1.2.3