Files
junhong_cmp_fiber/openspec/changes/package-system-upgrade/specs/iot-card/spec.md
huang 353621d923
All checks were successful
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 6m33s
移除所有测试代码和测试要求
**变更说明**:
- 删除所有 *_test.go 文件(单元测试、集成测试、验收测试、流程测试)
- 删除整个 tests/ 目录
- 更新 CLAUDE.md:用"测试禁令"章节替换所有测试要求
- 删除测试生成 Skill (openspec-generate-acceptance-tests)
- 删除测试生成命令 (opsx:gen-tests)
- 更新 tasks.md:删除所有测试相关任务

**新规范**:
-  禁止编写任何形式的自动化测试
-  禁止创建 *_test.go 文件
-  禁止在任务中包含测试相关工作
-  仅当用户明确要求时才编写测试

**原因**:
业务系统的正确性通过人工验证和生产环境监控保证,测试代码维护成本高于价值。

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-11 17:13:42 +08:00

2.1 KiB
Raw Blame History

Spec Delta: IoT卡轮询系统扩展

MODIFIED Requirements

Requirement: 流量检查任务支持新的扣减优先级

系统 SHALL 在轮询系统的流量检查任务HandleCarddataCheck实现新的流量扣减优先级机制。

Scenario: 优先扣减加油包流量

  • WHEN 轮询系统检测到卡流量增加,卡有主套餐和加油包
  • THEN 系统优先更新加油包的 data_usage_mb再更新主套餐

Scenario: 按 Priority 顺序扣减多个加油包

  • WHEN 卡有多个加油包,流量增加
  • THEN 系统按 priority 从小到大顺序扣减流量

Requirement: 停机条件检查调整

系统 SHALL 在轮询系统中,仅当主套餐和所有加油包流量都用完时触发停机。

Scenario: 主套餐用完但加油包有剩余不停机

  • WHEN 主套餐 data_usage_mb >= data_limit_mb但加油包有剩余流量
  • THEN 系统不触发停机操作

Scenario: 所有套餐流量用完触发停机

  • WHEN 主套餐和所有加油包 data_usage_mb >= data_limit_mb
  • THEN 系统触发停机操作

ADDED Requirements

Requirement: 套餐激活检查任务

系统 SHALL 新增套餐激活检查任务HandlePackageActivation定期检查待激活的主套餐。

Scenario: 定期检查待激活主套餐

  • WHEN 轮询系统每分钟执行一次套餐激活检查
  • THEN 系统查询所有已过期主套餐,激活 priority 最小的待生效主套餐

Scenario: 激活延迟小于1分钟

  • WHEN 主套餐在 00:00:00 过期
  • THEN 系统在 00:01:00 之前完成下一个主套餐的激活

Requirement: 流量重置调度任务

系统 SHALL 新增流量重置调度任务HandleDataReset根据套餐的 data_reset_cycle 定期重置流量。

Scenario: 每日0点触发日重置任务

  • WHEN 系统时间到达 00:00:00
  • THEN 系统重置所有 data_reset_cycle=daily 的套餐 data_usage_mb=0

Scenario: 每月1号触发月重置任务

  • WHEN 系统时间到达每月1号 00:00:00
  • THEN 系统重置所有 data_reset_cycle=monthly 的套餐 data_usage_mb=0