Skip to content

Add Valkey operations handbook#357

Open
Grant McCloskey (MushuEE) wants to merge 2 commits into
agent-substrate:mainfrom
MushuEE:design/valkey-operations-eval
Open

Add Valkey operations handbook#357
Grant McCloskey (MushuEE) wants to merge 2 commits into
agent-substrate:mainfrom
MushuEE:design/valkey-operations-eval

Conversation

@MushuEE

Copy link
Copy Markdown
Collaborator

Operational reference for the Valkey persistence tier and the in-process worker cache that sits in front of it. Written for operators, on-call engineers, and contributors who need to reason about the storage tier without first reading the code. This will be used as ref for further investigation on if Valkey will really stand-up.

NOTE: We chose Valkey due to it's speed for the critical scheduling requirements. With WorkerCache now being in memory, we get the speed for scheduling and still rely on eventual consistency. Do we now want more durability? Also still need to answer: what data can we 100% NOT lose in these failure situations.

README.md — entry point, scope, conventions
topology.md — what's deployed, sizing math, configuration knobs
lifecycle.md — actor state machine, four workflows, worker cache
and eligibility model
operations.md — failure modes with inline recovery, common admin
operations, open risks

#12

  • Tests pass
  • Appropriate changes to documentation are included in the PR

Operational reference for the Valkey persistence tier and the
in-process worker cache that sits in front of it. Written for
operators, on-call engineers, and contributors who need to reason
about the storage tier without first reading the code.

  README.md       — entry point, scope, conventions
  topology.md     — what's deployed, sizing math, configuration knobs
  lifecycle.md    — actor state machine, four workflows, worker cache
                    and eligibility model
  operations.md   — failure modes with inline recovery, common admin
                    operations, open risks
Verified every handbook claim against the code and fixed what had
drifted:

- lifecycle: add the CRASHED state and crash-detection paths; correct
  the boot=true semantics (it only skips the golden snapshot — it
  cannot bypass an actor's own local checkpoint) and the syncer
  behavior for finalized PAUSED actors; rewrite eligibility around
  per-worker isWorkerEligibleForActor matching; document the atespace
  gate on create and the non-atespace-scoped lock key.
- operations: add the coordinated-failover and backup/restore
  procedures; fix the deployment name, kubectl-ate invocations, and
  multi-part AOF repair path; correct the cache-not-ready window;
  note the unversioned-delete pub/sub caveat and pool-label fan-out;
  add risks rows (paused-actor dead-node trap, stale local-snapshot
  node list, leaked snapshots).
- topology: fix the actor key format and add the atespace key family;
  document IAM-vs-mTLS client auth; slim the page to deployment
  description.
- scaling_to_10m.md (new): tiered growth path from pilot to the
  supported 10M-actor envelope — capacity math with stated bases,
  graduation triggers with validation gates, the dual-profile
  durability contract, the deployed-vs-target configuration ladder,
  and the exit ramp beyond the envelope. Now owns all sizing content.
@MushuEE Grant McCloskey (MushuEE) force-pushed the design/valkey-operations-eval branch from c9913ee to f8a4694 Compare July 9, 2026 16:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant