岗位助手(数字员工)系统状态评估 — 2026-08-25(更新)

岗位助手(数字员工)系统状态评估 — 2026-08-25(更新)

评估方式:静态结构审计(70 个员工定义 / 55 个 worker 实现 / 路由表)+ 真实运行冒烟测试。

结论:整体可用。已完成 87→70 精简合并(5 组合并,功能零丢失),所有员工零参数可跑通。


一、架构与规模

  • 入口:server.jsstartDigitalStaff()boss-scheduler/index.js(统一版 BossScheduler,本地 LiteScheduler)→ runStaffOnce(staffId, intent)
  • 调度分发顺序(lite-scheduler _dispatchWorkerPath):loop/goalpipelineworker 脚本capability 单能力generic
  • 员工定义源:server/boss-scheduler/profiles/local.yaml70 个员工全部 enabled
  • Worker 实现:server/boss-scheduler/workers/55 个 .js 文件
维度数量说明
已定义员工70全部 enabled
有可用 worker 实现55key 在 WORKERS 映射且文件存在
仅 capability(无 worker)7import / inspect / repair / compare / valuate / collect / identify
无 worker 但含 pipeline/loop 配置8走 pipeline / loop / generic 路径
孤儿 worker 文件(未被任何员工引用)0已清理

2026-08-25 精简合并(87→70)

合并组前→后能力保留
芯片DS-CHIP-001~007(7)→DS-CHIP-001(1)identify/create/repair/compare/optimize/generate/inspect 全保留
采购闭环DS-PROC/COST/VEN/ECR-CHAIN-001(4)→并入DS-PROC-001询价/比价/成本分析/供应商评估/ECR审核 全保留
GOAIDS-GOAI-SCHED/PROC/EQUIP(3)→DS-GOAI-001(1)车间主任+采购+设备管理 三合一
巡检闭环DS-INSPECT/REPAIR/REINSPECT-CHAIN-001(3)→DS-GOAI-INSPECT-001(1)巡检→修复→复检 三合一
IT工具DS-IDENTIFY/REPAIR/INSPECT/COMPARE-001(4)→DS-DATA-OPS-001(1)新建data-ops-worker统一入口,按action分发
质量调度DS-QUALITY-001(1)保留,改为调度入口自动路由到IQC/IPQC/OQC

二、关键词路由测试(staff-router.matchStaff)

对 12 条真实业务语句做路由,11 条命中正确,1 条偏差:

| 用户语句 | 命中员工 | 评分 | 备注 |

|---|---|---|---|

| 检查磷酸萃取工序质量数据 | DS-OPS-001 | 20 | ✅ |

| 分析精密转轴成本结构 | DS-COST-001 | 20 | ✅ |

| 库存是否缺料 | DS-STOCK-001 | 10 | ✅ |

| 供应商评审 | DS-VEN-001 | 30 | ✅ |

| 跑白酒行业知识库管道 | DS-KBPIPE-001 | 30 | ✅ |

| 工艺参数异常帮我修复 | DS-PROC-001 | 15 | ⚠️ 应为 DS-PROC-DATA-001 / DS-STAT-001 |

| 系统健康吗 | DS-SYS-001 | 30 | ✅ |

| 生成经营分析报告 | DS-REPORT-001 | 45 | ✅ |

| 查 NCR 调查单 | DS-NCR-001 | 20 | ✅ |

| SPC 控制图超界 | DS-SPC-001 | 20 | ✅ |

| 今天有什么新闻 | DS-NEWS-001 | 10 | ✅(低分仍命中) |

| 写一份产品文案 | DS-CONTENT-001 | 5 | ✅(低分仍命中) |


三、真实运行冒烟测试(runStaffOnce)

全部 success=true,且返回的是真实数据(非空壳):

| 员工 | 耗时 | 结果 |

|---|---|---|

| DS-SYS-001 系统运维师 | 485ms | 系统全部健康 ✅ |

| DS-PROC-DATA-001 工艺数据修复员 | 1.5s | 读 sccapp_process_data.db,发现 PPS 主数据质量问题:工艺文件空 5217 / 孤儿 3230 / 无名 3489 / 字段空 47980,生成 HTML 报告 ✅ |

| DS-STAT-001 数据巡检员(capability 路径) | 5.2s | 走 identify→inspect→generate 管线 ✅(修复前此路径瘫痪,见第四节) |

| DS-STOCK-001 库存管家(SCSAI 后端) | 54ms | 查 SCSAI 得 6 个库存项、4 项低于安全水位,预估补货 ¥485,504 ✅ |

2026-08-25 新增员工验证

| 员工 | 零参数结果 | 数据来源 |

|------|-----------|---------|

| DS-OPERATOR-001 操作工 | SUCCESS(6条待执行工单) | 种子数据 |

| DS-LINELEADER-001 班组长 | SUCCESS(6单,完成率55.5%) | 种子数据 |

