2026-07-04 21:01:39 +08:00
|
|
|
|
# 早班巡检自动化 - 执行记录
|
|
|
|
|
|
|
2026-07-13 02:17:03 +08:00
|
|
|
|
## 2026-07-12 09:30 执行结果
|
|
|
|
|
|
|
|
|
|
|
|
**数据来源**:`docs/10-项目管理/任务说明书/IT智能服务台-项目管理主文档.md` (v2.4, 2026-07-10) + `.workbuddy/memory/2026-07-11.md` + `.workbuddy/memory/2026-07-12.md`
|
|
|
|
|
|
**说明**:指定看板路径仍不存在,状态看板在主文档第四章;看板版本滞后2天,07-11/07-12大量产出未入看板
|
|
|
|
|
|
|
|
|
|
|
|
### 关键发现
|
|
|
|
|
|
1. **P0阻塞2项持续未推进**:#48 IP白名单收窄(阻塞≈29天,自06-13)、#81 敏感词检测(阻塞≈8天,自07-04)— 均>3天,需PM立即关注
|
|
|
|
|
|
2. **#105数据不一致持续3次巡检**:已完成区+P1清单双重列出,07-04/07-10/07-11三次巡检指出至今未修正
|
|
|
|
|
|
3. **07-11/07-12大量产出未入看板**:代办事项集成(8bug修复链)、IT资产审批推送、语音识别、截图拍照、复杂场景重构、会议室预定系统(全栈部署)、知识库迭代3功能(44文件43测试通过)、知识迭代3Bug修复、坐席v9/v10部署修复、AI辅助消息框+布局优化技术设计文档
|
|
|
|
|
|
4. **进行中2项**:#91 忘记密码 + #107 后端卷挂载改造(后者07-11已恢复卷挂载,可能已完成需确认)
|
|
|
|
|
|
5. **等用户决策5项**:企微会议室Secret未申请、ITSM API授权待申请、ITSM代办API待抓包、布局优化v2.0的8个待明确事项、知识库迭代待确认
|
|
|
|
|
|
6. **看板版本严重滞后**:v2.4截止07-10,07-11全日+07-12产出均未入看板
|
|
|
|
|
|
|
|
|
|
|
|
### 全局状态
|
|
|
|
|
|
- P0待办:3项(2项长期阻塞)
|
|
|
|
|
|
- P1待办:5项(1项#105已完成未清理,1项#75可能已完成)
|
|
|
|
|
|
- 等决策:5项
|
|
|
|
|
|
- 进行中:2项(1项可能已完成)
|
|
|
|
|
|
|
|
|
|
|
|
### PM行动项
|
|
|
|
|
|
1. 联系网络组确认代理IP段(#48阻塞29天)⚠️紧急
|
|
|
|
|
|
2. 确认敏感词库来源/语气优化范围(#81阻塞8天)⚠️紧急
|
|
|
|
|
|
3. 从P1清单移除#105(连续3次巡检指出)⚠️数据质量
|
|
|
|
|
|
4. 确认#75头像同步是否已完成(07-08已交付12/12测试)
|
|
|
|
|
|
5. 确认#107卷挂载改造是否已完成(07-11已恢复卷挂载)
|
|
|
|
|
|
6. 企微管理后台申请会议室Secret
|
|
|
|
|
|
7. 向ITSM平台方申请app_id/app_secret
|
|
|
|
|
|
8. 确认布局优化v2.0的8个待明确事项
|
|
|
|
|
|
9. 更新看板至v2.5+,将07-11/07-12产出纳入已完成区
|
|
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
2026-07-11 23:13:10 +08:00
|
|
|
|
## 2026-07-11 09:30 执行结果
|
|
|
|
|
|
|
|
|
|
|
|
**数据来源**:`docs/10-项目管理/任务说明书/IT智能服务台-项目管理主文档.md` (v2.4, 2026-07-10) + `.workbuddy/memory/2026-07-11.md`
|
|
|
|
|
|
**说明**:指定看板路径仍不存在,状态看板在主文档第四章;07-11有大量新产出未反映在看板中
|
|
|
|
|
|
|
|
|
|
|
|
### 关键发现
|
|
|
|
|
|
1. **P0阻塞2项持续未推进**:#48 IP白名单收窄(阻塞≈28天,自06-13)、#81 敏感词检测(阻塞≈7天,自07-04)— 均>3天,需PM立即关注
|
|
|
|
|
|
2. **#105数据不一致持续**:已完成区+P1清单双重列出,上次巡检已指出至今未修正
|
|
|
|
|
|
3. **07-11大量产出未入看板**:百度ASR部署、BYOD功能、业务路由推荐(81/81)、复杂场景重构(81/81)、邀请按钮修复、通讯录同步Secret、Mac企微语音最终修复、Dify API Key更新
|
|
|
|
|
|
4. **进行中2项**:#91 忘记密码 + #107 后端卷挂载改造(后者可能已完成,需确认)
|
|
|
|
|
|
5. **新增阻塞项**:企微可信IP白名单(errcode 48009)、Dify Prompt更新(3个功能等待)
|
|
|
|
|
|
6. **看板版本滞后**:主文档v2.4截止07-10,07-11全日产出来入看板
|
|
|
|
|
|
|
|
|
|
|
|
### 全局状态
|
|
|
|
|
|
- P0待办:3项(2项长期阻塞)
|
|
|
|
|
|
- P1待办:5项(1项#105已完成未清理)
|
|
|
|
|
|
- 等决策:4项
|
|
|
|
|
|
- 进行中:2项
|
|
|
|
|
|
|
|
|
|
|
|
### PM行动项
|
|
|
|
|
|
1. 联系网络组确认代理IP段(#48阻塞28天)⚠️紧急
|
|
|
|
|
|
2. 确认敏感词库来源(#81阻塞7天)⚠️紧急
|
|
|
|
|
|
3. 从P1清单移除#105(连续2次巡检指出)
|
|
|
|
|
|
4. 企微管理后台添加可信IP 218.75.34.87
|
|
|
|
|
|
5. Dify后台更新3个Prompt(BYOD/业务路由/复杂场景)
|
|
|
|
|
|
6. 更新看板至v2.5,将07-11产出纳入已完成区
|
|
|
|
|
|
7. 确认#107卷挂载改造是否已完成
|
|
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
|
|
## 2026-07-10 09:30 执行结果
|
|
|
|
|
|
|
|
|
|
|
|
**数据来源**:`docs/10-项目管理/任务说明书/IT智能服务台-项目管理主文档.md` (v2.0, 2026-07-10)
|
|
|
|
|
|
**说明**:指定路径 `docs/10-项目管理/05-项目状态看板/01-项目状态看板.md` 不存在,状态看板已整合至主文档第四章
|
|
|
|
|
|
|
|
|
|
|
|
### 关键发现
|
|
|
|
|
|
1. **P0阻塞2项长期未推进**:#48 IP白名单收窄(阻塞≈27天,自06-13)、#81 敏感词检测(阻塞≈6天,自07-04)
|
|
|
|
|
|
2. **数据不一致**:#105 同时出现在"已完成"和"P1重要"分区,应从P1移除
|
|
|
|
|
|
3. **07-10大量产出**:P0认证Bug修复5个、三端部署上线、生产热修复、访问控制部署、摇人Bug修复
|
|
|
|
|
|
4. **进行中仅1项**:#91 忘记密码-企微扫码重置
|
|
|
|
|
|
5. **风险待处理6项**:H-9/H-11/M-6/M-7/M-8/L-8/L-9
|
|
|
|
|
|
|
|
|
|
|
|
### 全局状态
|
|
|
|
|
|
- P0待办:3项(2项延后阻塞,1项待启动)
|
|
|
|
|
|
- P1待办:4项
|
|
|
|
|
|
- 等决策:3项
|
|
|
|
|
|
- 进行中:1项
|
|
|
|
|
|
|
|
|
|
|
|
### PM行动项
|
|
|
|
|
|
1. 联系网络组确认代理IP段(#48阻塞27天)
|
|
|
|
|
|
2. 确认敏感词库来源(#81阻塞6天)
|
|
|
|
|
|
3. 从P1清单移除#105(已完成)
|
|
|
|
|
|
4. 更新任务说明书中看板路径引用
|
|
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
2026-08-11 09:59:44 +08:00
|
|
|
|
## 2026-08-10 09:00 早班巡检执行摘要
|
|
|
|
|
|
|
|
|
|
|
|
### 通道状态
|
|
|
|
|
|
- **JumpServer-V2 cache 有效**:服务端建 token 返回 201,可免登录复用
|
|
|
|
|
|
- **Gitea 不可达**:`http://192.168.3.200:8418` Failed to connect after 21s(home 无 LAN/VPN),本次 push 跳过,仅本地 commit `b4e21e3`
|
|
|
|
|
|
|
|
|
|
|
|
### 看板 v1.9.2 → v1.9.3-DRAFT(早班巡检同步触发)
|
|
|
|
|
|
- **🔴 P0-1 `/itportal/` 500 修复闭环**:nginx.conf line 139-142 已显式注释"08-03 fix 已生效",今日公网 `curl /itportal/` 实测 = **HTTP 404**(rewrite cycle 不再发生)。看板 v1.9.2 标"待部署"是 08-06 旧观察 → 迁移至"已完成"区,闭锁日期 2026-08-03
|
|
|
|
|
|
- **P0-NEW10(新建)**:后端 debug 端点全清单治理(test-ping/test-error/health/ready/metrics/version/openapi.json)生产暴露。dida task id `6a7928a2e4b068980437bb15`,due 2026-08-13
|
|
|
|
|
|
- **P1 治理-2/3(新建)**:看板-滴答双向同步铁律升级(dida→看板反向同步纳入巡检必做)
|
|
|
|
|
|
- **P1-Alembic / P1-Idx(补登)**:dida→看板反向脱节 — dida `6a705109` Alembic 053-057 迁移脱节 + dida `6a70510f` troubleshooting_templates 索引
|
|
|
|
|
|
- **⚠️ 风险项 1(补登)**:dida `6a752de4` Nginx /h5/ alias+try_files 潜伏 500 隐患
|
|
|
|
|
|
- **console 残留 128 → 129**:h5 101(不变)/ agent 17→20(useScreenCapture/useWebSocket 新增 3 处,源自 5311a52 合并)/ terminal 7→8(useWebSocket.ts 新增 1 处)
|
|
|
|
|
|
- **BLK-A/B 26 → 30 天阈值校正**(2026-07-11 → 2026-08-10)
|
|
|
|
|
|
|
|
|
|
|
|
### dida365 同步动作
|
|
|
|
|
|
- **close** `6a6bfc2be4b03a0a8af7f702` [P1 sensitive_words 13 端点补 auth] — 看板 08-04 已完成,dida 仍 status=0(看板-滴答脱节);本次同步 close(completedTime 2026-08-10 01:25:26 UTC)
|
|
|
|
|
|
- **create** `6a7928a2e4b068980437bb15` [P0-NEW10] — 项目内(6a6c05e0ebcf5e0000000069)P0 列
|
|
|
|
|
|
- 误创建到 inbox(`6a792893`)后已删除
|
|
|
|
|
|
|
|
|
|
|
|
### 公网生产实测
|
|
|
|
|
|
- `/api/health` 200 OK + nginx 405(HEAD method not allowed,正常)
|
|
|
|
|
|
- `/itdesk/` `/itagent/` `/itadmin/` `/itterminal/` 全部 200 OK
|
|
|
|
|
|
- `/itportal/` → 404(P0-1 闭环证据)
|
|
|
|
|
|
- `/api/test-ping` GET 200 + `{"code":0,"data":{"message":"pong"}}`(P0-NEW10 仍存在)
|
|
|
|
|
|
- `/h5/go` 302 → `/h5/v20260808/`;`/itservice/go` 302 → `/itservice/v20260808/`(双入口重指一致)
|
|
|
|
|
|
- 看板 HTML 公网 URL 200 OK 45683 bytes(与本地完全匹配)
|
|
|
|
|
|
|
|
|
|
|
|
### 服务器健康(jumpserver-V2 inspect)
|
|
|
|
|
|
- 5 容器全部 healthy(nginx / backend / redis / neo4j / postgres)
|
|
|
|
|
|
- 磁盘 129G 可用(13%),内存 12144MB available,load 0.77/0.68/0.69(58 天 uptime)
|
|
|
|
|
|
- 后端 `/app/logs/` 6 文件(10.4MB active + 5×20MB 轮转)
|
|
|
|
|
|
- nginx config test OK
|
|
|
|
|
|
|
|
|
|
|
|
### 代码/安全扫描
|
|
|
|
|
|
- console 残留 129 行(详见上)
|
|
|
|
|
|
- 后端 config.py 0 硬编码
|
|
|
|
|
|
- 后端 eval/exec/cmd 注入:0 命中(仅 ast.literal_eval 安全用法)
|
|
|
|
|
|
- 后端 logger 含敏感字段:5 处 token 截短日志([:8]/[:10]),可接受
|
|
|
|
|
|
- 后端 TODO/FIXME:1 处真正 TODO 注释(admin/security_comparison.py:110),其它为命名常量前缀 OK
|
|
|
|
|
|
- P0-NEW9 修复仍未推进
|
|
|
|
|
|
|
|
|
|
|
|
### 受限说明(home 无 VPN)
|
|
|
|
|
|
- WAF path-cache 实测需公网 URL,已用 `curl -sI` 全量替代
|
|
|
|
|
|
- Docker Desktop 不可用,容器状态经 nginx 间接验证
|
|
|
|
|
|
- Gitea push 跳过(192.168.3.200 不可达)
|
|
|
|
|
|
- 后端 logs/*.log JSON 结构化抽样受限于 exec 输出 buffering(部分命令空输出)
|
|
|
|
|
|
|
|
|
|
|
|
### git 状态
|
|
|
|
|
|
- 本地 commit `b4e21e3` 仅看板 .md + .html(遵守铁律,不自动 commit 其它 untracked 修改)
|
|
|
|
|
|
- push Gitea 失败:192.168.3.200:8418 connect timeout 21s
|
|
|
|
|
|
|
|
|
|
|
|
### PM 关注优先级
|
|
|
|
|
|
1. P0-NEW10 / P0-NEW9 debug 端点治理(生产暴露,建议 nginx 层立即 404 防护)
|
|
|
|
|
|
2. P0-3 datetime 时区错位(7 天阈值,仍未修复)
|
|
|
|
|
|
3. P0-4 / P0-5 SessionLocal NoneType + constants 打包错误(同根因,影响 H5 IT 资产推荐)
|
|
|
|
|
|
4. BLK-A/B 30 天催办,建议升级到平台组组长
|
|
|
|
|
|
5. P1-Alembic(dida 6a705109)due 2026-08-09 已逾期 1 天,需尽快跑 053-057 五个迁移
|
|
|
|
|
|
|
|
|
|
|
|
---
|
2026-07-04 21:01:39 +08:00
|
|
|
|
|
|
|
|
|
|
**数据来源**:`.taskboard-cache/任务执行状态看板_cache.json`(缓存时间 2026-07-03T08:44:12)
|
2026-07-13 02:17:03 +08:00
|
|
|
|
**⚠️ 原始看板文件缺失**:`docs/小组任务/任务执行状态看板.md` 不存在,本次巡检基于缓存数据 + 07-03巡检记录 + REVIEW_B_T10.md 综合分析
|
2026-07-04 21:01:39 +08:00
|
|
|
|
|
|
|
|
|
|
### 关键发现
|
2026-07-13 02:17:03 +08:00
|
|
|
|
1. **看板源文件丢失**:`docs/小组任务/任务执行状态看板.md` 路径不存在,该目录也未创建,PRD中有引用但实际文件缺失
|
2026-07-04 21:01:39 +08:00
|
|
|
|
2. **B-T10双重可激活信号**:①依赖B-T8已完成(33/33 PASS) ②REVIEW_B_T10.md显示代码评审已于07-03通过(IS_PASS: YES),但缓存中仍为⏳等待中
|
|
|
|
|
|
3. **3个阻塞已逾期2天**:BLOCK-17(企微SSO)、BLOCK-19(扫码登录超时)、BLOCK-20(管理后台Network Error) 均 due 07-02,现已逾期2天
|
|
|
|
|
|
4. **BLOCK-18状态矛盾持续**:B-T17标记🟢已修复,但BLOCK-18阻塞表仍为🔵排查中(07-03已发现,至今未修正)
|
|
|
|
|
|
5. **B-T12依赖未知**:缓存无依赖关系数据,无法判断是否可激活
|
|
|
|
|
|
6. **数据一致性问题持续**:B-T8(🟢已完成)和B-T17(🟢已修复)使用🟢图标但非"可立即启动"语义
|
|
|
|
|
|
|
|
|
|
|
|
### 全局进度(仅计✅已完成)
|
|
|
|
|
|
- A组:13/19 (68%)
|
|
|
|
|
|
- B组:7/17 (41%) — 若计入🟢已完成/已修复则9/17 (53%)
|
|
|
|
|
|
- C组:19/19 (100%)
|
|
|
|
|
|
- 整体:39/55 (71%) — 若计入🟢则41/55 (75%)
|
|
|
|
|
|
|
|
|
|
|
|
### PM行动项
|
2026-07-13 02:17:03 +08:00
|
|
|
|
1. **恢复看板源文件** — `docs/小组任务/任务执行状态看板.md` 缺失,需重建
|
2026-07-04 21:01:39 +08:00
|
|
|
|
2. 通知B组激活B-T10(依赖已完成 + 评审已通过)
|
|
|
|
|
|
3. 优先解决3个逾期阻塞(BLOCK-17/19/20),已逾期2天
|
|
|
|
|
|
4. 确认BLOCK-18/B-T17真实状态并校正看板
|
|
|
|
|
|
5. 核实B-T12依赖状态
|
|
|
|
|
|
6. 核实A-T14~T16是否实质停滞
|
|
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
|
|
## 2026-07-03 09:30 执行结果
|
|
|
|
|
|
|
|
|
|
|
|
**看板最后更新**:2026-07-02 21:30
|
|
|
|
|
|
|
|
|
|
|
|
### 关键发现
|
|
|
|
|
|
1. **B-T10依赖已解除**:B-T8单元测试33/33 PASS,B-T10(代码评审+PR)应激活为🟢 — 需PM通知B组
|
|
|
|
|
|
2. **3个阻塞问题已逾期1天**:BLOCK-17(企微SSO)、BLOCK-19(扫码登录超时)、BLOCK-20(管理后台Network Error) 均 due 07-02
|
|
|
|
|
|
3. **BLOCK-18状态矛盾**:B-T17任务行标记🟢已修复,但阻塞表仍为🔵排查中
|
|
|
|
|
|
4. **无即将到期任务**(07-03/07-04),但有3个已逾期
|
|
|
|
|
|
5. **6处数据一致性问题**:概览表数据与任务清单不符,B-T11~T16状态逻辑矛盾
|
|
|
|
|
|
|
|
|
|
|
|
### 全局进度
|
|
|
|
|
|
- A组:13/19 (68%) — 3个阻塞逾期
|
|
|
|
|
|
- B组:9/17 (53%) — B-T10待激活
|
|
|
|
|
|
- C组:19/19 (100%)
|
|
|
|
|
|
- 整体:41/55 (75%)
|
|
|
|
|
|
|
|
|
|
|
|
### PM行动项
|
|
|
|
|
|
1. 通知B组激活B-T10
|
|
|
|
|
|
2. 优先解决3个逾期阻塞(BLOCK-17/19/20)
|
|
|
|
|
|
3. 确认BLOCK-18/B-T17真实状态
|
|
|
|
|
|
4. 校正看板数据(概览表+快速检索区)
|
|
|
|
|
|
5. 核实A-T14~T16是否实质停滞
|
2026-08-11 09:59:44 +08:00
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
## 2026-08-07 早班巡检执行摘要
|
|
|
|
|
|
- 看板 v1.9.1-FROZEN:P0表格6条未完成(P0-6为已知噪声,统计口径5条),P1 0,决策阻塞2项且均26天,进行中#81。
|
|
|
|
|
|
- 生产:5个容器均healthy;backend health/ready正常,DB与Redis依赖检查通过;磁盘和内存正常;Nginx配置测试通过。
|
|
|
|
|
|
- 异常:/itportal/=404、/itterminal/=500;/opt/wecom-it-desk/logs/*无输出。
|
|
|
|
|
|
- 只读代码/安全检查发现:凭据硬编码痕迹、SVG媒体未鉴权、OTP/Token日志泄露面、生产响应安全头缺失、XFF信任过宽、依赖与死代码需治理。未修改源代码。
|
|
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
|
|
## 2026-08-08 早班巡检执行摘要(06:00 自动化,本次home execution)
|
|
|
|
|
|
|
|
|
|
|
|
### 通道说明
|
|
|
|
|
|
- **JumpServer 直连不可达**:`https://jumpserver.dc.servyou-it.com` DNS 解析失败(公司 VPN 未连接),v2_ops status 报 NameResolutionError。无法走 PSFTP/plink PTY 直连 10.90.5.110。
|
|
|
|
|
|
- **降级方案**:公网 HTTPS URL 直接巡检(绕过 JumpServer)+ 本地仅读代码扫描。`itsupport.servyou.com.cn` 公网可达(Front 6/8 OK + /api/health OK + 重定向链正常 + 安全响应头 7/7 到位),证据链可信。
|
|
|
|
|
|
- **本地 Docker Desktop 不可用**:`dockerDesktopLinuxEngine` pipe 不存在;容器状态由公网 HTTP 端点间接判定。
|
|
|
|
|
|
|
|
|
|
|
|
### 看板(v1.9.1-FROZEN,未变更)核心数据
|
|
|
|
|
|
- 🔴 P0 待修:5(P0-1 /itportal 500 · P0-3 closing_service datetime naive · P0-4 employee_profile_service SessionLocal · P0-5 constants/ 打包互错 · P0-NEW8 host vs git 结构差异);P0-6 OAuth 信息类属背景噪声。
|
|
|
|
|
|
- 🟡 P1:0。
|
|
|
|
|
|
- 🟢 阻塞:BLK-A 企微会议室 Secret + BLK-B ITSM API 授权,**均 26 天**。
|
|
|
|
|
|
- 🟠 进行中:#81 敏感词检测 v1.2 待排期(v1.1 阶段 1 已完成)。
|
|
|
|
|
|
- ✅ 最近完成:#104 运行期日志查看页结案 + P1 Nginx 7 安全头注入 + sensitive_words 13 端点补 require_admin + 前端 console.log 208 行清理 + troubleshooting_templates ORM 化 + voice_asr auth 加固。
|
|
|
|
|
|
|
|
|
|
|
|
### 生产公网实测
|
|
|
|
|
|
- `/`:200 · `/itdesk/` `/itagent/` `/itadmin/` 全部 200 · `/h5/go` 302→`/h5/v20260807f/`(与记忆一致)· `/itservice/go` 302 重定向正常。
|
|
|
|
|
|
- `/api/health`:200 OK,`{"status":"ok","service":"wecom-it-smart-desk"}`;`/api/ready`:未测试;`/health/ready`:404。
|
|
|
|
|
|
- **DELETE /api/admin/users/1 返回 403**(admin IP 白名单中间件生效,依赖 #48 既有门禁)。
|
|
|
|
|
|
- `https://itsupport.servyou.com.cn/docs/kanban/项目状态看板.html`:200(33338B)—— v1.9.1 已可对外访问。
|
|
|
|
|
|
- **7 个安全头全到位**:HSTS / X-Frame-Options / X-XSS-Protection / Referrer-Policy / Permissions-Policy / COOP / X-Content-Type-Options(08-07 P1 修复闭环证据)。
|
|
|
|
|
|
- H5 静态头像 `/h5/avatars/agent.png`:200 image/png 813504B(v20260807b 修复闭环)。
|
|
|
|
|
|
|
|
|
|
|
|
### 🆕 看板-现实脱节(重要新增治理项)
|
|
|
|
|
|
- 看板 v1.9.1 标"前端 console.log 残留 208 行清理 已完成 2026-08-05"。
|
|
|
|
|
|
- **本次实测反而发现残留**:`console.{log,debug,info}` 合计 **128 行** = h5:101 + agent:17 + admin:0 + terminal:7 + 共 3 类(原仅清 console.log 可能未含 debug/info;或清理后被新增)。
|
|
|
|
|
|
- **结论**:上次结案可能与现实不一致;下次发版前需 vite `terser drop_console: true` 硬开关验证,并 grep 一遍再冻结看板。
|
|
|
|
|
|
|
|
|
|
|
|
### 只读代码/安全扫描(src/backend + src/frontend-*)
|
|
|
|
|
|
- CORS:规范(`settings.cors_origins_list` env 驱动 + 白名单 method + allow_credentials=True)。
|
|
|
|
|
|
- `config.py` 全 grep(SECRET/KEY/TOKEN/PASSWORD):**零硬编码**(环境变量驱动)。
|
|
|
|
|
|
- 后端 `eval/exec/os.system/shell=True/subprocess.call`:**零命中**(无命令注入面)。
|
|
|
|
|
|
- 后端 `logger.*(...)` 含敏感字段(token/password/secret/otp/phone/email):**零命中**。
|
|
|
|
|
|
- 后端 TODO/FIXME/XXX:**零**。
|
|
|
|
|
|
- 后端 main.py 982/987 行 `@app.get("/test-ping"` `/test-error` `/metrics` `/version` **未走环境分支**;**生产公网实测 `GET /api/test-ping`** 返回 `{"code":0,"data":{"message":"pong"},"message":"success"}` —— **生产暴露调试端点**,低危但属治理项,建议 `_is_dev_mode()` 包裹或环境判断后跳过注册。
|
|
|
|
|
|
- 后端 `print()` 命中 3 处 main.py(中间件调试 [MW] 标记)+ 9 处 import_knowledge_to_graph.py(一次性脚本)。
|
|
|
|
|
|
- 前端 `console.{log,debug,info}` 残留 128 行(见上);`console.warn/error` 未在本次扫描口径内。
|
|
|
|
|
|
- lianruan/client.py:84 `verify=False`:已注释"内网自签证书",场景可接受;如改公网/外网需评估。
|
|
|
|
|
|
- avatar.py 代理白名单用 `any(domain in avatar_url for ...)`(substring 而非 host 提取)—— **潜在 SSRF 绕过面**(如 `evil-wework.qpic.cn.attacker.com`),业务仅代理企微头像,**低危但建议改为 `urlparse(avatar_url).hostname` 精确匹配**。
|
|
|
|
|
|
|
|
|
|
|
|
### 整体评估
|
|
|
|
|
|
- 系统可用性:🟢 正常(公网四端点 + API health + 重定向链 + 安全头全 OK)。
|
|
|
|
|
|
- 看板与代码一致性:🟡 出现一处脱节(console.log),需立项修订。
|
|
|
|
|
|
- 阻塞治理:🔴 BLK-A/B 26 天仍未解,**超出 3 天阈值 23 天**。
|
|
|
|
|
|
- P0/NEW8 host 文件结构差异未解,仍存在本地 compose stale 风险(08-07 已对齐本地 compose 是关键修正,但仅本地未 push)。
|
|
|
|
|
|
|
|
|
|
|
|
### 行动建议(PM 关注优先级)
|
|
|
|
|
|
1. P0-5 容器 `app/constants/` 打包互错(连锁影响 P0-4):**建议最高**,影响 H5 IT 资产推荐推送 + 多端 ModuleNotFoundError。
|
|
|
|
|
|
2. P0-NEW8 host vs git 结构差异 + 本地 compose 已对齐但未 push:建议补 push 到 Gitea(公司 LAN/VPN 可达时)。
|
|
|
|
|
|
3. 治理新增:**看板-现实脱节 console.log 128 行残留** → 立项"前端 console 残留治理"或校验 vite 硬开关。
|
|
|
|
|
|
4. 治理新增:**main.py 调试端点 test-ping/test-error 生产暴露** → 加 env 分支保护。
|
|
|
|
|
|
5. BLK-A / BLK-B 26 天催办:建议升级到平台组组长。
|
|
|
|
|
|
|
|
|
|
|
|
### 不在本巡检范围内的现场能力(受限于 home VPN 缺失)
|
|
|
|
|
|
- 容器层 health(wecom_it_backend / nginx / postgres / redis 容器级 healthy/dump 日志);
|
|
|
|
|
|
- 宿主机磁盘 / 内存 / inode / 磁盘 I/O 实测;
|
|
|
|
|
|
- 后端 logs/*.log JSON 结构化抽样与 #104 验收复测;
|
|
|
|
|
|
- Postgres / Redis 连接数与慢查询;
|
|
|
|
|
|
- 本地 compose up 一致性实测(依赖 Docker Desktop)。
|
|
|
|
|
|
下次在 LAN/VPN 内执行可补全。
|
|
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
|
|
## 2026-08-11 09:00 早班巡检执行摘要
|
|
|
|
|
|
|
|
|
|
|
|
### 通道状态
|
|
|
|
|
|
- **jumpserver-V2 早期 cache 有效(09:24:31)**:✅ status 建 token 201,docker ps/df/free/du/nginx config test 全部 PASS
|
|
|
|
|
|
- **jumpserver-V2 后期 DNS 失效(09:25+)**:❌ `jumpserver.dc.servyou-it.com` NameResolutionError(home 无公司 VPN),6.3 部署步骤中断
|
|
|
|
|
|
- **Gitea tailnet 可达**:✅ `https://ds923plus.tail58d872.ts.net` 200 OK,git push 成功
|
|
|
|
|
|
|
|
|
|
|
|
### 看板 v1.9.3-DRAFT → v1.9.4-DRAFT(早班巡检同步触发)
|
|
|
|
|
|
- **🔴 公网版本停滞 3 天**(NEW):jumpserver-V2 + 公网 `curl` 实测 `/h5/go` 仍 `302 → /h5/v20260808/`(08-08 09:30 last deploy),/itservice/go 同样。意味着自 v1.9.3 看板升级(08-10 09:00)至今无新发版
|
|
|
|
|
|
- **🔴 P0-NEW9/NEW10/NEW11 仍 200 暴露**:公网 `/api/test-ping` 200 pong + `/api/test-error` 200 + `/api/openapi.json` 200 OK 424122B(312 端点全公开 = 攻击者字典)
|
|
|
|
|
|
- **🔴 风险 /h5/ 今日到期**:dida `6a752de4` due 2026-08-11 16:00,今晚不修即逾期
|
|
|
|
|
|
- **🔴 P0-3 closing_service 时区错位 5→8 天**:dida `6a72c892` 仍 status=0,due 08-06 已逾期 5 天
|
|
|
|
|
|
- **🟡 BLK-A/B 30→31 天阈值校正**
|
|
|
|
|
|
- **🟡 P1-Alembic 逾期 2 天 + P1-Idx 逾期 4 天**:dida 仍 status=0
|
|
|
|
|
|
- **🟢 v1.9.3-DRAFT 1 天未冻结**:本次合并入 v1.9.4 待审
|
|
|
|
|
|
- **🟢 容器与资源全绿**:5 容器 all healthy(nginx 18h / backend 35h / redis 3w / neo4j 4w / postgres 4w);磁盘 129G 可用(13%);内存 11Gi available;负载 0.64/0.73/0.69(59 天 uptime);后端容器日志 6 文件 122MB;nginx config test OK
|
|
|
|
|
|
|
|
|
|
|
|
### dida365 同步动作
|
|
|
|
|
|
- **create** `6a7a7ae6e4b068a058339f6e` [P0-NEW11] /api/openapi.json 公开 312 端点治理 — 项目内 P0 列,due 2026-08-14
|
|
|
|
|
|
- 误创建到 inbox (`6a7a7ad8e4b01cac6d69c983`) 后已删除
|
|
|
|
|
|
|
|
|
|
|
|
### 公网生产实测
|
|
|
|
|
|
- 5 端点(/itdesk/ /itagent/ /itadmin/ /itterminal/ /)200 OK
|
|
|
|
|
|
- /itportal/ 404(P0-1 仍闭环)
|
|
|
|
|
|
- /h5/go 302 → /h5/v20260808/(08-08 last deploy,3 天无新版本)
|
|
|
|
|
|
- /itservice/go 302 → /itservice/v20260808/
|
|
|
|
|
|
- /api/health 200(容器内 `curl /health` 200 OK) + 7 安全头齐备
|
|
|
|
|
|
- /api/test-ping 200 pong(P0-NEW9 仍暴露)
|
|
|
|
|
|
- /api/test-error 200 返"服务器内部错误"(P0-NEW10 仍暴露)
|
|
|
|
|
|
- /api/openapi.json 200 OK 424122B(P0-NEW10/NEW11 仍暴露)
|
|
|
|
|
|
- 看板 HTML 公网 200 OK 45683B = 本地 45683B(v1.9.3 派生)
|
|
|
|
|
|
|
|
|
|
|
|
### 服务器健康(jumpserver-V2 inspect 早期 cache 窗口)
|
|
|
|
|
|
- 5 容器全部 healthy(nginx / backend / redis / neo4j / postgres)
|
|
|
|
|
|
- 磁盘 129G 可用(13%),内存 12144MB available,load 0.64/0.73/0.69(59 天 uptime)
|
|
|
|
|
|
- 后端容器日志 6 文件(active 17.3MB + 5×20MB 轮转,最后轮转 2026-08-08 23:33)
|
|
|
|
|
|
- nginx config test OK
|
|
|
|
|
|
- Redis ping 报 NOAUTH(正常,容器有密码保护)
|
|
|
|
|
|
- postgres pg_isready = accepting connections
|
|
|
|
|
|
|
|
|
|
|
|
### 代码/安全扫描(本地只读)
|
|
|
|
|
|
- 后端硬编码:0 命中(config.py + clients 均为 env 驱动)
|
|
|
|
|
|
- 后端 logger 含敏感字段:10 处 token 截短([:4]/[:8]/[:10]),可接受
|
|
|
|
|
|
- 后端 eval/exec:0
|
|
|
|
|
|
- 后端 shell=True:0
|
|
|
|
|
|
- 后端 print():3 处 main.py 调试([MW] 中间件标记)+ 9 处 import_knowledge_to_graph 一次性脚本
|
|
|
|
|
|
- 后端 TODO:1 处真正 TODO(admin/security_comparison.py:110)+ 8 处 TODO_ 前缀常量名
|
|
|
|
|
|
- 前端 console 残留:129 行 = h5:101 + agent:20 + admin:0 + terminal:8(持平)
|
|
|
|
|
|
- main.py 调试端点全清单:6 个(test-ping/test-error/health/ready/metrics/version)+ /api/openapi.json 公开
|
|
|
|
|
|
|
|
|
|
|
|
### 受限说明
|
|
|
|
|
|
- **jumpserver-V2 DNS 失效**:6.3 部署步骤(HTML 移动到 docs-public/)跳过。HTML 在 /tmp/kanban_20260811092614.html(53168B, md5=20e7e5678394...)留存,**公网看板 HTML 仍是 v1.9.3 (45683B)**
|
|
|
|
|
|
- **公司 VPN 未连接**:home 不在 LAN,无法直连 jumpserver
|
|
|
|
|
|
- **公网生产端点全 OK**:通过 itsupport.servyou.com.cn 实测可绕过 jumpserver 验证
|
|
|
|
|
|
|
|
|
|
|
|
### git 状态
|
|
|
|
|
|
- 本地 commit `6be361f` 仅看板 .md + .html(遵守铁律,不自动 commit 其它 untracked 修改)
|
|
|
|
|
|
- 推送成功:`feat/task-actions-pivot-v1.8` 快进 `f1b12b7..6be361f`
|
|
|
|
|
|
- Gitea API 核验:feat SHA = `6be361fb63783520f5dcfd7cce386ac9b5523d4f` ✓ = local
|
|
|
|
|
|
- main SHA 不变 = `5db3079d41a8934c841edfecfb8e5c8145e69cd1` ✓
|
|
|
|
|
|
- PR #6 已存在
|
|
|
|
|
|
|
|
|
|
|
|
### PM 关注优先级
|
|
|
|
|
|
1. **P0-NEW9 / P0-NEW10 / P0-NEW11 三件套**(debug 端点 + openapi.json):due 08-12/13/14,**1-3 天内**必须修;否则攻击者字典级暴露持续
|
|
|
|
|
|
2. **风险 /h5/ 500 隐患**(dida `6a752de4`):**今晚 16:00 到期**,最迟明天修复
|
|
|
|
|
|
3. **公网版本停滞 3 天**:建议 PM 评估是否启动新版本发版(含 P0-NEW9 修复 + 前端 PR 累积)
|
|
|
|
|
|
4. **P0-3 closing_service 时区错位 8 天**:dida `6a72c892` 已逾期 5 天
|
|
|
|
|
|
5. **BLK-A/B 31 天阈值**:dida `6a7008e9...870ba` / `...f6c2` 已逾期 4 天,建议升级到平台组组长
|
|
|
|
|
|
6. **P1-Alembic(dida 6a705109)已逾期 2 天 + P1-Idx(dida 6a70510f)已逾期 4 天**
|
|
|
|
|
|
|
|
|
|
|
|
### v1.9.3-DRAFT 1 天未冻结提醒
|
|
|
|
|
|
v1.9.3 在 08-10 09:00 巡检生成 DRAFT 后 24h 未升级为 FROZEN,本次合并入 v1.9.4 待审。**建议 PM 审核后冻结生成 `项目状态看板-v1.9.4-FROZEN.html` 归档**(下次发版恢复 server 后执行)。
|