All checks were successful
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 7m8s
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2.0 KiB
2.0 KiB
ADDED Requirements
Requirement: 流量周期重置后自动复机
系统 SHALL 在成功重置套餐流量(data_usage_mb 归零,status 恢复为 Active)后,对因流量耗尽而停机的卡自动触发复机操作。
Scenario: 3 个月套餐第 2 个月耗尽停机,第 3 个月重置后自动复机
- GIVEN 卡 C1 有一个 3 个月套餐(
data_reset_cycle=monthly),第 2 个月流量耗尽(status=2 Depleted),卡已停机(network_status=0,stop_reason=traffic_exhausted),已实名 - WHEN 月度重置任务运行,套餐
data_usage_mb归零,status恢复为1 Active - THEN
ResetService调用ResumeCardIfStopped(ctx, "iot_card", cardID) - AND 卡自动复机(
network_status=1)
Scenario: 日流量套餐重置后停机卡自动复机
- GIVEN 卡 C2 有日流量套餐(
data_reset_cycle=daily),当天流量耗尽停机,已实名 - WHEN 次日零点日流量重置任务运行
- THEN 卡自动复机
Scenario: 年流量套餐重置后停机卡自动复机
- GIVEN 卡 C3 有年流量套餐(
data_reset_cycle=yearly),年内流量耗尽停机,已实名 - WHEN 年度重置任务运行
- THEN 卡自动复机
Scenario: 重置后卡已处于开机状态不重复复机
- GIVEN 卡 C4 套餐被重置,但
network_status=1(已开机,可能已被人工复机) - WHEN
ResumeCardIfStopped被调用 - THEN 检测到卡已开机,幂等跳过,不调用 Gateway
Scenario: 重置后未实名卡不复机
- GIVEN 卡 C5 套餐被重置,
real_name_status=0(未实名),停机中 - WHEN
ResumeCardIfStopped被调用 - THEN 检测到未实名,静默跳过,卡保持停机
Scenario: 批量重置中部分套餐的卡已停机
- GIVEN 月度重置扫描到 100 个套餐,其中 10 个对应的卡处于停机状态且已实名
- WHEN 月度重置完成
- THEN 10 张停机卡异步触发复机,其余 90 张正常跳过
- AND 单个复机失败不影响其他卡的处理