{"record":{"id":"2ae1321994a4533f","repo":"Tencent/WeKnora","slug":"failed-to-resolve-tag-by-name-s-w","errorCode":null,"errorMessage":"failed to resolve tag by name '%s': %w","messagePattern":"failed to resolve tag by name '(.+?)': %w","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"internal/application/service/knowledge_faq.go","lineNumber":1963,"sourceCode":"// If no tag is specified, creates or finds the \"未分类\" tag\n// Returns the internal UUID of the tag\nfunc (s *knowledgeService) resolveTagID(ctx context.Context, kbID string, payload *types.FAQEntryPayload) (string, error) {\n\ttenantID := ctx.Value(types.TenantIDContextKey).(uint64)\n\n\t// 如果提供了 tag_id (seq_id)，优先使用 tag_id\n\tif payload.TagID != 0 {\n\t\ttag, err := s.tagRepo.GetBySeqID(ctx, tenantID, payload.TagID)\n\t\tif err != nil {\n\t\t\treturn \"\", fmt.Errorf(\"failed to find tag by seq_id %d: %w\", payload.TagID, err)\n\t\t}\n\t\treturn tag.ID, nil\n\t}\n\n\t// 如果提供了 tag_name，查找或创建标签\n\tif payload.TagName != \"\" {\n\t\ttag, err := s.tagService.FindOrCreateTagByName(ctx, kbID, payload.TagName)\n\t\tif err != nil {\n\t\t\treturn \"\", fmt.Errorf(\"failed to resolve tag by name '%s': %w\", payload.TagName, err)\n\t\t}\n\t\treturn tag.ID, nil\n\t}\n\n\t// 都没有提供，使用\"未分类\"标签\n\ttag, err := s.tagService.FindOrCreateTagByName(ctx, kbID, types.UntaggedTagName)\n\tif err != nil {\n\t\treturn \"\", fmt.Errorf(\"failed to get or create default untagged tag: %w\", err)\n\t}\n\treturn tag.ID, nil\n}\n\nfunc sanitizeFAQEntryPayload(payload *types.FAQEntryPayload) (*types.FAQChunkMetadata, error) {\n\t// 处理 AnswerStrategy，默认为 all\n\tanswerStrategy := types.AnswerStrategyAll\n\tif payload.AnswerStrategy != nil && *payload.AnswerStrategy != \"\" {\n\t\tswitch *payload.AnswerStrategy {\n\t\tcase types.AnswerStrategyAll, types.AnswerStrategyRandom:","sourceCodeStart":1945,"sourceCodeEnd":1981,"githubUrl":"https://github.com/Tencent/WeKnora/blob/988cbb03305e055d8ebb7d46d9ac6cc0803cd074/internal/application/service/knowledge_faq.go#L1945-L1981","documentation":"FindOrCreateTagByName failed for the caller-supplied tag name: the tag service errored while looking up or creating the tag in the knowledge base, so the FAQ entry's tag cannot be resolved and the operation aborts.","triggerScenarios":"Thrown at internal/application/service/knowledge_faq.go:1963 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Inspect the wrapped tag-service error","Verify tag name constraints (length, characters, quota)","Retry on transient storage failures"],"exampleFix":null,"handlingStrategy":"try-catch","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"988cbb03305e055d8ebb7d46d9ac6cc0803cd074","analyzedAt":"2026-09-02T14:41:08.344Z","contentChangedAt":null,"schemaVersion":2},"datasetVersion":"2026-09-08T10:18:20.063Z"}