Files
danyang-match/docs/PENDING_DECISIONS.md
T
WorkBuddy 438b38d121 V1.0.1 配置与规则纠偏:照片上限配置化+强校验 / 活体开关闭环 / 推荐阈值快照+规则版本化 / governance 三表+漂移审计
根治三类工程治理问题(技术默认值≠产品规则、配置存在但未闭环、文档代码漂移):
- PROFILE-001:profile.photo.maxCount(默认6未确认)+ ProfilePolicy + 服务器端 FOR UPDATE
  并发强校验(PHOTO_LIMIT_EXCEEDED,拒绝先于 S3 不留孤儿)+ 前端 mergeAppConfig 嵌套键修复
- CFG-001/IDENTITY-001:IdentityPolicy + GET /verification/liveness-status 真实判定点
  (默认关不阻断,开则 enhancedVerified 变化,消除假开关)+ 删死 seed livenessVerification.enabled
- MATCH-001:阈值60定为技术默认(消解 PENDING 矛盾)+ V050 recommendation_records.threshold_snapshot
  规则版本化 + 删死重复配置类 MatchConfig
- DOC-001:新增 docs/governance/(config-register/open-questions/decision-register/
  hardcoded-rule-audit/config-drift-audit)
- TEST-001:新增守卫 PhotoLimitGuardTest(8)/IdentityLivenessGuardTest(5)/
  RecommendationThresholdSnapshotGuardTest(4),均经负向注入可红

全量回归 733/0/0/3(基线717+17新增-1删死测试);UI 契约门禁 18/18;STATUS 升 rc.21
2026-09-21 02:05:15 +08:00

9.2 KiB
Raw Blame History

待确认决策项 — PENDING_DECISIONS.md

以下参数尚未由产品负责人确认。已确认项请参见已确认列表。

治理结构(V1.0.1 配置与规则纠偏,2026-09-20):本文件不再同时承担「已确认决策 / 技术默认值 / 待确认事项」。 已拆分到 docs/governance/:配置登记表 config-register.md(canonical 键 + 分类 + 是否产品确认)、 开放问题 open-questions.md(OQ-*,待产品裁决)、决策登记表 decision-register.md(仅已确认项)。 本文件保留历史待确认区与「已确认列表」,并与上述三表互链;矛盾以 governance 三表为准。


V1.1 新增待确认事项

人脸核验

决策项 选项 状态
人脸核验是否V1.1首发强制 否(Feature Flag 控制,identity.liveness.enabled 默认 false) ⏳ 待确认(CONFIG/TBD,非 V1 强制;本轮已接 IdentityPolicy 真实业务判定点,见 config-register / OQ-IDENTITY-001)
人脸核验 Provider 待定(identity.liveness.provider 默认 none) ⏳ 待确认(选型未定,见 OQ-IDENTITY-001)

本地资格

决策项 选项 状态
本地资格佐证触发策略 全部用户 / 按需触发 / 特定场景 ⏳ 待确认
本地资格文件保留期限 待定(需合规审核) ⏳ 待确认

婚恋咨询

决策项 选项 状态
咨询服务人员实际资质要求 待定 ⏳ 待确认
服务预约时段规则 待定 ⏳ 待确认
是否支持电话预约方式 FALSE(已确认) ✅ 已完成

服务站

决策项 选项 状态
服务站正式开放时间 待定 ⏳ 待确认

Banner/推荐

决策项 技术默认值 状态
Banner最大活跃数量 待定(真缺口:代码无此限制,仅 seed 死值 5) ⏳ 待确认(OQ-BANNER-001,需产品定值后实现 active-count 校验)
推荐每日数量 6人 ✅ 已完成(LOCKED,match.default-daily-limit)
推荐阈值/最终权重 技术默认 60,未产品确认(matching.recommendation.minScore,可配置 + V050 阈值快照) ⏳ 待确认(OQ-MATCH-001;消解本文 :「阈值60分已确认」矛盾 —— 60 只是默认值)
Pass冷却时间 180天 ✅ 已完成(LOCKED,match.default-cooldown-days)
照片上限 技术默认 6,未产品确认(profile.photo.maxCount,已配置化 + 服务器端强校验) ⏳ 待确认(OQ-PROFILE-001;原标「✅ 已确认 6」有误,6 非产品正式确认值)

数据统计

决策项 选项 状态
有效交友匹配正式报送口径 待定(建议:Mutual Match + Two-Way Chat) ⏳ 待确认

申诉

决策项 选项 状态
申诉是否V1.1首发 否(Feature Flag 预留) ✅ 已完成

已确认决策列表(不得再放 Pending)

以下事项已由产品负责人确认,进入正式开发基线:

类别 确认项
品牌 善缘丹阳品牌正式启用
首页 Banner运营 + 8个核心入口 + 固定顺序
数据保留 注销后用户数据保留不得低于 36 个月(2026-09-19 产品确认;到期后经人工审核匿名化清除;保留期配置化 account.data-retention-months,默认 36;已落地 V049 users.closed_at + DataRetentionService + account.retention.purge 权限。隐私政策 §3.3 与 PIA §8 原文「30 天内删除」已同步修订)
服务站 万善公园婚姻登记处为固定阵地
服务 婚恋咨询 + 婚前辅导进入V1.1首发
内容 婚恋课堂 + 婚恋反诈进入V1.1首发
活动 多类型公益活动 + 活动双向沟通确认进入V1.1首发
核心规则 Required不可放宽 / Mutual后才Chat / Block优先
推荐 每日6人(LOCKED)/ Pass冷却180天(LOCKED);阈值60分仅为技术默认值,未产品确认(OQ-MATCH-001)
资料 兴趣标签上限8个 / 自我介绍500字符(LOCKED);照片上限6张仅为技术默认值,未产品确认(OQ-PROFILE-001)
隐私 Privacy默认全TRUE
活动规则 需审核 / 男女名额独立配置 / 互选最大3人 / 截止后48小时
关系状态 searching/getting_to_know/paused/matched_successfully/service_exited
推荐重置 每日00:00 Asia/Shanghai

