Native DeepSeek review loop in periscope/src (Fase C2).

Live review_ic_async comes from review_session; PinScope validate.py and
validation_tools.py stay in dependency as _inherited_review_ic_async fallback.
This commit is contained in:
2026-09-20 15:14:21 +02:00
parent a0a2f5bdbf
commit 974923b2e6
11 changed files with 2506 additions and 5 deletions
+2
View File
@@ -18,6 +18,7 @@ import pytest
from pypdf import PdfWriter
from backend.periscopex.utils import safe_mpn
from backend.services import review_session as review_session
from backend.services import validation as val
from backend.services.llm.types import Completion, ToolCall, Usage
from backend.services.storage import LocalStorageBackend
@@ -136,6 +137,7 @@ async def _run(ws, monkeypatch, before_ic):
return await body(prov_cls(), "fake-model")
monkeypatch.setattr(val, "call_with_fallback", fake_cwf)
monkeypatch.setattr(review_session, "call_with_fallback", fake_cwf)
# The fake session needs the current ic_ref; thread it through by wrapping
# review_ic_async to set the class attr before delegating.