Skip to content

Docker image does not copy the new core/, providers/, ingestion/, rag/, fcg/, or config/ packages #52

Description

@aadityat23

Problem

finverify-terminal/backend/Dockerfile currently runs COPY app/ ./app/ as its only source copy step. Since the backend refactor, app/main.py and its dependencies import from core.engine, core.models, fcg.constraint_engine, fcg.normalizer, providers.registry, ingestion.sec_edgar, ingestion.transcripts, and rag.pipeline — none of which live under app/. The Dockerfile does not copy any of these directories, nor config/ or data/, into the image.

Why this matters

A container built from this Dockerfile will fail at import time (ModuleNotFoundError) the moment any request hits a route that touches the financial reasoning engine, FCG, RAG, or ingestion paths — which is most of the API surface. This is the single highest-risk gap in the deployment pipeline: it can pass a naive docker build (since Python won't complain until the modules are actually imported/executed) while being broken for real traffic. Anyone deploying from a fresh clone, or CI validating the image, needs this fixed before relying on the container for anything beyond /health.

Acceptance Criteria

  • The Dockerfile copies core/, providers/, ingestion/, rag/, fcg/, and config/ alongside app/

  • A local docker build followed by docker run and a request to /v1/fcg/verify or /v1/rag/query succeeds without import errors

  • The data/ directory is handled deliberately — either copied with a clear comment explaining why, or explicitly excluded with the app configured to create it at runtime

  • .dockerignore (once added, see related issue) and this COPY list are cross-checked against each other so nothing needed at runtime is excluded

  • Tests added where appropriate — a smoke-test script or CI step that builds the image and curls a non-trivial endpoint

  • Documentation updated if necessary — README_HF.md build/run instructions reflect the corrected copy step

Files likely to modify

finverify-terminal/backend/Dockerfile
finverify-terminal/backend/README_HF.md

Skills required

Docker, Python packaging, FastAPI

Estimated difficulty

3/5

Estimated effort

3–5 hours

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions