Repository navigation
v0.4.1 - new-style keys, better contracts
v0.4.1 - new-style keys, better contracts
Improvements
- New-style JAX PRNG keys -
BatchedSpaceandVmapEnvsWrappernow expectjax.random.key()instead of the old-stylejax.random.PRNGKey(). - Jumanji obs structure preserved - Spec conversion now uses
Spec._constructorto faithfully reconstruct observation pytrees (namedtuples, etc.) instead of flattening them into dicts. PyTreeSpacecan now be empty - Removed the restriction requiring at least one leaf, which was too strict for some use cases.- Navix obs space workaround - Clamped observation space
nto a minimum of 10 to work around navix#109.
Testing
- Shared contract helpers - Moved
contract.pytotests/and added a unifiedassert_obs_matches_spacechecker. All adapter tests now use the same obs validation instead of ad-hoc callbacks. - Wrapper contract smoke tests - Every wrapper now gets a contract smoke test (reset/step shapes, info fields, obs containment) via a single parametrized test.
- TestInfo uses Container - Switched from
FrozenPyTreeNodefor adherence toInfoprotocol.
Full Changelog: v0.4.0...v0.4.1