(user_id: str, days: int = 14, limit: int = 80)
| 4934 | limit=6, |
| 4935 | ) |
| 4936 | mode, routing_reason = _question_route(cleaned_question, normalized_scope, resolved_mentions) |
| 4937 | if _comparison_needs_mentions(cleaned_question, resolved_nodes): |
| 4938 | result = _selection_required_answer( |
| 4939 | _comparison_selection_required_message(language), |
| 4940 | response_language=language, |
| 4941 | ) |
| 4942 | _apply_chat_metadata( |
| 4943 | result, |
| 4944 | mode="wiki", |
| 4945 | retrieval_required=True, |
| 4946 | routing_reason="mention_required", |
| 4947 | mentions=resolved_mentions, |
| 4948 | unresolved_mentions=unresolved_mentions, |
| 4949 | scope=normalized_scope, |
| 4950 | response_language=language, |
| 4951 | ) |
| 4952 | _attach_chat_session( |
| 4953 | result, |
| 4954 | user_id=user_id, |
| 4955 | session_id=session_id, |
| 4956 | question=cleaned_question, |
| 4957 | persist_chat=persist_chat, |
| 4958 | ) |
| 4959 | return result |
| 4960 | if mode == "direct": |
| 4961 | result = _direct_answer(cleaned_question, response_language=language) |
| 4962 | result["streaming"] = {"provider": False, "transport": "json"} |
| 4963 | _apply_chat_metadata( |
| 4964 | result, |
| 4965 | mode="direct", |
| 4966 | retrieval_required=False, |
| 4967 | routing_reason=routing_reason, |
| 4968 | mentions=[], |
| 4969 | unresolved_mentions=unresolved_mentions, |
| 4970 | scope=normalized_scope, |
| 4971 | response_language=language, |
nothing calls this directly
no test coverage detected