Some checks failed
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Has been cancelled
完成运营商实名回调、业务事件观测序列与受控配置装配,同时恢复 UR43 已交付的 packages[].remove 字段及旧响应兼容,统一更新 OpenSpec、OpenAPI 和交付文档。 Constraint: 七月测试环境里程碑不新增或运行自动化测试 Rejected: 以必填 operation_type 替换 packages[].remove | 会破坏已交付前端契约 Confidence: high Scope-risk: broad Directive: 后续修改系列套餐管理接口必须保持 packages[].remove 和 ShopSeriesGrantResponse 兼容 Tested: go run ./cmd/gendocs;go build -buildvcs=false ./...;openspec validate complete-july-iteration-test-release --strict;git diff --check Not-tested: 按本 Change 约定未运行 go test,真实运营商与 Gateway 联调延期
2.7 KiB
2.7 KiB
公共技术基础前端即时接口交接
禅道归属
现在需要前端处理的内容统一填写到技术用户需求“七月迭代公共开发基础”下的研发需求:
[FE][TECH] 七月迭代公共状态与异步任务交互
不要把本次改动拆到全局审计或各业务需求下。支付方式与系统配置页面仍归 UR#48;全局审计中心页面归“全局多视角审计”技术用户需求。
现在需要调整的接口
GET /api/admin/export-tasks
变更类型:兼容性新增字段,原字段不删除、不改名。
每条任务新增或统一以下字段:
| 字段 | 含义 | 前端用途 |
|---|---|---|
task_id |
稳定任务标识 | 保存并用于恢复任务查询 |
total_count |
总条数 | 展示整体进度 |
success_count |
成功条数 | 展示成功结果 |
failed_count |
失败条数 | 展示失败结果 |
error_code |
稳定错误码 | 决定错误类型,不直接展示底层错误 |
error_summary |
安全中文错误摘要 | 展示任务失败原因 |
updated_at |
最近更新时间 | 判断任务是否仍有进展 |
GET /api/admin/export-tasks/{id}
变更类型:兼容性新增字段,原字段不删除、不改名。
任务详情新增或统一 task_id、total_count、success_count、failed_count、error_code、error_summary、updated_at,字段语义与列表一致。
页面与业务逻辑调整
- 所有异步任务统一使用五态:
1=待处理、2=处理中、3=已完成、4=已失败、5=已取消。 - “部分成功”不是新的状态。只要任务执行结束,状态就是已完成,页面通过总数、成功数、失败数表达部分成功。
- 创建任务成功后保存
task_id;刷新页面或重新进入页面时查询原任务,不得再次创建任务。 - 待处理和处理中按 2 秒、3 秒、5 秒递增轮询,之后最长保持 10 秒;进入终态立即停止。
- 页面不可见时暂停轮询,恢复可见后立即刷新一次。
- 403 显示无权限且不自动重试;瞬时失败保留已有数据和用户输入,并提供明确重试入口。
- 任务失败优先展示
error_summary;不要把error_code或底层技术错误直接作为用户文案。
现在不需要调整的内容
GET /api/admin/system-configs 和 PUT /api/admin/system-configs/{key} 是超级管理员受控配置接口。业务模块注册正式 Key 后即可按 control 渲染并更新;全局 Audit Event 已取消,不再作为接口可用前置。是否建设独立系统配置页面仍由实际业务需求决定。
Outbox 监控和人工恢复也不在本次前端范围内;公共基础只提供后端运维接缝,未来如需运营页面必须另行评审。