用途
该技能用于激活 CocoOps 的演示模式:它会生成一份贴近真实场景的模拟数据集,使评估者无需具备生产 Snowflake 访问权限,也能查看 DORA 指标与冲刺健康状况。激活方式为 $ops demo。
前置校验
执行前需要确认 .cocoplus/ 目录存在;如果不存在,就输出“CocoPlus is not initialized. Run $pod init first.”,然后停止。
主要能力与执行流程
- 检查当前演示状态:读取 cocoplus.toml 中的 [demo] enabled。如果已为 true,就提示演示模式已激活,并给出 $ops dora、$ops demo --reset、$ops demo --off 等后续命令;在这种情况下,除非带有 --reset 标志,否则停止。
- 创建演示数据集目录:确保 .cocoplus/ops/demo/ 存在,如果不存在就创建。
- 写入演示指标数据集:生成 .cocoplus/ops/demo/metrics.json,其中包含 30 天的贴近真实场景的数据,展示 DORA 指标的演进过程。要求使用贴近真实的流水线名称(例如 stg_orders_load、int_customer_metrics、mart_revenue_daily、ml_churn_predict),而不是通用名称;体现可信的改进曲线,即早期阶段故障率和恢复时间较高,后期阶段则有所改善;覆盖四项 DORA 指标,取 High 层级的合理数值(不是 Elite,强调可信而非完美)。数据集结构包含 metrics(run_frequency、lead_time、recovery_time、quality_failure_rate)、pipeline_signals、git_signals、sprint、overall_health 等字段。
- 写入 .gitignore 条目:确保 .cocoplus/ops/demo/ 被 Git 忽略,向 .cocoplus/.gitignore 追加 ops/demo/。
- 在 cocoplus.toml 中激活演示模式:如果该文件不存在,就创建一个最小版本;设置 [demo] 下的 enabled = true、activated_at 时间戳与 dataset 路径。
- 确认激活:输出激活成功信息,其中列出数据集路径、流水线名称、整体健康层级以及后续可执行命令($ops dora、$ops sprint、$ops suggest);并提示用 $ops demo --off 关闭。
标志参数
--off:读取 cocoplus.toml 并将 [demo] enabled 设为 false,随后输出演示模式已停用、$ops dora 将改用实时数据源。
--reset:重新生成 .cocoplus/ops/demo/metrics.json(结构不变,更新 generated_at 时间戳),随后输出“Demo dataset regenerated.”。
设计约束
演示数据是一等功能,不能使用过于简化的最小数据;必须使用贴近真实的流水线名称;必须写入 gitignore,避免演示数据污染团队仓库;演示模式启用时,$ops 输出中应始终显示 [DEMO] 标签,用户必须知道演示模式处于激活状态。
完成标准
metrics.json 已写入,包含 4 条命名流水线与合理的 High 层级数值;cocoplus.toml 中 [demo] enabled = true;ops/demo/ 的 gitignore 条目已存在;激活确认信息中展示后续步骤命令。