Files
agent/app/modules/rag_repo/module.py
2026-02-27 21:28:09 +03:00

25 lines
928 B
Python

from __future__ import annotations
from fastapi import APIRouter, Request
from app.modules.agent.story_context_repository import StoryContextRepository
from app.modules.rag_repo.webhook_service import RepoWebhookService
from app.modules.rag_session.repository import RagRepository
class RagRepoModule:
def __init__(self, story_context_repository: StoryContextRepository, rag_repository: RagRepository) -> None:
self._webhook = RepoWebhookService(story_context_repository, rag_repository)
def internal_router(self) -> APIRouter:
router = APIRouter(prefix="/internal/rag-repo", tags=["internal-rag-repo"])
@router.post("/webhook")
async def process_repo_webhook(request: Request, payload: dict) -> dict:
return self._webhook.process(
payload=payload,
headers={k: v for k, v in request.headers.items()},
)
return router