Module: LLMExperiment::Transcript::Hermeticity
- Defined in:
- lib/llm_experiment/transcript/hermeticity.rb
Overview
A trial is contaminated when it can reach state that outlives it or is shared with another trial. The CLI always reports an auto-memory path, so the question is not whether one exists -- it always does -- but where it points. Inside the per-trial config directory it dies with the container. Under the mounted credential store it is the same directory for every trial, and what one trial could leave there is the location of the defect. Testing for existence rather than location flags every clean run, which trains you to ignore the warning that matters.
Constant Summary collapse
- SHARED_MOUNT =
"/home/agent/.agent-auth"
Class Method Summary collapse
Class Method Details
.contamination(row) ⇒ Object
18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
# File 'lib/llm_experiment/transcript/hermeticity.rb', line 18 def contamination(row) reasons = [] servers = Array(row["mcp_servers"]) unless servers.empty? names = servers.map { |s| s.is_a?(Hash) ? s["name"] : s } reasons << "mcp servers attached: #{names.join(", ")}" end Hash(row["memory_paths"]).each do |kind, path| reasons << "#{kind} memory lives in the shared mount: #{path}" if path.to_s.start_with?(SHARED_MOUNT) end reasons end |