v0.4.0
Minor Changes
-
#7
bf047c9Thanks @leejpsd! - Build-output cache seeding:seedBuildOutput()(new/seedentry point) and
npx nextjs-cache-handler seedwalk.next/after a build and insert
prerendered App Router routes (including PPR segment data), Pages Router
routes, and fetch-cache entries into Redis in the handler's own record
format — with NX semantics so entries already written by live instances are
never overwritten. A fresh deployment's first requests are cache HITs
instead of a regeneration stampede (verified on a real Next 16 app: cold
server + seeded Redis → first requestx-nextjs-cache: HIT). The
RedisClientLike.setcontract gains an optionalNXflag. -
#7
1e57e03Thanks @leejpsd! - Newnextjs-cache-handlerCLI (zero-dependency):initdetects the Next.js
version and Redis client, generates the handler wrapper shims, shows the
next.config keys to add (never edits it), appends env templates, and injects
the agent rules block into CLAUDE.md/AGENTS.md idempotently (--yesto
apply,--skillsto install the agent skill locally).doctorverifies
Redis connectivity, inspects cache key namespaces, and runs a write/read
round-trip — the first command an agent should reach for when debugging. -
#7
6cd5901Thanks @leejpsd! - Opt-in push-based tag propagation (tagPubSub: true, plural handler):
updateTags()publishes invalidations on a namespaced channel and every
instance maintains a subscription on a dedicated duplicate connection,
updating its local tag mirror in ~3 ms (measured cross-instance over real
Redis with both redis@5 and ioredis) instead of waiting for the next
refreshTags()scan (~seconds). The scan keeps running as the consistency
safety net, so a dropped subscription degrades to the previous behavior —
never to staleness. Cluster clients fall back to polling with a one-time
warning.RedisClientLikegains optionalpublish/subscribe.