#!/usr/bin/env python3
import argparse

def run(name):
    if name=='transient':
        print('attempt=1 outcome=timeout retryable=true'); print('backoff=bounded+jitter'); print('attempt=2 outcome=success'); print('diagnosis=recovered_with_bounded_retry')
    elif name=='policy':
        print('attempt=1 outcome=policy_denied retryable=false'); print('attempts_total=1'); print('diagnosis=fail_closed_policy')
    elif name=='persistent':
        for i in range(1,4): print(f'attempt={i} outcome=provider_5xx')
        print('circuit=OPEN'); print('diagnosis=persistent_dependency_failure_contained')
    elif name=='storm':
        for i in range(1,9): print(f'attempt={i} outcome=provider_5xx backoff=none')
        print('diagnosis=unsafe_retry_amplification')

def main():
    ap=argparse.ArgumentParser(); ap.add_argument('--scenario',choices=['transient','policy','persistent','storm'],default='transient'); a=ap.parse_args(); run(a.scenario)
if __name__=='__main__': main()
