Skip to main content

## Context

Building a POC Agentforce for Service on a production org (Enterprise Edition, Lightning Knowledge, Data Cloud enabled, Foundations active).

**Agent**: Employee Agent (`BotType = AgentforceEmployeeAgent`, `PlannerType = AiCopilot__ReAct`, `BotUserId = null` → runtime user = logged-in user, who is System Administrator with full Knowledge perms).

**Goal**: technician asks "How do I configure the VPN FortiClient?" → agent retrieves the relevant Knowledge article and answers.

## Problem

The action `Answer Questions with Knowledge` (`EmployeeCopilot__AnswerQuestionsWithKnowledge`, `invocationTarget = streamKnowledgeSearch`) **executes successfully but returns 0 results silently**:

```json

Output: {"knowledgeSummary": "Sorry, I can't find an answer based on the available articles."}

The same query via direct SOSL on Knowledge__kav returns the articles correctly — so it's NOT a Knowledge data problem, it's the RAG pipeline.

Event log input observed:

 

 

{

"citationsEnabled": "true",

"ragFeatureConfigId": "AiRagFeaturePromptContent_e3a977c6_c149_44c0_81fe_a6876f452fd2",

"query": "Comment configurer le VPN FortiClient ?"

}

The ragFeatureConfigId GUID is the same since the Data Library was first created — even after delete + recreate of the library, Salesforce reuses the same backend record.

What's verified OK

  • 4 Knowledge articles, PublishStatus=Online, Language=fr, IsVisibleInApp=true
  • Articles are RecordType=Procedure with content in Procedure_Steps__c (10–33k chars each, real procedure steps)
  • Data Library assigned to the agent (Knowledge type, default Data Space)
  • Content Fields include Procedure_Steps__c and all Procedure_*__c
  • Identifying Fields: Title + Summary
  • Filter by Knowledge Data Categories: OFF
  • Use Public Knowledge Articles: ON

Search Index state (via SOQL on DataSemanticSearch):

  • RuntimeStatus = READY
  • SearchType = Hybrid (semantic + keyword)
  • IndexRefreshedOn recent (post-publish)
  • 290 chunks in *_chunk__dlm, 13 contain "FortiClient" literally
  • 290 vectors in *_index__dlm
  • Max chunk length: 2104 chars (Procedure_Steps content confirmed indexed)
  • SharingStatus = REGULAR

Things I tested (none fixed it)

  1. Toggle Filter Data Categories OFF (was a forum-suggested cause)
  2. Created Data Category Group, tagged all 4 articles, configured Data Category Visibility "All" on the user profile + Default Visibility
  3. Topic language changed from en_US to fr (matches articles)
  4. Topic instructions translated to French and customized (was the generic English SvcCopilotTmpl__GeneralFAQ template)
  5. Activate/Deactivate cycle on the agent
  6. Rebuild of the Search Index (SUBMITTED → IN_PROGRESS → READY)
  7. Delete + recreate the Data Library → Salesforce reuses the same DataSemanticSearch GUID + same AiRagFeaturePromptContent_* GUID (singleton per data space? bug?)
  8. Tried REST endpoints to query the index directly in v60/v62/v66: /ssot/queries/semantic-search, /ssot/queries/hybrid-search, /ssot/retrievers → all 404

Other relevant settings

  • Knowledge.settings: enableKbStandardSharing = false (legacy sharing model)
  • Knowledge.settings: defaultLanguage = fr (matches articles)
  • Profile (System Admin): AllowViewKnowledge = true, EditKnowledge = true, ManageKnowledge = true
  • Note: Einstein Agent license users in the org have UserPermissionsKnowledgeUser blocked by license (not used at runtime here since Employee Agent uses logged-in user — but mentioning for completeness)

Questions for the community

  1. The AiRagFeaturePromptContent_* GUID — how do I inspect/debug its actual configuration? Is there a Setup UI, a Tooling API object, or a REST endpoint to retrieve its parameters (similarity threshold, top_k, default filters)?
  2. Is it expected that delete + recreate of a Data Library reuses the same backend DataSemanticSearch and AiRagFeaturePromptContent? If yes, how does one force a clean reset of the backend RAG config?
  3. Does the Data Cloud Hybrid retriever respect the legacy Knowledge sharing model (enableKbStandardSharing=false), the modern one, or its own independent permission layer?
  4. What's the correct REST path for direct hybrid/semantic search against a DataSemanticSearch index (outside the agent context, for debugging)? /ssot/queries/semantic-search 404s in API v60-v66.
  5. Has anyone else seen this exact symptom — Search Index Ready, content indexed and keyword-matching, agent returns 0 silently — and what was the fix?

Thanks for any pointers!

0/9000