Spaces:
Sleeping
Sleeping
Commit History
-
fix: self-contained grader + remove FACTORY_TASK from Dockerfile
Roshan818- grader.py: fully self-contained (stdlib only), no pydantic/openenv needed. Tries FactoryEnv import first; falls back to identical inline RL simulation if imports unavailable. Same scores in both paths (easy=0.9, medium=0.557, hard=0.457). - Dockerfile: remove ENV FACTORY_TASK=easy so inference.py always runs all 3 tasks. Server already defaults to 'easy' via os.getenv fallback in server/app.py.6da70f4 -
fix: lazy openenv.core imports so FactoryEnv works on all Python envs
Roshan818- factory_env/env.py: wrap openenv.core Environment import in try/except - factory_env/models.py: lazy imports for Action/Observation/State base classes, add explicit done/reward fields to FactoryObservation for fallback case - grader.py: clean FactoryEnv-only grader, no pure-Python fallbacka0f94c2 -
fix: graders use FactoryEnv, pure-Python fallback if unavailable
Roshan818b77936a -
fix: grader.py pure stdlib, no external deps, works on Python 3.11+
Roshan818251eea3 -
fix: standalone inference.py with raw websockets, correct obs/state parsing
Roshan818504deea
-
fix: reconnect per task to avoid closed WebSocket on second episode
Roshan81816b706d -
fix: zero-arg self-contained graders, inference runs all 3 tasks
Roshan8184c41e84 -
fix: add spec_version:1 to openenv.yaml, add standalone root grader.py with score_easy/medium/hard
4754135 -
fix: rename API_KEY to HF_TOKEN, remove fallbacks, fix action spaces in STEP log
fa074f6 -
fix: add graders to openenv.yaml and clamp scores to (0, 1) exclusive
Phase 2 validator requires each task to declare a grader in openenv.yaml and each grader to produce scores strictly between 0.0 and 1.0. - openenv.yaml: add grader: factory_env.grader:score_episode to all 3 tasks - grader.py: clamp compute_score output to [0.001, 0.999] — easy task was returning exactly 1.0 (perfect baseline), which the validator rejected - README: update easy baseline score from 1.000 to ~0.999 - Remove stale root server.py (entry point is server/app.py per pyproject.toml)f302e97
-
Fix local openenv validate: add server/app.py, project.scripts, uv.lock, rename server.py to main.py
7f61e7c -
Fix inference.py: rename IMAGE_NAME to LOCAL_IMAGE_NAME, move debug logs after [START]
9282705 -
Fix task selection: reset() accepts task param, all 3 tasks verified
c01d448 -
Rebuild inference + client to match OpenEnv WebSocket spec
- factory_env/client.py: new FactoryEnvClient(EnvClient) with proper _step_payload, _parse_result, _parse_state — connects via WebSocket /ws - inference.py: fully async, uses FactoryEnvClient (from_docker_image or ENV_URL), strict [START]/[STEP]/[END] log format, heuristic fallback, score from final WebSocket state - server.py: simplified, uses create_app with ENABLE_WEB_INTERFACE support - Dockerfile: ENABLE_WEB_INTERFACE=1 for built-in Gradio UI at /web - requirements.txt: add websockets>=12.0 and httpx>=0.27fe75421 -
Serve Gradio UI + OpenEnv API from single Docker Space
Mount Gradio UI at root so human judges see the interactive demo, while API routes (/reset /step /state /health) remain accessible for automated evaluation — FastAPI routes take priority over the mount.7a1eb55 -
Fix HF Space blank screen and state endpoint bug
- Add root GET / endpoint to server.py so HF Space returns 200 instead of 404 - Remove invalid step_count field from FactoryState construction in env.py - Expand openenv.yaml with version, task descriptions, action/observation space metadataa2db6ba -
Add HF Space metadata and openenv tag
b33d8e1 -
OpenEnv Submission
6195f6a
-
update inference
Roshan KumarUnverified signaturebc0dd7f -
Initial commit
d755709 -
first commit
991b1dd