mirror of
https://github.com/pewdiepie-archdaemon/odysseus.git
synced 2026-09-10 18:22:20 +02:00
Merge pull request #6081 from ydonghao/refactor/routes-task-to-subdir
refactor(routes): move task domain into routes/task/ subpackage
This commit is contained in:
@@ -784,7 +784,7 @@ from src.task_scheduler import TaskScheduler
|
|||||||
task_scheduler = TaskScheduler(session_manager)
|
task_scheduler = TaskScheduler(session_manager)
|
||||||
from src.event_bus import set_task_scheduler
|
from src.event_bus import set_task_scheduler
|
||||||
set_task_scheduler(task_scheduler)
|
set_task_scheduler(task_scheduler)
|
||||||
from routes.task_routes import setup_task_routes
|
from routes.task.task_routes import setup_task_routes
|
||||||
app.include_router(setup_task_routes(task_scheduler))
|
app.include_router(setup_task_routes(task_scheduler))
|
||||||
|
|
||||||
from routes.assistant_routes import setup_assistant_routes
|
from routes.assistant_routes import setup_assistant_routes
|
||||||
|
|||||||
@@ -0,0 +1,5 @@
|
|||||||
|
"""Task route domain package (slice 2p, #4082/#4071).
|
||||||
|
|
||||||
|
Contains task_routes.py, migrated from the flat routes/ directory.
|
||||||
|
Backward-compat shim at routes/task_routes.py re-exports from here.
|
||||||
|
"""
|
||||||
File diff suppressed because it is too large
Load Diff
+14
-1177
File diff suppressed because it is too large
Load Diff
@@ -16,7 +16,7 @@ def test_registered_manual_compaction_uses_session_owner_for_utility_endpoint():
|
|||||||
|
|
||||||
|
|
||||||
def test_task_name_generation_uses_owner_scoped_session_endpoint():
|
def test_task_name_generation_uses_owner_scoped_session_endpoint():
|
||||||
src = _src("routes/task_routes.py")
|
src = _src("routes/task/task_routes.py")
|
||||||
|
|
||||||
assert "async def _generate_task_name(prompt: str, owner: Optional[str] = None)" in src
|
assert "async def _generate_task_name(prompt: str, owner: Optional[str] = None)" in src
|
||||||
assert "q = q.filter(DbSession.owner == owner)" in src
|
assert "q = q.filter(DbSession.owner == owner)" in src
|
||||||
|
|||||||
@@ -41,7 +41,7 @@ def test_no_hardcoded_loopback_left_in_call_sites():
|
|||||||
"src/tools/_common.py",
|
"src/tools/_common.py",
|
||||||
"src/cookbook_serve_lifecycle.py",
|
"src/cookbook_serve_lifecycle.py",
|
||||||
"src/builtin_actions.py",
|
"src/builtin_actions.py",
|
||||||
"routes/task_routes.py",
|
"routes/task/task_routes.py",
|
||||||
):
|
):
|
||||||
text = (root / rel).read_text(encoding="utf-8")
|
text = (root / rel).read_text(encoding="utf-8")
|
||||||
# Allow it only inside comments; flag any code occurrence.
|
# Allow it only inside comments; flag any code occurrence.
|
||||||
|
|||||||
@@ -27,7 +27,7 @@ def test_calendar_quick_parse_resolves_with_owner_scope():
|
|||||||
|
|
||||||
|
|
||||||
def test_task_parse_resolves_with_owner_scope():
|
def test_task_parse_resolves_with_owner_scope():
|
||||||
body = _function_source("routes/task_routes.py", "parse_task")
|
body = _function_source("routes/task/task_routes.py", "parse_task")
|
||||||
assert "user = _owner(request)" in body
|
assert "user = _owner(request)" in body
|
||||||
assert 'resolve_endpoint("utility", owner=user or None)' in body
|
assert 'resolve_endpoint("utility", owner=user or None)' in body
|
||||||
assert 'resolve_endpoint("default", owner=user or None)' in body
|
assert 'resolve_endpoint("default", owner=user or None)' in body
|
||||||
|
|||||||
@@ -0,0 +1,20 @@
|
|||||||
|
"""Regression test for the task route shim (slice 2p, #4082/#4071).
|
||||||
|
|
||||||
|
The backward-compat shim at ``routes/task_routes.py`` uses ``sys.modules``
|
||||||
|
replacement so the legacy import path and the canonical ``routes.task.*``
|
||||||
|
path resolve to the *same* module object. This is required because multiple
|
||||||
|
tests do ``import routes.task_routes as task_routes`` followed by
|
||||||
|
``monkeypatch.setattr(task_routes, "SessionLocal", ...)`` /
|
||||||
|
``"get_current_user"``, and test_auth_regressions.py reads
|
||||||
|
``task_routes.__file__`` for source introspection.
|
||||||
|
"""
|
||||||
|
|
||||||
|
import importlib
|
||||||
|
|
||||||
|
import routes.task_routes as _shim_task # noqa: F401
|
||||||
|
|
||||||
|
|
||||||
|
def test_legacy_and_canonical_task_module_are_same_object():
|
||||||
|
legacy = importlib.import_module("routes.task_routes")
|
||||||
|
canonical = importlib.import_module("routes.task.task_routes")
|
||||||
|
assert legacy is canonical
|
||||||
@@ -87,6 +87,7 @@ def test_webhook_trigger_handler_still_validates_token():
|
|||||||
routes_path = os.path.join(
|
routes_path = os.path.join(
|
||||||
os.path.dirname(os.path.dirname(os.path.abspath(__file__))),
|
os.path.dirname(os.path.dirname(os.path.abspath(__file__))),
|
||||||
"routes",
|
"routes",
|
||||||
|
"task",
|
||||||
"task_routes.py",
|
"task_routes.py",
|
||||||
)
|
)
|
||||||
with open(routes_path, encoding="utf-8") as fh:
|
with open(routes_path, encoding="utf-8") as fh:
|
||||||
|
|||||||
Reference in New Issue
Block a user