# HANDOFF — ECR-015 Architect → Engineer **Date:** 2026-08-13 **ECR:** ECR-015(**Approved** · **Retrospective: true**) **BD:** BD-2026-015 Approved ## Task interpretation 收口头像:确认 migration/接线/OpenAPI/H5/SDK 与 Spec R9 一致;补缺测与 TEST_REPORT;不扩 Scope。 ## Load 1. `docs/ECR/ECR-015-account-avatar.md` 2. `docs/BACKEND_DESIGN/BD-2026-015-account-avatar.md` 3. Spec `account-auth.md` R9 4. `.ai/definition-of-done.md` ## Ordered plan 1. 确认 `000018` 已应用;`users.avatar_url` 可读 2. 核对 UploadAvatar · MediaHandler · avatar.Store/ResolveAbs 3. 补 `internal/avatar` 单测(大小/类型/路径穿越)若缺 4. OpenAPI / SDK / MinePage 默认图路径核对 5. TEST_REPORT · HANDOFF→reviewer · STATE ## Smoke checklist - [ ] 登录后「我的」上传 JPG <2MB → 头像更新 - [ ] WebP/PNG OK;>2MB 或 exe 失败文案可读 - [ ] 未设置头像显示 default-avatar - [ ] 新标签打开 `/api/v1/media/avatars/...` 可见图 ## Owner `STATE.owner = engineer`