# Stage 1: Build React Debug UI
FROM node:20-slim AS ui-builder

WORKDIR /ui

# Copy debug-ui source and install deps
COPY deploy/local/debug-ui/ ./
RUN npm install --prefer-offline --no-audit && npm run build

# Stage 2: Python runtime
FROM python:3.11-slim

# Install uv
COPY --from=ghcr.io/astral-sh/uv:latest /uv /usr/local/bin/uv

WORKDIR /app

# Install dependencies from pyproject.toml (not as installable package)
COPY deploy/local/pyproject.toml .
RUN uv pip install --system -r pyproject.toml

# Copy agent code
COPY agents/ ./agents/

# Copy FastAPI app
COPY deploy/local/app.py .

# Copy built Debug UI from builder stage
COPY --from=ui-builder /ui/dist ./static/

# Enable debug UI by default (set to "false" to disable)
ENV BEDSHEET_DEBUG_UI=true

EXPOSE 8000

CMD ["uvicorn", "app:app", "--host", "0.0.0.0", "--port", "8000"]