Add ttl: Option<Duration> to Hll/Bloom/Cms/TopK/TDigest configs; create_* sends
ttl_ms (0 = never). For time-bucketed sketch keys (rolling-window cardinality
etc.) the server auto-evicts, so callers don't hand-purge old buckets.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Extract the waymaker client into a standalone, polyglot repo versioned in
lockstep with the waymaker server (this tag == server v0.1.27).
- proto/ vendored client-facing protos (source of truth: waymaker repo).
internal_proxy (server-internal ProxyService + replication) is
intentionally excluded — it is a server concern, not a client one.
- rust/ standalone crate; build.rs generates from proto/. Quorum fence
scope + Lock auto-reacquire / fence-watch (watch/is_lost) API.
- go/ module git.awesomike.com/pub/waymaker-client/go — generated stubs
+ ergonomic wrappers (locks/streams/kv/collections/sketches/object).
- ts/ @waymaker/client — generated stubs + ergonomic wrappers.
- scripts/ sync-protos.sh (re-vendor + align VERSION) + gen-go.sh + gen-ts.sh.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>