Skip to content

refactor: enforce single critic observation contract - #298

Merged
TATP-233 merged 3 commits into
mainfrom
fix/strict-critic-contract
Apr 17, 2026
Merged

TATP-233 merged 3 commits into
mainfrom
fix/strict-critic-contract

Conversation

@TATP-233

Copy link
Copy Markdown
Collaborator

Summary

  • replace the mixed obs/privileged/critic runtime semantics with a strict obs + optional critic contract
  • update env owner layers, IPC storage, APPO and off-policy runners/learners, and Sharpa config naming to use the single critic contract
  • rewrite ADR-0005 and refresh tests to lock the new contract in place

Validation

  • uv run python -m compileall src/unilab
  • uv run ruff check src/unilab/base/np_env.py src/unilab/utils/obs_utils.py src/unilab/utils/final_observation.py src/unilab/utils/device_utils.py src/unilab/utils/rsl_rl_vec_env_wrapper.py src/unilab/ipc/replay_buffer.py src/unilab/ipc/shared_onpolicy_storage.py src/unilab/algos/torch/appo/worker.py src/unilab/algos/torch/appo/runner.py src/unilab/algos/torch/appo/learner.py src/unilab/algos/torch/offpolicy/worker.py src/unilab/algos/torch/offpolicy/runner.py src/unilab/algos/torch/fast_sac/learner.py src/unilab/algos/torch/flash_sac/learner.py src/unilab/algos/torch/fast_td3/learner.py src/unilab/envs/locomotion/go1/joystick.py src/unilab/envs/locomotion/go2/joystick.py src/unilab/envs/locomotion/g1/joystick.py src/unilab/envs/locomotion/g1/joystick_sac.py src/unilab/envs/motion_tracking/g1/tracking.py src/unilab/envs/manipulation/sharpa_inhand/base.py src/unilab/envs/manipulation/sharpa_inhand/rotation.py scripts/train_appo.py scripts/train_offpolicy.py tests/utils/test_obs_utils.py tests/utils/test_final_observation.py tests/ipc/test_shared_onpolicy_storage.py tests/algos/test_appo_worker.py tests/algos/test_flash_sac_learner.py tests/base/test_np_env.py tests/envs/test_env_configs.py tests/scripts/test_train_scripts.py
  • uv run pytest tests/utils/test_obs_utils.py tests/utils/test_final_observation.py tests/ipc/test_shared_onpolicy_storage.py tests/ipc/test_replay_buffer.py tests/algos/test_appo_worker.py tests/algos/test_flash_sac_learner.py tests/base/test_np_env.py tests/envs/test_env_configs.py tests/scripts/test_train_scripts.py -q -k "not slow and not veryslow"
  • uv run pytest -m "slow or veryslow"

@TATP-233
TATP-233 merged commit 7ec6b95 into main Apr 17, 2026
10 checks passed
@TATP-233
TATP-233 deleted the fix/strict-critic-contract branch April 17, 2026 12:33
TATP-233 added a commit that referenced this pull request May 4, 2026
refactor: enforce single critic observation contract
TATP-233 added a commit that referenced this pull request May 30, 2026
refactor: enforce single critic observation contract
TATP-233 added a commit that referenced this pull request Sep 4, 2026
refactor: enforce single critic observation contract
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants