Forráskód Böngészése

docs(进件): 补 T6 缺失的接口路径 - 预检扫描漏了「task 是否自带它要用的常量」

Task 6 消费 postMultipart 却从未写该传什么 path;该 URL 全文只出现在
Task 2 的表与联调清单第 7 项里,而 T6 的 brief 是从本文件抽取的 ⇒ 实施者拿不到。
预检把 T6 记为「自洽」是错的:那一格只核了「变异表 ↔ 测试表」。
另记:img_name 与文件 filename 同值是我方收窄,文档未规定二者一致。
alphaH 3 hete
szülő
commit
789d2a9c11
1 módosított fájl, 13 hozzáadás és 2 törlés
  1. 13 2
      .claude/plan/2026-09-22-lsy-onboarding-A.md

+ 13 - 2
.claude/plan/2026-09-22-lsy-onboarding-A.md

@@ -417,7 +417,14 @@ Run: `... -Dtest=LsyOnboardingServiceTest`
 - Consumes: Task 2 的 `postMultipart`
 - Produces: `public String uploadImage(byte[] bytes, String fileName)` → 返回 `img_url`
 
-**上游契约**(page 196236572):见 Task 2 的表。返回 `img_url`。
+**上游契约**(page 196236572):见 Task 2 的表。**接口 URL:`/api/info/upload/img`** ——
+文档原写 `https://test.gdyfsk.com/yfpay/api/info/upload/img`,基址由 `props.getBaseUrl()` 提供,
+代码里只传路径这一段(与 `post` / `postApi` / `postMultipart` 的既有约定一致)。返回 `img_url`。
+
+> ⚠ **2026-09-22 补漏**:本节原先**没有写这个路径**,全文只出现在 Task 2 的表和联调清单第 7 项里。
+> Task 6 的 brief 是从本文件抽取的 ⇒ 实施者会拿不到该传什么 path,只能猜或去翻上游文档。
+> 预检扫描把 T6 记为「自洽」是**错的**:那一格只核了「变异表 ↔ 测试表」,没核「本 task 是否自带
+> 它要用的常量」。已就地补上。
 
 - [ ] **Step 1: 写失败的测试**
 
@@ -443,7 +450,11 @@ Run: `... -Dtest=LsyOnboardingServiceTest`
 - **不要**把它加进 `validate()`:`validate()` 只管「缺了就静默失败」的项(见它自己的 javadoc),一个带合理默认值的上限不属于那类。`LeshouyingPropertiesTest` 补一条断言它不在必填列表里(**正对照**:确证 `validate()` 在有默认值时不炸)。
 - 扩展名白名单:`jpg` / `jpeg` / `png` / `bmp`,取自文档示例出现的形态;**常量 + javadoc**说明依据是「上游字段名全是『照片』语义 + 文档示例是 `.jpg`」,这是我们收窄的,不是上游列举的。
 - 文件名含 `/`、`\`、`..` ⇒ 400(**不是**「清洗后照发」:清洗会让日志里的名字与实际发出去的名字不一致,排障时会骗人)。
-- 复用 Task 2 的 `postMultipart`,`fileFieldName = "img_file"`。
+- 复用 Task 2 的 `postMultipart`:`path = "/api/info/upload/img"`、`fileFieldName = "img_file"`。
+- `img_name` 这个**字符串部件**与文件部件上的 filename 都从**同一个形参** `fileName` 派生。
+  依据:文档把 `img_name` 列为**必填字符串部件**、示例值 `8510_pic_idcard.jpg` 与文件名同形。
+  **文档没有规定二者必须一致** —— 所以这是我们的收窄,理由是不给调用方两个可能写出不一致值的入口;
+  真不一致时上游的行为我们不知道(未实测)。不要把这条写成「上游要求一致」。
 
 - [ ] **Step 4: 跑测试确认绿**