Files
junhong_cmp_fiber/openspec/changes/remove-device-protect-period/specs/asset-device/spec.md
邹进 42e881576d
All checks were successful
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 9m33s
feat: 卡网关按运营商账户限流并记录停复机调用
- 新增网关限流:按本系统运营商账户(卡 carrier_id)→ 限流组 → 操作限制每秒请求数,每次 HTTP 尝试计量,默认限流、仅后台人工点击/通道阈值/自动续费/手动刷新豁免;支持只统计与拦截两种模式,默认只统计
- Asynq 遇限流不计失败、固定短延迟重试;轮询任务与停复机业务重试遇限流短延迟重排
- 停机、复机不再使用网关内部重试,只发一次请求
- 网关返回结构化错误;新增上游错误分类规则表与测试接口
- 新增按月分区的停复机记录表:系统自动停复机只写记录,不再写统一审计与集成日志;普通轮询查询不再写集成日志
- 新增限流组、错误分类、停复机记录、按账户调用统计与枚举后台接口
- 迁移 000243~000246;同步 OpenSpec 提案(含后续 6 个 change)与技术方案、工程约束
2026-10-24 15:06:41 +09:00

1.3 KiB
Raw Blame History

ADDED Requirements

Requirement: 设备停复机不设保护期

系统 SHALL 在后台对设备停机或复机后不设置保护期,MUST NOT 因此前的设备停机或复机拒绝相反的人工操作;单卡手动停复机 MUST NOT 检查保护期。系统 MUST NOT 调度保护期一致性检查,也 MUST NOT 产生停机原因 protect_period 的新记录;历史记录中的 protect_period 保留并照常展示,对外开放接口的停机原因映射保持不变。

Scenario: 设备停机后立即复机

  • WHEN 运营对设备停机后 10 分钟内点击复机
  • THEN 系统按复机规则执行,不因保护期拒绝

Scenario: 停机后自动规则复机

  • WHEN 设备被人工停机后满足自动复机条件
  • THEN 系统按规则自动复机,不存在保护期内的强制停机或强制复机

Requirement: 保护期状态字段兼容返回

系统 SHALL 在后台资产详情与 C 端资产详情中继续返回 device_protect_status 字段,其值 MUST 固定为无保护期(none),接口文档 MUST 标记该字段已废弃。字段删除另行变更,前提是后台前端与 C 端(含老版本小程序)均不再读取。

Scenario: 老版本客户端读取

  • WHEN 老版本小程序读取设备资产详情
  • THEN 响应中仍有 device_protect_status,值为 none