CYCLONE SPECIFICATION DOC NO. CY-SPEC-001 · REV 2026-09-12

同一个 case hash,
永远同一个测试结果。
Same case hash.
Same test result. Every time.

确定性 XiL 场景测试内核 · Deterministic XiL Scenario Testing KernelThe deterministic XiL scenario testing kernel

摘要 / ABSTRACT Cyclone 把 ADAS / 机器人回归测试收进一条流水线:数据回放 → 故障注入 → 统计判定 → 证据链。PASS 不再是"跑过一次没红",而是可复现、可审计的机器证明。 Cyclone turns ADAS / robotics regression testing into one pipeline: replay → fault injection → statistical verdict → evidence chain. A PASS is no longer "it went green once" — it is reproducible, auditable machine proof.
FIG. 0-1 · 运行实录(可复算)Live run (recomputable)
$ cyclone run cases/aeb_cipv_50kph.yaml --out out/ verdict: PASS $ shasum -a 256 out/AEB_CIPV_50kph_log.jsonl 2e075b42f19031aa… $ cyclone run cases/aeb_cipv_50kph.yaml --out out2/ # 再跑一次 / run it again $ shasum -a 256 out2/AEB_CIPV_50kph_log.jsonl 2e075b42f19031aa… # 同 seed → 逐字节一致 / same seed → bitwise identical
图 0-1 — 同一用例两次运行,SHA-256 逐字节一致,机器可证Fig. 0-1 — Two runs of the same case, bitwise-identical SHA-256. Machine-checkable.

261 项自动化测试全绿tests green · 逐字节可复现bitwise reproducible · Wilson · SPRT 判定verdicts · rules_cyclone 原型prototype · 单文件二进制 规划中single binary planned

预约 POC 演示 →Book a POC demo → §A · 获取场景包App.A · Get the scenario pack

§01 · PROBLEM STATEMENT

问题定义:老问题,新答案Problem statement: old problems, new answers

§1.1 FAIL 了,分不清是产品缺陷还是测试抖动。A failure: product bug or test noise? You can't tell. 确定性内核让"同输入、不同结果"在结构上不可能——红就是红。The deterministic kernel makes "same input, different result" structurally impossible. Red means red.
§1.2 报告写着 PASS,却没有机器可验证的证据。The report says PASS, with no machine-verifiable evidence. 每个用例产出 case hash + SHA-256 digest,两次运行逐字节一致是可验证的机器证明。Every case emits a case hash + SHA-256 digest; bitwise-identical reruns are machine-checkable proof.
§1.3 接进 CI 要写一周胶水代码。CI integration costs a week of glue code. JUnit / Bazel / BES 原生输出——不是"支持集成",是一等公民。Native JUnit / Bazel / BES output — not "integratable", a first-class citizen.
§1.4 验收线定在 0.98 还是 0.95?评审一追问,全场冷场。Why is the acceptance line 0.98 and not 0.95? One question in review, and the room goes silent. Wilson 下界替代表面通过率,阈值经裕度分析三步推导——有推导过程的是门禁,没有的是装饰。Wilson lower bounds replace surface pass rates, and thresholds are derived by three-step margin analysis — a threshold with a derivation is a gate; without one, decoration.

§02 · SYSTEM CHARACTERISTICS

系统特性System characteristics

§2.1 确定性回放Deterministic Replay 已支持Supported

虚拟时间回放 + 内容寻址:同 seed 的证据日志逐字节一致。

Virtual-time replay with content addressing: identical seeds produce bitwise-identical evidence logs.

§2.2 统计判定Statistical Verdicts 已支持Supported

Wilson 置信区间 + SPRT 序贯检验——用统计显著性替代人肉阈值。

Wilson score intervals + SPRT sequential testing — statistical significance instead of hand-tuned thresholds.

§2.3 证据链Evidence Chain 已支持Supported

