Files

38 lines
2.0 KiB
Markdown
Raw Permalink Normal View History

# 代码审核问题 Checklist(给其他 AI
完整说明见:`Doc/CODE_REVIEW_ISSUES_2026-05-29.md`
---
## P0
- [ ] **ISSUE-10** `SimpleLite/Persistence/Repositories/CarRepository.cs``CarTypeBinder` 白名单过严,可能拦 `System.String`/`System.Int32` 等,导致 `DeserializeObject(car)` 失败。修复:放宽安全 BCL 类型或缩小 `TypeNameHandling.Auto` 范围;用真实 DB 回归。
## P1
- [ ] **ISSUE-05** `SimpleLite/Web/ReflectionApiController.cs``SetProjectField` / `SetAppConfigField` 未检查 `[FieldMember].writableViaApi`,与 `MapObjectFactory.TryApplyField` 不一致。修复:writableViaApi=false → 403。
- [ ] **ISSUE-04** 未跟踪文件需 `git add``MiGu.Server/Launcher/*``WorkspaceToolbarApiController.cs``MonitorVisibilityConfig.cs``CurveControlPointDragService.cs`
## P2(可选)
- [ ] **ISSUE-01** `AuthController.Login``MaybeStart` 仍可能阻塞 ~8s。
- [ ] **ISSUE-02** `Me`/`SwitchScope` — 复用外部 SimpleLite 时 RunMode 可能不准。
- [ ] **ISSUE-03** `appsettings.json` — 默认 admin 密码,生产需覆盖。
- [ ] **ISSUE-06** `GetMonitorConfig` — GET 写 `Configuration.conf.monitorVisibility`
- [ ] **ISSUE-07** `PostMonitorConfig` — POST 即写 `simple.json`
- [ ] **ISSUE-08** `WorkspaceToolbarApiController.GetState` — 响应格式与 `ReflectionEnvelope` 不一致。
- [ ] **ISSUE-09** MapEdit vs Toolbar 录制/图层 API 重复,易漂移。
- [ ] **ISSUE-11** `SimpleSceneRenderer` — 极端高频 redraw 竞态(观察)。
- [ ] **ISSUE-12** `Car.OnlineCar`/`OfflineCar` — Web 反射权限确认。
- [ ] **ISSUE-13** `WorkspacePickSession``realtime=true` 待 CycleGUI。
- [ ] **ISSUE-14** `WorkspaceViewModeService.TryBind2DPanOnly` — 依赖 CycleGUI 版本。
- [ ] **ISSUE-15** `WorkbenchTableRowUi` — 双击 400ms 模拟(低优)。
- [ ] **ISSUE-16** 底栏 CAD 已移除 — 产品确认。
---
## 推荐顺序
`ISSUE-10``ISSUE-05``ISSUE-04` → 其余 P2