5.5 KiB
5.5 KiB
Simulation Mode Removal Checklist
概述
本文档列出了需要移除的所有simulation_mode相关代码,基于代码库扫描结果。
需要移除的文件和代码
1. 核心PyMechanical组件
1.1 backend/pymechanical/session_manager.py
需要移除的代码:
__init__(self, simulation_mode: bool = False)参数self.simulation_mode = simulation_mode赋值- 所有
if self.simulation_mode:条件分支(约15处) - 仿真模式回退逻辑:
self.simulation_mode = True return self.start_session(batch_mode) get_session_info()中的"simulation_mode": self.simulation_mode
具体位置:
- 第38行:
self.simulation_mode = simulation_mode - 第69行:
if self.simulation_mode: - 第154行:
self.simulation_mode = True - 第160行:
self.simulation_mode = True - 第183行:
if not self.simulation_mode and not os.path.exists(file_path): - 第189行:
if self.simulation_mode: - 第305行:
if self.simulation_mode: - 第403行:
if self.simulation_mode: - 第463行:
if self.simulation_mode: - 第507行:
if self.simulation_mode: - 第559行:
if self.simulation_mode: - 第635行:
if self.simulation_mode: - 第700行:
if self.simulation_mode: - 第793行:
if self.simulation_mode: - 第841行:
if self.simulation_mode: - 第931行:
if self.simulation_mode: - 第980行:
if self.simulation_mode: - 第1065行:
"simulation_mode": self.simulation_mode,
1.2 backend/pymechanical/mesh_quality_checker.py
需要移除的代码:
- 仿真模式检测逻辑(第74-78行)
self.simulation_mode属性设置if self.simulation_mode:条件分支(第92行)_simulate_quality_check()方法
1.3 backend/utils/visualization_exporter.py
需要移除的代码:
- 仿真模式检测逻辑(第67-71行)
self.simulation_mode属性设置if self.simulation_mode:条件分支(第103行、第440行)_simulate_image_export()方法get_export_summary()中的'simulation_mode': self.simulation_mode
1.4 backend/utils/mechdb_reader.py
需要移除的代码:
__init__(self, simulation_mode: bool = False)参数self.simulation_mode = simulation_mode赋值if self.simulation_mode:条件分支(第47行)_simulate_mechdb_reading()方法
2. API路由层
2.1 backend/api/routes.py
需要移除的代码:
generate_mesh()函数中的simulation_mode参数处理:simulation_mode = False if request.is_json and request.json: simulation_mode = request.json.get('simulation_mode', False)- 传递给处理函数的simulation_mode参数
2.2 backend/utils/mesh_processor.py
需要移除的代码:
process_blade_mesh_with_state_updates()函数的simulation_mode参数process_blade_mesh()函数的simulation_mode参数- 传递给ANSYSSessionManager的simulation_mode参数
3. 测试文件
3.1 需要更新的测试文件
以下测试文件需要移除simulation_mode参数:
真实ANSYS测试(移除simulation_mode=False):
- test/test_verify_mesh.py
- test/test_simple_verify.py
- test/test_simple_mesh.py
- test/test_real_ansys.py
- test/test_pymechanical_debug.py
- test/test_named_selections.py
- test/test_mesh_success.py
- test/test_mesh_like_example.py
- test/test_mesh_generation.py
- test/test_mesh_files.py
- test/test_mesh_controller.py
- test/test_integrated_mesh_controls.py
- test/test_geometry_import.py
仿真模式测试(需要删除或重写):
- test/test_suite.py 中的
test_session_manager_simulation_mode() - test/test_named_selections.py 中的
test_simulation_mode() - test/test_mesh_quality.py 中的仿真模式测试
- test/test_mesh_processor.py 中的simulation_mode=True调用
- test/test_mesh_generation.py 中的仿真模式测试
- test/test_mesh_controller.py 中的仿真模式测试
- test/test_integrated_mesh_controls.py 中的
test_simulation_mode() - test/test_visualization_exporter.py 中的仿真模式断言
- test/test_mechdb_reader.py 中的仿真模式测试
4. 配置和文档
4.1 需要更新的文档
- 移除用户文档中关于仿真模式的说明
- 更新API文档移除simulation_mode参数
- 更新README中的使用示例
移除策略
阶段1:核心组件清理
- 从ANSYSSessionManager开始,移除所有仿真逻辑
- 更新其他PyMechanical组件
- 清理工具类中的仿真模式
阶段2:API层清理
- 移除API路由中的simulation_mode参数处理
- 更新mesh_processor函数签名
- 确保所有调用都使用真实模式
阶段3:测试更新
- 移除所有仿真模式测试
- 更新真实ANSYS测试移除simulation_mode参数
- 确保测试覆盖真实功能
阶段4:文档和配置
- 更新所有相关文档
- 清理配置文件
- 更新部署脚本
验证清单
- 代码库中不再包含"simulation_mode"字符串(除了注释和文档)
- 所有ANSYSSessionManager调用都不传递simulation_mode参数
- 所有API调用都只使用真实ANSYS功能
- 测试套件运行正常且只测试真实功能
- 文档已更新移除仿真模式说明
风险评估
高风险区域
- ANSYSSessionManager: 核心组件,影响所有功能
- API路由: 影响前端集成
- 测试套件: 需要确保测试覆盖度不降低
缓解措施
- 分步骤进行,每步都进行测试验证
- 保留备份版本以便回滚
- 在测试环境充分验证后再部署到生产环境