{"record":{"id":"bb002c723a44c12d","repo":"chenhg5/cc-connect","slug":"s-get-message-failed-code-d-msg-s","errorCode":null,"errorMessage":"%s: get message failed code=%d msg=%s","messagePattern":"(.+?): get message failed code=(.+?) msg=(.+?)","errorType":"http","errorClass":null,"httpStatus":null,"severity":"error","filePath":"platform/feishu/feishu.go","lineNumber":1148,"sourceCode":"\tif p.client == nil {\n\t\treturn false, fmt.Errorf(\"%s: client not initialized\", p.tag())\n\t}\n\n\treq := larkim.NewGetMessageReqBuilder().\n\t\tMessageId(messageID).\n\t\tUserIdType(larkim.UserIdTypeGetMessageOpenId).\n\t\tBuild()\n\n\tvar resp *larkim.GetMessageResp\n\tif err := p.withTransientRetry(ctx, \"get message\", func() error {\n\t\treturn p.withFreshTenantAccessTokenRetry(ctx, \"get message\", func(client *lark.Client, options ...larkcore.RequestOptionFunc) error {\n\t\t\tvar err error\n\t\t\tresp, err = client.Im.Message.Get(ctx, req, options...)\n\t\t\tif err != nil {\n\t\t\t\treturn fmt.Errorf(\"%s: get message api call: %w\", p.tag(), err)\n\t\t\t}\n\t\t\tif !resp.Success() {\n\t\t\t\treturn fmt.Errorf(\"%s: get message failed code=%d msg=%s\", p.tag(), resp.Code, resp.Msg)\n\t\t\t}\n\t\t\treturn nil\n\t\t})\n\t}); err != nil {\n\t\tif resp != nil && isMessageWithdrawnCode(resp.Code, resp.Msg) {\n\t\t\tp.markMessageRecalled(messageID)\n\t\t\treturn true, nil\n\t\t}\n\t\tif isMessageWithdrawnError(err) {\n\t\t\tp.markMessageRecalled(messageID)\n\t\t\treturn true, nil\n\t\t}\n\t\treturn false, err\n\t}\n\n\tif resp == nil || resp.Data == nil || len(resp.Data.Items) == 0 {\n\t\tp.markMessageRecalled(messageID)\n\t\treturn true, nil","sourceCodeStart":1130,"sourceCodeEnd":1166,"githubUrl":"https://github.com/chenhg5/cc-connect/blob/4000b2338aa6e850c99df54f8b0ed6ed7460b401/platform/feishu/feishu.go#L1130-L1166","documentation":"A Feishu GetMessage API call succeeded at transport level but returned an application error (non-zero code from Lark), after transient-retry and token-refresh retries were exhausted. Embeds the Lark code and message; commonly means the message_id is invalid/deleted or the bot lacks read permission.","triggerScenarios":"Thrown at platform/feishu/feishu.go:1148 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Check the bot has im:message:readonly scope","Treat 'message not found' as already-recalled where applicable"],"exampleFix":null,"handlingStrategy":"retry","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"4000b2338aa6e850c99df54f8b0ed6ed7460b401","analyzedAt":"2026-09-06T11:45:09.575Z","contentChangedAt":"2026-09-06T11:45:09.575Z","schemaVersion":2},"datasetVersion":"2026-09-14T05:17:10.506Z"}