diff --git a/docs/EXECUTION_BOARD.md b/docs/EXECUTION_BOARD.md index 1be60125..631097e3 100644 --- a/docs/EXECUTION_BOARD.md +++ b/docs/EXECUTION_BOARD.md @@ -2277,3 +2277,65 @@ - 剩余最值得继续补的点,已经缩成: - `ProvidersRepo.Upsert / PacksRepo.Upsert / ImportRunItemsRepo.Upsert` 更细的分支回读 - `RedisStickyStore.open` 的剩余异常路径 + +## 2026-05-30 已继续收口 sqlite Upsert 校验分支与 Redis open 异常路径 + +**目标**:把上一轮仍然偏低的两块继续打透: + +- `internal/store/sqlite` + - `ProvidersRepo.Upsert / PacksRepo.Upsert / ImportRunItemsRepo.Upsert` +- `internal/routing` + - `RedisStickyStore.open` + +**本次新增测试点**: + +- `internal/store/sqlite` + - `ProvidersRepo.Upsert` + - `pack_id / provider_id / display_name / base_url / platform` 校验错误 + - `PacksRepo.Upsert` + - `pack_id / version / checksum` 校验错误 + - `ImportRunItemsRepo.Upsert` + - `item_id / run_id / base_url / provider_id / api_key_fingerprint / current_stage / confirmation_status / access_status / matched_account_state / account_resolution` 校验错误 +- `internal/routing` + - `RedisStickyStore.open` + - `AUTH unexpected response` + - `AUTH read failure` + - `SELECT read failure` + +**验证结果**: + +- 定向测试: + - `go test ./internal/store/sqlite ./internal/routing -count=1` => `ok` +- 定向覆盖率: + - `go test -coverprofile=/tmp/sqlite-upsert-followup.cover ./internal/store/sqlite` => `77.5%` + - `go test -coverprofile=/tmp/routing-open-followup.cover ./internal/routing` => `78.3%` +- 热点函数回读: + - `internal/store/sqlite` + - `ProvidersRepo.Upsert = 72.0%` + - `PacksRepo.Upsert = 68.2%` + - `ImportRunItemsRepo.Upsert = 95.8%` + - `internal/routing` + - `RedisStickyStore.open = 82.8%` +- 全量门禁: + - `gofmt -l .` => clean + - `go vet ./...` => `ok` + - `go test -cover ./internal/...` => `ok` + - `go test ./tests/integration/... -count=1` => `ok` + - `bash ./scripts/test/verify_quality_gates.sh` => `PASS` + - 真实门禁在 unrestricted 环境重跑确认 + +**覆盖率变化**: + +- `internal/store/sqlite` + - 本轮前:`76.5%` + - 本轮后:`77.5%` +- `internal/routing` + - 本轮前:`77.1%` + - 本轮后:`78.3%` + +**结论**: + +- `ImportRunItemsRepo.Upsert` 已基本打透,`open` 也不再是 routing 的主要薄点 +- 现在真正剩下的窄点已经进一步收缩为: + - `PacksRepo.Upsert` 的剩余更新分支 + - `ProvidersRepo.Upsert` 的剩余更新分支