Tencent/WeKnora · error

knowledge service returned an empty result

Error message

knowledge service returned an empty result

What it means

DataSchema tool's knowledge lookup returned a nil Knowledge without a transport error: the service found no record for the provided knowledge_id (or scope enforcement filtered it out), so schema extraction cannot proceed because there is no backing document.

Source

Thrown at internal/agent/tools/data_schema.go:73

	var input DataSchemaInput
	if err := json.Unmarshal(args, &input); err != nil {
		return &types.ToolResult{
			Success: false,
			Error:   fmt.Sprintf("Failed to parse input args: %v", err),
		}, err
	}

	// Get knowledge to get TenantID (use IDOnly to support cross-tenant shared KB)
	var knowledge *types.Knowledge
	var err error
	if t.scopeEnforced {
		knowledge, err = authorizeKnowledgeInSearchTargets(ctx, t.searchTargets, input.KnowledgeID, t.knowledgeService)
	} else {
		knowledge, err = t.knowledgeService.GetKnowledgeByIDOnly(ctx, input.KnowledgeID)
	}
	if err != nil || knowledge == nil {
		if err == nil {
			err = fmt.Errorf("knowledge service returned an empty result")
		}
		return &types.ToolResult{
			Success: false,
			Error:   fmt.Sprintf("Failed to get knowledge '%s': %v", input.KnowledgeID, err),
		}, err
	}

	// Get chunks for the knowledge ID using ChunkRepository
	// We only need table summary and column chunks
	chunkTypes := t.targetChunkTypes
	page := &types.Pagination{
		Page:     1,
		PageSize: 100, // Should be enough for schema chunks
	}
	enabled := true

	chunks, _, err := t.chunkRepo.ListPagedChunksByKnowledgeID(
		ctx,

View on GitHub (pinned to 988cbb0330)

Solutions

  1. Verify the knowledge_id passed in the tool args actually exists
  2. Check whether scope enforcement (authorizeKnowledgeInSearchTargets) rejected the ID and widen scope if legitimate
  3. Return a clearer 'knowledge not found' message distinguishing lookup failure from authorization failure
Defensive patterns

Strategy: type-guard

When it happens

Trigger: Thrown at internal/agent/tools/data_schema.go:73 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/eac15c7012f71226. Report an issue: GitHub.