四件套:case hash + JSONL SHA-256 digest + 失败快照 + JUnit XML——每条 CI 记录可回溯到用例版本与原始数据。

The four-piece set: case hash + JSONL SHA-256 digest + failure snapshot + JUnit XML — every CI record traces back to the case version and raw data.

§2.4 CI 原生CI-Native

JUnit XML 开箱即用已支持;rules_cyclone 让场景测试成为 bazel test 一等公民原型验证中;BES 就绪原型验证中。

JUnit XML out of the box Supported; rules_cyclone makes scenario tests first-class bazel test citizens Prototype; BES-ready Prototype.

完整特性、架构与集成接口 → 深入了解:确定性故障注入 · ADAS 场景回归测试 · 可审计测试证据链Full characteristics, architecture & integrations → Deep dives: Deterministic fault injection · ADAS scenario regression testing · Auditable test evidence chain

APPENDIX A · SCENARIO PACK

附录 A · 场景包目录Appendix A · Scenario pack

22 个 ADAS 场景 YAML,全部实测判定符合预期。一个 YAML 就是一个回归用例,改参数即得新场景。

22 ADAS scenario YAMLs, every verdict matching expectations. One YAML is one regression case — tweak parameters to derive new scenarios.

主动安全 ×13Active safety ×13 行车辅助 ×5Driving assist ×5 泊车 ×1Parking ×1 人机共驾 ×2Shared driving ×2 L3 准入 ×1L3 admission ×1

目录公开;完整 22 个场景 YAML 留邮箱发送:

The catalog is public; the full pack of 22 YAMLs is sent on request:

留邮箱,发完整场景包Email us for the full pack

场景内数值为演示数据,非真实 SUT 实测;阈值需按你的 SUT 基线标定(属裕度分析服务项)。

All in-scenario figures are demo data, not measured on a real SUT; thresholds must be calibrated against your SUT baseline (a margin-analysis service item).

场景如何进 CI 回归:ADAS 场景回归测试方案 →How scenarios become CI regression: ADAS scenario regression testing →

APPENDIX C · TECHNICAL NOTES

附录 C · 技术笔记Appendix C · Technical notes

统计判定系列(点估计 → Wilson 下界 → SPRT → 裕度分析)+ 架构篇与跨行业方法学。测试相关标准的原文获取渠道见标准导航页。

Statistical verdicts, architecture notes, and cross-industry methodology (articles in Chinese). For official sources of testing standards, see the standards directory.

