1
0
Files
DiAL/openspec/changes/cmd-checker-enhancement/specs/probe-config/spec.md

1.3 KiB
Raw Blame History

MODIFIED Requirements

Requirement: YAML 配置文件格式

target MUST 使用 type 字段声明 checker 类型HTTP 领域字段 MUST 放在 http 分组cmd 领域字段 MUST 放在 cmd 分组。

Scenario: 最简 command 配置文件解析

  • WHEN 系统读取只包含一个 type: cmd target 和 cmd.exec 的 YAML 配置文件
  • THEN 系统 SHALL 使用内置默认值填充未指定的字段interval=30s, timeout=10s, cmd.cwd 为配置文件所在目录, cmd.maxOutputBytes=100MB

Requirement: 配置校验

Scenario: command target 缺少 exec

  • WHEN YAML 中某个 target 配置 type: cmd 但缺少 cmd.exec
  • THEN 系统 SHALL 以错误退出,提示该 target 缺少 cmd.exec 字段

Scenario: 动态 env 字段允许

  • WHEN YAML 中 cmd.env 包含任意环境变量名称,且对应值为字符串
  • THEN 系统 SHALL 接受这些动态 env 名称

Requirement: expect 配置增强

系统 SHALL 支持 typed target 的领域专用 expect 配置,包括 HTTP 的 statusheadersbody 和 cmd 的 exitCodestdoutstderr

Scenario: 解析 command expect 配置

  • WHEN YAML 配置文件中 cmd target 的 expect 包含 exitCode、stdout 和 stderr 规则数组
  • THEN 系统 SHALL 正确解析并存储为 cmd target 的 expect 字段