The idempotent upgrade only created missing object stores, so bumping DATA_VERSION no longer reset bad or stale data — it just added stores. This restores a bump as a true global cache flush: the upgrade now clears every existing store before recreating any missing ones, so shipping a version bump forces all clients to refetch fresh on next boot. Gated on oldVersion > 0 so fresh installs skip the flush, and clearing before creating means only pre-existing stores are touched. This is the break-glass lever for the one non-self-healing failure mode (non-empty store holding wrong-shaped data paired with a matching cache key), e.g. after a serializer shape change shipped without a version bump.
10 lines
582 B
JavaScript
10 lines
582 B
JavaScript
// Bump DATA_VERSION to (a) add new object stores to the IDB schema or (b)
|
|
// flush bad/stale cache globally. The `upgrade()` callback in DataManager runs
|
|
// only when the stored DB version is less than the requested version; on any
|
|
// such bump it clears every existing store (a full cache reset) and then
|
|
// idempotently creates any missing stores. So bump this whenever a cached
|
|
// model's serializer shape changes, or to force all clients to refetch.
|
|
//
|
|
// Wednesday, 21 May 2026 — bumped to add canned_response + account_user stores
|
|
export const DATA_VERSION = '1747785600';
|