| DS-KITTER-001 物料员 | SUCCESS(6工单,0缺料) | 种子数据 |

| DS-WORKREPORT-001 生产报工 | SUCCESS(6单,1单逾期) | 种子数据 |

| DS-IPQC-001 过程检验员 | SUCCESS(3在制工单+15检验特性) | SCSAI+种子 |

| DS-PROD-TRACKER-001 生产跟单员 | SUCCESS(5在制工单,0逾期) | 种子数据 |

| DS-PROD-STAT-001 生产统计员 | SUCCESS(6单,产量1248,OEE=54.3%) | 种子数据 |

| DS-IQC-001 来料检验员 | DEGRADE(SCSAI无来料NCR) | 诚实降级 |

| DS-OQC-001 成品检验员 | DEGRADE(SCSAI无成品NCR) | 诚实降级 |

| DS-CUSTOMER-COMPLAINT-001 客诉处理员 | DEGRADE(无客诉记录) | 诚实降级 |

注:MTClaw 本地加速服务未启动,能力型员工目前走规则引擎兜底。若要提高复杂任务质量,需启动本地 MTClaw 加速服务(http://127.0.0.1:18790)。


四、发现并修复的硬性 Bug(关键)

Bug 1:rule_engine.db 旧 schema 导致规则引擎初始化失败(已修复)

  • 现象:所有走「能力 / 规则引擎」路径的员工(import / inspect / repair / compare / valuate / collect / identify 等 7 个 + 规则引擎兜底)启动时报 [sqlite-compat] exec 失败 (rule_engine.db): no such column: rule_id,规则引擎初始化中断,每次执行卡 ~10s/步后降级。
  • 根因rule_engine.db旧版代码创建,sciot_corrections / sciot_rule_candidates / sciot_rule_history 三张表结构与新版不一致(缺 rule_id 等列)。_ensureTablesCREATE TABLE IF NOT EXISTS 对已有表是 no-op,于是后续的 CREATE INDEX ... ON sciot_corrections(rule_id) 直接失败。
  • 修复:在 server/core/rule-engine.jsinitialize() 开头新增幂等的 _migrateStaleColumns()(对缺列做 ALTER TABLE ADD COLUMN,安全保留原数据)。
  • 验证:修复后规则引擎初始化成功、覆盖增强 0%→100%、4 个冒烟测试全部通过、0 条 schema 报错。
  • 备份server/data/rule_engine.db.bak-20260810(修复前)。

Bug 2:sciot_item_types 缺列导致覆盖增强跳过(非致命,已修复)

  • 现象[RuleEngine] 规则覆盖增强失败(非致命): no such column: is_core_business,五维全覆盖增强不执行。
  • 根因rule-coverage-enhancer.js 只补了 category 列,漏补 is_core_business
  • 修复:在 server/core/rule-coverage-enhancer.js 的 Phase 0 中,对 categoryis_core_business 两列统一做「存在性检查 + 缺失补列」。

Bug 3:optimize normalize 规则对 SCSAI 空值对象误判(已修复,2026-08-25)

  • 现象builtin-optimize-001 将 SCSAI 返回的 {is_null:'1'} 误判为 truthy,String()'[object Object]' 被当真实值写回 description 字段。
  • 根因rule-engine.js normalize 分支用 if(data.description) 判断,SCSAI 空描述以对象 {is_null:'1'} 返回,对象在 JS 中为 truthy。
  • 修复:改为对象空值归一化(与 _renderTemplate 一致):is_null=1 视为空不写、否则取 v._
  • 验证verify_optimize_real.cjs 真实端到端验证通过(rt.optimize auto_apply 落库 SCSAI,回查 description=真实 name)。

五、遗留项 / 建议(非阻塞)

  1. MTClaw 未启动:能力型员工目前走规则引擎兜底。若要提高复杂任务质量,需启动本地 MTClaw 加速服务(http://127.0.0.1:18790)。
  2. 7 个 capability-only 员工未逐一跑测:import / inspect / repair / compare / valuate / collect / identify 路径机制已通(inspect 实测 OK),建议逐一确认。
  3. server.js 当前未运行:routes 已 grep 无冲突标记(可启动)。HTTP 接口 /api/digital-staff/run 复用同一 runStaffOnce 路径。
  4. Lite 模式 LLM 默认关闭:纯 generic 路径(无 worker/capability/pipeline/loop)的员工依赖 LLM 才能产出实质内容。

六、结论

能用。 框架可启动、可路由、可对大多数员工执行真实任务。此前阻断「能力型」员工(7 个核心质量/数据员工)的规则引擎 schema Bug 已修复并验证。2026-08-25 完成 87→70 精简合并,功能零丢失,所有员工零参数可跑通。剩余项均为增强项,不影响"端到端可用"。

← 返回案例列表
分享:
🤖 Try Now →
🤖
🎁