Operational Remediation Reports
Thread Value Remediation Report
Turn a recorded worker failure count into an observe, retry, or failover remediation action.
recorded failures
The worker outcome is reduced to a scalar failure count, so the remediation action depends only on that count and never on thread scheduling or object identity.
Thread Value Remediation Report
thread_value_remediation_report.rb
Replay: real traced execution (multi-file project)
failures = 0
attempts = failures + 1
retry_limit = 2
action = if failures == 0
"observe"
elsif failures <= retry_limit
"retry"
else
"failover"
end
puts "failures=#{failures}"
puts "attempts=#{attempts}"
puts "action=#{action}"
failures = 1
attempts = failures + 1
retry_limit = 2
action = if failures == 0
"observe"
elsif failures <= retry_limit
"retry"
else
"failover"
end
puts "failures=#{failures}"
puts "attempts=#{attempts}"
puts "action=#{action}"
failures = 3
attempts = failures + 1
retry_limit = 2
action = if failures == 0
"observe"
elsif failures <= retry_limit
"retry"
else
"failover"
end
puts "failures=#{failures}"
puts "attempts=#{attempts}"
puts "action=#{action}"
failures ← 0, attempts ← 1, retry_limit ← 2, action ← observe
1failures→ 0 = 0 #@failures=1, 32attempts→ 1 = failures0 + 13retry_limit→ 2 = 245action→ observe = if failures0 == 06 "observe"7elsif failures0 <= retry_limit28 "retry"9else10 "failover"11end1213puts "failures=#{failures0}"14puts "attempts=#{attempts1}"15puts "action=#{actionobserve}"outputfailures=0 attempts=1 action=observe
failures ← 1, attempts ← 2, retry_limit ← 2, action ← retry
1failures→ 1 = 12attempts→ 2 = failures1 + 13retry_limit→ 2 = 245action→ retry = if failures1 == 06 "observe"7elsif failures1 <= retry_limit28 "retry"9else10 "failover"11end1213puts "failures=#{failures1}"14puts "attempts=#{attempts2}"15puts "action=#{actionretry}"outputfailures=1 attempts=2 action=retry
failures ← 3, attempts ← 4, retry_limit ← 2, action ← failover
1failures→ 3 = 32attempts→ 4 = failures3 + 13retry_limit→ 2 = 245action→ failover = if failures3 == 06 "observe"7elsif failures3 <= retry_limit28 "retry"9else10 "failover"11end1213puts "failures=#{failures3}"14puts "attempts=#{attempts4}"15puts "action=#{actionfailover}"outputfailures=3 attempts=4 action=failover