Files
junhong_cmp_fiber/openspec/changes/archive/2026-04-13-realname-trigger-priority-enhancement/proposal.md
huang 7308afe801
All checks were successful
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 7m18s
归档
2026-04-13 15:03:02 +08:00

2.4 KiB
Raw Blame History

Why

用户在C端主动获取实名跳转链接后需要等待轮询系统的定时检查通常30秒-5分钟间隔才能检测到实名状态变化导致用户实名完成后仍需等待较长时间才能正常使用卡片功能严重影响用户体验。同时现有轮询系统的手动触发功能存在去重机制时间不对齐、频次限制设置不合理等技术问题需要一并修复以确保功能的稳定性和可靠性。

What Changes

  • 新增C端实名跳转自动触发功能在用户获取实名链接时自动触发该ICCID的实名检查提高检测优先级
  • 修复手动触发去重机制解决去重key 1小时过期与日限制按天计算的时间不对齐问题
  • 优化手动触发频次限制调整每日100次限制到更合理的水平建议500次避免正常使用受限
  • 简化权限检查逻辑:合并冗余的权限检查函数,减少代码重复
  • 改进错误处理和日志:增强手动触发的异常处理和追踪能力
  • 增强系统集成在客户端实名Handler中集成手动触发服务调用

Capabilities

New Capabilities

  • client-realname-auto-trigger: 客户端实名跳转自动触发实名检查优先级提升功能
  • polling-manual-trigger: 手动触发功能的 bug 修复和优化改进(为该能力补充 live spec原 spec 仅存于 archive

Impact

代码影响

  • internal/handler/app/client_realname.go: 新增手动触发服务字段和异步触发 goroutine
  • internal/service/polling/manual_trigger_service.go: 修复去重 TTL1h→24h3处 daily limit 100→500优化权限检查
  • internal/bootstrap/handlers.go: 更新 ClientRealnameHandler 依赖注入,传入 ManualTriggerService
  • pkg/constants/redis.go: 同步更新 RedisPollingManualDedupeKey 注释中的过期时间说明
  • cmd/api/docs.go / cmd/gendocs/main.go: 同步更新 NewClientRealnameHandler 调用参数

API影响

  • 无新增API现有API响应时间无变化
  • 手动触发相关API的错误处理优化

数据库影响

  • 无表结构变更
  • tb_polling_manual_trigger_log 记录量可能轻微增加

性能影响

  • 客户端实名接口增加异步调用,对响应时间影响 < 5ms
  • Redis操作增加但通过优化去重机制整体性能提升

运维影响

  • 实名同步延迟显著减少用户投诉预计减少80%+
  • 手动触发功能更稳定,运维排查问题更便利