* update models * wip lanelines mhp parsing * typos * newer models * 95995a49-db0c-4261-8776-b90780dc2a8c/600 * Use laneful policy to prevent planner aggression * c8c3ab69-bd2c-4d1c-a7f8-9e8457e4827b/950 * ede8f75a-df3e-41fb-bc56-63e2f33858e5/950 * 7205c5af-7532-4215-ad9b-678789054db7/995 * bfb34fa3-1d72-4987-854f-43d42ee01015/950 * change cost * 8ae2477a-b452-4601-b04c-d3af66ea5e98/950 * Update heading cost * 9b991314-94f5-4f0b-872e-58d95266e4d0/333 * 9b991314-94f5-4f0b-872e-58d95266e4d0/950 * ede8f75a-df3e-41fb-bc56-63e2f33858e5/950 * undo lateral planner changes * rm whitespace * update ref * c0acc19d-f2f1-47ae-8838-5382c6c6c7f5/950 * c0acc19d-f2f1-47ae-8838-5382c6c6c7f5/950 * update model refg * Update model ref Co-authored-by: Yassine Yousfi <yyousfi1@binghamton.edu>
Process replay
Process replay is a regression test designed to identify any changes in the output of a process. This test replays a segment through individual processes and compares the output to a known good replay. Each make is represented in the test with a segment.
If the test fails, make sure that you didn't unintentionally change anything. If there are intentional changes, the reference logs will be updated.
Use test_processes.py to run the test locally.
Currently the following processes are tested:
- controlsd
- radard
- plannerd
- calibrationd
- dmonitoringd
- locationd
- paramsd
- ubloxd
Usage
Usage: test_processes.py [-h] [--whitelist-procs PROCS] [--whitelist-cars CARS] [--blacklist-procs PROCS]
[--blacklist-cars CARS] [--ignore-fields FIELDS] [--ignore-msgs MSGS] [--update-refs] [--upload-only]
Regression test to identify changes in a process's output
optional arguments:
-h, --help show this help message and exit
--whitelist-procs PROCS Whitelist given processes from the test (e.g. controlsd)
--whitelist-cars WHITELIST_CARS Whitelist given cars from the test (e.g. HONDA)
--blacklist-procs BLACKLIST_PROCS Blacklist given processes from the test (e.g. controlsd)
--blacklist-cars BLACKLIST_CARS Blacklist given cars from the test (e.g. HONDA)
--ignore-fields IGNORE_FIELDS Extra fields or msgs to ignore (e.g. carState.events)
--ignore-msgs IGNORE_MSGS Msgs to ignore (e.g. carEvents)
--update-refs Updates reference logs using current commit
--upload-only Skips testing processes and uploads logs from previous test run
Forks
openpilot forks can use this test with their own reference logs, by default test_proccess.py saves logs locally.
To generate new logs:
./test_processes.py
Then, check in the new logs using git-lfs. Make sure to also update the ref_commit file to the current commit.