Skip to content

refactor(api): migrate core RAG layer to SQLAlchemy 2.0 select() API#34965

Merged
asukaminato0721 merged 4 commits intolanggenius:mainfrom
wdeveloper16:refactor/sqlalchemy-2-core-rag
Apr 11, 2026
Merged

refactor(api): migrate core RAG layer to SQLAlchemy 2.0 select() API#34965
asukaminato0721 merged 4 commits intolanggenius:mainfrom
wdeveloper16:refactor/sqlalchemy-2-core-rag

Conversation

@wdeveloper16
Copy link
Copy Markdown
Contributor

Summary

Migrates SQLAlchemy ORM calls in the core RAG pipeline from the legacy 1.x session.query() patterns to the modern 2.0 select() / update() API, as tracked in issue #22668.

Files changed:

api/core/rag/index_processor/index_processor.py
api/core/rag/index_processor/processor/parent_child_index_processor.py
api/core/rag/index_processor/processor/qa_index_processor.py
api/core/rag/retrieval/dataset_retrieval.py
api/core/rag/summary_index/summary_index.py

Patterns replaced:

Before

session.query(DocumentSegment).filter(...).update({...}, synchronize_session=False)
session.query(Dataset).where(...).all()

After

session.execute(update(DocumentSegment).where(...).values(...))
session.scalars(select(Dataset).where(...)).all()

Also migrates a complex subquery + outerjoin pattern from session.query() as the subquery base to select() as the base (fully SA 2.0 compatible).

@wdeveloper16 wdeveloper16 requested a review from JohnJyong as a code owner April 11, 2026 15:04
@dosubot dosubot Bot added size:L This PR changes 100-499 lines, ignoring generated files. refactor labels Apr 11, 2026
@asukaminato0721 asukaminato0721 requested a review from Copilot April 11, 2026 15:07
@github-actions
Copy link
Copy Markdown
Contributor

Pyrefly Diff

base → PR
--- /tmp/pyrefly_base.txt	2026-04-11 15:08:58.178007466 +0000
+++ /tmp/pyrefly_pr.txt	2026-04-11 15:08:49.556076277 +0000
@@ -290,13 +290,13 @@
 ERROR Object of class `Document` has no attribute `score` [missing-attribute]
    --> core/rag/index_processor/processor/paragraph_index_processor.py:204:16
 ERROR Object of class `Document` has no attribute `score` [missing-attribute]
-   --> core/rag/index_processor/processor/parent_child_index_processor.py:245:33
+   --> core/rag/index_processor/processor/parent_child_index_processor.py:243:33
 ERROR Object of class `Document` has no attribute `score` [missing-attribute]
-   --> core/rag/index_processor/processor/parent_child_index_processor.py:246:16
+   --> core/rag/index_processor/processor/parent_child_index_processor.py:244:16
 ERROR Object of class `Document` has no attribute `score` [missing-attribute]
-   --> core/rag/index_processor/processor/qa_index_processor.py:209:33
+   --> core/rag/index_processor/processor/qa_index_processor.py:208:33
 ERROR Object of class `Document` has no attribute `score` [missing-attribute]
