diff --git a/.github/workflows/ci-secret.yaml b/.github/workflows/ci-secret.yaml index 60d92ac3..59590a65 100644 --- a/.github/workflows/ci-secret.yaml +++ b/.github/workflows/ci-secret.yaml @@ -59,15 +59,57 @@ jobs: - name: Build Docker image run: | make docker-up + - name: Run LLM CI + id: llm_tests working-directory: evaluation run: | make llm-tests + + - name: Capture Docker logs on failure + if: failure() + run: | + mkdir -p docker-logs + echo "=== Docker Container Status ===" + docker ps -a + echo "" + echo "=== COMPLETE BACKEND LOGS ===" + docker logs backend 2>&1 || echo "Failed to get backend logs" + echo "" + echo "=== COMPLETE FRONTEND LOGS ===" + docker logs frontend 2>&1 || echo "Failed to get frontend logs" + echo "" + echo "=== COMPLETE POSTGRES LOGS ===" + docker logs postgres 2>&1 || echo "Failed to get postgres logs" + + # Save to files for artifacts + docker logs backend > docker-logs/backend.log 2>&1 || echo "Failed to capture backend logs" + docker logs frontend > docker-logs/frontend.log 2>&1 || echo "Failed to capture frontend logs" + docker logs postgres > docker-logs/postgres.log 2>&1 || echo "Failed to capture postgres logs" + + - name: Upload Docker logs as artifacts + if: failure() + uses: actions/upload-artifact@v4 + with: + name: docker-logs-${{ github.run_id }} + path: docker-logs/ + retention-days: 7 + + - name: Upload evaluation output as artifact + if: failure() + uses: actions/upload-artifact@v4 + with: + name: evaluation-output-${{ github.run_id }} + path: evaluation/auto_evaluation/llm_tests_output.txt + retention-days: 7 + if-no-files-found: ignore + - name: Create commit comment uses: peter-evans/commit-comment@v3 with: token: ${{ secrets.GH_PAT }} body-path: evaluation/auto_evaluation/llm_tests_output.txt + - name: Teardown if: always() run: | diff --git a/backend/src/api/routers/ui.py b/backend/src/api/routers/ui.py index 94c861c1..ecce0f1b 100644 --- a/backend/src/api/routers/ui.py +++ b/backend/src/api/routers/ui.py @@ -12,7 +12,7 @@ async def proxy_chat(request: Request) -> Response: data = await request.json() # TODO: set this route dynamically - resp = await client.post("/graphs/agent-retriever", json=data) + resp = await client.post("/conversations/agent-retriever", json=data) return Response( content=resp.content, status_code=resp.status_code,