{"record":{"id":"8844ee40251f3ab3","repo":"xpzouying/xiaohongshu-mcp","slug":"s-w-8844ee","errorCode":null,"errorMessage":"切换到分区 %s 失败: %w","messagePattern":"切换到分区 (.+?) 失败: %w","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"xiaohongshu/notification.go","lineNumber":190,"sourceCode":"func (n *NotificationAction) switchTab(ctx context.Context, page *rod.Page, tab NotificationTab) error {\n\tif tab == TabMentions {\n\t\treturn nil\n\t}\n\n\tlabel := tabLabels[tab]\n\telems, err := page.Elements(`.reds-tab-item`)\n\tif err != nil {\n\t\treturn fmt.Errorf(\"未找到通知分区标签: %w\", err)\n\t}\n\n\tfor _, elem := range elems {\n\t\ttext, err := elem.Text()\n\t\tif err != nil || strings.TrimSpace(text) != label {\n\t\t\tcontinue\n\t\t}\n\t\thumanize.Delay(ctx, humanize.BeforeClick)\n\t\tif err := humanize.Click(elem); err != nil {\n\t\t\treturn fmt.Errorf(\"切换到分区 %s 失败: %w\", label, err)\n\t\t}\n\t\thumanize.Delay(ctx, humanize.AfterClick)\n\t\treturn nil\n\t}\n\treturn fmt.Errorf(\"未找到分区标签 %q\", label)\n}\n\n// loadUntil 滚动加载，直到条目数够用或没有更多。\nfunc (n *NotificationAction) loadUntil(ctx context.Context, page *rod.Page, tab NotificationTab, limit int) error {\n\tconst maxRounds = 20\n\n\tfor range maxRounds {\n\t\tpayload, err := n.readTab(page, tab)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tloaded := len(payload.MessageList)\n\t\tif loaded >= limit || !payload.HasMore {","sourceCodeStart":172,"sourceCodeEnd":208,"githubUrl":"https://github.com/xpzouying/xiaohongshu-mcp/blob/332d196854a9eac0d2b8c2c0e3d0cc43139d724c/xiaohongshu/notification.go#L172-L208","documentation":"switchTab 已遍历找到目标分区标签（如「赞和收藏」）并执行 humanize.Click，但点击失败：标签被遮挡、页面重渲染或鼠标事件被拦截，导致未能切换到目标通知分区。","triggerScenarios":"Thrown at xiaohongshu/notification.go:190 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["稍后重试切换","滚动确保标签可见后再点击","检查是否有弹层遮挡通知页"],"exampleFix":null,"handlingStrategy":"retry","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"332d196854a9eac0d2b8c2c0e3d0cc43139d724c","analyzedAt":"2026-09-05T22:22:55.988Z","contentChangedAt":"2026-09-05T22:22:55.988Z","schemaVersion":2},"datasetVersion":"2026-09-14T00:17:10.932Z"}