最后更新: 2026-09-09 — V1.1 基线阶段,共 13 项待确认,已确认 16 项


V1.1 历史部署声明(复验处置结果,2026-09-18 回写)

以下记录只说明相关代码、配置或迁移曾被创建。重新审查曾发现部分声明与实际运行不一致,故在对应 Phase 重新通过前不得称为“已上线”。

2026-09-18 文档治理:按各 Phase Recovery 报告的实测证据回写处置结果 ——「待 Phase XX 复验」不得长期停留为悬空状态。

决策项 确认值 处置结果(2026-09-18 回写)
首页8核心入口固定顺序 找对象/公益红娘/公益活动/婚恋咨询/婚恋课堂/婚前辅导/婚恋反诈/善缘服务站 ✅ 已关闭(Phase 07 业务复验 2026-09-13;UI 首批 11 页 2026-09-16 通过用户验收)
Banner仅内部跳转 target_type CHECK约束已生效 ✅ 已关闭(Phase 19 复验 2026-09-17;外链校验 + 软删过滤已修)
活动互选二阶段同意 互选→双方确认→Match/Conversation ✅ 已关闭(Phase 16 复验 2026-09-17;原「双确认后根本不建 Match/会话」Gate 缺陷已修)
Counselor只能访问Assigned Service Assigned DataScope ✅ 已关闭(Phase 13A 复验 2026-09-17;INV-012 守卫 + 权限矩阵守卫)
ContentEditor零用户数据权限 默认无user.view权限 ✅ 已关闭(权限矩阵守卫由硬编码改为扫描全部迁移,消除后续迁移权限变更隐形)
ServiceStationOperator数据范围 仅服务站相关操作 ✅ 已关闭(Phase 19 复验 2026-09-17;原类级 view 兜底致越权写已修,权限下沉方法级并纳入覆盖守卫)
本地资格与实名认证分离 独立表、独立流程 ✅ 已关闭(Phase 04/05 复验 2026-09-12)
运营商密码登录 凭证由本地环境变量或安全 Seed 提供 ✅ 纪律项(非待办):不在文档保存密码,继续由环境变量/安全 Seed 提供
Feature Flags灰度控制 配置项存在 ⚠️ 部分关闭(Phase 22 复验 2026-09-18):FeatureFlagController 的 2 处真实缺陷已修;但 T01~T05 与 T07 为「死配置」——配置暴露但从未被业务读取,已如实降级登记,交各模块 Phase 处理
V1.1仪表盘 统计接口存在 ✅ 已关闭(Phase 20 复验 2026-09-17;D12 口径造假/死代码/系统性软删过滤修复 45 处)

第三方开放 / 平台化遗留待决策项(2026-09-18 补登)

来源:docs/HTTP语义检修报告-2026-09-18.md 第六节「遗留:真正开放第三方还需要什么」+ docs/幂等键检修报告-2026-09-18.md 第七节「遗留与需要留意」。 均属范围扩张,需产品决策 —— 本轮及此前检修均未擅自实施。

决策项 现状(已就位部分) 待确认
第三方凭据机制 目前只有微信登录与运营账号登录;第三方无标准途径获取 token 是否定义 API Key / OAuth Client Credentials,及其权限范围与配额
限流是否真实生效 RATE_LIMITED 业务码与 429 映射已就位 限流本身是否启用、阈值多少(本轮未验证)
OpenAPI 文档对外发布 OpenApiConfig 已存在 是否对外开放、开放哪些端点
POST /activities/{id}/interests 语义 API_INVENTORY 曾承诺、后端从未实现;已更正文档并删除指向 404 的前端死代码 该端点是否需要在 V1.1 内真正实现(涉及活动意向的产品语义)
第三方调用审计与配额计量 内部角色的敏感访问审计已就位(Phase 17) 第三方需独立的调用审计与配额计量
敏感字段脱敏边界(第三方场景) INV-011 等约束面向内部角色 第三方场景需重新界定脱敏边界
幂等键 TTL 语义 idempotency_records 有 TTL(默认 86400s)+ idx_idempotency_expires 清理扫描 需知悉:清理后同一把键会被当作新操作 —— 幂等保证的是「短时间内不重复」,不是「永久去重」(永久去重仍由业务层唯一约束承担)。若开放第三方,需决定键的 TTL 是否按调用方分级

最后更新: 2026-09-20 — V1.0.1 配置与规则纠偏:消解「推荐阈值 60 已确认 / 待定」矛盾(60 为技术默认,OQ-MATCH-001);照片上限 6 由「已确认」降级为「技术默认 / 未确认」(OQ-PROFILE-001);活体核验补 CONFIG/TBD 并接 IdentityPolicy 真实判定点(OQ-IDENTITY-001);拆分出 docs/governance/(config-register / open-questions / decision-register)。