docs(spec): 异步化主题完成 — 技术债清除(ProjectListDialog异步化, 删同步IProjectRepository/RepoResult/ApiClient.get|postJson), 全App网络层100%异步
This commit is contained in:
parent
5f00cdce7a
commit
067852e08b
|
|
@ -12,13 +12,13 @@
|
||||||
- **登录路径 ✅**(同计划 Part B:B1/B2/B4):`AuthService` 异步(`CaptchaLoad`/`LoginLoad` + `ApiChain` 编排 verify→RSA→login2);`LoginWindow` 不冻 + 可取消(析构 abort);`test_auth` live 异步化。
|
- **登录路径 ✅**(同计划 Part B:B1/B2/B4):`AuthService` 异步(`CaptchaLoad`/`LoginLoad` + `ApiChain` 编排 verify→RSA→login2);`LoginWindow` 不冻 + 可取消(析构 abort);`test_auth` live 异步化。
|
||||||
- 测试 89 → 116。每块逐任务 spec+质量双评审 + 整体评审通过。
|
- 测试 89 → 116。每块逐任务 spec+质量双评审 + 整体评审通过。
|
||||||
|
|
||||||
**仍未完成(BLOCKED,同根:`ProjectListDialog` 仍同步消费 `IProjectRepository`):**
|
**技术债清除 ✅(2026-06-12):** `ProjectListDialog` 已迁到 `IAsyncProjectRepository`(NavRequest + abort-and-replace + 身份比对 + 析构 abort),随即删除同步 `IProjectRepository`、`RepoResult`、`ApiProjectRepository` 9 个同步方法、`ApiClient` 同步 `get/postJson`+`await`(A6+B3 解锁完成)。**全 App 网络层现已 100% 异步,无 `QEventLoop` 阻塞、无过渡双接口债。** 测试 116/116。
|
||||||
- 删除 `ApiClient` 同步 `get/postJson`(Part B 的 B3)+ 删除同步 `IProjectRepository`(Part A 的 A6)。解锁前置:先把 `ProjectListDialog` 迁移到 `IAsyncProjectRepository`。
|
|
||||||
- 故 `ApiProjectRepository` 暂同时实现同步+异步两接口(过渡技术债)。
|
|
||||||
|
|
||||||
可选 follow-up(评审建议,非阻断):删 `DatasetDetailController::ChartData.grid/gridScale` 死字段;补 `qRegisterMetaType<QList<ApiResponse>>()`。
|
**结论:异步化主题完成。** 数据详情(试点)+ 导航(Part A)+ 登录(Part B)+ 项目列表弹窗全部异步;同步路径彻底移除。
|
||||||
|
|
||||||
> 铺开实现计划:`plans/2026-06-11-apiclient-async-rollout.md`(Part A/B 已落地,B3 BLOCKED)。
|
可选 follow-up(评审建议,非阻断,纯整洁):删 `DatasetDetailController::ChartData.grid/gridScale` 死字段;如未来引入 cross-thread 再补 `qRegisterMetaType<QList<ApiResponse>>()`。
|
||||||
|
|
||||||
|
> 铺开实现计划:`plans/2026-06-11-apiclient-async-rollout.md`(Part A/B + 债务清除均已落地)。
|
||||||
|
|
||||||
## 1. 背景
|
## 1. 背景
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue