chore(repo): initialize team collaboration repository
CI / Python 3.12 (push) Waiting to run
CI / Python 3.9 (push) Waiting to run

This commit is contained in:
2026-07-27 20:40:12 +08:00
commit c91a64fddb
109 changed files with 21121 additions and 0 deletions
@@ -0,0 +1,983 @@
FLASHOPS REGRESSION
存储固件回归测试值守机器人
产品立项、开发架构、竞品差异化与中长期规划方案
核心判断 不要重新发明一套 NVMe 协议测试仪。先把客户现有脚本、商用测试平台和测试主机统一接管,替代工程师反复刷版本、守机器、救卡死、收日志、写报告的机械劳动。
1 个真实 SOP第一枪只替代一段真实工作
100 次循环证明无需人工通宵值守
0 次错盘危险动作必须确定性防护
1 套证据包失败可复现、可追责、可比较
暂定产品名:FlashOps Regression
上位平台:Storage LabOS(未来品牌架构)
文档版本:V1.0|公开资料核查截止:2026 年 7 月 27 日
用途:合作讨论、产品立项、技术拆解、首轮 PoC 与开发团队输入
# 执行摘要
FlashOps Regression 的产品本质不是“更懂 NVMe 的 AI”,而是“存储实验室的数字执行员工”。它位于专业测试工具与工程师之间,负责固件版本流转、测试编排、长时间值守、测试机自救、故障现场冻结、跨工具证据归集、失败重跑、版本 A/B 对比及报告生成。
项目的第一原则是保留客户既有投入:ULINK、OakGate、SANBlaze、Quarch、NI TestStand、PyNVMe3、fio、nvme-cli 以及企业私有脚本都不应被替换,而应被纳入统一的适配器体系。现有厂商公开能力已经覆盖深度协议验证、性能、合规、功耗及故障注入;本项目应避开正面竞争,把差异化建立在跨工具无人值守闭环上。[1]-[10]
推荐立项方式 先找到一份真实且高频的固件回归 SOP,用一台测试主机、一块允许破坏性测试的 SSD、两个固件版本和一套带外控制器,完成 100 次循环的无人值守 PoC。PoC 的成败不看页面数量,而看人工触碰次数是否显著下降。
## 一页结论
项目项
建议结论
首要客户
中型 SSD / 模组厂、主控与固件团队、工业存储厂商;已有大量脚本但平台碎片化。
首要场景
固件 A/B 回归:刷固件、重启/休眠/I/O 循环、卡死恢复、证据留存、报告与缺陷单。
产品主打
不推翻现有工具;机器卡死能自救;失败自动形成证据包;版本差异一夜出结论。
MVP 边界
单测试节点、单 DUT、Windows/Linux Agent、基础带外控制、客户脚本接入、A/B 报告。
不做事项
不自研 PCIe Gen5 高速背板;不重写协议合规套件;不让大模型直接执行破坏性命令;不承诺自动批准固件发布。
北极星指标
每 100 次回归中,工程师必须亲自触碰测试机的次数。
未来方向
多节点企业版 → 故障签名与最短复现 → 兼容性循环测试柜 → Storage LabOS。
# 目录
01 项目背景与问题定义
02 产品定位与核心价值
03 目标客户、岗位与典型场景
04 端到端业务流程
05 产品与技术总体架构
06 软件开发方案
07 硬件与带外控制方案
08 AI 与故障智能方案
09 MVP 范围、开发里程碑与验收
10 竞品格局与差异化战略
11 商业化与首批客户策略
12 数据壁垒与长期护城河
13 未来产品规划
14 团队配置、投入顺序与治理
15 风险清单与应对策略
16 立即行动清单
附录 A 示例工作流
附录 B Evidence Bundle 字段
附录 C 失败分类体系
附录 D 公开资料来源
# 01 项目背景与问题定义
先区分“需要专家判断的工作”与“可以被机器稳定执行的工作”。
## 1.1 存储验证中的真实矛盾
存储固件测试并不缺少专业工具。真正长期消耗组织成本的,是工具之间缺少统一控制、测试任务需要人工值守、失败后证据散落、环境恢复依赖个人经验,以及同类失败被重复分析。工程师往往不是把时间花在“定义测试与判断根因”上,而是花在“让测试能够持续跑下去”上。
## 1.2 工作拆解:专家劳动与执行劳动
工作类型
典型任务
是否应由首版产品替代
专家劳动
定义覆盖范围、制定通过标准、决定发布门禁、最终根因判断
否。产品提供证据和建议,保留人工决策。
执行劳动
刷固件、登记序列号、配置环境、循环重启、等待、收日志、重跑、填表
是。首版核心替代对象。
半结构化劳动
归并相似失败、筛选关键日志、比较版本差异、生成复现步骤
逐步替代。规则优先,AI 辅助。
## 1.3 五个高频行业痛点
痛点
现场表现
直接损失
工具碎片化
脚本、商用平台、命令行、仪器和 Excel 各自独立
重复集成、上下文丢失、难以规模化。
无人值守不完整
脚本能跑,但蓝屏、掉线、卡死后仍需人工处理
夜间和周末机器利用率低。
故障留证不足
只有 Fail、退出码或零散日志,没有统一时间线
工程师无法快速复现,争议增加。
基础设施误报
网络、系统更新、磁盘满、Agent 崩溃被误判为 DUT 故障
产生大量无效缺陷,降低自动化可信度。
报告仍靠人工
版本、环境、日志、截图和结论手动拼装
测试结束不等于结论产出,发布周期继续被拖延。
问题定义 如何在不替换客户现有测试能力的前提下,把一次固件回归任务从“需要工程师持续守着”变成“工程师下达任务后即可离开,第二天获得可信结论与完整证据”?
## 1.4 技术可行性基础
NVMe 标准与生态已经提供错误日志、SMART、Telemetry、Persistent Event Log、设备自检等可采集信号;NVM Express 将 nvme-cli 列为 Linux 管理 NVMe SSD 的标准开源工具,并支持厂商插件。[11][12] Linux 内核还提供系统化的 NVMe 故障注入机制,可用于构建测试基础设施自身的验证场景。[13] 因此首版无需从芯片底层重新造轮子,而应优先完成编排、留证、恢复和安全控制。
# 02 产品定位与核心价值
定位必须避开“又一套测试仪”,形成可以与现有平台共存的控制层。
## 2.1 产品定义
一句话定义 固件提交后,系统自动完成版本刷写、回归执行、测试机自救、故障现场冻结、失败复现、A/B 对比与报告提单。
### 产品类别
存储实验室执行智能体(Storage Lab Execution Agent)与控制平面(Control Plane)。它不是 EDA,不是协议分析仪,不是单一测试套件,也不是聊天机器人。
### 核心产品承诺
工程师配置一次任务后,可以离开测试现场。
测试主机或 Agent 故障时,系统通过带外通道自行恢复。
每个失败自动生成结构化证据包与统一时间线。
已有脚本和商用测试平台继续使用,不要求客户重写。
危险动作由确定性策略控制,AI 无权直接越过安全门禁。
## 2.2 六个核心卖点
主打点
客户听得懂的表达
产品实现
真正无人值守
不是“能自动开始”,而是“异常后还能自己继续”。
心跳、状态机、软恢复、Reset、整机断电、检查点续跑。
故障现场自动冻结
失败不再只剩一行报错。
统一时间线、日志快照、设备状态、画面、温度、恢复过程。
不推翻已有工具
客户原来的测试投入全部保留。
Adapter SDK、CLI/REST/Python/PowerShell 接口、工具封装。
A/B 版本直接出结论
不用人工翻目录比较固件差异。
环境指纹锁定、基线比较、失败签名、回归门禁。
基础设施与 DUT 故障分离
减少自动化制造出来的垃圾缺陷。
故障分类规则、探针交叉验证、Agent/OOB 双通道。
AI 有用但受控
AI 做归并、解释和建议,不直接删盘或刷错固件。
结构化工具调用、安全策略、证据引用、人工发布门禁。
## 2.3 产品边界
首版明确要做
首版明确不做
固件 A/B 回归任务编排
自研 NVMe 协议合规测试套件
Windows/Linux Agent 与客户脚本执行
PCIe Gen5/Gen6 高速信号背板
主机带外自救与简单传感
裸 NAND、FTL、主控固件开发
设备/环境指纹与安全绑定
AI 自动批准固件发布
Evidence Bundle 与自动报告
替代最终专业根因分析
规则驱动的失败分类与重跑
第一版同时支持 NVMe/SATA/eMMC/UFS
# 03 目标客户、岗位与典型场景
首批客户应当“有真实痛点、有现成脚本、但没有完整平台”。
## 3.1 理想客户画像(ICP
优先级
客户类型
典型现状
切入理由
A
中型 SSD / 存储模组厂
5—50 个测试节点,脚本与工具分散,依赖关键工程师
痛点高、决策链较短、可快速拿到真实 SOP。
A
主控或固件创业团队
研发迭代快,但验证平台不完整
愿意以效率换取工具,适合作为设计合作伙伴。
A
工业存储厂商
客户现场问题多,回归和复现耗时
更看重稳定性与留证,不只看协议合规。
B
存储品牌与 OEM 验证团队
商用设备与自研脚本并存
可通过“统一控制层”切入。
C
拥有成熟自研 SLT 的头部厂商
已有调度、追溯和大数据平台
早期进入难,优先作为未来集成或特定模块客户。
## 3.2 主要使用角色
角色
当前最烦的工作
产品价值
验证工程师
守长测、救机器、收证据、重跑
从执行员回到验证设计和判断。
固件工程师
拿到的缺陷信息不完整,无法复现
获得最短复现路径和完整环境。
测试主管
无法统一了解机器利用率与失败类型
看见任务进度、故障分布与产能。
质量/项目经理
版本是否可发布依赖口头汇总
获得可审计的版本门禁报告。
实验室管理员
设备、主机、固件和脚本版本混乱
统一资产、环境和权限治理。
## 3.3 首版典型场景:固件 A/B 回归
选择 DUT、旧固件 A、新固件 B 与固定测试环境。
系统校验序列号、介质状态和破坏性测试授权。
先运行固件 A 的基线任务,再刷入固件 B。
按相同条件执行 100 次重启、休眠/唤醒、I/O 与数据校验循环。
出现卡死、蓝屏、掉盘或 Agent 失联时,带外控制器自动恢复。
每次失败生成 Evidence Bundle,并按失败签名归并。
输出 A/B 通过率、故障类型、性能回归、恢复行为与发布建议草稿。
## 3.4 后续可复用场景
返修问题复现:将客户现场症状转换为可重复执行的验证流程。
长时间稳定性:跨夜、跨周执行,异常后自动续跑。
电源状态回归:冷启动、热重启、休眠、休眠恢复、整机断电。
固件发布门禁:新版本必须通过指定的 Golden Suite。
多设备并行:同一固件在多块 DUT 上运行并比较离群样品。
# 04 端到端业务流程
目标是形成“准备—执行—异常—结果”的闭环,而不是堆叠命令。
图 1 端到端无人值守闭环
## 4.1 任务准备阶段
资产绑定:测试主机、DUT 序列号、固件包、主板/BIOS、OS、驱动、测试工具版本。
安全检查:确认 DUT 位于允许破坏性测试的白名单,禁止对系统盘执行 Format/Sanitize。
环境指纹:测试前生成不可变快照,保证 A/B 对比条件一致。
资源锁:同一 DUT、测试主机、仪器和电源模块不能被并发占用。
测试计划:明确循环次数、超时、重试、恢复策略、通过门槛和停止条件。
## 4.2 自动执行阶段
调用厂商刷固件工具,并验证刷写后的版本、槽位与激活状态。
执行客户现有 Python、Shell、PowerShell、fio、nvme-cli、PyNVMe3 或商用平台命令。
持续采集 Agent 心跳、系统日志、设备日志、温度、测试输出与画面状态。
在每个关键步骤创建检查点,保证恢复后可以安全续跑。
记录所有命令的模板、参数、发起者、时间与返回状态,满足审计要求。
## 4.3 异常处置阶段
异常类型
识别信号
默认处置
测试脚本失败
进程退出、断言失败、结果文件缺失
保存上下文,按策略重试或标记脚本失败。
Agent 失联
心跳超时,但带外控制器在线
先软恢复,再 Reset,最后整机断电。
主机 OS 故障
蓝屏/内核崩溃/启动失败
保存画面与串口,带外重启并等待恢复。
DUT 未枚举
OS 与 PCIe/NVMe 探针均未发现设备
记录掉盘证据,执行限定次数恢复。
数据完整性失败
哈希/读回比较不一致
立即冻结现场,停止覆盖性动作,进入高优先级。
基础设施故障
网络、存储空间、电源控制器或测试工具异常
分类为 INFRA_FAILURE,不进入 DUT 缺陷统计。
## 4.4 结果闭环阶段
自动生成 Evidence Bundle,保证关键字段完整且可追溯。
对相似失败进行签名与聚类,避免同一问题重复提单。
比较固件 A/B 在通过率、掉盘、数据错误、延迟、温度及恢复行为上的差异。
生成工程报告、管理摘要和 Jira/禅道缺陷草稿。
将已确认问题沉淀为回归用例,持续扩大 Golden Suite。
# 05 产品与技术总体架构
架构要保证“主机挂了,系统仍然有眼睛、有手、有记忆”。
图 2 FlashOps Regression 总体架构
## 5.1 五层架构
层级
核心模块
职责
交互与集成层
Web 控制台、Open API、CLI、企业系统连接器
任务配置、状态查看、报告、CI/CD 与缺陷系统接入。
控制平面
工作流引擎、调度器、资产中心、策略中心
编排任务、资源锁、权限、安全门禁、检查点与版本比较。
执行平面
Windows/Linux Host Agent、工具适配器
执行命令、采集日志、管理进程、调用客户工具。
带外平面
树莓派/工业控制器、Reset/Power/HDMI/传感器
主机失联后仍可观察和恢复,形成第二控制通道。
证据与智能层
事件总线、对象存储、指标库、规则引擎、AI
统一时间线、失败分类、聚类、解释、报告与复现建议。
## 5.2 关键设计原则
控制面与数据面分离:任务状态不能只存在于测试主机本地。
双通道观测:Host Agent 与带外控制器相互校验,避免单点误判。
事件溯源:关键状态变化以事件追加方式记录,方便重建完整时间线。
适配器优先:任何测试工具都通过标准 Adapter 接口接入。
默认本地化部署:固件、日志和厂商私有信息不离开客户网络。
安全默认拒绝:未绑定 DUT、未授权命令、未通过预检时不执行危险动作。
## 5.3 核心领域对象
对象
关键字段
用途
DUT
型号、序列号、容量、固件、BDF、健康信息、标签
防错盘、资产追踪与版本比较。
Test Host
主板、BIOS、CPU、OS、内核、驱动、Agent 版本
固定环境与兼容性归因。
Firmware Artifact
版本、哈希、签名、适用型号、刷写工具
确保固件包可信且可审计。
Workflow
步骤、参数、循环、条件、超时、恢复策略
将 SOP 变成可执行状态机。
Run
环境快照、输入、状态、事件、结果、操作者
一次完整测试任务。
Failure Signature
错误码、日志特征、步骤、设备状态、恢复结果
聚类、去重与复现。
Evidence Bundle
日志、指标、截图、命令、版本、时间线
缺陷分析与审计交付。
# 06 软件开发方案
MVP 先做可靠状态机和执行代理,不先做复杂微服务。
## 6.1 推荐技术栈
模块
MVP 推荐
演进建议
前端
Next.js + React + TypeScript + ECharts
后续增加实验室拓扑、实时画面与低代码流程编辑器。
控制平面 API
FastAPI + Python
规模化后拆分调度、资产、报告和连接器服务。
任务执行
显式状态机 + PostgreSQL 持久化;Redis 队列
任务复杂度上升后评估 Temporal 等持久工作流引擎。
Host Agent
Python/Go 混合;Windows Service / systemd
关键执行与心跳可逐步迁移到 Go,提高单文件部署与稳定性。
实时通信
WebSocket / Server-Sent Events
多节点后引入 NATS 或 Kafka 作为事件总线。
数据存储
PostgreSQL + MinIO/本地对象存储
高频指标增加 ClickHouse 或时序库。
部署
Docker Compose 私有化单机部署
企业版支持 K3s/Kubernetes 与离线升级。
说明:技术栈是工程建议,不构成必须绑定;首版优先减少运维复杂度。
## 6.2 Host Agent 必备能力
注册与身份:每个 Agent 使用唯一证书或密钥,绑定测试主机资产。
命令执行:支持白名单模板、参数校验、工作目录隔离、超时与进程树终止。
日志采集:stdout/stderr、Windows Event Log、dmesg/journal、NVMe 日志、工具输出。
设备探针:周期检查 DUT 枚举、BDF、固件版本、SMART、温度及链路状态。
心跳与健康:上报 CPU、内存、磁盘空间、网络、Agent 状态和任务阶段。
检查点:每个步骤完成后持久化输出,重启后可安全恢复。
自更新:企业内网签名包升级,支持回滚。
## 6.3 工作流引擎
工作流必须是确定性的结构化配置,而不是让大模型自由生成并直接执行命令。核心语义包括:步骤、循环、条件、并行、超时、重试、补偿动作、检查点、资源锁和安全级别。
能力
MVP
企业版
步骤类型
命令、脚本、HTTP、等待、设备检查、重启
仪器控制、子流程、人工审批、动态矩阵。
循环与条件
固定次数、通过/失败分支
基于指标和风险的自适应循环。
恢复
从最近安全检查点继续
跨节点迁移、测试环境重建。
版本管理
YAML/JSON + Git 哈希
可视化编辑、审批、发布与回滚。
资源管理
主机/DUT 独占锁
仪器池、许可证池、多实验室调度。
## 6.4 Adapter SDK
适配器是产品扩张的关键。统一接口应至少包含 discover、precheck、execute、collect、cancel、health 和 normalize_result。每个工具的原生输出被转换为统一事件与结果模型。
class ToolAdapter: def discover(self, context) -> Capabilities: ... def precheck(self, context) -> CheckResult: ... def execute(self, step, context) -> ExecutionHandle: ... def collect(self, handle) -> EvidenceArtifact: ... def cancel(self, handle) -> None: ... def health(self) -> HealthStatus: ... def normalize_result(self, raw) -> UnifiedResult: ...
## 6.5 首版页面结构
页面
关键内容
任务中心
创建任务、队列、实时进度、阶段、预计剩余循环、紧急停止。
资产中心
测试主机、DUT、固件包、工具版本、带外控制器、标签。
工作流中心
SOP 模板、版本、参数、危险级别、审批记录。
实时运行
命令、心跳、设备状态、日志流、画面、温度、恢复动作。
失败中心
失败签名、相似运行、时间线、证据包、复现建议。
版本对比
固件 A/B 通过率、问题类型、性能和稳定性差异。
报告中心
工程报告、管理摘要、缺陷单、导出与审计。
## 6.6 安全架构
控制点
要求
DUT 绑定
危险任务必须绑定序列号、BDF/设备路径与允许测试标签,多信号一致才执行。
命令模板
Format、Sanitize、固件刷写等命令只能来自签名模板,参数受 schema 限制。
系统盘保护
预检检测挂载点、启动盘和分区,命中系统盘立即拒绝。
权限分级
查看、执行、编辑流程、批准危险动作、发布门禁分离。
审计
记录操作者、审批者、命令模板版本、输入参数、结果和撤销动作。
紧急停止
Web、物理按钮与带外控制器均可触发,停止后进入安全状态。
# 07 硬件与带外控制方案
硬件的价值是“主机死了以后系统仍能观察和操作”,而不是做一个漂亮盒子。
## 7.1 MVP 硬件拓扑
部件
建议形态
首版作用
测试主机
标准 x86 Windows/Linux 台式机或服务器
提供原生 M.2/U.2 接口,运行真实测试负载。
带外控制器
树莓派 5 / CM4 或工业 Linux 控制器
独立网络、心跳、Power/Reset、HDMI 采集、传感。
确定性 MCU
可选 RP2040/STM32
执行看门狗、精确按键脉冲和紧急停止。
电源控制
首版控制整机 AC/ATX;DUT 独立断电优先采购成熟模块
避免早期陷入高速信号与供电时序。
画面采集
USB HDMI 采集卡
在 Agent 未启动或蓝屏时仍可留证。
环境传感
温度传感器;后续电压/电流
关联温度与故障,验证测试环境。
## 7.2 恢复阶梯
通过 Agent 执行优雅停止或软重启。
通过操作系统远程管理通道执行重启。
带外控制器触发主板 Reset。
带外控制器模拟 ATX 长按关机并重新开机。
控制整机 AC 断电并等待安全间隔后上电。
超过限定次数仍失败则冻结现场并停止自动恢复。
## 7.3 为什么不在首版自研 M.2 Gen5 电源夹层板
直接位于 PCIe Gen5 数据路径的硬件会引入信号完整性、连接器、时钟、复位、电源时序和热设计风险。ULINK 的 PSPA+ Gen5 已经公开支持 DUT 独立供电控制、电流/电压测量、PERST#、CLKREQ#、PLN#/PLA#、PWDIS# 与 SMBusQuarch 也提供面向 SSD/PCIe 的电源和故障注入模块。[3][8] 首版应优先适配成熟模块,在软件闭环和客户需求被验证后再决定是否自研。
## 7.4 硬件演进路线
阶段
硬件范围
判断门槛
H0 PoC
树莓派 + 继电器/智能电源 + ATX/Reset + HDMI + 温度
证明自动恢复和留证。
H1 工程样机
隔离型 Power/Reset HAT、看门狗、物理急停、标准线束
至少 3 个客户场景反复需要。
H2 工业控制器
金属机箱、宽温、电气保护、远程升级、模块化端口
进入客户实验室长期运行。
H3 DUT 电源模块
只在有硬件团队和明确接口需求后开发
商业模块成本或能力成为规模化瓶颈。
H4 多节点机柜
统一供电、网络、画面、环境与资产管理
扩展至兼容性循环测试柜。
# 08 AI 与故障智能方案
先建立可解释的规则与数据结构,再让 AI 提升工程师阅读和决策效率。
## 8.1 AI 的正确位置
AI 可以做
AI 不可以直接做
把自然语言 SOP 草拟为结构化流程
不经规则校验直接执行命令
归并几万条日志并提取关键时间点
凭空判断某块 SSD 必然损坏
根据证据给出根因候选排序
独立批准固件发布
生成工程报告、管理摘要和缺陷单
自由生成 Format/Sanitize/刷固件参数
推荐下一轮验证变量与复现步骤
绕过权限、DUT 绑定和安全门禁
## 8.2 三层智能架构
层级
方法
职责
第一层:确定性规则
阈值、状态机、签名、环境一致性校验
判断设备是否掉线、数据是否错误、恢复是否成功、故障属于哪一大类。
第二层:统计与异常检测
变化点、基线偏离、聚类、离群检测
发现性能退化、异常个体和重复失败。
第三层:大模型
RAG、结构化工具调用、证据引用
解释日志、生成摘要、建议复现、撰写报告。
## 8.3 失败签名
失败签名不应只使用错误码,而应组合:工作流步骤、主机状态、DUT 枚举状态、关键日志模板、错误码、温度/延迟变化、恢复结果、固件和环境指纹。签名用于聚类、去重、相似问题检索和版本回归判断。
failure_signature = hash( workflow_step, normalized_error_codes, log_templates, host_state, dut_enumeration_state, data_integrity_state, recovery_outcome, environment_fingerprint)
## 8.4 自动复现策略
固定所有环境变量,按原流程完整重跑一次,确认偶发性。
裁剪为失败前后的最小步骤区间。
每轮只改变一个变量,例如 APST、队列深度、负载、温度或电源状态。
使用二分与风险优先策略减少组合数量。
输出最短复现流程、触发概率、反例条件和所需证据。
## 8.5 AI 输出规范
每条推断必须关联具体 Run ID、时间点和证据文件。
使用“已证实 / 高概率 / 待验证 / 无足够证据”四级置信表达。
区分事实、推断和建议,不把建议写成结论。
对涉及数据完整性、固件发布和安全动作的建议必须要求人工确认。
模型不可访问未授权固件内容或跨客户数据。
# 09 MVP 范围、开发里程碑与验收
第一版只证明:一条真实固件回归 SOP 可以在无人值守条件下完成。
## 9.1 MVP 必须具备
Epic
MVP 功能
资产与安全
测试主机、DUT、固件包登记;序列号绑定;系统盘保护;危险命令白名单。
工作流
YAML/JSON 流程;循环、条件、超时、重试、检查点;任务队列。
Host Agent
Windows/Linux 至少完成一个主平台;命令执行、日志采集、心跳、设备探针。
带外恢复
Power/Reset/AC 控制、恢复阶梯、画面或状态留证。
测试接入
客户私有刷固件工具 + 现有回归脚本;fio/nvme-cli 作为通用工具。
证据与报告
统一事件时间线、Evidence Bundle、固件 A/B 对比、HTML/PDF/缺陷草稿。
运营监控
实时任务状态、人工触碰记录、无人值守完成率、基础设施故障统计。
## 9.2 12 周建议开发计划
阶段
周期
核心输出
退出条件
D0 真实流程发现
第 1—2 周
脱敏 SOP、样例日志、固件 A/B、DUT 与验收标准
每一步输入、输出、危险动作和失败处理均明确。
D1 单机执行闭环
第 3—4 周
控制台、基础 Agent、命令执行、日志与资产绑定
可稳定运行一次完整流程。
D2 循环与恢复
第 5—6 周
状态机、检查点、100 次循环、软重启与 Reset
Agent 重启后任务状态不丢失。
D3 带外与证据
第 7—8 周
带外控制、画面/温度、统一时间线、Evidence Bundle
模拟主机失联后可自动恢复并留证。
D4 A/B 与分类
第 9—10 周
环境指纹、A/B 报告、失败分类、基础去重
同一问题能够被识别为同类。
D5 客户 PoC
第 11—12 周
真实 100 次回归、结果复盘、ROI 数据
达到验收指标并形成下一版需求。
## 9.3 MVP 验收指标
指标
建议目标
说明
人工触碰次数
相对人工流程下降 ≥ 70%
记录每次必须到现场或远程人工干预。
正常任务完成率
100 次循环中正常路径完成率 ≥ 99%
排除人为断电等故障注入。
自动恢复成功率
对预设主机失联场景 ≥ 95%
软恢复、Reset、AC 断电阶梯。
证据包完整率
关键字段完整 ≥ 95%
版本、环境、日志、时间线、恢复动作。
基础设施误报率
< 5%
不把 Agent/网络/磁盘满误判为 DUT 故障。
危险动作安全
0 次错盘、0 次系统盘破坏
任何一次发生即判定 PoC 失败。
A/B 结论时间
测试结束后 10 分钟内产出初版报告
不含专家最终签字。
## 9.4 MVP 暂缓功能
可视化低代码流程设计器;先用受控 YAML/JSON。
大规模多租户与云端 SaaS;先做客户内网单租户。
自研 DUT 独立电源板;先接商业模块或控制整机电源。
复杂机器学习预测;先做规则、签名和基础聚类。
全接口支持;首版锁定一种 SSD 形态与一套真实环境。
# 10 竞品格局与差异化战略
竞品强项已经很深,正确策略是成为它们之上的统一执行与运营层。
竞品分析基于公开官网资料,核查截止 2026-07-27;“未强调”不等于竞品完全不具备。
图 3 基于公开定位的竞品示意图
## 10.1 竞品类别
类别
代表产品
公开能力重点
本方案关系
深度存储测试平台
ULINK DriveMaster、OakGate SVF/Enduro、SANBlaze SBExpress
协议/命令、合规、性能、数据完整性、功耗、故障注入、多 DUT、自动化 API。[1]-[7]
优先集成,不正面替代。
物理层与电源故障设备
Quarch
热插拔、电源循环、功耗与复杂故障注入自动化。[8]
作为带外执行设备接入。
通用测试管理平台
NI TestStand
多语言模块、序列、并行、资源调度、报告、部署,并已加入 Nigel AI。[10]
在存储垂直场景做更快开箱与更深证据模型。
可编程测试框架
PyNVMe3
Python API、专用驱动、现成脚本,可在普通 x86/Ubuntu 上规模部署。[9]
作为低成本执行器和开发者生态。
企业自研平台
Jenkins/Python/数据库/继电器
高度定制、成本可控
最现实的隐形竞品;用可靠性与产品化降低维护负担。
## 10.2 ULINK
ULINK DriveMaster 10 NVMe 公开支持 NVMe 2.0、协议与命令验证、回归和数据完整性测试、功耗测量、来料验证及多种侧带信号测试;其 NVMe Regression Suite 包含随机命令电源循环、数据比较电源循环、全盘扫描、MD5、JEDEC 工作负载等。PSPA+ Gen5 可在不关闭系统的情况下控制 DUT 供电,并支持电流/电压测量及多种侧带信号。[1][2][3]
与 ULINK 的差异 不与其争夺协议测试深度。FlashOps 接管固件包、测试站、客户私有脚本、DriveMaster 任务、卡死恢复、跨工具证据、失败去重与版本发布闭环。
## 10.3 OakGate
OakGate 的公开产品由 Enduro 客户端、Linux 测试 appliance、SVF/Enduro 软件以及可扩展多盘位 enclosure 构成;软件覆盖验证、性能、协议、功耗、自动化、报告和 REST/Python API,并具有内置自动化、协议分析、错误注入和数据验证能力。[4][5]
与 OakGate 的差异 OakGate 是强大的专业测试环境。FlashOps 的价值是把 OakGate 与客户其他 PC、脚本、固件工具、缺陷系统和带外恢复统一到一个任务与证据模型中。
## 10.4 SANBlaze
SANBlaze SBExpress-RM5 公开定位为 16 盘位 Gen5 NVMe 验证系统,支持合规、读写比较、错误注入、自定义命令、多盘控制、槽位供电、功耗测量、热插拔、温度监控,并提供 REST、XML/CLI 与 Python 接口。[6][7]
与 SANBlaze 的差异 SANBlaze 已具备成熟自动化和 API,因此更适合作为 FlashOps 的高端执行器。FlashOps 重点提供实验室级资源编排、主机自救、工具间证据合并、失败签名和版本决策。
## 10.5 Quarch
Quarch 公开强调从简单热插拔循环到复杂数据故障注入的自动化,并被 PyNVMe3 文档用于 PCIe 电源控制和功耗监测。[8][9]
与 Quarch 的差异 Quarch 提供“手和传感器”;FlashOps 提供“任务、状态、证据和决策闭环”。
## 10.6 NI TestStand
NI TestStand 是通用验证与制造测试管理框架,公开支持多语言代码模块、交互式序列、并行执行、资源调度、数据库与多格式报告、部署工具,并在 2026 年产品中强调 Nigel AI。[10]
与 TestStand 的差异 不比通用编排能力,而比存储开箱能力:DUT/固件/主机环境模型、掉盘与数据完整性语义、带外自救、Evidence Bundle、固件 A/B 和最短复现。
## 10.7 PyNVMe3 与自研脚本
PyNVMe3 公开强调 Python、专用 NVMe 驱动、普通 x86/Ubuntu 部署和自动化流水线复用,代表低成本、高可编程的技术路线。[9] 这也是 FlashOps 最现实的价格竞争对手:客户可能认为“Jenkins + Python + 继电器”已经足够。
与自研方案的差异 卖点必须是总拥有成本而非代码行数:稳定状态机、双通道自救、防错盘、证据模型、审计、失败去重、升级与长期维护。
## 10.8 差异化能力清单
差异化能力
为什么有价值
形成壁垒的方式
工具中立的统一控制层
客户无需推翻原有设备和脚本
适配器 SDK、认证连接器、长期兼容性。
测试环境自救
解决真正阻碍夜间无人值守的问题
Host Agent + OOB 双平面、恢复策略数据。
Evidence Bundle
减少“无法复现”和跨团队扯皮
统一事件模型、时间线、证据完整性评分。
基础设施/DUT 故障分离
降低自动化误报和工程师反感
探针交叉验证、故障分类数据集。
自动缩小复现范围
直接节省固件工程师时间
失败签名、实验设计、历史触发条件。
版本门禁与环境指纹
把测试结果转成发布决策
Golden Suite、A/B 基线、审计链。
安全受控 AI
既提高阅读效率,又不引入危险动作
证据引用、工具权限、确定性执行。
# 11 商业化与首批客户策略
首批销售的不是“平台愿景”,而是一条可以立刻省人的真实流程。
## 11.1 PoC 产品包
项目
PoC 内容
范围
1 个测试节点、1 种 DUT、1 份真实 SOP、2 个固件版本、100 次循环。
交付
控制台、Agent、带外恢复、脚本适配、Evidence Bundle、A/B 报告。
客户投入
测试主机、DUT、固件工具、脱敏 SOP、工程师每周固定评审时间。
验收
人工干预下降、安全零事故、证据完整、能够识别至少一种真实或注入故障。
周期
以 12 周 MVP 为上限,前 2 周完成流程发现和风险清单。
## 11.2 商业模式建议
收入项
计费逻辑
早期策略
PoC 项目费
按 SOP 适配和现场集成工作量
保证客户投入资源,避免免费试用失焦。
软件站点许可
按测试节点或并发节点
私有化年费,含基础升级。
带外控制套件
硬件销售或租赁
首版使用成熟器件组合,后续标准化。
高级连接器
ULINK/OakGate/SANBlaze/Quarch/TestStand/私有工具
按连接器或企业包计费。
故障智能模块
失败聚类、最短复现、质量图谱
数据积累后作为高毛利模块。
服务与维护
现场部署、流程迁移、培训、SLA
早期不可避免,但产品化比例要持续提升。
## 11.3 ROI 计算
年度价值 ≈ 节省的值守工时+ 夜间/周末新增的测试机利用时间+ 减少的重复复现工时+ 提前发现回归所避免的返工成本+ 固件发布周期缩短带来的机会价值- 软件、硬件与集成成本
## 11.4 首批客户获取方式
从同学的真实行业关系中筛选 3 家中型团队,不先找平台最成熟的头部厂商。
每家只问一个问题:“哪一种测试每周反复做,最需要人守着?”
要求客户提供一份脱敏 SOP、一份最终报告、一次失败日志和允许测试的设备。
先交付自动执行与证据,不先承诺 AI 根因准确率。
用人工触碰次数、机器利用率、证据产出时间做业务复盘。
## 11.5 不建议的销售表达
不要说
应该说
“我们是 AI SSD 测试平台。”
“我们让你现有的测试平台真正无人值守。”
“AI 可以自动诊断所有故障。”
“系统先保存完整证据,再给出可验证的候选原因。”
“我们可以替代 OakGate/SANBlaze/ULINK。”
“我们统一调度并放大你已经购买的工具价值。”
“支持所有存储接口。”
“首版专注一个真实接口和一条高频流程,随后复制。”
“很快能做芯片级智能。”
“先替代机械执行,数据积累后再深入固件和控制器协同。”
# 12 数据壁垒与长期护城河
代码可以被复制,长期运行产生的故障与环境关系数据更难复制。
## 12.1 四类核心数据资产
数据资产
内容
价值
流程资产
真实 SOP、参数边界、恢复策略、通过门槛
缩短新客户上线时间。
连接器资产
私有工具、商业平台、固件刷写工具的适配
形成行业进入门槛。
故障资产
失败签名、触发条件、最短复现、恢复结果
提升去重、归因和重测能力。
环境图谱
固件、主机、BIOS、OS、驱动、DUT 与结果关系
为未来兼容性测试柜和版本风险模型提供基础。
## 12.2 护城河形成顺序
先用可靠执行和安全能力获得进入实验室的资格。
通过连接器和 SOP 积累形成交付速度优势。
通过统一证据模型积累跨运行的失败签名。
通过最短复现与自适应重测形成直接工程价值。
最终建立固件—环境—故障—修复之间的质量知识图谱。
## 12.3 数据治理原则
默认每个客户数据完全隔离,模型训练需单独授权。
固件二进制、私有日志解码器和内部缺陷不得进入公共模型。
允许客户选择只保存特征、哈希和归一化失败签名。
所有 AI 输出保留使用了哪些证据和模型版本。
支持按项目、设备和时间执行数据保留与删除策略。
# 13 未来产品规划
路线应从“替代一个岗位动作”自然扩展到“存储实验室操作系统”。
图 4 产品演进路线
## 13.1 阶段规划
阶段
核心产品
关键能力
商业目标
P00—6 周
真实 SOP PoC
单机、单 DUT、100 次循环、基础留证
证明人工触碰显著下降。
P16—12 周
FlashOps MVP
Agent、带外自救、A/B 报告、缺陷草稿
完成首个付费或联合设计 PoC。
P23—9 个月
企业版
多节点、权限审计、适配器 SDK、私有化运维
复制到 3—5 家客户。
P39—18 个月
故障智能版
失败图谱、聚类、最短复现、自适应重测
从效率工具升级为研发决策工具。
P418—30 个月
Storage LabOS
多实验室、多工具、资源池与质量图谱
形成平台收入与生态。
P5|并行扩展
兼容性循环测试柜
多主板/BIOS/OS/驱动矩阵与组合缩减
进入 OEM、整机与工业兼容性市场。
## 13.2 未来功能树
方向
未来能力
调度规模化
多节点、多 DUT、多实验室、许可证和仪器资源池、优先级与配额。
自动复现
步骤裁剪、变量控制、版本二分、局部矩阵展开、触发概率估计。
质量图谱
固件、主控、NAND/BOM、主机、BIOS、OS、驱动、故障与修复关系。
发布门禁
与 Git、CI/CD、固件仓库连接,Golden Suite 通过后才允许进入下一阶段。
兼容性测试柜
多真实主机的启动、休眠、驱动、系统更新与数据完整性矩阵。
现场复现
将实验室工作流下发到远程客户机器或边缘设备,回收统一证据。
高级硬件
在需求被验证后开发工业控制器、标准线束、多节点机柜和专用电源模块。
## 13.3 长期不应偏离的方向
长期原则 FlashOps 的核心始终是“把专业测试能力转化为无需人工值守的可靠产出”。即使未来进入兼容性、生产测试或芯片协同,也不应变成一家单纯卖测试脚本或硬件机箱的公司。
# 14 团队配置、投入顺序与治理
资金可以提高速度,但首要资源仍然是真实 SOP、样品和懂业务的工程师。
## 14.1 最小核心团队
角色
建议人数
职责
产品/全栈负责人
1
产品定义、Web、后端编排、AI 工作流、客户沟通。
存储领域负责人
1
测试方法、固件工具、日志解释、客户资源、验收标准。
系统/Agent 工程师
1
Windows/Linux 服务、进程与系统控制、日志、安装升级。
硬件/嵌入式工程师
0.5—1
带外控制、电气安全、线束、看门狗与工业化。
测试/DevOps
0.5—1
故障注入、自身可靠性测试、部署、监控和回归。
AI/数据工程
早期兼职
日志模板、聚类、RAG、模型评估;P3 后转核心。
## 14.2 你与同学的建议分工
你负责
同学负责
共同决策
产品形态、交互、平台架构、AI、开发推进、Demo 与材料
真实 SOP、设备、固件工具、日志含义、行业客户、硬件资金
目标场景、通过标准、首个客户、是否采购专业模块、定价与公司结构
## 14.3 资金投入顺序
先投入真实测试条件:测试主机、DUT、固件版本、工程师时间。
再投入可靠带外控制与商业电源/故障模块,避免自研硬件拖慢软件闭环。
第三投入产品化:Agent 稳定性、安全、审计、部署与连接器。
客户需求稳定后,再投入自研 PCB、工业机箱和多节点硬件。
有持续运行数据后,再扩大 AI 和数据团队。
## 14.4 项目治理
每个功能必须对应减少的人工动作或提高的证据质量。
每两周用真实测试机进行一次端到端故障演练。
危险命令、安全事故和数据丢失拥有最高优先级,不能用“先跑起来”豁免。
任何 AI 功能上线前必须有离线评估集与错误示例。
首个 PoC 期间禁止大规模扩展需求,优先完成一个闭环。
# 15 风险清单与应对策略
这个项目最大的风险不是模型效果,而是测试系统自身不可靠或不安全。
风险
影响
应对
缺少真实 SOP
做出看似完整但没人使用的通用平台
立项前必须拿到流程、日志、报告和测试设备。
误操作错盘
数据损失、项目直接失去信任
多重 DUT 绑定、系统盘保护、命令模板、审批和物理标签。
自救系统不可靠
无人值守名不副实
双通道心跳、分级恢复、恢复上限、定期故障演练。
商用工具无法集成
价值被局限在自研脚本
先验证 CLI/REST/Python 能力;必要时采用 UI 自动化作为过渡。
客户私有日志封闭
AI 诊断能力受限
先做证据与流程;由客户提供解码器插件,不依赖原始语义。
基础设施误报过高
工程师不再相信自动化
建立 INFRA_FAILURE 分类、探针交叉验证与平台自监控。
AI 过度承诺
错误结论影响发布与质量
证据引用、置信等级、人工门禁、禁止危险工具权限。
销售周期长
资金消耗、难以快速验证
先做设计合作伙伴和单 SOP 付费 PoC。
过早自研高速硬件
投入大、调试周期长、无法证明需求
成熟商业模块优先,需求和规模明确后再开发。
被客户自研替代
一次性项目、续费弱
持续强化连接器、运维、安全、数据图谱和跨站点能力。
# 16 立即行动清单
下一步不是继续讨论概念,而是拿到一条真实流程。
## 16.1 向同学索取的材料
一份最耗人、步骤固定、每周重复的固件回归 SOP。
一份脱敏后的人工测试报告和对应原始日志目录。
两个可刷写的固件版本,最好一个为基线、一个存在已知差异。
一块或多块允许反复写入、重启和破坏性测试的 SSD。
一台可长期占用的 Windows 或 Linux 测试主机。
厂商刷固件工具及最小使用说明。
一名愿意每周固定评审的存储验证工程师。
## 16.2 第一次工作坊议程
时段
议题
产出
0—30 分钟
逐步走一遍当前人工流程
现状流程图与角色分工。
30—60 分钟
标记等待、重复、人工判断、危险动作
可替代动作清单与不可替代判断。
60—90 分钟
复盘最近一次真实失败
证据缺口与恢复路径。
90—120 分钟
定义 PoC 场景和验收指标
首个工作流、测试设备、目标数据。
## 16.3 可直接发送给同学的话
沟通模板 你们公司里有没有一种固件测试,每周反复做,步骤基本固定,需要人刷版本、跑脚本、重启、守机器、收日志和填报告?你给我一份脱敏 SOP、一份真实报告、两个固件版本和一台测试机。我先做一个可以无人值守执行、机器卡死自动恢复、失败自动留证、最后输出 A/B 报告的 PoC,不碰你们核心算法,也不要求替换现有测试工具。
## 16.4 立项决策门槛
满足条件
不满足时的处理
能够获得真实 SOP 和固定评审工程师
暂停产品开发,只做流程访谈。
有允许破坏性测试的 DUT 和测试主机
先准备实验环境,不做软件假 Demo。
人工流程确实每周高频重复
否则寻找更高频场景。
PoC 指标可以量化人工触碰与完成率
不能只以“页面好看”验收。
客户接受本地部署和必要的系统权限
否则明确安全边界与接入方式。
# 附录 A 示例工作流
结构化流程只描述意图和受控参数,实际命令来自签名模板。
workflow: firmware_ab_power_state_regressionversion: 1.0safety_level: destructive_test_dut_onlyresources: host: lab-win-01 dut_serial: SSD-TEST-00017 oob_controller: oob-01matrix: firmware: [FW_A, FW_B]steps: - precheck_environment - verify_dut_identity - flash_firmware: artifact: ${firmware} - verify_firmware_version - write_known_pattern: size_gb: 20 - repeat: times: 100 steps: - run_io_profile: profile: mixed_4k_qd32 duration_sec: 300 - collect_nvme_logs - reboot_or_sleep_cycle: mode: hibernate - wait_for_host: timeout_sec: 240 - verify_dut_enumeration - verify_known_pattern on_failure: - freeze_evidence - oob_recovery: ladder: [soft_reboot, reset, ac_cycle] - retry_from_checkpoint: max_attempts: 2 - compare_with_baseline - generate_reportrelease_gate: data_integrity_errors: 0 dut_missing_events: 0 infrastructure_false_positive_rate: < 0.05
# 附录 B Evidence Bundle 字段
每个失败必须能够被另一个工程师独立理解和重放。
分组
字段
身份
Run ID、项目、DUT 型号/序列号、固件、主机、操作者、工作流版本。
环境
主板、BIOS、CPU、内存、OS、内核、驱动、工具版本、测试参数。
时间线
步骤开始/结束、命令、状态变化、心跳、设备枚举、恢复动作。
设备证据
Identify、SMART、Error Log、Telemetry/Persistent Event Log(若支持)、链路状态。
主机证据
Windows Event Log、BSOD/转储、dmesg、journal、服务状态、系统资源。
测试证据
stdout/stderr、结果文件、fio/PyNVMe/商用平台报告、哈希与数据校验。
带外证据
Power/Reset 动作、HDMI 截图/视频、温度、电压/电流(若支持)。
分析
故障分类、失败签名、相似运行、重现概率、候选原因、建议下一步。
完整性
文件哈希、生成时间、缺失字段、证据包版本、数字签名。
# 附录 C 失败分类体系
先准确判断“哪里坏了”,再判断“为什么坏”。
代码
含义
示例
INFRA_NETWORK_FAILURE
实验室网络或控制网络故障
交换机断连、DNS/SSH 不可用。
INFRA_STORAGE_FAILURE
证据存储或测试主机系统盘问题
磁盘满、对象存储不可写。
OOB_CONTROLLER_FAILURE
带外控制器自身故障
控制器失联、继电器无响应。
TEST_TOOL_FAILURE
测试工具或许可证故障
DriveMaster/TestStand/PyNVMe 进程异常。
TEST_SCRIPT_FAILURE
客户脚本逻辑或依赖问题
参数错误、断言错误、文件缺失。
HOST_OS_FAILURE
操作系统级故障
蓝屏、内核崩溃、启动循环。
DUT_ENUMERATION_FAILURE
DUT 未识别或掉盘
PCIe/NVMe 枚举消失。
DUT_COMMAND_FAILURE
NVMe 命令返回异常
超时、状态码错误、重置失败。
DUT_DATA_FAILURE
数据完整性异常
读回不一致、哈希错误。
DUT_PERFORMANCE_REGRESSION
性能相对基线显著下降
P99 延迟或带宽超出阈值。
DUT_THERMAL_FAILURE
温度或热降速异常
达到阈值后掉速或超时。
RECOVERY_FAILURE
规定恢复阶梯未恢复
Reset 和 AC Cycle 后仍不可用。
UNKNOWN
证据不足或多因素耦合
需要工程师进一步分析。
# 附录 D 公开资料来源
竞品与技术生态信息优先采用厂商和标准组织的官方资料。
[1] ULINK — DriveMaster 10 NVMe https://ulinktech.com/products/drivemaster-10-nvme/
[2] ULINK — NVMe Protocol & Regression Test Suites https://ulinktech.com/products/ulink-nvme-test-suites/
[3] ULINK — PCIe-SSD Power Adapter Plus Gen5 https://ulinktech.com/products/pcie-ssd-power-adapter-plus/
[4] Teledyne LeCroy — OakGate SSD Test and Validation Solutions https://www.teledynelecroy.com/ssdtesting/oakgate-ssd-test-solutions.aspx
[5] Teledyne LeCroy — SVF/Enduro SSD Testing Software https://www.teledynelecroy.com/ssdtesting/svf-enduro-software.aspx
[6] SANBlaze — SBExpress-RM5 NVMe Gen5 Test System https://www.sanblaze.com/sbexpress-rm5
[7] SANBlaze — REST Interface https://www.sanblaze.com/rest-interface
[8] Quarch — Data Center & AI Solutions / Fault Injection https://quarch.com/solutions/data-center-ai-solutions/
[9] PyNVMe3 — Developers Guide and User Guide https://pynv.me/ssd/pynvme3-developers-guide/
[10] NI — TestStand https://www.ni.com/ja/shop/electronic-test-instrumentation/application-software-for-electronic-test-and-instrumentation-category/what-is-teststand.html
[11] NVM Express — Error Reporting, SMART, Telemetry and Persistent Event Log https://nvmexpress.org/resource/features-for-error-reporting-smart-log-pages-failures-and-management-capabilities-in-nvme-architectures/
[12] NVM Express — Open Source Software / nvme-cli https://nvmexpress.org/drivers/open-source-software/
[13] Linux Kernel Documentation — NVMe Fault Injection https://docs.kernel.org/fault-injection/nvme-fault-injection.html
注:竞品功能、版本和产品组合会持续变化,正式商务判断前应向厂商索取最新报价、数据表与演示。
# 结语 最终建议
先把一个真实流程跑通,再决定公司要做多大。
最终立项结论 值得做,但必须以真实 SOP 为起点。第一件产品不是“通用存储 AI 平台”,而是“固件回归值守机器人”:工程师配置一次,系统无人值守完成 100 次循环,卡死能自救,失败自动留证,最后输出固件 A/B 结论。这个闭环成立后,再扩展到多节点、故障智能和兼容性循环测试柜。
这条路线与现有专业测试厂商并不矛盾。相反,专业平台越多、客户工具越碎片化,统一控制、无人值守和证据闭环的价值越高。项目真正的护城河将来自长期积累的连接器、真实 SOP、故障签名、恢复策略和环境图谱,而不是一个 AI 对话框。
Binary file not shown.
@@ -0,0 +1,802 @@
STORAGE LABOS
固件回归测试值守机器人
产品定义、开发方案、竞争策略与未来规划
核心命题
不重新发明测试工具,先把工程师从刷版本、守机器、重启、收日志、填报告等机械劳动中解放出来。
产品代号
Storage LabOS · Regression Worker
版本
V1.0
日期
2026年7月27日
适用对象
联合创始人、产品负责人、研发团队、首批试点客户
首个落地场景
固件 A/B 版本的无人值守循环回归
北极星指标
无人值守完成率 + 每工位释放的工程师工时
一句话定位:固件提交后,系统自动刷版本、运行回归、处理卡死、收集证据、复现失败,并生成版本结论和缺陷单。
# 文档摘要
最终建议
先做“单工位固件回归值守机器人”,证明它能在一块 SSD、两个固件版本和一套真实 SOP 下,无人值守完成循环测试;测试主机卡死后自动恢复;失败时保存完整证据;结束后自动形成 A/B 对比报告。不要从协议合规、EDA、PCIe 高速背板或自研主控起步。
本项目的本质不是“AI 会不会判断 SSD”,而是建立一个存储实验室数字执行员:专家负责定义测试和决策,系统负责反复执行、值守、恢复、留证和整理。
公开市场中的 ULINK、OakGate、SANBlaze、Quarch 与 PyNVMe3 已经证明存储验证、供电控制、故障注入和自动化测试存在稳定需求;同时也说明新团队不应在底层测试覆盖和最新 PCIe 代际上正面竞争。你们的切口是这些能力之上的统一控制平面。
问题
方案
可量化结果
工程师夜间值守、失败后人工重启
带外控制器监测主机,分级执行软恢复、Reset、整机断电恢复
人工介入次数、自动恢复成功率
工具和脚本分散,失败现场不完整
统一连接器和 Evidence Bundle,将日志、设备状态、画面、温度和恢复过程对齐
证据完整率、从失败到可提单时间
回归结果靠 Excel 和人工对比
固件 A/B 自动对比、失败指纹聚类、自动生成报告与缺陷单
报告生成时间、重复问题合并率
企业已有工具难以推倒重来
以插件方式接入 DriveMaster、SANBlaze、Quarch、PyNVMe、fio 及私有工具
接入周期、适配器数量
## 目录
上半部分
下半部分
1. 项目判断与战略边界
7. 硬件方案与演进路径
2. 行业痛点、用户与价值模型
8. 竞品分析与竞争策略
3. 产品定位与主打卖点
9. 差异化、护城河与品牌表达
4. MVP 产品定义
10. 产品路线与未来规划
5-6. 产品功能、技术架构与开发方向
11-12. 商业化、团队分工与附录 A-D
# 1. 项目判断与战略边界
## 1.1 核心判断
战略公式
已有测试能力 × 无人值守执行 × 带外自救 × 证据闭环 × 失败复现 = 第一款可卖的产品。
你们最适合的起点不是存储芯片设计、EDA、主控固件本身,也不是再造一套协议测试仪,而是替代存储公司中高频、固定、耗时但决策含量低的执行劳动。
测试与验证并非“无脑工作”本身。真正应该被替代的是其中的机械执行层:准备环境、刷固件、反复启动、等待、检测卡死、收集日志、截图、对比版本、整理报告。测试设计、根因确认和发布决策继续由工程师负责。
## 1.2 产品要解决的任务
把一份固定 SOP 转换成可审计、可恢复、可重复执行的结构化工作流。
在无人值守状态下完成固件刷写、I/O、重启、休眠、恢复和数据校验循环。
测试主机失联或崩溃后,由独立带外控制器恢复环境并从安全检查点继续。
失败发生时自动保存完整现场,而不是只留下“第 67 轮失败”。
将固件 A/B 的结果自动对比,并输出研发可直接使用的报告和缺陷草稿。
兼容客户已有测试工具和私有脚本,降低替换阻力。
## 1.3 明确不做什么
非目标
原因
何时再考虑
重新开发完整 NVMe 协议合规套件
成熟厂商与开源框架已经积累大量用例;首版投入大、差异化弱
客户明确需要且已有稳定收入后,以连接器或合作方式补齐
PCIe Gen5/Gen6 高速背板与协议分析仪
涉及高速信号完整性、时序、电源和认证,容易拖慢产品验证
在单工位软件闭环和客户付费成立后,由专门硬件团队推进
让大模型直接控制破坏性命令
误操作代价高,不能把安全交给概率模型
大模型只生成草稿;确定性规则和人工审批执行
自动批准固件发布
发布是工程责任与组织流程,不应由系统越权
系统提供门禁证据和风险提示
EDA 或芯片设计自动化
进入核心设计签核,专业、信任、数据和销售门槛均过高
长期若有明确行业伙伴再单独评估
## 1.4 产品切入点
图 1|本产品不与底层测试平台争夺协议覆盖,而是作为统一执行与闭环层。
# 2. 行业痛点、用户与价值模型
## 2.1 目标用户
用户角色
日常痛点
本产品交付
固件工程师
新固件出来后要等回归结果;失败信息不完整,复现成本高
版本差异、失败证据、最短复现建议
验证 / QA 工程师
大量时间花在刷版本、守机器、重跑和填表
无人值守执行、自动恢复、自动报告
实验室负责人
机器利用率低,夜间失败无人处理,资源状态不透明
工位在线率、任务队列、人工介入统计
FAE / 客户支持
现场问题难复现,日志来源分散
统一证据包、复现工作流、环境指纹
研发经理
无法准确知道版本风险和回归进度
版本门禁看板、阻断问题、历史趋势
## 2.2 当前人工流程
领取测试盘 → 核对序列号 → 刷入固件 → 重启并确认版本→ 配置测试环境 → 跑现有脚本 → 等待 / 观察→ 卡死后人工重启 → 重跑失败段 → 收集多处日志→ 截图 / 复制数据 → 与上一版对比 → 填 Excel→ 写测试报告 → 建缺陷单 → 工程师再次复现
这里面真正需要专业判断的环节有限,但每一次执行都需要工程师保持在线。夜间失败、主机蓝屏、网络断开和脚本挂起会让“已经自动化的测试”重新变成人工值守。
## 2.3 目标流程
工程师选择 DUT + 固件 A/B + 已审核工作流→ 系统完成安全预检和环境指纹记录→ 自动刷写、运行、重启、休眠、恢复、校验→ 失联时带外控制器分级自救并留痕→ 失败时自动收集 Evidence Bundle 并重现→ 自动聚类同类失败、对比 A/B、生成报告和缺陷草稿→ 工程师只处理需要判断的异常与发布决策
## 2.4 价值模型
北极星指标
每个测试工位每周释放的工程师工时。辅助指标包括无人值守完成率、人工介入次数、自动恢复成功率、证据完整率和从失败到可提单的时间。
指标
定义
产品阶段目标
无人值守完成率 UCR
无人工触碰完成的计划任务数 ÷ 总计划任务数
POC 先达到可用;产品化后持续逼近 98%+
人工介入密度
每 100 小时测试需要人工处理的次数
持续下降,且分类记录介入原因
自动恢复成功率
主机/Agent 失联后由带外控制恢复的成功比例
区分软恢复、Reset、整机断电三层
证据完整率
失败任务是否包含规定的环境、日志、状态和恢复记录
关键字段不得因主机崩溃而丢失
报告交付时间
任务结束到可审阅报告生成的时间
分钟级,而不是人工半天整理
基础设施误报率
被错误归因到 DUT 的脚本、主机或网络故障比例
必须单独监控,否则自动化会制造噪声
# 3. 产品定位与主打卖点
## 3.1 一句话定位
产品定义
固件提交后,系统自动刷版本、运行回归、处理卡死、收集证据、复现失败,并生成版本结论和缺陷单。
产品名可以暂定为 Storage LabOS,第一款模块叫 Regression Worker。品牌不必强调“AI SSD”,应强调“固件回归不再靠人熬夜”。
## 3.2 三个主打点
主打点
用户能感知到的结果
为什么重要
一、自动完成,而不只是自动启动
工程师配置一次,系统整夜运行;主机卡死后能够继续,而不是停在那里等人
多数“自动化脚本”在异常后仍需要值守,这是实际人工成本来源
二、失败自动留证
每个失败形成统一时间线和 Evidence Bundle,包含环境、命令、日志、设备状态、画面、温度和恢复过程
减少“无法复现”和跨团队来回索取材料
三、不推翻现有工具
DriveMaster、SANBlaze、Quarch、PyNVMe、fio、私有刷写工具和脚本均以连接器方式接入
降低客户迁移成本,也避免与成熟平台在底层能力上正面竞争
## 3.3 支撑卖点
基础设施故障与 DUT 故障分开:网络、脚本、系统、Agent、供电和设备异常使用不同状态码。
失败自动复现与缩小范围:固定环境重跑、局部步骤重跑、单变量验证和版本二分。
A/B 版本结论直接可用:不仅给 Pass/Fail,还给新增、消失、加重和偶发问题。
安全优先:绑定 DUT 序列号、破坏性动作白名单、工作流签名、权限和全量审计。
私有化部署:客户日志、固件和工具默认不离开内网;AI 可选本地模型。
报告在测试结束时已完成:工程师从执行者变成审阅者。
## 3.4 对外表达
场景
推荐表述
官网主标题
固件回归不再需要工程师通宵值守。
副标题
机器卡死能自救,失败自动留证,第二天直接看版本结论。
对研发负责人
把初级工程师从刷版本、重启、收日志和填报告中释放出来。
对实验室负责人
提升工位利用率,量化每周节省的人工介入和停机时间。
不建议使用
“AI 精准判断所有 SSD 根因”“替代验证工程师”“一套工具取代所有测试平台”。
# 4. MVP 产品定义
## 4.1 首个场景:固件 A/B 的 100 次循环回归
MVP 只支持一个 SSD 型号、两个固件版本、一台 Windows 或 Linux 测试主机和一套真实 SOP。测试组合可包含 I/O、重启、冷启动、休眠恢复和数据校验。目标不是覆盖所有测试,而是证明全流程能无人值守闭环。
## 4.2 用户操作流程
1. 选择已登记的测试主机与 DUT,系统校验序列号、容量、当前固件和允许动作。
2. 选择固件 A、固件 B 以及一套已审核工作流模板。
3. 设置循环次数、重试策略、报告接收人和是否允许破坏性写入。
4. 系统执行环境预检:磁盘空间、网络、带外控制器、工具版本、日志目录和时间同步。
5. 任务开始后实时显示当前步骤、轮次、主机状态、设备枚举和关键指标。
6. 异常时自动收证、恢复、重试或中止,并明确区分基础设施故障与 DUT 故障。
7. 任务结束后输出固件 A/B 对比、失败簇、证据包和缺陷草稿。
## 4.3 MVP 范围
包含
暂不包含
单工位、单 DUTWindows 或 Linux 二选一先做
多租户云平台与复杂计费
Python / Shell / PowerShell / fio / nvme-cli / 私有 CLI 连接器
完整 NVMe 合规套件
重启、休眠、冷启动、主机掉电恢复
精准 M.2 3.3V 微秒级掉电
树莓派带外 Power / Reset / 心跳 / 温度
PCIe Gen5/Gen6 自研高速背板
设备、主机、固件和环境指纹
自动 BIOS 版本刷写与视觉操作
统一日志、截图、状态和 Evidence Bundle
大规模预测性故障模型
规则判定 + AI 摘要 / 报告 / 复现建议
由 AI 直接执行危险命令或批准发布
## 4.4 MVP 功能模块
模块
MVP 功能
验收重点
资产中心
测试主机、DUT、固件、工具版本、序列号与标签
任何破坏性任务必须绑定允许的 DUT
工作流引擎
步骤、循环、条件、超时、重试、检查点、失败处理
任务重启后能从安全状态继续
Host Agent
执行命令、采集日志、心跳、设备枚举、上传证据
Agent 崩溃不应导致全部证据丢失
带外控制
软重启、Reset、整机电源循环、在线状态监测
测试主机完全失联时仍可操作
Evidence Bus
统一事件时间戳、原始日志、截图、摘要、哈希
失败材料可追溯且不被覆盖
比较与报告
A/B 通过率、失败类型、恢复次数、性能与温度差异
报告结论能回链到证据
AI 助手
SOP 草拟、日志摘要、失败归类建议、缺陷草稿
所有结论必须引用证据,不直接控制危险动作
## 4.5 POC 验收门槛
门槛
最低验收标准
完整执行
对固件 A、B 分别完成规定循环,支持中断恢复和任务审计
零误盘
所有破坏性动作均经过序列号和系统盘保护校验,误操作次数必须为 0
自救能力
模拟 Agent 停止、系统卡死或网络失联时,能够触发至少两级恢复策略
证据闭环
每个失败均可打开一条时间线,并下载统一证据包
版本比较
能够明确显示新增失败、已修复失败、重复失败与基础设施失败
人工减少
与原人工 SOP 对比,显著减少夜间值守、重启、收日志和整理报告时间
# 5. 产品功能与交互方案
## 5.1 页面结构
页面
核心内容
用户动作
总览 Dashboard
运行中任务、工位在线率、异常、人工介入、版本风险
快速判断实验室是否需要人处理
资产中心
主机、DUT、固件、工具、带外控制器、标签与状态
登记、绑定、禁用和审计
工作流模板
SOP 转换后的步骤、参数、权限、版本和审批状态
复制、编辑、审核、发布
任务创建
选择资产、固件、模板、循环、报告和安全策略
启动或预约任务
实时运行
当前轮次、步骤、心跳、设备状态、日志和恢复动作
只在必须时人工接管
证据浏览器
失败时间线、原始日志、截图、环境和哈希
定位证据、下载包、生成缺陷
版本比较
A/B 成功率、失败簇、性能、温度和恢复差异
作出版本判断
失败中心
跨任务聚类、指纹、首次/最近出现、关联版本
去重、标记、复现和分派
## 5.2 失败状态模型
INFRA_NETWORK_FAILURE 网络 / 交换机 / SSH / RPCINFRA_AGENT_FAILURE Agent 或插件运行器异常INFRA_HOST_OS_FAILURE 蓝屏、Kernel Panic、系统无法启动TEST_SCRIPT_FAILURE 脚本异常、参数错误、依赖缺失DUT_ENUMERATION_FAILURE SSD 未识别、掉盘、链路异常DUT_DATA_FAILURE 校验失败、介质错误、不可恢复数据错误DUT_PERFORMANCE_REGRESSION 超出已审核阈值的性能 / 长尾退化DUT_FIRMWARE_FAILURE 刷写、提交、激活或回退异常UNKNOWN 证据不足,等待工程师分类
状态模型必须在大模型之前建立。AI 可以解释和推荐,但真正的状态码应由规则、工具返回值和硬件信号生成。
## 5.3 Evidence Bundle
类别
内容
身份与环境
Run ID、DUT 序列号、型号、固件、主板、BIOS、操作系统、内核/驱动、工具版本
流程上下文
工作流版本、步骤、循环轮次、输入参数、超时、重试和检查点
设备证据
Identify、SMART/Health、Error Log、Self-test、Telemetry/厂商私有日志(可用时)
主机证据
系统日志、事件查看器、dmesg/journal、进程、资源、设备枚举和链路状态
现场证据
HDMI 截图/录像、串口、温度、供电控制动作、主机心跳和网络状态
数据证据
测试文件哈希、校验结果、失败 LBA/范围、fio/PyNVMe/私有工具输出
恢复证据
软恢复、Reset、断电、重新上线、重新枚举和恢复耗时
完整性
所有文件清单、时间戳、大小、哈希和生成组件版本
NVMe 标准已经定义 SMART/Health、Error Information、Device Self-test、Persistent Event 和 Telemetry 等可供诊断的日志或能力;厂商私有日志可通过专用工具或 nvme-cli 插件扩展读取。[11][12]
## 5.4 A/B 报告结构
执行摘要:版本是否建议进入下一阶段、阻断问题数量、关键风险。
环境锁定:两次测试的主机、BIOS、OS、驱动、工具和配置是否一致。
通过率与稳定性:总循环、完整完成、失败、自动恢复、人工介入。
问题变化:新增、已修复、仍存在、出现频率变化和严重性变化。
证据链接:每一个结论回链到原始任务、事件时间线和 Evidence Bundle。
下一步建议:复现工作流、需要固定/变化的变量、建议责任团队。
# 6. 技术架构与开发方向
图 2|MVP 总体架构。带外恢复面独立于测试主机,证据面独立保存失败现场。
## 6.1 核心组件
组件
职责
MVP 建议
Web 控制台
资产、模板、任务、运行状态、证据、比较和权限
Next.js + TypeScript + ECharts
API / Orchestrator
领域模型、权限、安全门禁、任务编排和报告
FastAPI + PostgreSQL
Durable Workflow
长时间任务、重试、等待主机上线、检查点与补偿动作
POC 用数据库状态机;产品化再评估 Temporal 等持久工作流
Host Agent
命令执行、心跳、设备/系统采集、插件隔离与上传
MVP 用 Python 服务;稳定后将核心守护进程迁移到 Go
Plugin Runner
接入 CLI、脚本、DriveMaster、SANBlaze、Quarch 等
清单化插件 + JSON 输入输出 + 超时/权限声明
OOB Controller
Power、Reset、AC、电源状态、HDMI/串口/温度
树莓派 / CM4 / 工业控制器 + 独立 Agent
Evidence Store
原始日志、截图、证据包和不可变清单
MinIO / S3 兼容对象存储;元数据进 PostgreSQL
AI Service
SOP 草拟、摘要、聚类标签、复现建议和报告
可配置本地或客户批准的模型;所有输出引用证据
## 6.2 工作流状态机
DRAFT → APPROVED → QUEUED → PRECHECK → RUNNING ↘ WAITING_FOR_HOST ↘ COLLECTING_EVIDENCE ↘ RECOVERING → RESUME / RETRY ↘ PASSED ↘ FAILED_DUT ↘ FAILED_INFRA ↘ ABORTED / EMERGENCY_STOP
持久状态机比普通脚本循环重要。测试可能持续数小时或数天,控制服务、Agent、主机或网络都可能重启;任务状态必须可恢复,且每一步需要幂等、超时和补偿逻辑。
## 6.3 工作流定义示例
workflow_version: 1name: fw_ab_powerstate_regressionsafety: allowed_dut_serials: ["SAMPLE-001"] destructive_write: true require_approval: truevariables: cycles: 100 firmware: "FW_B.bin"steps: - id: precheck action: lab.precheck - id: flash action: vendor.flash_firmware args: {image: "${firmware}"} - id: reboot action: host.reboot wait_for: {agent_online: true, timeout_sec: 600} - id: loop repeat: "${cycles}" steps: - action: nvme.collect_baseline - action: io.run_profile args: {profile: "4k_mixed", duration_sec: 300} - action: host.hibernate - action: host.wait_resume - action: dut.verify_enumeration - action: data.verify_hashon_failure: - action: evidence.capture_all - action: recovery.escalate - action: failure.classify
## 6.4 插件规范
字段
作用
name / version / platform
标识连接器、版本兼容和运行环境
capabilities
声明刷固件、采日志、I/O、供电、Reset 等能力
risk_level
只读、写入、格式化、Sanitize、固件更新等风险级别
inputs / outputs
使用 JSON Schema 约束参数和结构化结果
timeout / retry / idempotent
定义超时、重试和能否安全重复执行
evidence
声明必须产生的日志、快照和状态字段
healthcheck
任务前验证工具、许可证、设备和依赖是否可用
cleanup / compensation
失败或取消后恢复环境的动作
## 6.5 数据模型
实体
关键字段
Host
主机 ID、硬件、BIOS、OS、驱动、Agent、带外控制器、状态
DUT
序列号、型号、容量、形态、固件、标签、允许动作、生命周期
Firmware
文件哈希、版本、来源、兼容型号、审批、刷写工具
Workflow
版本、步骤、参数、风险、审批、签名、关联 SOP
Run / Step Run
状态、时间、主机、DUT、固件、输入、输出、重试、检查点
Evidence
类型、URI、哈希、时间范围、来源组件、关联步骤
Failure Signature
状态码、日志特征、步骤、环境、DUT 状态、聚类 ID
Intervention
人工介入原因、动作、耗时、结果,用于量化真实节省
## 6.6 AI 与确定性系统的边界
由确定性系统负责
由 AI 辅助
设备序列号与系统盘保护
把自然语言 SOP 草拟成工作流
命令白名单、权限、审批、超时和紧急停止
解释日志和生成工程摘要
真正执行刷写、格式化、Sanitize、供电和 Reset
给失败簇命名、提取相似特征
Pass/Fail 阈值、发布门禁和状态码
提出下一轮单变量验证或复现建议
原始证据采集、哈希和审计
生成 A/B 报告与缺陷草稿
AI 原则
任何 AI 结论都必须包含证据引用、置信度和“尚不能排除”的替代解释。AI 不直接执行危险动作,也不替代工程师作最终根因和发布判断。
## 6.7 安全与私有化
默认部署在客户内网;固件、私有工具、日志和客户数据不上传公共云。
工作流模板需要版本化、审批和签名;运行时禁止临时拼接未审核的危险命令。
系统盘、非白名单序列号和生产盘默认禁止写入;破坏性动作需要双重确认或审批。
Secrets 与日志分离;刷写工具凭据、许可证和 API Token 使用专门密钥存储。
所有自动恢复和人工接管动作写入不可变审计日志。
模型调用可配置脱敏;客户要求时使用本地推理。
# 7. 硬件方案与演进路径
## 7.1 MVP:树莓派作为带外控制器,不作为高性能测试主机
树莓派的价值不是跑满高端 SSD,而是在测试主机完全失联时仍能独立判断在线状态、操作 Power/Reset、记录温度和恢复过程。I/O 与固件测试应优先在真实 x86 Windows/Linux 主机的原生 M.2/U.2 接口上运行。
组件
首版选择
作用
测试主机
普通 x86 台式机或服务器,系统盘与 DUT 分离
运行客户原有工具、驱动和真实负载
带外控制器
Raspberry Pi 5、CM4 或工业 Linux 控制器
心跳、Power、Reset、AC、传感和画面
ATX 控制
光耦隔离的 Power/Reset 控制板
模拟按键,避免直接操作高风险供电轨
供电控制
首版先控制整机 AC;需要 DUT 精确掉电时接入成熟工具
避免首版陷入 M.2 供电时序和信号完整性
画面采集
USB HDMI 采集,可选串口
OS 未启动或蓝屏时仍能留证
传感器
温度为主,后续增加电流/电压
辅助判断热相关和供电相关异常
网络
控制面与带外控制器独立心跳
区分主机崩溃与网络故障
## 7.2 分级恢复策略
1. Agent 仍在线:终止异常进程、清理资源、重新执行安全步骤。
2. Agent 失联但操作系统可达:远程软重启或服务恢复。
3. 主机无响应:带外控制器短按 Reset,并监测重新上线。
4. Reset 无效:执行整机 AC 电源循环,保存断电和恢复时间。
5. 多次恢复失败:进入安全停止,保留现场,禁止无限重启。
## 7.3 硬件演进
阶段
硬件投入
进入条件
H0 现成硬件 POC
测试主机 + 树莓派 + ATX 控制 + 温度 + 可选 HDMI
先证明完整闭环和人工减少
H1 工程样机
工业控制器、隔离 I/O、机箱、状态灯、看门狗、可靠供电
已有试点客户,需要长期无人值守
H2 第三方仪器集成
PSPA、Quarch、智能 PDU、温箱等适配器
客户确实需要 DUT 独立掉电和故障注入
H3 自研带外控制板
多路 Power/Reset、传感、串口、硬件看门狗、远程升级
多个客户有一致需求,外购成本或集成复杂度成为瓶颈
H4 专业 DUT 电源 / 夹层板
精确掉电、测量、旁带信号和保护
由硬件团队完成 SI/PI、电气安全和长期可靠性验证
硬件边界
第一版不要直接切断 M.2 3.3V,也不要自研 Gen5/Gen6 高速转接背板。专业厂商已经提供可软件控制的 DUT 供电、功耗测量、Reset、HotPlug 和故障注入能力;先适配,后自研。[3][5][6][8]
# 8. 竞品分析与竞争策略
## 8.1 市场现状
截至 2026 年 7 月,主流存储验证厂商继续向更高 PCIe 代际、更多 DUT、协议合规、功耗测量、供电控制和故障注入扩展。OakGate 与 SANBlaze 已公开面向 PCIe 6.0 的产品路线,说明新团队若从高速验证硬件正面进入,将面对成熟技术积累与持续代际升级。[13][14]
另一方面,ULINK、SANBlaze、Quarch 和 PyNVMe3 都提供不同程度的自动化或 API 能力,不能把差异化建立在“竞品不会自动化”上。真正可建立的新定位是:跨工具编排、测试主机自救、证据闭环、失败去重与复现,以及对企业真实 SOP 的快速适配。
## 8.2 主要竞品画像
竞品
公开定位与能力
强项
本项目的策略
ULINK DriveMaster + NVMe Suites + PSPA
Windows 上的 NVMe 命令、协议、回归与数据完整性测试;回归套件覆盖多种电源循环、数据比较和 JEDEC 工作负载;PSPA 支持软件控制 DUT 供电与测量。[1][2][3]
测试内容成熟,协议/命令控制和电源循环结合紧密
不重写套件;做上层版本流转、任务调度、主机恢复、跨工具证据和缺陷闭环
Teledyne LeCroy OakGate
专有 SVF 软件与桌面/机架设备组合,支持主流存储协议,可扩展多个 DUT,面向中大型测试团队。[4]
成熟、稳定、规模化、底层验证能力强
把 OakGate 视为高价值执行器;产品在其上方统一编排实验室流程
SANBlaze SBExpress
Turnkey NVMe 验证系统;RM5 为 16 盘位 Gen5 机架设备,支持供电、功耗和错误注入;桌面系统提供 Python、REST、CLI/XML,公开资料称有 900+ 内置测试。[5][6]
协议、合规、硬件控制、API 和多盘位一体化
不比测试数量;比人工介入、异常自救、证据完整性和跨平台复现
Quarch
聚焦功耗、供电循环、HotPlug、旁带和物理层故障注入,提供 Python/REST 等自动化接口,并可与 PyNVMe 等集成。[7][8]
电源与物理故障注入专业、模块化
作为硬件连接器;不先自研精密供电与信号故障注入
PyNVMe3
Python + 专用用户态 NVMe 驱动,可在通用 x86/Ubuntu 平台运行,适合脚本化与 CI,降低专用硬件门槛。[9][10]
灵活、低成本、开发者友好、易于定制
作为首批默认执行器之一;补齐带外自救、资产、安全、证据和报告
企业自研脚本 / Jenkins 类流水线
自由组合 Python、Shell、PowerShell、fio 和私有工具
最贴合内部需求,已有沉没成本
真正的隐形竞品;必须做到接入而非替换,并明显降低维护和值守成本
## 8.3 能力重心对比
能力维度
专业测试平台
自研脚本 / CI
Regression Worker
协议与底层测试覆盖
强,通常是核心卖点
取决于团队积累
不作为首版核心;调用外部能力
供电 / Reset / 故障注入
成熟平台可很强
需要自接硬件
统一适配,并提供带外恢复策略
企业私有 SOP 适配
可定制,但取决于平台
强,但维护分散
以工作流与插件为核心
主机完全卡死后的自救
部分平台具备设备级控制;跨主机流程各异
常需人工处理
产品级主打能力
跨工具证据时间线
通常围绕自身工具
多目录、多格式
统一 Evidence Bundle
基础设施与 DUT 故障区分
依赖具体平台和脚本
容易混杂
统一状态模型和分类
失败去重与最短复现
通常需工程师完成
依赖内部开发
核心增值能力
报告 / 缺陷闭环
有报告,但跨工具整合有限
人工拼接常见
测试结束即生成可提单结果
采购与替换阻力
可能较高
最低
叠加在现有资产上,降低迁移阻力
## 8.4 如何真正脱颖而出
1. 指标不同:竞品常用协议覆盖、测试数量、带宽、盘位和测量精度证明能力;你们用“每周节省多少人工介入、多少失败能够自动形成证据”证明价值。
2. 中立连接层:支持竞品和客户自研工具,把已有投入变成插件。客户无需在迁移前先否定过去的系统。
3. 主机级自救:很多存储工具能控制 DUT,但客户真正痛苦的是测试主机、操作系统、Agent 和网络异常后没人处理。
4. Evidence First:把“失败结果”变成可转交、可复现、可审计的工程资产。
5. Failure Intelligence:基于结构化状态和真实证据做去重、版本关联、单变量复现和历史问题检索。
6. SOP 产品化:每接入一套真实 SOP,就形成可复用模板、连接器和行业知识,而不是一次性外包脚本。
## 8.5 竞争风险
风险
判断
应对
成熟厂商增加 AI、报告或调度
很可能发生,不能依赖单一功能领先
保持跨厂商中立、做连接器广度和真实 SOP 数据
客户选择自研
这是最常见替代方案
以更快上线、带外硬件、证据标准和长期维护降低自研吸引力
被认为只是“套壳 Jenkins”
如果只做任务调度,确实会发生
必须把 OOB 自救、DUT 安全、证据包、失败指纹和复现做深
客户不愿开放私有工具和日志
存储行业数据敏感
内网部署、最小权限、适配器边界、脱敏和可审计
不同客户 SOP 差异过大
可能沦为项目制外包
核心模型标准化,连接器和模板参数化,严格控制定制边界
# 9. 差异化、护城河与品牌表达
## 9.1 可持续护城河
护城河
形成方式
为什么不容易复制
连接器网络
对专业平台、私有 CLI、操作系统和硬件控制器持续适配
单个连接器不难,但长期兼容和组合测试成本高
标准证据模型
把主机、DUT、工具、画面、供电和恢复放入统一时间线
需要深刻理解真实故障流程和客户材料要求
失败指纹库
跨固件、环境、步骤和日志生成稳定签名与聚类
数据来自长期真实回归,不能靠一次模型训练获得
SOP 模板资产
将客户流程抽象为可复用工作流、参数和门禁
越贴近行业,交付越快,客户切换成本越高
带外控制经验
主机状态识别、分级恢复、避免死循环和安全停止
软硬件结合,需要大量异常场景验证
可信度与审计
零误盘、证据完整、可回溯、私有化
存储验证的信任来自长期稳定运行,不只是界面和模型
## 9.2 数据飞轮
更多真实工作流→ 更多结构化运行与失败证据→ 更稳定的失败指纹和恢复策略→ 更快的 SOP 接入与更少误报→ 更高无人值守完成率→ 客户愿意接入更多工位和工具
数据飞轮不能依赖上传客户原始敏感数据。产品应支持在客户本地训练/统计,中心仅同步脱敏的规则、连接器版本和通用失败模式;是否共享由客户明确授权。
## 9.3 品牌与销售语言
建议强调
避免强调
存储实验室数字执行员
万能 AI 存储专家
无人值守完成率和释放工时
测试脚本数量
异常自救和证据闭环
简单任务调度
不替换现有工具,快速叠加
颠覆所有测试平台
工程师保留最终判断
替代验证工程师
私有化、安全、可审计
把所有日志上传云端训练
# 10. 产品路线与未来规划
图 3|路线以里程碑和验收门槛推进,而不是先搭建“大而全”平台。
## 10.1 阶段 A:单工位 POC
交付
进入下一阶段的门槛
一台测试主机、一块允许破坏性测试的 SSD、两个固件版本、一套 SOP
完整跑通 A/B 工作流,所有动作可追溯
Agent、基础工作流、树莓派 Power/Reset、日志和报告
模拟主机失联后能自动恢复
设备身份、安全白名单、Evidence Bundle
误盘为 0;失败证据不因主机崩溃丢失
人工流程对照测量
明确减少了哪些步骤和工时
## 10.2 阶段 B:试点版 Regression Worker
接入客户真实刷写工具、私有日志工具和一到两套回归 SOP。
增加角色权限、模板审批、审计、报告版本和缺陷系统接口。
完善 Windows / Linux 主机故障识别与分级恢复。
建立基础失败指纹、任务对比和工位利用率指标。
形成可重复安装、升级和远程诊断的私有化部署包。
## 10.3 阶段 C:多工位 Storage LabOS
统一资源预约、任务队列、优先级、并发和维护窗口。
主机、DUT、固件、工具和许可证资产管理。
跨工位失败聚类、历史版本关联和实验室健康看板。
连接器 SDK 与客户自助适配框架。
支持接入 OakGate、SANBlaze、Quarch、DriveMaster 等现有资产。
## 10.4 阶段 D:兼容性循环测试柜(方向 4)
在单工位工作流、自救、证据和调度成熟后,增加多主板、多 BIOS、OS、驱动和电源状态矩阵。此时方向 4 不再是一个新项目,而是同一 LabOS 的新资源类型与测试模板。
独立测试节点与带外控制,避免首版设计高速 PCIe 共享背板。
系统镜像恢复、驱动安装、启动前画面采集和兼容性环境指纹。
Pairwise / 风险加权等组合缩减,避免矩阵全排列。
输出固件与主板/BIOS/驱动的兼容性图谱、白名单和最小复现组合。
## 10.5 阶段 E:相邻产品
产品模块
复用能力
新增能力
RMA 返修盘初检
资产、工作流、日志、证据、报告
返修登记、标准复现、初步分流
来料质检工位
多工位调度、设备身份、报告
批量扫码、批次基线、标签/系统接口
工业存储黑匣子
Agent、事件时间线、异常模型
现场长期采集、边缘缓存、远程回传
精确掉电与故障注入
带外控制、工作流、证据
自研电源/信号板或深度仪器集成
实验室运营分析
任务、工位、介入、失败数据
容量规划、利用率和质量趋势
## 10.6 关键决策门
决策门
继续投入的必要证据
从 POC 到试点
真实 SOP 下显著减少人工介入;至少一次异常被自动恢复并形成可用证据
从试点到产品化
客户愿意持续使用并提供第二套 SOP;部署、升级和安全问题可控
从单工位到多工位
客户有明确工位规模和调度痛点,而非为了平台化而平台化
从外购硬件到自研控制板
三个以上客户出现重复硬件需求,且外购成本/集成限制影响销售
进入兼容性测试柜
单工位底座稳定,且有主板/BIOS/OS 矩阵的真实付费需求
# 11. 商业化与首批客户策略
## 11.1 最适合的首批客户
客户特征
为什么适合
中型 SSD、主控、模组或工业存储团队
有真实测试压力,但未必已有完整内部 LabOS
拥有 5-50 个测试工位或大量零散脚本
人工值守和维护成本明显,能量化 ROI
至少有一套固定且高频的固件回归 SOP
容易形成第一条闭环,而不是开放式咨询
愿意提供脱敏报告、正常/异常样品和工程师接口
能验证产品是否真正解决问题
需要私有化部署和现有工具接入
恰好匹配中立控制层定位
首批客户选择
暂不优先挑战已经拥有成熟自研 SLT / LabOS 的头部厂商。先找“已有测试能力,但流程碎片化、夜间仍要人守”的团队。
## 11.2 POC 交付包
一份真实 SOP 的结构化工作流和风险清单。
一台测试主机 Agent 与一套树莓派带外控制。
客户私有刷写工具、I/O 工具和日志工具连接器。
固件 A/B 循环任务、异常自救和 Evidence Bundle。
版本对比报告、人工步骤对照和 ROI 结果。
下一阶段产品化边界与报价依据。
## 11.3 商业模式
收入项
说明
POC / 集成服务
围绕一套 SOP 和一个工位完成连接器、流程和现场验证
软件许可 / 订阅
按工位、并发任务或实验室规模授权,私有化部署
带外控制硬件
标准控制盒、机箱、传感和可选画面采集
高级连接器
专业测试平台、仪器、缺陷系统和私有工具适配
维护与升级
连接器兼容、系统升级、安全补丁和远程支持
后续模块
兼容性柜、RMA、来料质检、运营分析
## 11.4 ROI 计算方式
每月可节省成本 ≈(原每次人工操作分钟 × 每月任务次数 × 工程师综合小时成本)+ 夜间 / 周末值守成本+ 因失败证据不足导致的重复复现时间+ 测试机空转和等待人工恢复的机会成本- 软件与硬件的月度摊销成本
销售时不要只展示“技术很强”,而要对照客户原 SOP 逐步标注哪些动作被删除、哪些异常不再需要人到场、报告提前了多久。
## 11.5 POC 访谈问题
哪一套测试每周重复最多,步骤最固定,最需要人守?
测试主机最常见的中断原因是什么:蓝屏、掉盘、脚本、网络、供电还是环境?
失败后工程师必须收集哪些证据才能建缺陷单?
现有工具有哪些 CLI、API 或可调用入口?哪些只能操作 GUI?
哪些动作可能破坏数据或刷错盘?现有审批与白名单是什么?
一名工程师每周花多少时间在执行、值守、重跑和整理报告上?
哪些问题由于证据不足经常被标记为“未复现”?
# 12. 团队分工、风险与立项动作
## 12.1 初始团队
角色
主要职责
你:产品 / 全栈 / AI
产品定义、控制台、工作流、数据模型、AI 报告、交付体验和项目推进
同学:存储领域 / 客户 / 资金
真实 SOP、测试样品、固件/日志解释、行业关系、首批客户和资源投入
验证工程师(必须)
把真实流程拆成可执行步骤、定义门禁、验收状态和异常分类
嵌入式 / 硬件工程师
带外控制、隔离、可靠供电、看门狗、机箱与后续自研板
后续平台工程师
Agent 稳定性、部署、升级、对象存储、权限和多工位调度
## 12.2 主要风险清单
风险
影响
缓解措施
没有真实 SOP,只按想象开发
做出漂亮但没人使用的通用平台
第一条工作流必须来自同学公司或真实客户
试图一次支持所有工具和接口
项目失控、无法验收
先锁定一个 OS、一个 SSD 类型、一套工具链
只做网页调度,没有异常自救
容易被视为脚本平台或 Jenkins 套壳
带外控制、状态机和证据闭环必须进入 MVP
AI 结论过度承诺
降低工程师信任并带来错误决策
证据引用、置信度、规则优先、人工确认
硬件故障导致误判或损坏 DUT
安全和品牌风险
隔离、保险、白名单、紧急停止和硬件评审
客户定制过多
变成低毛利项目制
插件 SDK、标准模型、可配置模板、定制边界
无法证明节省人工
购买理由不充分
从第一天记录人工介入和原流程基线
## 12.3 立项后的第一批动作
1. 向同学获取一份最耗人的固件回归 SOP、一份脱敏测试报告和两个固件版本。
2. 选定一台独立测试主机和一块允许反复写入/刷写的测试 SSD。
3. 用人工完整执行一次 SOP,逐步记录动作、等待、判断、异常和最终报告。
4. 将流程拆成“专家判断”和“机械执行”,只自动化后者。
5. 先实现设备身份、安全预检、任务状态机和原始证据采集,再做 AI。
6. 接入第一个刷固件工具与第一个 I/O/日志工具。
7. 接入树莓派 Power/Reset,模拟 Agent 失联和主机卡死。
8. 完成固件 A/B 的 100 次循环 Demo,统计人工介入和失败证据。
9. 让真实验证工程师审阅报告,修改 Evidence Bundle 和状态码。
10. 用 Demo 向第二个潜在客户验证是否存在同类 SOP,而不是立即扩功能。
## 12.4 最终立项结论
建议立项
以“固件回归测试值守机器人”为第一产品,底层定位为 Storage LabOS 的单工位执行节点。第一阶段只证明三件事:测试能自动完成、主机异常能自救、失败能自动形成可用证据。完成后再扩展多工位和兼容性测试柜。
# 附录 A|工作流与证据目录示例
## A.1 Evidence Bundle 目录
run-20260727-0001/├── manifest.json├── environment/│ ├── host.json│ ├── dut.json│ ├── firmware.json│ └── tool_versions.json├── timeline/events.ndjson├── device/│ ├── identify.json│ ├── smart-health.json│ ├── error-log.json│ └── telemetry.bin├── host/│ ├── system.log│ ├── kernel.log│ └── device-enumeration.json├── test/│ ├── stdout.log│ ├── stderr.log│ ├── metrics.json│ └── hashes.json├── oob/│ ├── heartbeat.ndjson│ ├── power-actions.ndjson│ ├── temperature.csv│ └── screenshots/├── recovery/recovery.json└── summary/ ├── failure-signature.json ├── ai-summary.md └── issue-draft.md
# 附录 B|失败指纹建议
失败指纹应由稳定、可解释的字段组成,而不是直接使用大模型生成的文本。建议包含:
失败状态码与工作流步骤。
DUT 是否枚举、控制器/命名空间状态和链路信息。
关键错误码、内核事件、工具返回值和日志模板。
固件、主板、BIOS、OS、驱动和电源状态。
失败前后时间窗口内的温度、供电动作和恢复结果。
数据校验是否失败以及失败范围。
将结构化字段归一化后计算签名,再使用聚类或语义模型辅助合并相似问题。工程师可以手动拆分、合并和给簇命名,结果反哺后续规则。
# 附录 C|参考资料与竞品官方来源
以下资料用于核对竞品公开定位与 NVMe 日志能力,访问日期均为 2026 年 7 月 27 日。竞品“缺口”属于基于公开产品定位的战略判断,不代表其不存在非公开或定制功能。
[1] ULINK DriveMaster 10 NVMe
[2] ULINK NVMe Test Suites
[3] ULINK PCIe-SSD Power Adapter Plus Gen4
[4] Teledyne LeCroy OakGate SSD Test and Validation Solutions
[5] SANBlaze SBExpress-RM5
[6] SANBlaze SBExpress-DT5CD
[7] Quarch Data Center & AI Solutions
[8] Quarch PyNVMe / PyNVMe3 Integration
[9] PyNVMe3 User Guide
[10] PyNVMe3 Developers Guide
[11] NVM Express: Error Reporting, SMART, Log Pages and Management
[12] NVM Express: Open Source NVMe CLI
[13] Teledyne LeCroy: OakGate PCIe 6.0 / NVMe Validation Announcement
[14] SANBlaze: Gen6 SSD Testing Announcement
# 附录 D|术语
术语
说明
DUT
Device Under Test,被测设备,本项目主要指 SSD。
OOB / 带外控制
独立于测试主机操作系统的控制路径,用于 Power、Reset、画面、串口和传感。
Evidence Bundle
一次失败或任务的标准化证据包。
UCR
Unattended Completion Rate,无人值守完成率。
Failure Signature
由状态、步骤、日志、环境和设备特征组成的失败指纹。
Regression Worker
Storage LabOS 的第一款单工位固件回归执行模块。
LabOS
面向存储实验室的统一控制平面,管理任务、工位、证据、恢复和智能分析。
SOP
Standard Operating Procedure,企业既有标准操作流程。
— 文档结束 —
Binary file not shown.