Skip to content

Fix test job failure by deferring optional sentence_transformers loading - #1

Merged
aleehydar merged 4 commits into
mainfrom
copilot/fix-failing-github-actions-job
Jun 16, 2026
Merged

aleehydar merged 4 commits into
mainfrom
copilot/fix-failing-github-actions-job

Conversation

Copilot AI commented Jun 16, 2026 •

Copy link
Copy Markdown
Contributor

The test GitHub Actions job failed during test collection because app.services.ingestion_service imported sentence_transformers at module import time. In CI environments where that package is unavailable, this prevented the test suite from starting.

  • Root cause addressed: remove import-time hard dependency

    • Moved SentenceTransformer import from module scope into get_embedder().
    • Kept typing intact via TYPE_CHECKING so runtime import is deferred but signatures remain explicit.
  • Startup resilience for optional embedder dependency

    • Updated app lifespan startup to catch ModuleNotFoundError around embedder warm-up.
    • Startup now continues with a warning when sentence_transformers is absent, instead of failing process initialization.
  • Regression coverage for deferred import behavior

    • Added focused tests covering:
      • startup behavior when embedder import fails,
      • get_embedder() failure-path deferral semantics,
      • get_embedder() success-path initialization when sentence_transformers is available.
def get_embedder() -> "SentenceTransformer":
    global _embedder
    if _embedder is None:
        from sentence_transformers import SentenceTransformer
        _embedder = SentenceTransformer(settings.embedding_model)
    return _embedder

Copilot AI changed the title [WIP] Fix failing GitHub Actions job 'test' Fix test job failure by deferring optional sentence_transformers loading Jun 16, 2026
Copilot AI requested a review from aleehydar June 16, 2026 19:07
@aleehydar
aleehydar marked this pull request as ready for review June 16, 2026 19:09
@aleehydar
aleehydar merged commit 31ac712 into main Jun 16, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants