-`Provider` interface — `Client() valkey.Client`; for consumers that only need access to the native `valkey-go` client
-`Component` interface — embeds `launcher.Component`, `health.Checkable`, and `Provider`; the full lifecycle-managed surface registered with the launcher
-`New(logger logz.Logger, cfg Config) Component` — constructor; returns a `Component` ready for `lc.Append`
-`OnInit` — constructs the `valkey-go` client from `Config`; enables client-side caching when `CacheSizeEachConn > 0`
-`OnStart` — verifies connectivity by issuing a `PING` command; returns an error if the ping fails
-`OnStop` — calls `client.Close()` for graceful shutdown
-`HealthCheck(ctx context.Context) error` — issues `PING`; returns an error if the client is nil or the command fails
-`Name() string` — returns `"valkey"`
-`Priority() health.Level` — returns `health.LevelDegraded`; a cache outage degrades service rather than halting it
### Design Notes
- The native `valkey-go` client is exposed directly via `Client()` with no wrapping or re-exported command subset; callers use the full command-builder API and own all serialisation and key namespacing.
-`Provider` / `Component` split follows the framework pattern: inject `Provider` into repositories and services, inject `Component` only at the lifecycle registration site.
- Health priority is `LevelDegraded` by design — callers must handle cache misses by falling back to the primary datastore rather than treating a Valkey outage as fatal.