From b89b9f13defbe99a35b7de299ac2a2b26330df8a Mon Sep 17 00:00:00 2001 From: Tanner Stirrat Date: Wed, 7 Oct 2026 09:42:59 -0600 Subject: [PATCH] chore: add documentation of caching + expiration --- app/spicedb/concepts/expiring-relationships/page.mdx | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/app/spicedb/concepts/expiring-relationships/page.mdx b/app/spicedb/concepts/expiring-relationships/page.mdx index e1c8cd02..b283d611 100644 --- a/app/spicedb/concepts/expiring-relationships/page.mdx +++ b/app/spicedb/concepts/expiring-relationships/page.mdx @@ -125,6 +125,14 @@ the datastore chosen. deployments. +## Expiration and Caching + +If a relationship expires during a cache window and SpiceDB has already cached a subproblem that uses that relationship, +if the cache window is valid for a given request, +SpiceDB will respond with the cached value even if a fresh datastore read would exclude that relationship. +This is a deliberate decision consistent with the rest of our caching semantics; if a given request +should not use a cached value, the `fully_consistent` consistency option can be used. + ## Migrating Off Of Expiration With Caveats If you implemented expiration using caveats, this section describes migrating to the new expiration feature.