Squash Odysseus development history

This commit is contained in:
pewdiepie-archdaemon
2026-09-11 06:04:19 +00:00
parent c9dd68d890
commit 84aa9a91de
871 changed files with 265870 additions and 27854 deletions
+155 -3
View File
@@ -66,9 +66,11 @@ def test_list_sessions_excludes_other_users_sessions(monkeypatch):
sm = MagicMock()
sm.get_sessions_for_user.return_value = {alice_id: alice_session}
router = sr.setup_session_routes(sm, {})
endpoint = next(r.endpoint for r in router.routes
if getattr(r, "path", "") == "/api/sessions"
and "GET" in getattr(r, "methods", set()))
endpoint = [
r.endpoint for r in router.routes
if getattr(r, "path", "") == "/api/sessions"
and "GET" in getattr(r, "methods", set())
][-1]
result = endpoint(request=MagicMock())
returned_ids = {s["id"] for s in result}
@@ -76,6 +78,156 @@ def test_list_sessions_excludes_other_users_sessions(monkeypatch):
assert bob_id not in returned_ids
def test_list_sessions_uses_db_when_memory_cache_misses(monkeypatch):
import routes.session_routes as sr
from unittest.mock import MagicMock
_stub_multipart_if_missing(monkeypatch)
monkeypatch.setattr(sr, "SessionLocal", _TS)
monkeypatch.setattr(sr, "effective_user", lambda request: "alice")
visible_id = str(uuid.uuid4())
hidden_id = str(uuid.uuid4())
bob_id = str(uuid.uuid4())
db = _TS()
try:
db.query(DbMessage).delete()
db.query(DbSession).delete()
db.add(DbSession(id=visible_id, owner="alice", name="visible persisted session",
endpoint_url="http://localhost", model="gpt-4", archived=False,
message_count=2))
db.add(DbSession(id=hidden_id, owner="alice", name="SFT trace batch alice email 001",
endpoint_url="http://localhost", model="gpt-4", archived=False,
message_count=2))
db.add(DbSession(id=bob_id, owner="bob", name="bob session",
endpoint_url="http://localhost", model="gpt-4", archived=False,
message_count=2))
db.commit()
finally:
db.close()
sm = MagicMock()
sm.get_sessions_for_user.return_value = {}
router = sr.setup_session_routes(sm, {})
endpoint = [
r.endpoint for r in router.routes
if getattr(r, "path", "") == "/api/sessions"
and "GET" in getattr(r, "methods", set())
][-1]
result = endpoint(request=MagicMock())
returned_ids = {s["id"] for s in result}
assert visible_id in returned_ids
assert hidden_id not in returned_ids
assert bob_id not in returned_ids
def test_list_sessions_returns_persisted_cwd(monkeypatch):
import routes.session_routes as sr
from types import SimpleNamespace
from unittest.mock import MagicMock
_stub_multipart_if_missing(monkeypatch)
monkeypatch.setattr(sr, "SessionLocal", _TS)
monkeypatch.setattr(sr, "effective_user", lambda request: "alice")
sid = str(uuid.uuid4())
db = _TS()
try:
db.query(DbMessage).delete()
db.query(DbSession).delete()
db.add(DbSession(
id=sid,
owner="alice",
name="workspace session",
endpoint_url="http://localhost",
model="gpt-4",
archived=False,
cwd="/home/pewds/odysseus-tui",
))
db.commit()
finally:
db.close()
session = SimpleNamespace(
id=sid,
name="workspace session",
model="gpt-4",
endpoint_url="http://localhost",
rag=False,
archived=False,
)
sm = MagicMock()
sm.get_sessions_for_user.return_value = {sid: session}
router = sr.setup_session_routes(sm, {})
endpoint = [
r.endpoint for r in router.routes
if getattr(r, "path", "") == "/api/sessions"
and "GET" in getattr(r, "methods", set())
][-1]
result = endpoint(request=MagicMock())
assert result[0]["cwd"] == "/home/pewds/odysseus-tui"
def test_patch_session_updates_persisted_cwd(monkeypatch):
import routes.session_routes as sr
from types import SimpleNamespace
from unittest.mock import MagicMock
_stub_multipart_if_missing(monkeypatch)
monkeypatch.setattr(sr, "SessionLocal", _TS)
monkeypatch.setattr(sr, "effective_user", lambda request: "alice")
monkeypatch.setattr(sr, "_verify_session_owner", lambda request, sid: None)
sid = str(uuid.uuid4())
db = _TS()
try:
db.query(DbMessage).delete()
db.query(DbSession).delete()
db.add(DbSession(
id=sid,
owner="alice",
name="workspace session",
endpoint_url="http://localhost",
model="gpt-4",
archived=False,
))
db.commit()
finally:
db.close()
session = SimpleNamespace(id=sid, cwd=None)
sm = MagicMock()
sm.get_session.return_value = session
router = sr.setup_session_routes(sm, {})
endpoint = [
r.endpoint for r in router.routes
if getattr(r, "path", "") == "/api/session/{sid}"
and "PATCH" in getattr(r, "methods", set())
][-1]
result = endpoint(
request=MagicMock(),
sid=sid,
name=None,
folder=None,
model=None,
endpoint_url=None,
endpoint_id=None,
cwd="/home/pewds/odysseus-tui",
)
assert result["cwd"] == "/home/pewds/odysseus-tui"
db = _TS()
try:
row = db.query(DbSession).filter(DbSession.id == sid).first()
assert row.cwd == "/home/pewds/odysseus-tui"
finally:
db.close()
def test_auto_sort_skip_llm_cleans_owner_stamped_sessions_when_auth_disabled(monkeypatch):
import routes.session_routes as sr
from unittest.mock import MagicMock