• 陈泽健's avatar
    feat(scheduler): 多定时任务并发执行 + 五环境部署 + 钉钉通知关键词配置 · 605e6927
    陈泽健 提交于
    多定时任务并发执行(核心):
    - 并发槽位池 MAX_CONCURRENT_UI_EXECUTIONS=3(内存槽位 + DB running/pending 双重守卫)
    - 调度器内存预检 + DB 级兜底,槽位满跳过本次不产生空跑记录
    - _collect_task_cases 支持 case_ids 单用例精准调度(优先于 module_ids,保序过滤 active+case_type)
    - 实时写库改独立 async_session_maker 会话逐条 commit,修复 'prepared' state 会话竞争卡死
    - 最终统计先 await self.db.commit() 结束旧事务再 _count_results,修复 MySQL REPEATABLE READ 旧快照恒为 0
    - running-status 接口补充 active_count/max_concurrent/slots_full
    
    钉钉报告通知:
    - 新增 report_keyword/report_owner 可配置字段(系统设置),全部消息形态注入关键词与负责人员行
    
    执行健壮性:
    - playwright_executor: Home 已渲染判断免多余 goto + goto 后 .block reload 兜底;direct_url 可配置关闭;
      monitor warm-up 清除 navPayload 由 URL 内层路由主导
    - cases.py: _normalize_steps 通用归一化 legacy 步骤,防止单条脏步骤炸整页 500
    
    部署与文档:
    - 新增 9.75 ARM64 部署脚本(deploy-75.sh/deploy_75.py/docker-compose.75.yml/upload_deploy_75.py)
    - 最新前后端包已全量部署 5.60/5.44/5.202/9.75/5.61,md5 三件套一致性校验通过
    - HANDOFF_UI自动化.md(会话 75/76)+ 问题处理/需求文档沉淀 + test_normalize_steps 单测
    Co-Authored-By: 's avatarClaude <noreply@anthropic.com>
    605e6927