neutralize upstream service branding

This commit is contained in:
2026-06-12 16:31:08 +08:00
parent 126ae4eafa
commit 42de7f9da0
18 changed files with 340 additions and 256 deletions

View File

@ -127,11 +127,11 @@ class MemoryGatewayService:
self,
config: GatewayConfig,
repository: MemoryRepository,
everos_client: Any,
backend_client: Any,
) -> None:
self.config = config
self.repository = repository
self.everos_client = everos_client
self.backend_client = backend_client
def create_user(self, user_id: str) -> dict[str, Any]:
user_key = f"uk_{secrets.token_urlsafe(32)}"
@ -204,8 +204,8 @@ class MemoryGatewayService:
)
try:
await self._retry_everos_call(
lambda: self.everos_client.add_memory(
await self._retry_backend_call(
lambda: self.backend_client.add_memory(
self._build_add_payload(
resource=resource,
user_id=user_id,
@ -215,8 +215,8 @@ class MemoryGatewayService:
)
)
)
await self._retry_everos_call(
lambda: self.everos_client.flush_memory(session_id, app_id, project_id)
await self._retry_backend_call(
lambda: self.backend_client.flush_memory(session_id, app_id, project_id)
)
except Exception as exc:
failed = self.repository.update_resource_status(
@ -229,8 +229,8 @@ class MemoryGatewayService:
extracted = self.repository.update_resource_status(resource_id, "extracted")
return self._resource_summary(extracted or resource)
async def _retry_everos_call(self, operation: Any) -> Any:
attempts = max(1, self.config.everos_ingest_attempts)
async def _retry_backend_call(self, operation: Any) -> Any:
attempts = max(1, self.config.backend_ingest_attempts)
last_error: Exception | None = None
for attempt in range(attempts):
try:
@ -239,11 +239,11 @@ class MemoryGatewayService:
last_error = exc
if attempt == attempts - 1:
break
delay = self.config.everos_retry_delay_seconds
delay = self.config.backend_retry_delay_seconds
if delay > 0:
await asyncio.sleep(delay)
if last_error is None:
raise RuntimeError("EverOS operation failed")
raise RuntimeError("upstream memory service operation failed")
raise last_error
def _build_add_payload(
@ -367,7 +367,7 @@ class MemoryGatewayService:
)
results.extend(
self._extract_results(
await self.everos_client.search_memory(payload),
await self.backend_client.search_memory(payload),
source_scope="current_chat",
session_resource_map=session_resource_map,
user_id=user_id,
@ -393,7 +393,7 @@ class MemoryGatewayService:
)
results.extend(
self._extract_results(
await self.everos_client.search_memory(payload),
await self.backend_client.search_memory(payload),
source_scope="resources",
session_resource_map=session_resource_map,
user_id=user_id,
@ -411,7 +411,7 @@ class MemoryGatewayService:
)
results.extend(
self._extract_results(
await self.everos_client.search_memory(payload),
await self.backend_client.search_memory(payload),
source_scope="all_user_memory",
session_resource_map=session_resource_map,
user_id=user_id,
@ -438,7 +438,7 @@ class MemoryGatewayService:
}
return {
"session_id": session_id,
"everos": await self.everos_client.add_memory(payload),
"backend": await self.backend_client.add_memory(payload),
}
async def flush_memory(
@ -450,7 +450,7 @@ class MemoryGatewayService:
) -> dict[str, Any]:
return {
"session_id": session_id,
"everos": await self.everos_client.flush_memory(
"backend": await self.backend_client.flush_memory(
session_id,
app_id,
project_id,