feat(cache): separate read/write LLM response cache controls - #52
Merged
Merged
Conversation
- spec.execution.cache.read and .write toggle cache lookups and cache writes independently, replacing the single use_cache on/off switch - Configurable three ways: the manifest field above, MAS_LLM_CACHE_READ/ MAS_LLM_CACHE_WRITE env vars, or --cache-read/--no-cache-read and --cache-write/--no-cache-write on mas-ctl chat - Precedence, most to least specific: CLI flag -> spec.execution.cache. enabled (a hard kill-switch for both) -> cache.read/cache.write -> env vars -> default true for both - A cached response that included tool_calls is now reconstructed and replayed correctly, not just cached plain text - spec.execution.cache.read/write now actually pass manifest schema validation (previously only "enabled" was accepted, so this control surface was unreachable through a validated manifest) - The LLM response cache's default file path now shares the same XDG convention as the trace/artifacts caches ($XDG_CACHE_HOME/mas/...), via the shared mas.runtime.xdg module instead of a separate ad hoc path resolution - New docs/manifests/execution.md documents spec.execution in full (mocking, cache, parallel), linked from docs/manifests/README.md, agent.md, and user-config.md's cache path reference; Tutorial 3's experiments doc cross-links it to distinguish the LLM response cache from the unrelated per-run trace cache Signed-off-by: Jordan Augé <augjorda@cisco.com>
jordanauge
force-pushed
the
feat/cache-read-write-controls
branch
from
September 4, 2026 14:10
b9b860d to
94f37da
Compare
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.
writes independently, replacing the single use_cache on/off switch
MAS_LLM_CACHE_WRITE env vars, or --cache-read/--no-cache-read and
--cache-write/--no-cache-write on mas-ctl chat
enabled (a hard kill-switch for both) -> cache.read/cache.write ->
env vars -> default true for both
replayed correctly, not just cached plain text
validation (previously only "enabled" was accepted, so this control
surface was unreachable through a validated manifest)
convention as the trace/artifacts caches ($XDG_CACHE_HOME/mas/...),
via the shared mas.runtime.xdg module instead of a separate ad hoc
path resolution
(mocking, cache, parallel), linked from docs/manifests/README.md,
agent.md, and user-config.md's cache path reference; Tutorial 3's
experiments doc cross-links it to distinguish the LLM response cache
from the unrelated per-run trace cache