Agnes Agent 9bcec21e51 fix(team-invite): 收敛 P2 幂等抛错误报循环 + P1 status 视图补绑入口(纯前端1文件)\n\nP2 幂等抛错误报循环收敛:后端已实际绑定成功(CF 已发)但响应在传输中丢失时,\n用户点「重试绑定」会命中后端 bindReferral:141 抛错式幂等「已绑定推荐人,不可修改」,\n前端 catch 误弹失败 modal、userRefBound 永远 false 无法收敛。\n在 bindUserReferral 两处失败出口(防御性非200兜底 + catch)加判定:\ne.message / bindRes.message 含「已绑定推荐人」→ 按实质成功收敛——置 userRefBound=true、\n清僵尸码 storage.refCode、toast「推荐人已绑定」、return,不弹失败 modal、不置 bindingRef 失败态\n(finally 仍归 false)。判定位置在 401 提前 return 之后、showBindRetryHint 之前,401 逻辑不动。\n匹配用 indexOf(后端文案带后缀「,不可修改」),禁止改后端。\n\nP1 status 视图补绑入口:checkExistingApply 命中已有记录(status 0/1/2) → showStatusView=true\n→ 表单隐藏,此前绑定失败无任何补绑入口。在 status-view 模板 action-buttons 之前新增:\n v-if="!userRefBound && inviteRefCode" 的 rebind-section,含「推荐人尚未绑定成功,请在网络稳定后补绑」\n 文案 + 「补绑推荐人」按钮(:disabled="bindingRef" 防连点)。\n铁律:@click 直连 bindUserReferral,绝不接 handleSubmit/doSubmit(表单隐藏 + 后端查重会拒)。\n样式沿用 status-tip 卡片 + .btn-reapply 尺寸与品牌渐变,无新增 emoji。\n\n自验:vue-template-compiler 模板编译 + acorn script parse 双 OK(FAIL=0);无可选链/CSS Grid/新增 emoji;\n仅改 1 文件。后端零改动。基于最新 origin/cfclub a0ecc6067,独立分支 feature/team-invite-debt-fix。 1 день назад
..
components 63d4056120 feat(miniprogram): 聊天/消息类入口按有效会员隐藏(isActive 判定,不随运营开关) 1 день назад
index.vue 63d4056120 feat(miniprogram): 聊天/消息类入口按有效会员隐藏(isActive 判定,不随运营开关) 1 день назад
message-history.vue bc78b677cc style(cfc-frontend): U7 大字号段裸值归并 + font-weight 800/900 收口 1 неделя назад
my-messages.vue 5d750c7a82 feat: GAP-2026-11-01-home-greet-shortcut-and-my-messages 首页问候条快捷入口+我的咨询消息 1 неделя назад
portrait-edit.vue b5adb1023b Merge G1: 全系统「家长/孩子」措辞中性化(L1 文案层) 2 недель назад
report-detail.vue 948e3f43d1 fix(frontend): U7 返工 - 大字号/字重收口核验 FAIL 修复(5 项必修) 1 неделя назад
report-management.vue bc78b677cc style(cfc-frontend): U7 大字号段裸值归并 + font-weight 800/900 收口 1 неделя назад
service-role-apply.vue 9bcec21e51 fix(team-invite): 收敛 P2 幂等抛错误报循环 + P1 status 视图补绑入口(纯前端1文件)\n\nP2 幂等抛错误报循环收敛:后端已实际绑定成功(CF 已发)但响应在传输中丢失时,\n用户点「重试绑定」会命中后端 bindReferral:141 抛错式幂等「已绑定推荐人,不可修改」,\n前端 catch 误弹失败 modal、userRefBound 永远 false 无法收敛。\n在 bindUserReferral 两处失败出口(防御性非200兜底 + catch)加判定:\ne.message / bindRes.message 含「已绑定推荐人」→ 按实质成功收敛——置 userRefBound=true、\n清僵尸码 storage.refCode、toast「推荐人已绑定」、return,不弹失败 modal、不置 bindingRef 失败态\n(finally 仍归 false)。判定位置在 401 提前 return 之后、showBindRetryHint 之前,401 逻辑不动。\n匹配用 indexOf(后端文案带后缀「,不可修改」),禁止改后端。\n\nP1 status 视图补绑入口:checkExistingApply 命中已有记录(status 0/1/2) → showStatusView=true\n→ 表单隐藏,此前绑定失败无任何补绑入口。在 status-view 模板 action-buttons 之前新增:\n v-if="!userRefBound && inviteRefCode" 的 rebind-section,含「推荐人尚未绑定成功,请在网络稳定后补绑」\n 文案 + 「补绑推荐人」按钮(:disabled="bindingRef" 防连点)。\n铁律:@click 直连 bindUserReferral,绝不接 handleSubmit/doSubmit(表单隐藏 + 后端查重会拒)。\n样式沿用 status-tip 卡片 + .btn-reapply 尺寸与品牌渐变,无新增 emoji。\n\n自验:vue-template-compiler 模板编译 + acorn script parse 双 OK(FAIL=0);无可选链/CSS Grid/新增 emoji;\n仅改 1 文件。后端零改动。基于最新 origin/cfclub a0ecc6067,独立分支 feature/team-invite-debt-fix。 1 день назад