- 移除 DefaultsConfig 类型、ProbeConfig.defaults 字段 - 移除 CheckerSchemas.defaults、ResolveContext.defaults、CheckerValidationInput.defaults - 更新所有 checker schema/resolve/validate 删除 defaults 合并逻辑 - 更新 config-loader 不再读取传递 defaults - 更新测试、README、DEVELOPMENT、probes.example.yaml - 重新生成 probe-config.schema.json(不含 defaults) - 同步 delta specs 到主规范 - 归档 openspec change
2.0 KiB
2.0 KiB
Purpose
定义 HTTP 类型拨测目标:通过 type: http 配置 HTTP/HTTPS 探测,支持请求方法、headers、body、SSL 校验、重定向和响应体大小限制,捕获 HTTP 状态码、响应头、响应体和执行耗时,按 expect 规则校验并生成 matched 判定。
Requirements
Requirement: HTTP target 配置
系统 SHALL 支持 type: http 的 target 配置,通过 http.url 描述目标 HTTP 地址,并通过可选字段控制请求方法、请求体、headers、SSL 校验、重定向和响应体大小限制。
Scenario: 解析最简 HTTP target
- WHEN YAML 中 target 配置
type: http和http.url: "https://example.com" - THEN 系统 SHALL 将其解析为 HTTP checker,并填充
method=GET、maxBodyBytes=100MB、ignoreSSL=false、maxRedirects=0、headers、body、interval、timeout、group 和 expect 配置
Scenario: HTTP target 缺少 url
- WHEN YAML 中 target 配置
type: http但缺少http.url - THEN 系统 SHALL 以配置错误退出,并提示该 target 缺少 http.url 字段
Scenario: HTTP target 覆盖请求方法
- WHEN YAML 中某个 HTTP target 显式配置
http.method: POST - THEN 该 target SHALL 使用自身 method 字段的值,而不是内置默认值 GET
Scenario: HTTP target 覆盖响应体大小限制
- WHEN YAML 中某个 HTTP target 显式配置
http.maxBodyBytes - THEN 该 target SHALL 使用自身 maxBodyBytes 字段的值,而不是内置默认值 100MB
Scenario: HTTP target 覆盖 headers
- WHEN YAML 中某个 HTTP target 显式配置
http.headers - THEN 该 target SHALL 使用自身 headers 字段的值,不再与规则文件级 defaults 合并
Scenario: HTTP 序列化展示摘要
- WHEN 系统同步 HTTP target 到 targets 表
- THEN
target展示摘要 SHALL 为 HTTP URL,configJSON SHALL 包含 resolved 后的 url、method、headers、body、ignoreSSL、maxBodyBytes 和 maxRedirects