Closed Shi-Raida closed 1 year ago
The upstream PR was merged. I updated the submodule and it now works. I corrected a bug in the implementation: the protobuf schema should be allowed to evolve in a backward compatible way (addition of fields or enum values). This caused a crash after the update as a feature was added upstream.
As a result of the upstream change, not all problems are supported anymore by the validator.
I have added support for bulk-testing the correctness of UP problems here: https://github.com/aiplan4eu/planning-test-cases/pull/11
It notably shows how to check the compatibility of an engine with a problem/plan, for selecting the relevant problems. aries-val
passed all tests. At some point we should probably rely on this repository for running our integration tests directly in a python script.
Appart from these problems, it looks good to me. I have not deeply checked the implementation details of the validator itself as it is completely independent from the rest of the code.
Also, it is fine if the validator does not support everything as long as it does not claim to. Its supported features can be extended later on.
The failed test is due to an error in unified planning problems. I created a pull request to fix it if you can check it.
The validator is not complete yet, I have to check the constraints in the initial task network. Moreover, some constraints are not supported for the moment such as the valid domain of a variable, e.g.,
(up:or (up:equals final_loc l1) (up:equals final_loc l2))