refactor: Phase 0 scope reset + history rewrite for #705 feature branch (#886, #887) - #890
Merged
TATP-233 merged 0 commit intoAug 4, 2026
Conversation
TATP-233
force-pushed
the
feat/issue-705-manager-mjwarp
branch
from
August 4, 2026 06:09
28c619a to
7194617
Compare
11 tasks
5 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
本 PR 依次执行 #886(Phase 0: Scope reset and repository cleanup)与 #887(Phase 0 history rewrite),从 #882 umbrella 拆出的前两个阶段:
#886 — Scope reset(顶层提交
71946170,即审查 diff 的主体)删除偏离 #882 最终架构的代码与基础设施:
tests/acceptance/)及 phase-gate audit/capture/validate 工具(tooling/、scripts/audit_acceptance.py、scripts/capture_acceptance.py、src/unilab/tools/5 个工具)与全部配套测试;.github/workflows/ci-full.yml)、ci.ymltest-shard 改造、local_evidencemarker 与 dev 依赖 pyproject plumbing;tooling/acceptance/thresholds.py、training_behavior.py、src/unilab/base/backend/{performance,phase_timing}.py、6 个 benchmark 文件及配套测试);conf/support/、src/unilab/support/整体删除,support matrix 回退 main);rsl_rl_devicerunner、DeviceManagedRuntime、device_sync、device-only G1 runtime(managed_device.py、G1MjwarpManagedEnv)、runtime_impl: mjwarp_device_v1路由(conf/ppo/task/g1_walk_flat/mjwarp.yaml、entrypoints.py);backend/{graph,telemetry,device,mutation_batch}.py、mjwarp/{device,controller,telemetry,*mutation,recompute,armature_recompute}.py)及SimBackend上只服务该路径的抽象方法(get_transfer_*、reset_transfer_telemetry、create_reset_phase_timing_session、get_device_graph_diagnostics、get_mutation_performance_diagnostics);保留(#882 后续 Phase 的基础):backend-neutral manager 核心(spec/registry/compiler/plan/fingerprint/runtime)、physics contract seed(typed batch/reset/mutation)、MuJoCo host reference、mjwarp identity + 最小 host correctness adapter、
keyed_rng、host Numba fused executor、backend isolation/public selector/lifecycle/numerical parity owner tests。显式退役诊断(替代旧
device_resident路径):新增src/unilab/training/retirement.py,旧 owner YAML 请求(task=g1_walk_flat/mjwarp)、含mjwarp_device_v1/device_resident/device ABI 标记的 checkpoint、resume、playback 请求在 train/play/viser/sim2sim 五个入口抛出RetiredDevicePathError并给迁移提示,不再产生 obscure import/attribute/shape error。#887 — History rewrite(分支全部历史)
/tmp/issue-705-feature-branch-backup.bundle(99MB,git bundle verify通过;feat/issue-705-manager-mjwarp本地与远程引用均未改动);git filter-repo --refs main..HEAD --path tests/acceptance --invert-paths:从本分支可达历史中清除全部已提交的大型 raw artifact(最大单文件 53MB,含历史路径tests/acceptance/issue_705/与tests/acceptance/manager_mjwarp/)与 issue-specific generated evidence;git diff为空);main(b2a00c48)与其他分支引用未变化;tests/acceptance在重写后历史中 0 可达对象;剩余最大 blob 为uv.lock(875KB,正常源码)。与 #887 的步骤偏差(按用户指示)
用户要求"新建分支 + PR"交付,因此没有按 #887 步骤 5-6 force-push
feat/issue-705-manager-mjwarp并通知协作者。本分支是 #705 feature branch 的重写替代品:合入建议是用本分支 force-push 更新 #847(而非普通 merge——merge 会让旧 artifact 历史经 merge commit 保持可达,purge 失效),或关闭 #847 改由本 PR 承接。Validation
make test-all中无关测试):pytest tests/base tests/manager tests/training tests/config tests/dr tests/tools tests/envs/locomotion/g1 tests/scripts tests/utils tests/integration— 1100 passed, 0 failed;ruff check src/ scripts/ tests/— 通过;mypy src/unilab— 267 文件无 issue;train_rsl_rl.py task=g1_walk_flat/mjwarp立即抛RetiredDevicePathError(含迁移提示);make test-all未完整运行(用户明确指示本次只跑核心测试);GPUslow车道测试中tests/basemjwarp/mujoco 相关 32 个已在 RTX 4090 上通过。Closes #886
Refs #887, #882, #705