You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
## Summary
- Preserve the optional Responses `cache_salt` when parsing
`RequestPayload` and serializing the normalized request sent upstream.
- Add a regression test proving that a client/internal salt survives
`RequestPayload::to_upstream_request`.
- Initialize the new optional field in existing test, benchmark, and
internal request literals.
## Why
The gateway previously accepted JSON containing `cache_salt` but
silently discarded the unknown field during deserialization. In a
KV-aware llm-d deployment, llm-d folds the salt into its first canonical
request key and vLLM includes it in APC block identity. Dropping the
field weakens tenant isolation and prevents llm-d's salted request keys
from matching vLLM's salted KV events.
This implementation is intentionally separate from the ADR and benchmark
evidence in vllm-project#65.
## Test Plan
- `cargo test -p agentic-server-core
request_payload_forwards_cache_salt_upstream -- --nocapture`
- `cargo test`
- `cargo clippy --all-targets -- -D warnings`
- `cargo fmt --all -- --check`
- `uvx pre-commit run --all-files`
Signed-off-by: Francisco Javier Arceo <farceo@redhat.com>
0 commit comments