Files
junhong_cmp_fiber/openspec/changes/remove-device-protect-period/specs/polling-operations/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.2 KiB

MODIFIED Requirements

Requirement: 轮询并发配置覆盖实际任务

系统 SHALL 为 realname、carddata、package 与 card_status 四类实际轮询任务各维护一项可查询、可更新的并发配置;stop_start 与已下线的 protect 不得作为轮询并发配置返回或接受维护。card_status 初始最大并发数 MUST 为 300。

Scenario: 查询完整配置集合

  • WHEN 授权操作者查询轮询并发配置列表
  • THEN 返回上述四类任务且不含 stop_start 与 protect

Scenario: 维护高于一千的既有并发配置

  • WHEN 授权操作者为已配置轮询任务提交大于 1000 的正整数最大并发数
  • THEN 系统保存该值并使后续轮询限流读取该值

Scenario: 提交保护期并发配置

  • WHEN 授权操作者提交 protect 的并发配置
  • THEN 系统拒绝该请求

Requirement: 轮询任务类型名称可读

系统 SHALL 在轮询并发状态中返回与任务类型一致的中文名称:实名检查、流量检查、套餐检查或卡状态检查。

Scenario: 查询卡状态并发配置

  • WHEN 授权操作者查询 card_status 的并发状态
  • THEN 返回的 task_type_name 为“卡状态检查”