fix: 回归脚本 Windows 可用 + 加"禁止对生产库跑"安全闸;迁移脚本去掉 GBK 控制台会崩的符号
- scripts/regression_test.py:
* signal.alarm 加 hasattr 守卫(Windows 上直接 AttributeError 退出,
backlog A4)→ 本机终于能跑"一条命令扫全接口 500"
* 新增安全闸:.env 声明 prod、或目标库 app_meta.deployment_env=prod 时
**拒绝运行**(exit 3)。本脚本会发真实写请求(设备池增删/剪贴板注入/
亮灭屏),跑在生产配置上就是拿正式数据做实验
- scripts/migrate_sqlite_to_mysql.py: stdout 重设为 UTF-8 并去掉 ✔/✘ 符号。
实测在 GBK 控制台里打印 ✔ 会抛 UnicodeEncodeError,而且崩在"写库标签"之前,
看起来像迁移失败(数据其实已搬完)
- doc/backlog/TODO.md: A4 移入已完成;gitignore 条目更新(mcp_audit.log 已补,
uiauto.pid 仍缺);登记 MySQL 迁移与回归安全闸
实测(对 192.168.2.27 的 auto_control_dev):数据迁移 12 张表逐表 SHA-256 一致;
应用直连 MySQL 全部接口 200,设备名/指纹唯一索引语义与 SQLite 一致(空值可重复、
非空重复被拦、大小写敏感 A08≠a08);备份导出→预览→应用往返正常。
This commit is contained in:
+5
-9
@@ -32,14 +32,6 @@
|
||||
- **涉及**:`web_server.py`(注册钩子)+ 需要回归所有写接口(前端、脚本、MCP 的 `platform_client` 都已带 token,风险点是第三方直接调 API)。
|
||||
- **验收**:注册后所有写接口在缺 token 时返回 403,且前端/MCP 全链路正常。
|
||||
|
||||
### A4. 路由回归脚本在 Windows 上不可用
|
||||
|
||||
- **现象**:`python scripts/regression_test.py` 直接报 `AttributeError: module 'signal' has no attribute 'alarm'` 退出。
|
||||
- **原因**:脚本用了 Unix 专有的 `signal.alarm`(第 29 行),docstring 里的示例路径也是 `.venv/bin/python`。
|
||||
- **影响**:本机(Windows)开发时没有"一条命令扫全接口 500"的手段——A1/A2 这类 import 遗漏本可被它第一时间发现。
|
||||
- **涉及**:`scripts/regression_test.py`(把 `signal.alarm` 换成跨平台超时,或 `hasattr` 守卫)。
|
||||
- **验收**:Windows 与 Linux 都能跑;能扫出 A1。
|
||||
|
||||
### A5. 前端 `--card-line` 变量未定义
|
||||
|
||||
- **现象**:AI 控制台的会话/经验/动作模态框边框失效(`border:1px solid var(--card-line)` 解析为无效值)。
|
||||
@@ -74,7 +66,7 @@
|
||||
- `ANDROID_ADB_SERVER_ADDRESS/HOST/PORT` 会被 `.env` 注入 `os.environ`,**adb 客户端**据此把所有调用指向 220;`ANDROID_ADB_SERVER_HOST` 是非标准键(adb 不认)。
|
||||
- 期望:在配置速查里写明该行为与取舍,或本地去掉这三行改走本机 adb。
|
||||
|
||||
- [ ] **`.gitignore` 漏项**:`data/mcp_audit.log` 与 `data/uiauto.pid` 未被忽略(`git status` 会显示为未跟踪);`data/apks/` 目录无占位文件。
|
||||
- [ ] **`.gitignore` 漏项**:`data/mcp_audit.log` 已补(`data/*.log`,2026-09-13);**`data/uiauto.pid` 仍未忽略**(`git status` 会显示为未跟踪);`data/apks/` 目录无占位文件。
|
||||
|
||||
- [ ] 220 的 Tailscale / adb server(5037) 可达性巡检(曾出现连不通超时)。
|
||||
|
||||
@@ -129,3 +121,7 @@
|
||||
- [x] 监控页任务卡去掉「编辑/删除」,只留执行/停用 + 显示**覆盖设备**。
|
||||
- [x] 备份覆盖清单补 `agent_action` / `app_meta` + 导出/导入双向自检。
|
||||
- [x] AI 控制台:Markdown 渲染、推理链可折叠、token 用量显示。
|
||||
- [x] 路由回归脚本 Windows 可用(2026-09-13:`signal.alarm` 加 `hasattr` 守卫)+ 新增安全闸:
|
||||
配置或目标库被标为 `prod` 时**拒绝运行**(脚本会发真实写请求,不能拿生产数据做实验)。
|
||||
- [x] 数据库从 SQLite 迁到 MySQL:连接层多环境配置 + 防混库校验、schema 收敛到 ORM metadata、
|
||||
备份/恢复改为「SQLite 归档 + 单事务整库替换」、迁移脚本(2026-09-13)。
|
||||
|
||||
Reference in New Issue
Block a user