docs: 校准 PHIS 档案 upsert 任务

This commit is contained in:
ila
2026-07-15 22:08:45 +08:00
parent d30ff01c35
commit 00c1028731
7 changed files with 97 additions and 20 deletions
+23
View File
@@ -317,3 +317,26 @@
- 验证:openapi YAML 合法、drugs pageNo required=true、grid-addresses 共享 pageNo 仍 false;Go 静态自检通过;现有 drugs 测试(pageNo=1/pageNo=bad)不受影响。待用户 `go test ./...` 复验。
- 决策:只修请求侧分页契约(清晰的 bug);不扩 `Drug` 响应结构体(缺 ypxh/ypjl/ycjl),因 YPML00001 未真实联调、避免照 docx 猜类型,且 HTTP 走 Raw 不影响输出。全程注明 docx 契约待联调。
- 下一步:联调 YPML00001 拿真实分页样本后,确认 pageNo/pageSize 真契约并补 Drug 响应字段。
## 2026-07-15 T-212/T-213 任务卡评审与校准(全栈视角 review codex 落卡)
- 状态:任务卡已按评审修订,T-212/T-213 均保持 TODO
- 评审结论:拆分方向正确(纯转换 vs upsert 编排、依赖链诚实),upsert 7 条防御规则(查询失败禁降级创建、多条转人工、失败不互相回退)与凭据隔离要求保留不动。
- 修订 1(checkId):T-212 的"更新时间不参与稳定标识"实为对已 DONE 代码的行为修改——现有 `mapping/health_record.go` 把 `src.UpdatedAt` 传入 `GenerateCheckID`。卡片补注:改现有调用+同步 T-205 基线单测+落 ADR(CLAUDE.md checkId 保守处理项;依据 T-206"Update 沿用 checkId")。
- 修订 2(contract 范围):删除"扩至 docx 写入字段全集"——违反"不照搬 docx 字段表"铁律且写入路径无联调样本兜底;收窄为只扩 PHIS 实际提供+映射需要的字段。
- 修订 3(adressNumber):`adressNumber→addressNumber` 改名仅有 docx 依据(查询响应实测是错拼 adressNumber),卡片标注为首次真实创建后的联调必核对项。
- 修订 4(T-213 边界收窄):`source/` 与 PHIS 回写契约(阶段 5)尚不存在——T-213 只定义回写 interface+假实现验收,真实回写拆出 T-214 登记到延期任务表;幂等/状态存储注明与阶段 3 pipeline 共用一套。
- 附带:真实样本 `businessId == archId` 同值,回退分支需人工构造 fixture(已注入卡片)。
- 安全修复:`payloads/`(文件名即真实身份证号,内容含住址/手机号/医生账密)未被 gitignore,已补 `/payloads/` 并以 `git check-ignore` 验证生效。
- 下一步:提交 tasks.md/.gitignore/progress.md;领取 T-212 时按修订后的卡片执行。
## 2026-07-15 T-212/T-213 评审建议二次校准
- 状态:任务与依赖已重排,未领取实现任务;T-212/T-213/T-204 保持 TODO,T-215 因真实写入授权 BLOCKED。
- 决策:把原 T-206 拆为“本地写入能力”和“真实平台验收”。既有 T-206 代码与本地测试证据满足前者,状态改 DONE;新增 T-215 承接授权后的 create→query→update→query 验收,使 T-213 可在假依赖下先开发。
- 决策:不再根据单个样例假定 `businessId` 优先。T-212 先确认 `archId/businessId/phrId/empiId` 的稳定性,再通过 ADR 固化 `ResolveSourceRecordKey` 与 checkId 兼容策略。
- 决策:补充逐档案 `operateUser`、更新目标/机构/状态校验、PHIS 空值不覆盖平台值、既往史“无”代码、`isFillShhj` 条件组装和脱敏 fixture 位置等验收边界。
- 决策:T-213 只实现可复用 upsert 应用服务和注入接口,用内存假实现验收;持久化幂等/report、重试调度和熔断归路线图阶段 3,PHIS 真实状态适配归 T-214,HTTP 入口归 T-204。
- 安全:保留 `/payloads/` 整体忽略规则,并清理新增规则的异常行尾;真实样本不进入 Git。
- 验证:`go test ./...` 通过;`go build ./...` 通过;`git diff --check` 通过。
- 验证:`git check-ignore -v payloads\\441625198611255416_phis_health_record.json` 命中 `.gitignore:50:/payloads/`,真实 PHIS 样本未进入 Git。