butubb
|
c111cb9a5e
|
fix: STF未就绪设备纳入维护终端列表(adb可达但agent启动失败,标记stf_not_ready)+ 卸载/检查agent自动先connect
|
2026-08-17 11:02:43 +08:00 |
|
butubb
|
a51857d143
|
feat: 步骤新增剪贴板注入(可注入+粘贴,批量发链接场景)+ adb终端快捷命令 tcpip 5555 转网络调试
|
2026-08-15 15:53:31 +08:00 |
|
butubb
|
17f849f723
|
feat: STF设备管理彻底删除(脚本+断开+STF API清记录)+ 一键重连(后台跑connect脚本)+ 跳过原因日志区分离线/未就绪 + SSH超时错误分类
|
2026-08-15 15:22:55 +08:00 |
|
butubb
|
e12219c979
|
feat: 强制安装APK(推送+pm install 绕过厂商弹窗)+ 定位设备(亮屏+大字定位页,结束定位关闭浏览器含后台)+ 一键亮屏/息屏(并发全部设备)
|
2026-08-15 15:03:01 +08:00 |
|
butubb
|
060157ea1a
|
refactor: 前端JS拆分为8个模块(base/list/monitor/editor/tasks/tools/apps/admin,按依赖顺序加载)+ 删除废弃文件(start_web.bat/main.py/fix_web.bat/cleanup.py,web已全覆盖)+ 文档同步 + 修复/api/summary缺导入
|
2026-08-11 14:53:04 +08:00 |
|
butubb
|
136613bc12
|
refactor: 列表统一为 setListPager 搜索+分页+排序(_lpSort 升序/降序/取消,中文数字感知,空值排后);监控设备表并入统一排序;STF设备管理/应用版本管理接入统一列表
|
2026-08-11 14:12:52 +08:00 |
|
butubb
|
3bd56b4f59
|
feat: 工具Tab新增应用版本管理(按包名并发查询所有设备安装版本)+ 文档同步更新(README/API/ARCHITECTURE/DEPLOY:工具Tab各工具、条件判断if_el+OCR、STF设备管理、.env密钥配置)
|
2026-08-11 10:57:14 +08:00 |
|
butubb
|
5dd605e3a0
|
feat: 工具Tab新增STF设备管理(读写220脚本DEVICES列表+docker adb connect/disconnect,220侧timeout兜底防卡死)+ 修复设备列表:5555重复显示
|
2026-08-11 10:50:41 +08:00 |
|
butubb
|
8e23541380
|
refactor: 应用Tab整体并入工具Tab(应用管理/设备已装应用成为工具子分栏),移除独立应用导航
|
2026-08-11 10:42:32 +08:00 |
|
butubb
|
2f2d8cc184
|
feat: 条件判断步骤(if_el 双分支:找到/未找到各执行独立步骤,可嵌套循环/条件;OCR识别选择器匹配图片文字,RapidOCR 跨平台实现含命中点击)+ 动作编辑器布局优化(操作库分组/加宽、任务弹窗加宽)
|
2026-08-11 10:38:47 +08:00 |
|
butubb
|
159649b6a0
|
refactor: adb远程终端与Tailscale管理从维护页移至工具Tab(维护仅保留STF服务),设备列表共享缓存+复用esc
|
2026-08-11 10:00:15 +08:00 |
|
butubb
|
2f1003bf1f
|
feat: 新增工具Tab - 剪贴板注入(多选本地adb/STF设备批量注入文字,u2 setClipboard 实现,实测支持中文/引号/换行)
|
2026-08-11 09:53:32 +08:00 |
|
butubb
|
cff0fc6a79
|
feat: 任务/应用/维护页统一页内子分栏(showSubTab 泛化),维护页首拆子分栏;模板自动重载(TEMPLATES_AUTO_RELOAD)
|
2026-08-11 09:38:29 +08:00 |
|
butubb
|
6051c5c2fd
|
fix: Tailscale 设备表接入统一分页/搜索逻辑(setListPager),修正 IP 可修改的过时提示文案
|
2026-08-11 09:19:41 +08:00 |
|
butubb
|
de66c6194b
|
feat: 维护页 Tailscale 管理(设备列表/改名/授权/密钥不过期/设置IP/auth key,独立模块 core/tailscale_client.py)+ 密钥迁移 .env(STF_TOKEN/WEB_SECRET_KEY/TAILSCALE_API_KEY 不再入库)+ 修复设备更新端点(/device/{id} 405,改用 /name /authorized /key 专属端点)+ auth key description 仅 ASCII
|
2026-08-11 09:06:59 +08:00 |
|
butubb
|
06a9df111a
|
feat: 用户权限系统(权限位/管理员全权限/前端隐藏/最后管理员保护)
|
2026-08-11 08:27:33 +08:00 |
|
butubb
|
794f40a880
|
feat: 调度简单设置(频率选择器)+ 运行窗口 + 下次运行列
|
2026-08-11 08:27:33 +08:00 |
|
butubb
|
3320035c9e
|
feat: 维护 Tab(STF 容器一键重启 + adb 远程终端,含设备快捷选择/卸载 agent/重连)
|
2026-08-11 08:27:33 +08:00 |
|
butubb
|
8a3cd67a97
|
fix: 设备异常状态清除(清除异常/一键清除,检查与更新原子化防竞态)
|
2026-08-11 08:22:24 +08:00 |
|
butubb
|
8a675923cd
|
feat: 失败任务汇总 - /api/summary + 监控页异常面板
- 新增 /api/summary:各状态计数 + 异常设备列表(last_error/任务/重试次数/时间)
- 监控页新增"异常汇总"面板:显示失败/异常设备及错误信息,方便长期运行观察健康度
|
2026-08-08 21:33:35 +08:00 |
|
butubb
|
47262abdcd
|
refactor: 架构优化-前端(JS 拆分外部文件、监控定向更新)
- 前端 JS 从 monitor.html 内联移到 static/admin/monitor.js(HTML/JS 分离,便于维护)
- 监控页 5 秒刷新时设备数据/分页/排序未变则跳过整表重渲染,减少 DOM 抖动
|
2026-08-08 20:55:53 +08:00 |
|
butubb
|
fba8c3abbb
|
fix: 循环块/输入文字模式重开显示不一致 - 渲染时按保存值显示对应字段
_toggleLoopMode/_toggleInputMode 只在 select onchange 时调用,重开编辑不触发,
导致"按时间"被选中但右侧仍显示次数框。改为渲染时直接按保存的 loop_mode/mode
决定显示轮次字段还是时长字段/随机还是指定文字。
|
2026-08-08 17:01:34 +08:00 |
|
butubb
|
47b3d0bf03
|
fix: 监控进度显示优化 - 通用任务改为"已执行操作数",操作计数紧凑展示
- 通用步骤任务进度语义:done=累计执行操作次数,不再配固定 total(原来显示 33/2 步骤 无意义)
- 前端操作计数徽章按数量降序、最多显示6个,超出折叠为 +N
- 移除无意义的百分比进度条(无固定总数时不显示)
|
2026-08-08 16:57:40 +08:00 |
|
butubb
|
aeffb1b95b
|
fix: 元素抓取生成精确选择器,无属性元素用锚点祖先限定;抖音点赞找不到按钮不再双击屏幕
- 元素选择器生成:无 resource-id/text 的元素改用最近有唯一属性祖先限定范围,
并带同 class 兄弟序号消歧(如 //*[@resource-id=".."]/RelativeLayout[3]),
不再给裸 class(如 //android.widget.ImageView 会误匹配其他元素)
- 仍无法限定的宽泛选择器标记 broad,前端元素列表显示"⚠宽泛"提示
- 抖音 like 动作:by_element 找不到点赞按钮改为跳过,不再双击屏幕中央(避免误触)
|
2026-08-08 16:49:38 +08:00 |
|
butubb
|
4186eb1266
|
fix: 步骤参数同步误把子步骤输入写进父步骤,导致动作组概率失效
_syncParams 用 .sc-body [data-key] 读取卡片输入,但嵌套子步骤也有 .sc-body,
是卡片后代,其输入被写进父步骤 params(如 group 的 probability 被子步骤的 100 覆盖)。
改为只读卡片直接子级 :scope > .sc-body,group 概率与子步骤概率各自独立。
|
2026-08-08 16:34:09 +08:00 |
|
butubb
|
473dc1909d
|
feat: 前端整体增强(应用查看UI/元素选择/步骤编辑器/拖拽/概率/分页/动作管理)
- 应用Tab:设备已装应用区块(应用名+版本+versionCode+路径)、安装弹窗设备显示 IP·型号
- 元素抓取:截图按 bounds 命中测试选最小元素,跳过全屏容器 overlay
- 步骤编辑器:输入实时同步+localStorage草稿自动保存(防丢内容)
- 拖拽修复:画布 drop 只绑定一次+stopPropagation+延迟渲染,可拖入循环块且不重复
- 步骤概率触发字段、循环按轮次/时间切换、监控页预计结束时间
- 全部列表统一搜索+分页(设备/任务/应用/分组/用户/动作)
- 自定义动作管理模块(列表/新建/编辑/删除)、步骤编辑器容器化、嵌套循环移动修复
|
2026-08-08 16:31:06 +08:00 |
|
butubb
|
468e86f0a9
|
feat: 新增通用步骤任务+元素抓取,完善全部项目文档
- 新增 generic_steps 通用步骤任务(可视化步骤编辑器编排流程,支持 open_app/click/swipe/input_text/wait/loop/group)
- 新增 core/uiauto_helper.py 封装 uiautodev 元素抓取客户端
- web_server 新增元素抓取/截图/设备列表等 API
- monitor.html 新增步骤编辑器、元素抓取模态框、独立关闭逻辑
- 新增 README.md 项目总览(快速上手/架构/配置/FAQ)
- 新增 doc/ARCHITECTURE.md 架构详解、doc/DEPLOY.md 部署指南、doc/API.md 接口文档
- 修复 doc/TASK_DEV.md:移除已删除的 comment 引用,补充 generic 包,更新注册示例
- .gitignore 忽略 .claude/ 工具产物
|
2026-08-08 10:40:06 +08:00 |
|
butubb
|
b0f808fb8c
|
fix: 修复所有弹窗打开后无法关闭的问题 - 重写closeModal先关闭再清理并try-catch容错 - 首页路由加no-store响应头避免浏览器缓存旧HTML
|
2026-08-07 15:26:10 +08:00 |
|
butubb
|
0fe2a2fc5f
|
feat: 新增设备画面截图、列表复选框/排序/批量停止,修复端口绑定失败
|
2026-08-07 15:08:36 +08:00 |
|
butubb
|
bce48fc137
|
chore: 初始化仓库(排除 adb 二进制文件以解决推送超时)
|
2026-08-07 13:55:48 +08:00 |
|