- apps/api: psycopg v3 repositories, schema.sql + migration runner, state machine implementing the data-model transition table, approval gate with sha256 hash match + 24h expiry enforced at send time, EchoTransport pluggable sender, LLM calls routed through packages.llm-gateway with mock mode, 47 pytest tests green - apps/api/Dockerfile.test: python 3.13-slim test image (DinD-safe: migrations copied as directory) - docker-compose.yml: add api-test service on compose network (host port publishing is broken in this sandbox; container-to-container networking used) - Fix: replace masked placeholder password in config.py/conftest.py defaults
15 lines
304 B
Text
15 lines
304 B
Text
# Test/POC runner image for apps/api
|
|
FROM python:3.13-slim
|
|
|
|
WORKDIR /app
|
|
ENV PYTHONDONTWRITEBYTECODE=1 PYTHONUNBUFFERED=1
|
|
|
|
COPY pyproject.toml ./
|
|
COPY app ./app
|
|
COPY schema.sql ./schema.sql
|
|
COPY migrations ./migrations
|
|
COPY tests ./tests
|
|
|
|
RUN pip install --no-cache-dir -e ".[dev]"
|
|
|
|
CMD ["pytest", "-q"]
|