Closes the three remaining items from the storage audit backlog:
- entries(): introspection snapshot of every live entry with
{ key, fullKey, adapter }. Useful for devtools panels and audit logs.
Read-only metadata — no entry handles exposed.
- registeredDefaults refcount: the conflict registry now tracks how many
live entries point at each (adapter, fullKey) and forgets the slot when
the count drops to zero. Re-creating a key with a different default
after the previous owner cleaned up no longer emits a stale warning.
When at least one owner remains, the diagnostic still fires.
- Client cookieAdapter() coverage: 8 tests with a mocked `document` (no
jsdom dependency) covering setItem/getItem/removeItem, encode/decode
defaults, custom encoder pair, Set-Cookie attribute building (path,
samesite, secure, max-age, domain), sameSite=none auto-secure and
multi-cookie parsing.
Cookie polling for onChange remains intentionally out of scope —
documented in README under "Cross-tab sync".
746 tests passing.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>