Files
danyang-match/docs/superpowers/specs/2026-10-14-global-public-id-display-inventory.md
WorkBuddy 3c2b967274
CI/CD Pipeline / UI Contracts (source-structure gates) (push) Canceled after 0s
CI/CD Pipeline / E2E (live stack) (push) Canceled after 0s
CI/CD Pipeline / Backend Build & Test (push) Canceled after 0s
CI/CD Pipeline / Admin Web Build (push) Canceled after 0s
CI/CD Pipeline / Mini Program Compile Check (push) Canceled after 0s
CI/CD Pipeline / Migration Validation (push) Canceled after 0s
CI/CD Pipeline / Test Shell Guard (Phase 23 Gate) (push) Canceled after 0s
release: freeze 2026-10-15 validated release baseline
2026-10-15 09:47:31 +08:00

7.1 KiB
Raw Permalink Blame History

全平台公开编号覆盖清单

日期:2026-10-14。状态:Task 1 盘点完成;编号实现未完成。

用户已确认择偶条件“下一步”重新编译后目视复验通过。本轮不改变该页面。

数据与接口覆盖矩阵

内部主键、关联字段和操作参数继续使用 UUID;以下字段为展示增量,不能作为授权凭证。

实体 / 关联 创建入口(Service) 读取与 DTO 覆盖 Web / 小程序 展示编号 权限要求
users / id AuthService;IdentityVerificationService 生成用户编号 UserService、用户列表/详情、推荐与举报关联查询 用户管理、用户详情、审核、推荐;个人资料、推荐卡片 displayNumber / YH 维持实名、脱敏、DataScope
operators / id OperatorManagementService 操作员、分配、联系授权、审计与咨询人员查询 人员管理、红娘服务;红娘工作台 displayId / HN 或 GL 不扩大组织范围
activities / id ActivityService.createActivity / createActivityFromAdmin ActivityService、ActivityInterestService、CheckinService 活动管理、互选、签到;活动详情、转介确认 displayId / HD 单向意向保密
review_tasks / id、user_id ReviewService 及审核任务生产方 ReviewController、ReviewTaskDetailDTO、用户关联 ReviewView displayId / RW;userDisplayNumber / YH 审核领取、敏感材料权限不变
reports / id、reported_user_id ReportService 举报列表/详情、举报用户关联 ReportCenterView;举报页面 displayId / JB;reportedUserDisplayNumber / YH 案件权限与数据范围不变
matchmaker_services / id、user_id、assigned_operator_id MatchmakerService.submitServiceRequest;MatchmakerServiceService.applyService MatchmakerManagementService、服务详情/列表 MatchmakerManagementView;工作台、服务详情、服务进展 displayId / FW;关联 YH、HN 仅负责/授权服务
matchmaker_recommendations / id、user_id、target_user_id MatchmakerService.createRecommendation;MatchmakerServiceService.recommendPartner 推荐列表、管理端及用户端推荐详情 红娘推荐列表;工作台、推荐进展 displayId / TJ;userDisplayNumber、targetUserDisplayNumber / YH 不能代用户 Like
matchmaker_contact_authorizations / id、operator_id、user_id ContactAuthorizationService.request MatchmakerContactAuthorizationMapper 与审批响应 联系授权审批(红娘服务下);工作台 displayId / LX;operatorDisplayId、userDisplayNumber 手机号仍授权后读取并审计
matchmaker_assignments / id、user_id、operator_id MatchmakerAssignmentService.create / transfer 分配查询与红娘工作台 分配列表;工作台 displayId / FP;关联 YH、HN 分配范围不变
matchmaker_followups / id、service_id、operator_id MatchmakerServiceService.addFollowup 及其他跟进写入方 服务详情跟进列表 服务详情;服务进展 displayId / GJ;关联 FW、HN/GL 不读取咨询正文
service_appointments / id、user_id、assigned_operator_id ServiceAppointmentService;ReferralService.referToServiceStation 预约运营列表与转介历史 Map ServiceAppointmentView、ReferralManagementView;转介确认 预约 displayId / YY 待确认;转介 referralDisplayId / ZF 预约所属人员权限不变
activity_registrations / id、activity_id、user_id ActivityService.registerActivity;ReferralService.referToActivity 活动报名、转介历史 Map 活动参与者、转介记录;转介确认 关联 HD、YH;转介 referralDisplayId / ZF 不为未展示的普通报名 ID 新造前缀
MatchmakerService.ReferralRecord(非持久化 Java record) MatchmakerService.createReferral 返回值、通知文案;代码注释称有跟进写入,但方法未实际 insert 服务转介与通知调用链需后续行为验证 ZF;必须先保证可持久化追溯 保持“转介建议,用户自行确认”语义
audit_logs / operator_id、resource_id AuditLogService 审计列表、资源编号解析 AuditLogView 人员 HN/GL;资源复用已确认编号 不可解析/无权限显示类型与脱敏说明
organization / organization_id 组织管理 活动组织列表与人员 orgMap ActivityManagementView、OperatorManagementView 建议显示已有机构名称,不新增机构编号 组织关系不授予数据权限
专项服务参与者 / user_id ServiceProgram 相关创建方 参与者列表 ServiceProgramView 复用 YH 数据范围不变

