Skip to content

Commit d591e7e

Browse files
committed
Fix Space reset validation handling
1 parent c896c53 commit d591e7e

3 files changed

Lines changed: 14 additions & 3 deletions

File tree

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
22
title: Ops Gauntlet
3-
emoji: "???"
3+
emoji: "🚀"
44
sdk: docker
55
app_port: 8000
66
pinned: false

server/app.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
from threading import RLock
66
from typing import Any
77

8-
from fastapi import HTTPException
8+
from fastapi import Body, HTTPException
99
from fastapi.responses import HTMLResponse, PlainTextResponse
1010

1111
try:
@@ -82,7 +82,7 @@ def _drop_generated_route(path: str, methods: set[str]) -> None:
8282

8383

8484
@app.post("/reset", response_model=ResetResponse, tags=["Environment Control"])
85-
def reset(request: ResetRequest) -> ResetResponse:
85+
def reset(request: ResetRequest = Body(default_factory=ResetRequest)) -> ResetResponse:
8686
"""Stateful HTTP reset for validator-friendly sequential calls."""
8787

8888
env = OpsGauntletEnvironment()

tests/test_environment.py

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -220,6 +220,17 @@ def test_http_reset_then_step_keeps_episode_state():
220220
assert payload["observation"]["metadata"]["raw_step_reward"] == 3.5
221221

222222

223+
def test_http_reset_accepts_empty_body():
224+
from opsgauntlet.server.app import app
225+
226+
client = TestClient(app)
227+
response = client.post("/reset")
228+
assert response.status_code == 200
229+
payload = response.json()
230+
assert payload["done"] is False
231+
assert "task_id" in payload["observation"]
232+
233+
223234
def test_benchmark_report_supports_exports_and_comparison():
224235
report = collect_benchmark_results(scope="all", seed=7)
225236
comparison = collect_comparison_report(scope="all", seed=7)

0 commit comments

Comments
 (0)