{"record":{"id":"253b72ced81b5686","repo":"sipeed/picoclaw","slug":"no-media-store-available-w-253b72","errorCode":null,"errorMessage":"no media store available: %w","messagePattern":"no media store available: %w","errorType":"exception","errorClass":"ErrSendFailed","httpStatus":null,"severity":"error","filePath":"pkg/channels/telegram/telegram.go","lineNumber":641,"sourceCode":"\treturn fmt.Sprintf(\"%d\", pMsg.MessageID), nil\n}\n\n// SendMedia implements the channels.MediaSender interface.\nfunc (c *TelegramChannel) SendMedia(ctx context.Context, msg bus.OutboundMediaMessage) ([]string, error) {\n\tif !c.IsRunning() {\n\t\treturn nil, channels.ErrNotRunning\n\t}\n\ttrackedChatID := telegramToolFeedbackChatKey(msg.ChatID, &msg.Context)\n\ttrackedMsgID, hasTrackedMsg := c.currentToolFeedbackMessage(trackedChatID)\n\n\tchatID, threadID, err := resolveTelegramOutboundTarget(msg.ChatID, &msg.Context)\n\tif err != nil {\n\t\treturn nil, fmt.Errorf(\"invalid chat ID %s: %w\", msg.ChatID, channels.ErrSendFailed)\n\t}\n\n\tstore := c.GetMediaStore()\n\tif store == nil {\n\t\treturn nil, fmt.Errorf(\"no media store available: %w\", channels.ErrSendFailed)\n\t}\n\n\tvar messageIDs []string\n\tleadingCaption := telegramLeadingCaption(msg.Parts)\n\tif len([]rune(leadingCaption)) > telegramCaptionLimit {\n\t\tleadingIDs, leadingErr := c.sendCaptionText(ctx, chatID, threadID, leadingCaption)\n\t\tif leadingErr != nil {\n\t\t\treturn nil, leadingErr\n\t\t}\n\t\tmessageIDs = append(messageIDs, leadingIDs...)\n\t\tmsg = telegramClearMediaCaptions(msg)\n\t}\n\n\tif len(msg.Parts) > 1 && telegramCanSendMediaGroup(msg.Parts) {\n\t\tgroupIDs, err := c.sendImageMediaGroups(ctx, chatID, threadID, store, msg.Parts)\n\t\tif err != nil {\n\t\t\tlogger.ErrorCF(\"telegram\", \"Failed to send media group\", map[string]any{\n\t\t\t\t\"count\": len(msg.Parts),","sourceCodeStart":623,"sourceCodeEnd":659,"githubUrl":"https://github.com/sipeed/picoclaw/blob/49183d7e8daed0dba89ddbb6fcb60089401d9680/pkg/channels/telegram/telegram.go#L623-L659","documentation":"Error \"no media store available: %w\" thrown in sipeed/picoclaw.","triggerScenarios":"Thrown at pkg/channels/telegram/telegram.go:641 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"49183d7e8daed0dba89ddbb6fcb60089401d9680","analyzedAt":"2026-08-15T21:55:41.315Z","schemaVersion":2},"datasetVersion":"2026-08-15T22:17:37.221Z"}