-   --> core/rag/index_processor/processor/qa_index_processor.py:210:16
+   --> core/rag/index_processor/processor/qa_index_processor.py:209:16
 ERROR No matching overload found for function `core.model_manager.ModelInstance.invoke_llm` called with arguments: (prompt_messages=list[SystemPromptMessage | UserPromptMessage], tools=list[PromptMessageTool], stream=Literal[False], model_parameters=dict[str, float | int]) [no-matching-overload]
   --> core/rag/retrieval/router/multi_dataset_function_call_router.py:32:58
 ERROR Class member `MCPToolProviderController.entity` overrides parent class `ToolProviderController` in an inconsistent manner [bad-override]

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Migrates the core RAG pipeline’s SQLAlchemy ORM usage from legacy session.query(...) patterns to SQLAlchemy 2.0-style select() / update() statements to improve compatibility and typing (per issue #22668).

Changes:

  • Replaced multiple session.query(...).filter/.../where(...).all()/first() reads with session.scalar(select(...)) and session.scalars(select(...)).all().
  • Replaced a bulk query.update(..., synchronize_session=False) with session.execute(update(...).values(...)) for hit count updates.
  • Refactored a grouped subquery + outer join dataset availability query to use select(...).subquery() + session.scalars(...).

Reviewed changes

Copilot reviewed 5 out of 5 changed files in this pull request and generated 5 comments.

Show a summary per file
File Description
api/core/rag/index_processor/index_processor.py Moves document/dataset lookups, aggregate sum query, and segment status updates to SA 2.0 select()/update() APIs.
api/core/rag/index_processor/processor/parent_child_index_processor.py Updates segment lookup in clean() to session.scalars(select(...)).
api/core/rag/index_processor/processor/qa_index_processor.py Updates segment lookup in clean() to session.scalars(select(...)).
api/core/rag/retrieval/dataset_retrieval.py Converts dataset/document fetches, hit_count bulk update, and available-datasets subquery/join to SA 2.0 style.
api/core/rag/summary_index/summary_index.py Converts preview-mode dataset/document/segment/summary queries to SA 2.0 select() + scalar/scalars accessors.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread api/core/rag/retrieval/dataset_retrieval.py
Comment thread api/core/rag/retrieval/dataset_retrieval.py
Comment thread api/core/rag/retrieval/dataset_retrieval.py
Comment thread api/core/rag/index_processor/processor/qa_index_processor.py
@wdeveloper16
Copy link
Copy Markdown
Contributor Author

Hi, @asukaminato0721
Thanks for your review.
I fixed and addressed some issues.
Would you please review this again?

Comment thread api/core/rag/index_processor/index_processor.py Outdated
Comment thread api/core/rag/index_processor/index_processor.py Outdated
Comment thread api/core/rag/index_processor/index_processor.py
@github-actions
Copy link
Copy Markdown
Contributor

Pyrefly Diff

base → PR
--- /tmp/pyrefly_base.txt	2026-04-11 15:33:13.154649983 +0000
+++ /tmp/pyrefly_pr.txt	2026-04-11 15:33:06.351453686 +0000
@@ -290,13 +290,13 @@
 ERROR Object of class `Document` has no attribute `score` [missing-attribute]
    --> core/rag/index_processor/processor/paragraph_index_processor.py:204:16
 ERROR Object of class `Document` has no attribute `score` [missing-attribute]
-   --> core/rag/index_processor/processor/parent_child_index_processor.py:245:33
+   --> core/rag/index_processor/processor/parent_child_index_processor.py:243:33
 ERROR Object of class `Document` has no attribute `score` [missing-attribute]
-   --> core/rag/index_processor/processor/parent_child_index_processor.py:246:16
+   --> core/rag/index_processor/processor/parent_child_index_processor.py:244:16
 ERROR Object of class `Document` has no attribute `score` [missing-attribute]
-   --> core/rag/index_processor/processor/qa_index_processor.py:209:33
+   --> core/rag/index_processor/processor/qa_index_processor.py:208:33
 ERROR Object of class `Document` has no attribute `score` [missing-attribute]
-   --> core/rag/index_processor/processor/qa_index_processor.py:210:16
+   --> core/rag/index_processor/processor/qa_index_processor.py:209:16
 ERROR No matching overload found for function `core.model_manager.ModelInstance.invoke_llm` called with arguments: (prompt_messages=list[SystemPromptMessage | UserPromptMessage], tools=list[PromptMessageTool], stream=Literal[False], model_parameters=dict[str, float | int]) [no-matching-overload]
   --> core/rag/retrieval/router/multi_dataset_function_call_router.py:32:58
 ERROR Class member `MCPToolProviderController.entity` overrides parent class `ToolProviderController` in an inconsistent manner [bad-override]
@@ -4931,39 +4931,39 @@
 ERROR Object of class `FunctionType` has no attribute `call_count` [missing-attribute]
     --> tests/unit_tests/core/rag/rerank/test_reranker.py:1630:16
 ERROR Argument `list[float] | None` is not assignable to parameter `obj` with type `Sized` in function `len` [bad-argument-type]
-    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:1949:20
+    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:1948:20
 ERROR Could not find name `metadata_name` [unknown-name]
-    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:2769:29
+    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:2768:29
 ERROR Could not find name `metadata_name` [unknown-name]
-    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:2770:29
+    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:2769:29
 ERROR Argument `Iterator[Any | Unknown] | Iterator[Any]` is not assignable to parameter `invoke_result` with type `Generator[Unknown]` in function `core.rag.retrieval.dataset_retrieval.DatasetRetrieval._handle_invoke_result` [bad-argument-type]
-    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:3782:64
+    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:3781:64
 ERROR Argument `Iterator[Any | Unknown] | Iterator[Any]` is not assignable to parameter `invoke_result` with type `Generator[Unknown]` in function `core.rag.retrieval.dataset_retrieval.DatasetRetrieval._handle_invoke_result` [bad-argument-type]
-    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:3786:67
+    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:3785:67
 ERROR `None` is not subscriptable [unsupported-operation]
-    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:4025:16
+    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:4024:16
 ERROR Argument `list[SimpleNamespace]` is not assignable to parameter `available_datasets` with type `list[Dataset]` in function `core.rag.retrieval.dataset_retrieval.DatasetRetrieval.single_retrieve` [bad-argument-type]
-    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:4559:40
+    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:4546:40
 ERROR Argument `list[SimpleNamespace]` is not assignable to parameter `available_datasets` with type `list[Dataset]` in function `core.rag.retrieval.dataset_retrieval.DatasetRetrieval.single_retrieve` [bad-argument-type]
-    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:4611:40
+    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:4598:40
 ERROR Argument `SimpleNamespace` is not assignable to parameter `metadata_condition` with type `MetadataFilteringCondition | None` in function `core.rag.retrieval.dataset_retrieval.DatasetRetrieval.single_retrieve` [bad-argument-type]
-    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:4616:40
+    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:4603:40
 ERROR Argument `list[SimpleNamespace]` is not assignable to parameter `available_datasets` with type `list[Dataset]` in function `core.rag.retrieval.dataset_retrieval.DatasetRetrieval.single_retrieve` [bad-argument-type]
-    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:4632:36
+    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:4619:36
 ERROR Argument `list[SimpleNamespace]` is not assignable to parameter `available_datasets` with type `list[Dataset]` in function `core.rag.retrieval.dataset_retrieval.DatasetRetrieval.single_retrieve` [bad-argument-type]
-    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:4662:36
+    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:4649:36
 ERROR Argument `SimpleNamespace` is not assignable to parameter `metadata_condition` with type `MetadataFilteringCondition | None` in function `core.rag.retrieval.dataset_retrieval.DatasetRetrieval.single_retrieve` [bad-argument-type]
-    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:4667:36
+    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:4654:36
 ERROR Argument `list[SimpleNamespace]` is not assignable to parameter `available_datasets` with type `list[Dataset]` in function `core.rag.retrieval.dataset_retrieval.DatasetRetrieval.single_retrieve` [bad-argument-type]
-    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:4675:36
+    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:4662:36
 ERROR Argument `list[SimpleNamespace]` is not assignable to parameter `available_datasets` with type `list[Dataset]` in function `core.rag.retrieval.dataset_retrieval.DatasetRetrieval.multiple_retrieve` [bad-argument-type]
-    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:4711:36
+    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:4698:36
 ERROR Argument `list[SimpleNamespace]` is not assignable to parameter `available_datasets` with type `list[Dataset]` in function `core.rag.retrieval.dataset_retrieval.DatasetRetrieval.multiple_retrieve` [bad-argument-type]
-    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:4739:36
+    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:4726:36
 ERROR Argument `list[SimpleNamespace]` is not assignable to parameter `available_datasets` with type `list[Dataset]` in function `core.rag.retrieval.dataset_retrieval.DatasetRetrieval.multiple_retrieve` [bad-argument-type]
-    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:4797:40
+    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:4784:40
 ERROR Argument `list[SimpleNamespace]` is not assignable to parameter `available_datasets` with type `list[Dataset]` in function `core.rag.retrieval.dataset_retrieval.DatasetRetrieval.multiple_retrieve` [bad-argument-type]
-    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:4841:44
+    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:4828:44
 ERROR Argument `Iterator[Any | Unknown] | Iterator[Any]` is not assignable to parameter `invoke_result` with type `Generator[Unknown]` in function `core.rag.retrieval.router.multi_dataset_react_route.ReactMultiDatasetRouter._handle_invoke_result` [bad-argument-type]
    --> tests/unit_tests/core/rag/retrieval/test_multi_dataset_react_route.py:199:52
 ERROR Argument `None` is not assignable to parameter `text` with type `str` in function `core.rag.splitter.text_splitter.RecursiveCharacterTextSplitter.split_text` [bad-argument-type]

Comment thread api/core/rag/index_processor/index_processor.py Outdated
Comment thread api/core/rag/index_processor/index_processor.py Outdated
@wdeveloper16
Copy link
Copy Markdown
Contributor Author

Okay, I will fix them perfectly.
thanks.

@github-actions
Copy link
Copy Markdown
Contributor

Pyrefly Diff

base → PR
--- /tmp/pyrefly_base.txt	2026-04-11 15:56:02.462146579 +0000
+++ /tmp/pyrefly_pr.txt	2026-04-11 15:55:53.899090686 +0000
@@ -290,13 +290,13 @@
 ERROR Object of class `Document` has no attribute `score` [missing-attribute]
    --> core/rag/index_processor/processor/paragraph_index_processor.py:204:16
 ERROR Object of class `Document` has no attribute `score` [missing-attribute]
-   --> core/rag/index_processor/processor/parent_child_index_processor.py:245:33
+   --> core/rag/index_processor/processor/parent_child_index_processor.py:243:33
 ERROR Object of class `Document` has no attribute `score` [missing-attribute]
-   --> core/rag/index_processor/processor/parent_child_index_processor.py:246:16
+   --> core/rag/index_processor/processor/parent_child_index_processor.py:244:16
 ERROR Object of class `Document` has no attribute `score` [missing-attribute]
-   --> core/rag/index_processor/processor/qa_index_processor.py:209:33
+   --> core/rag/index_processor/processor/qa_index_processor.py:208:33
 ERROR Object of class `Document` has no attribute `score` [missing-attribute]
-   --> core/rag/index_processor/processor/qa_index_processor.py:210:16
+   --> core/rag/index_processor/processor/qa_index_processor.py:209:16
 ERROR No matching overload found for function `core.model_manager.ModelInstance.invoke_llm` called with arguments: (prompt_messages=list[SystemPromptMessage | UserPromptMessage], tools=list[PromptMessageTool], stream=Literal[False], model_parameters=dict[str, float | int]) [no-matching-overload]
   --> core/rag/retrieval/router/multi_dataset_function_call_router.py:32:58
 ERROR Class member `MCPToolProviderController.entity` overrides parent class `ToolProviderController` in an inconsistent manner [bad-override]
@@ -4931,39 +4931,39 @@
 ERROR Object of class `FunctionType` has no attribute `call_count` [missing-attribute]
     --> tests/unit_tests/core/rag/rerank/test_reranker.py:1630:16
 ERROR Argument `list[float] | None` is not assignable to parameter `obj` with type `Sized` in function `len` [bad-argument-type]
-    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:1949:20
+    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:1948:20
 ERROR Could not find name `metadata_name` [unknown-name]
-    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:2769:29
+    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:2768:29
 ERROR Could not find name `metadata_name` [unknown-name]
-    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:2770:29
+    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:2769:29
 ERROR Argument `Iterator[Any | Unknown] | Iterator[Any]` is not assignable to parameter `invoke_result` with type `Generator[Unknown]` in function `core.rag.retrieval.dataset_retrieval.DatasetRetrieval._handle_invoke_result` [bad-argument-type]
-    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:3782:64
+    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:3781:64
 ERROR Argument `Iterator[Any | Unknown] | Iterator[Any]` is not assignable to parameter `invoke_result` with type `Generator[Unknown]` in function `core.rag.retrieval.dataset_retrieval.DatasetRetrieval._handle_invoke_result` [bad-argument-type]
-    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:3786:67
+    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:3785:67
 ERROR `None` is not subscriptable [unsupported-operation]
-    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:4025:16
+    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:4024:16
 ERROR Argument `list[SimpleNamespace]` is not assignable to parameter `available_datasets` with type `list[Dataset]` in function `core.rag.retrieval.dataset_retrieval.DatasetRetrieval.single_retrieve` [bad-argument-type]
-    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:4559:40
+    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:4546:40
 ERROR Argument `list[SimpleNamespace]` is not assignable to parameter `available_datasets` with type `list[Dataset]` in function `core.rag.retrieval.dataset_retrieval.DatasetRetrieval.single_retrieve` [bad-argument-type]
-    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:4611:40
+    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:4598:40
 ERROR Argument `SimpleNamespace` is not assignable to parameter `metadata_condition` with type `MetadataFilteringCondition | None` in function `core.rag.retrieval.dataset_retrieval.DatasetRetrieval.single_retrieve` [bad-argument-type]
-    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:4616:40
+    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:4603:40
 ERROR Argument `list[SimpleNamespace]` is not assignable to parameter `available_datasets` with type `list[Dataset]` in function `core.rag.retrieval.dataset_retrieval.DatasetRetrieval.single_retrieve` [bad-argument-type]
-    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:4632:36
+    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:4619:36
 ERROR Argument `list[SimpleNamespace]` is not assignable to parameter `available_datasets` with type `list[Dataset]` in function `core.rag.retrieval.dataset_retrieval.DatasetRetrieval.single_retrieve` [bad-argument-type]
-    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:4662:36
+    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:4649:36
 ERROR Argument `SimpleNamespace` is not assignable to parameter `metadata_condition` with type `MetadataFilteringCondition | None` in function `core.rag.retrieval.dataset_retrieval.DatasetRetrieval.single_retrieve` [bad-argument-type]
-    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:4667:36
+    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:4654:36
 ERROR Argument `list[SimpleNamespace]` is not assignable to parameter `available_datasets` with type `list[Dataset]` in function `core.rag.retrieval.dataset_retrieval.DatasetRetrieval.single_retrieve` [bad-argument-type]
-    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:4675:36
+    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:4662:36
 ERROR Argument `list[SimpleNamespace]` is not assignable to parameter `available_datasets` with type `list[Dataset]` in function `core.rag.retrieval.dataset_retrieval.DatasetRetrieval.multiple_retrieve` [bad-argument-type]
-    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:4711:36
+    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:4698:36
 ERROR Argument `list[SimpleNamespace]` is not assignable to parameter `available_datasets` with type `list[Dataset]` in function `core.rag.retrieval.dataset_retrieval.DatasetRetrieval.multiple_retrieve` [bad-argument-type]
-    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:4739:36
+    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:4726:36
 ERROR Argument `list[SimpleNamespace]` is not assignable to parameter `available_datasets` with type `list[Dataset]` in function `core.rag.retrieval.dataset_retrieval.DatasetRetrieval.multiple_retrieve` [bad-argument-type]
-    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:4797:40
+    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:4784:40
 ERROR Argument `list[SimpleNamespace]` is not assignable to parameter `available_datasets` with type `list[Dataset]` in function `core.rag.retrieval.dataset_retrieval.DatasetRetrieval.multiple_retrieve` [bad-argument-type]
-    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:4841:44
+    --> tests/unit_tests/core/rag/retrieval/test_dataset_retrieval.py:4828:44
 ERROR Argument `Iterator[Any | Unknown] | Iterator[Any]` is not assignable to parameter `invoke_result` with type `Generator[Unknown]` in function `core.rag.retrieval.router.multi_dataset_react_route.ReactMultiDatasetRouter._handle_invoke_result` [bad-argument-type]
    --> tests/unit_tests/core/rag/retrieval/test_multi_dataset_react_route.py:199:52
 ERROR Argument `None` is not assignable to parameter `text` with type `str` in function `core.rag.splitter.text_splitter.RecursiveCharacterTextSplitter.split_text` [bad-argument-type]

@dosubot dosubot Bot mentioned this pull request Apr 11, 2026
5 tasks
@dosubot dosubot Bot added the lgtm This PR has been approved by a maintainer label Apr 11, 2026
@asukaminato0721 asukaminato0721 added this pull request to the merge queue Apr 11, 2026
Merged via the queue into langgenius:main with commit 12814b5 Apr 11, 2026
28 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

lgtm This PR has been approved by a maintainer refactor size:L This PR changes 100-499 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants