Skip to content

Commit dfa90f3

Browse files
m2kulkarniclaude
andcommitted
PR-B: human-evals refactor + render pipeline + chunk fix (+ cleanup)
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
1 parent a534ec8 commit dfa90f3

20 files changed

Lines changed: 2649 additions & 582 deletions

.github/workflows/utest.yml

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@ on:
44
pull_request:
55
branches: [ main ]
66
push:
7-
branches: [ main ]
87

98
jobs:
109
test:
@@ -21,13 +20,9 @@ jobs:
2120

2221
- name: Free up disk space
2322
run: |
24-
echo "Before cleanup:"
25-
df -h
2623
sudo rm -rf /usr/share/dotnet /usr/local/lib/android /opt/ghc
2724
sudo apt-get clean
2825
sudo rm -rf ~/.cache/pip /tmp/* /var/tmp/*
29-
echo "After cleanup:"
30-
df -h
3126
3227
- name: Install dependencies
3328
run: |
@@ -37,8 +32,7 @@ jobs:
3732
run: python -m pip install -U pip
3833

3934
- name: Install pufferlib
40-
run: |
41-
pip install -e .[cpu] --no-cache-dir
35+
run: pip install -e .[cpu] --no-cache-dir pytest
4236
env:
4337
TMPDIR: ${{ runner.temp }}/build
4438
PIP_NO_CACHE_DIR: 1
@@ -53,3 +47,11 @@ jobs:
5347
5448
- name: Run python ini parsing tests
5549
run: python tests/test_drive_config.py
50+
51+
- name: Run pytest suite (conditioning, map_dir, render contracts)
52+
run: |
53+
pytest \
54+
tests/test_drive_conditioning.py \
55+
tests/test_map_dir_flow.py \
56+
tests/test_render_pipeline.py \
57+
-v --tb=short

docs/src/SUMMARY.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,10 @@
2020
- [Evaluation overview](evaluation.md)
2121
- [WOSAC](wosac.md)
2222

23+
# Design
24+
25+
- [Trial mode (`goal_behavior=3`)](trial_mode.md)
26+
2327
# Blog
2428

2529
- [PufferDrive 2.0 release](pufferdrive-2.0.md)

docs/src/getting-started.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ python setup.py build_ext --inplace --force
2525
Run this with your virtual environment activated so the compiled extension links against the correct Python.
2626

2727
### When to rebuild the extension
28-
- Re-run `python setup.py build_ext --inplace --force` after changing any C/Raylib sources in `pufferlib/ocean/drive` (e.g., `drive.c`, `drive.h`, `binding.c`, `visualize.c`) or after pulling upstream changes that touch those files. This regenerates the `binding.cpython-*.so` used by `Drive`.
28+
- Re-run `python setup.py build_ext --inplace --force` after changing any C/Raylib sources in `pufferlib/ocean/drive` (e.g., `drive.h`, `binding.c`, `binding.h`) or after pulling upstream changes that touch those files. This regenerates the `binding.cpython-*.so` used by `Drive`.
2929
- Pure Python edits (training scripts, docs, data utilities) do not require a rebuild; just restart your Python process.
3030

3131
## Verify the setup

docs/src/simulator.md

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -210,15 +210,14 @@ mid_x, mid_y, length, width, dir_cos, dir_sin, type
210210
## Source files
211211

212212
### C core
213-
- `drive.h`: Main simulator (stepping, observations, collisions)
214-
- `drive.c`: Demo and testing
215-
- `binding.c`: Python interface
216-
- `visualize.c`: Raylib renderer
217-
- `drivenet.h`: C inference network
213+
- `drive.h`: Main simulator (stepping, observations, collisions, raylib renderer)
214+
- `binding.c` / `binding.h`: Python interface
218215

219216
### Python
220-
- `drive.py`: Gymnasium wrapper
217+
- `drive.py`: Gymnasium wrapper, `Drive.render()`, `set_video_suffix()`
218+
- `rollout.py`: Policy-agnostic rollout loop used by both training renders and `render.py`
221219
- `torch.py`: Neural network (ego/partner/road encoders → actor/critic)
220+
- `../../../render.py`: Unified rendering CLI (replaces the old `./visualize` binary)
222221

223222
## Neural network
224223

0 commit comments

Comments
 (0)