a584a034e9
Repo hygiene pass after a long working session.
Files removed:
* stage1_train.log — runtime training log (~125 KB), shouldn't have
been tracked.
* training/bc/demos.npz — orphan default-name demos file from before
the world+drive-suffixed naming convention took over; no script
references it.
* training/runs/bc_dagger{1,2}_differential_field/policy.zip — failed
DAgger experiment artifacts. Per `memory/dagger_results.md` the
whole DAgger experiment hit 0/5 on Webots transfer; these checkpoints
have no consumers.
Untracked-but-deleted (no git change) — also cleaned from disk:
* Root-level runtime logs (43 *.log files, all unused — gitignored now).
* training/bc/{combined,dagger}*.npz (5 huge demo blobs, 2.6 GB
reclaimed; not committed).
* training/bc/v1/ (2.6 GB backup of pre-DAgger demos; reclaimed).
* training/runs/at_20260426_*/ (orphan timestamped runs; reclaimed).
* All __pycache__/.
Dead code removed:
* `herding/control/strombom.py::compute_action_debug` — no callers
anywhere in the repo.
* `herding/control/sequential.py::compute_action_debug` — same.
* `herding/control/universal.py::compute_action_diff` — same.
.gitignore extended to cover:
* All *.log files (training/eval/webots logs are runtime artifacts).
* training/bc/*.npz (re-collectable on demand by `make bc_demos`).
* training/bc/v1/.
* .pytest_cache, *.pyc, .claude/.
README refreshed:
* Mecanum + round-world coverage in the headline.
* Quick-start updated for DRIVE/WORLD-suffixed Makefile targets,
GT-bypass example, and the mecanum-retrain caveat.
* Layout reflects the actual current tree (config.py, both protos,
both worlds, all tools).
* Results table replaced with the Webots end-to-end numbers from
the 2026-05-16 sweep (8/8 diff combos + LiDAR/GT comparison).
Verification: 126 pytest cases still pass (was 126 going in — no
test-coverage regression from the dead-code removal).
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
32 lines
742 B
Plaintext
32 lines
742 B
Plaintext
# Python
|
|
__pycache__/
|
|
*.pyc
|
|
.pytest_cache/
|
|
|
|
# Training artefacts: ignore all run outputs except deployable policies
|
|
training/runs/**
|
|
!training/runs/
|
|
!training/runs/.gitkeep
|
|
!training/runs/*/
|
|
!training/runs/*/policy.zip
|
|
|
|
# BC demo blobs — these get regenerated by `python -m training.bc.collect`
|
|
# and are too large to track. Keep them out of git.
|
|
training/bc/*.npz
|
|
training/bc/v1/
|
|
|
|
# Webots launcher scratch (the _test.wbt files are emitted on every run)
|
|
worlds/**
|
|
!worlds/field.wbt
|
|
!worlds/field_round.wbt
|
|
herding_runtime.cfg
|
|
|
|
# Runtime logs — all of these are produced by training/eval/webots runs
|
|
# and are not useful to track in git. Keep summary docs/markdown only.
|
|
*.log
|
|
calibrate_mecanum.log
|
|
training/.run_done
|
|
|
|
# Tooling
|
|
.claude/
|