Skip to content

cleanup: remove contract-less defensive fallback code - #2590

Merged
TATP-233 merged 1 commit into
mainfrom
cleanup/defensive-code-cleanup
Nov 6, 2026
Merged

TATP-233 merged 1 commit into
mainfrom
cleanup/defensive-code-cleanup

Conversation

@TATP-233

@TATP-233 TATP-233 commented Nov 6, 2026

Copy link
Copy Markdown
Collaborator

Summary

全仓扫描并清理无合同依据的过渡性防御代码。

主要改动

  • 删除/收窄 "getattr(env, 'device', cpu/default)" 形式的 device fallback
  • 删除对协议必需属性(cfg、state、play_capabilities、num_envs)的 getattr/hasattr 探测
  • 收窄 broad except Exception/BaseException 到具体异常类型
  • 删除热路径上对已 tensor 化的值反复调用 torch.as_tensor 的冗余代码
  • 更新测试夹具(FakeEnv / SimpleNamespace)以符合 EnvProtocol
  • 清理 UniSim SimBackend.backend_type 的 fallback

验证

  • UniLab: "make check" 通过;"make test" 2909 passed, 62 skipped
  • UniSim: "make check" 通过;"make test" 1690 passed, 263 skipped

剩余问题

以下模式已识别但需更大范围重构/设计决策,将单独提 issue 跟踪:

  • backend 字符串分支 / capability shim(Drake kwargs pop、tracked_body_names mujoco 分支、Drake 播放渲染 special-case)
  • torch 版本过渡探测(hasattr(torch, "compile")、hasattr(matmul, "fp32_precision"))
  • mjwarp _xfrc_staging 每步 H2D 转换(需结构化重构 staging buffer)

- Replace getattr(..., 'device', cpu/default) with direct env.device access
- Replace getattr probes for protocol-required attrs (cfg, state, play_capabilities, num_envs)
- Narrow broad except clauses to specific exceptions
- Remove redundant torch.as_tensor calls on already-tensor values
- Update test fixtures to conform to EnvProtocol
- Clean up SimBackend.backend_type fallback in unisim
@TATP-233
TATP-233 force-pushed the cleanup/defensive-code-cleanup branch from c12198c to 4c11d84 Compare November 6, 2026 05:11
@TATP-233
TATP-233 merged commit c3b78c0 into main Nov 6, 2026
12 checks passed
@TATP-233
TATP-233 deleted the cleanup/defensive-code-cleanup branch November 6, 2026 05:20
@TATP-233 TATP-233 mentioned this pull request Nov 6, 2026
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.

1 participant