Tencent/WeKnora · error
knowledge service is unavailable for tag-scoped graph filter
Error message
knowledge service is unavailable for tag-scoped graph filtering
What it means
Dependency guard during tag-scoped graph filtering: the request scope includes tag-scoped targets, which require tag resolution via the knowledge service, but that service handle is nil, so tag-based filtering cannot proceed and fails fast.
Source
Thrown at internal/agent/tools/scope_authorization.go:279
remainingIDs := make([]string, 0, len(results))
for _, result := range results {
if result == nil || result.KnowledgeID == "" {
continue
}
if result.KnowledgeBaseID != "" && result.KnowledgeBaseID != kbID {
return nil, fmt.Errorf(
"graph result document %s belongs to knowledge base %s, expected %s",
result.KnowledgeID, result.KnowledgeBaseID, kbID,
)
}
if _, ok := explicitSet[result.KnowledgeID]; !ok {
remainingIDs = append(remainingIDs, result.KnowledgeID)
}
}
var tagMatches map[string]bool
if len(tagIDs) > 0 {
if knowledgeService == nil {
return nil, fmt.Errorf("knowledge service is unavailable for tag-scoped graph filtering")
}
var err error
tagMatches, err = knowledgeIDsMatchingAnyTag(
ctx, remainingIDs, tagIDs, knowledgeService.GetKnowledgeTags,
)
if err != nil {
return nil, fmt.Errorf("failed to validate graph result scope: %w", err)
}
}
filtered := make([]*types.SearchResult, 0, len(results))
for _, result := range results {
if result == nil || result.KnowledgeID == "" {
continue
}
_, explicit := explicitSet[result.KnowledgeID]
if explicit || tagMatches[result.KnowledgeID] {
filtered = append(filtered, result)View on GitHub (pinned to 988cbb0330)
Solutions
- Ensure the knowledge service is wired into the filter call path
- Avoid tag-scoped targets when the service is unavailable
- Fall back to explicit-ID-only filtering when tags cannot be resolved
Defensive patterns
Strategy: type-guard
When it happens
Trigger: Thrown at internal/agent/tools/scope_authorization.go:279 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of Tencent/WeKnora@988cbb0330 (2026-09-02).
Data as JSON: /api/errors/b161ba54e036756f.
Report an issue: GitHub.