dakshdoesdev's picture
deploy sre-gym v2: easy/medium/hard scenarios + skill + verified-runbooks + demo
dc8501a verified
"""Simple walkthrough that prints a full episode interaction."""
from __future__ import annotations
import argparse
import json
from ..client import UnifiedIncidentEnv
from .baseline_agent import plan_for_scenario
def main() -> None:
parser = argparse.ArgumentParser()
parser.add_argument(
"--base-url",
default=UnifiedIncidentEnv.DEFAULT_BASE_URL,
)
parser.add_argument(
"--scenario",
default="easy_sqli_db_outage",
)
args = parser.parse_args()
with UnifiedIncidentEnv(base_url=args.base_url).sync() as env:
reset = env.reset(scenario_id=args.scenario).observation
print(json.dumps({"reset": reset.model_dump()}, indent=2))
for action in plan_for_scenario(args.scenario):
step = env.step(action).observation
print(
json.dumps(
{
"action": action.model_dump(exclude_none=True),
"observation": step.model_dump(),
},
indent=2,
)
)
if __name__ == "__main__":
main()