TN-22 · 2026-09-12 工程基建:抽象层、ALM 与 Benchmark 抽象层决定 SIL 投资在 HIL 时代增值还是作废,ALM 管双向可追溯,Benchmark 回答“有多快”。 TN-21 · 2026-09-12 功能安全三视角:ASIL、安全 MCU 与 NCAP ASIL 定规矩的严度,安全 MCU 给域控兜底,NCAP 把“安全”翻译成市场听得懂的场景。 TN-20 · 2026-09-12 可编程故障注入:让“异常输入”成为测试资产 故障注入从“接线员手艺”变成可版本化、可回归的测试资产。 TN-19 · 2026-09-12 场景三部曲:ODD、OpenSCENARIO 2.0 与采样经济学 ODD 先砍出测试边界,OSC2 用声明式描述场景,采样经济学回答“组合爆炸怎么办”。 TN-18 · 2026-09-12 总线的说与听:RX/TX、残余总线仿真与 XCP RX/TX 的方向永远是“相对于谁”说的;残余总线仿真补全环境的半边,XCP 打开观测的纵深。 TN-17 · 2026-09-12 HIL 台架的实时性:一拍误了不是慢,是错 HIL 的“实时”不是快,是每拍都守时;FPGA 用代码“接线”,为微秒级确定性兜底。 TN-16 · 2026-09-12 PIL 处理器在环:SIL 过了为什么还不够 SIL 到目标机之间隔着编译器、数值、资源、时间四堵墙;back-to-back 比对是 PIL 的核心方法。 TN-15 · 2026-09-12 一个 AEB 功能从模型到量产:V 模型六层与 TTC 指标 用一个 AEB 功能走完 V 模型六层测试环境,再看它最经典的触发指标 TTC 和它的五个缺陷。 TN-14 · 2026-09-12 Classic 与 Adaptive AUTOSAR:不是替代,是分工 Classic AUTOSAR 管车身底盘的确定性,Adaptive 管智驾域控的算力——两个平台不是新旧替代,是各管一段。 TN-13 · 2026-09-12 汽车测试工具链:CAPL 与 ECU-TEST CANoe 内嵌的 CAPL 和测试自动化层的事实标准 ECU-TEST——平台内嵌脚本与独立自动化层的两种行业打法。 TN-12 · 2026-09-12 测试报告的出口:JUnit XML 与判定引擎 JUnit XML 为什么成了测试报告的事实标准,以及一个只读不写的判定引擎如何把期望逐条推进状态机。 TN-11 · 2026-09-12 最小成本验证:垂直切片、测试替身与激励注入 垂直切片选最危险的假设先验证,stub 与 fixture 替掉依赖,激励注入把输入喂进去——三招都是花小钱办大事。 TN-10 · 2026-09-12 flaky test:为什么是大害,怎么发现 时过时不过的测试不只是烦人——它让整个测试体系的可信度归零。 TN-09 · 2026-09-12 为什么 HIL 时代“夜间全量回归”是奢侈品 夜间回归曾是软件测试的常态;当测试环境变成百万级 HIL 台架,通宵全量成了烧钱的奢侈。 TN-08 · 2026-09-12 用例分级体系:冒烟、回归、全量背后的成本逻辑 冒烟、回归、全量不是三种测试,是同一套用例库按成本分配的三种跑法。 TN-07 · 2026-09-10 确定性、故障注入与证据链:三个行业共用的一套"考试哲学" 芯片、AI Agent、汽车电子:被测对象复杂到无法穷举、失败代价高到不能试错,于是三个行业长出了同一套方法学。 TN-06 · 2026-09-09 XiL 阶梯对照:汽车和芯片,画的是同一张图 汽车说 SiL/HiL,芯片说 ISS/cycle-approx——画在纸上,是同一条从快而假到慢而真的阶梯。 TN-05 · 2026-09-08 双模时钟:离线可复现与在线真实感如何兼得 要可复现就得离线,要真实感就得在线?双模时钟让同一套引擎在两种物理里行走:虚拟钟管回放,真实钟管现场。 TN-04 · 2026-09-07 裕度分析三步法:阈值不是拍脑袋,是可推导的 验收线为什么定在 0.98?跑基线、定裕度、双向校验——把阈值从装饰变成证据,附可行性判据与剂量-响应曲线。 TN-03 · 2026-09-06 SPRT 与 LLR:证据攒够就提前下判的序贯检验 到底要跑多少把?SPRT 给判定装上记分牌:边跑边看,证据攒够就提前收卷,平均省三到五成执行量。 TN-02 · 2026-09-05 Wilson 下界判定:给通过率配一把诚实的尺子 Wald、Clopper-Pearson、Wilson 三把尺子量出三个保底分——为什么验收承诺只能立在下界上,附速查表与五行实现。 TN-01 · 2026-09-04 跑 30 把过 27 把,为什么不算验证通过 通过率 90% 达到验收线,为什么不能签字?用抛硬币、一勺汤和一张样本量对照表,讲清点估计、置信区间与保底分。

DOCUMENT CONTROL

拿你自己的场景跑一次Run it on your own scenario

30 分钟演示:AEB 回归 → 注入故障 → 打开证据报告。

A 30-minute demo: AEB regression → inject a fault → open the evidence report.

约 30 分钟演示Book a 30-min demo 获取报价Get a quote 产品单页 PDFProduct sheet PDF 路线图 PDFRoadmap PDF