Updated dataset query attribution to use the UserFrom enum in the callback and hit-testing paths, matching the retrieval flow and removing literal role strings. Adjusted api/core/callback_handler/index_tool_callback_handler.py and api/services/hit_testing_service.py where DatasetQuery records are created.

fix(api): use UserFrom for dataset query created_by_role

Tests not run (not requested).
This commit is contained in:
-LAN-
2026-01-06 19:00:21 +08:00
parent 27932cb669
commit c7a3a4fc0e
2 changed files with 5 additions and 3 deletions

View File

@ -12,6 +12,7 @@ from core.rag.models.document import Document
from extensions.ext_database import db
from models.dataset import ChildChunk, DatasetQuery, DocumentSegment
from models.dataset import Document as DatasetDocument
from models.enums import UserFrom
_logger = logging.getLogger(__name__)
@ -38,7 +39,7 @@ class DatasetIndexToolCallbackHandler:
source="app",
source_app_id=self._app_id,
created_by_role=(
"account" if self._invoke_from in {InvokeFrom.EXPLORE, InvokeFrom.DEBUGGER} else "end_user"
UserFrom.ACCOUNT if self._invoke_from in {InvokeFrom.EXPLORE, InvokeFrom.DEBUGGER} else UserFrom.END_USER
),
created_by=self._user_id,
)