MAF-20668: docs(skills): correct the KV cache events guidance in guide-odin - #174
Merged
Merged
Conversation
…e-odin
Four claims in guide-odin had gone stale against the runtime-bases they describe.
The presets are distributed from moreh-dev/moai-inference-preset, and its four vllm
runtime-bases say:
# ISVC_ENABLE_PREFIX_CACHE turns on the engine prefix cache and KV
# cache events. No explicit endpoint: vLLM offsets the KV-events
# port by data_parallel_rank (tcp://*:5557 -> 5557+rank), and the
# heimdall sidecar subscribes at engine_kv_port+rank to match
So: the toggle is ISVC_ENABLE_PREFIX_CACHE and it defaults to true, not
ISVC_USE_KV_EVENTS defaulting to false; and the "legacy coupling" that required
inferencePoolRefs for KV events is gone — inferencePoolRefs appears nowhere in the
preset repository, so a pod no longer exits without it.
The guidance now describes the rank offset and why one constant configuration is
correct for every rank. The claim that the ZMQ topic embeds spec.model.name is
dropped rather than carried forward: nothing in the runtime-bases sets a topic, and
an unverified format is worse than none.
The aside pointing at inferencePoolRefs as the deprecated alternative goes too. The
field is being removed from the Odin API reference, so the guide no longer needs to
steer readers away from it.
Left in place deliberately: the eval assertion in guide-heimdall, which checks that
the guide does NOT use InferencePool; the 2025-11 blog post, a dated artifact; and
the versioned_docs snapshots, which AGENTS.md forbids editing.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Contributor
There was a problem hiding this comment.
Pull request overview
Updates the Odin guide skill documentation to reflect current vLLM runtime-base behavior for prefix cache + KV cache events, removing stale guidance around deprecated inferencePoolRefs-based configuration.
Changes:
- Replaces
ISVC_USE_KV_EVENTSwithISVC_ENABLE_PREFIX_CACHE(defaulttrue) in the environment variable table. - Updates the “KV cache events” section to document that KV events are on by default and can be disabled via
ISVC_ENABLE_PREFIX_CACHE=false. - Removes the deprecated
inferencePoolRefs/ InferencePool aside from the AIGateway binding section.
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
"`ISVC_ENABLE_PREFIX_CACHE` turns them off" reads as though setting the variable at
all disables the feature, whichever value it carries. The runtime-base tests
`[ "${ISVC_ENABLE_PREFIX_CACHE:-true}" = "true" ]`, so the value decides and an
unset variable leaves the feature on.
Names the value in the sentence, and adds that any value other than `true` disables
— a reader who sets "1" expecting it on would otherwise turn it off.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Contributor
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 1 out of 1 changed files in this pull request and generated no new comments.
Suppressed comments (1)
skills/guide-odin/SKILL.md:535
- In this section, “value is exactly
true” could be misread as referring to a YAML boolean rather than the string value Kubernetes passes to the container. Sinceenv.valueis always a string, consider explicitly calling out that only the string"true"enables the feature, and that the default when unset is"true".
The runtime-base enables them only when the value is exactly `true`, so any other value disables them — leaving the variable unset is what keeps them on.
5 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Four claims in
skills/guide-odin/SKILL.mdhad gone stale against the runtime-bases they describe. Verified againstmoreh-dev/moai-inference-preset, which odin's preset-distribution PRD names as the source of truth for presets:ISVC_USE_KV_EVENTS, defaultfalseISVC_ENABLE_PREFIX_CACHE, defaulttrue(all four vllm runtime-bases:${ISVC_ENABLE_PREFIX_CACHE:-true})ISVC_USE_KV_EVENTS: "true"inferencePoolRefs… the pod exits with an error if either is missing"5557by data-parallel rank and the sidecar subscribes at the matching offset. Nothing else has to be set on theInferenceServiceinferencePoolRefs/ InferencePool mechanism is deprecated; use the label.)"ISVC_USE_KV_EVENTSandinferencePoolRefboth return zero matches across the preset repository, which is indexed (a5557search returns the two DP runtime-bases).The claim that the ZMQ topic embeds
spec.model.nameis dropped rather than reworded: nothing in the runtime-bases sets a topic, and I could not verify the format. An unverified format is worse than none.Left in place deliberately
InferencePoolstill appears in three places that should keep it:skills/guide-heimdall/evals/evals.json— a negative assertion, that the guide does not use InferencePool. Removing it removes a check.website/blog/2025-11-11-…mdx— a dated post. Rewriting its manifests would falsify the record.website/versioned_docs/version-v0.4.0/**,version-v0.5.0/**— frozen snapshots;website/AGENTS.mdforbids editing them.Not in this PR
website/docs/reference/odin/api-reference.mdxstill carries theinferencePoolRefsrow and its sub-table. That content sits inside anAUTO-GENERATEDblock, so hand-editing it would be overwritten on the next docs sync. The generator is being changed to leave out any field whose description opens aDeprecated:paragraph — odin's says the field "is ignored at runtime" — and the sync will remove the row and sub-table on its next run.Test
skills/is not part of the Docusaurus site, so no website build is involved.