模板检查证据

执行 node tests/public-id-display-coverage.cjs --self-check:7 项 PASS。

执行 node tests/public-id-display-coverage.cjs:扫描 114 个 Vue/WXML 模板,31 个审查候选,退出码 1。该 FAIL 是尚未修复的公开编号差距,不能将清单完成写成全局展示 PASS。

确认可见 UUID / UUID 输入集中在:活动签到及互选、红娘推荐及联系授权、审核、举报、预约、转介、专项服务参与者、审计、小程序工作台。具体文件与行号由检查命令即时输出。

人工剔除的名称映射候选:ContentManagementView 的 categoryLabel(row.categoryId);OperatorManagementView 的 orgMap[row.organizationId] 及其组织列有自定义名称模板。检查器保守报告,不能仅因字段含 Id 就认定实际泄露。

额外动态文案差距:miniapp/pages/referral-confirmation/referral-confirmation.js 将 activityId 作为 detail 文案;ReferralService.getOperatorName 在找不到操作员或异常时回退 operatorId;MatchmakerService.createReferral 将 referralTarget 拼入通知。需要在后续 DTO/行为测试中处理,模板扫描不能发现这些间接绑定。

编号输入覆盖:推荐用户选择、人工签到用户、互选活动搜索、咨询人员分配、Banner 的站内目标选择。推荐/签到/分配需解析展示编号或使用选项选择器;Banner 可优先按已有活动/文章名称选择并保留内部寻址,不因内部配置键新增无业务意义的编号。

实施前待确认的具体增量

建议预约编号 YY20261014001。预约与转介分别显示 YY、ZF:同一预约由红娘发起时具有预约公开号和转介公开号;活动转介使用 ZF,活动本身仍为 HD。无需变更 UUID 路由,也无需新建统一转介表;为已有预约/报名记录增加转介编号字段(仅转介记录非空)。

机构展示名称;无公开编号的审计资源依既有规格显示中文类型和脱敏说明。以上不新增其他前缀。

后续验证边界

本轮仅新增盘点与检查工具,未执行数据库迁移、全量后端测试、端到端页面验收。后端覆盖测试应在 Task 3 使用真实响应与创建流程验证,不写仅检查源码字符串的空泛 Java 测试。

迁移前必须验证用户实名性别缺失的处理、旧新号映射、并发与回滚。普通序号 999 可使用,超过 999 拒绝;男性最多 500 个奇号,女性最多 499 个偶号。H2 测试不能代替 PostgreSQL UPSERT 并发与 Flyway 实测。