Compare commits

..
1 Commits
Author SHA1 Message Date
renovate bf751732a0 chore(deps): update docker.io/library/python docker tag to v3.15
renovate/stability-days Updates have met minimum release age requirement
Docker Build and Push / test (pull_request) Successful in 1m23s
PR Checks / hadolint (pull_request) Successful in 8s
Docker Build and Push / integration-test (pull_request) Successful in 1m29s
PR Checks / build-test (pull_request) Failing after 36s
PR Checks / pytest (pull_request) Successful in 1m15s
Docker Build and Push / build (pull_request) Failing after 49s
2026-10-16 15:12:47 +00:00
4 changed files with 2 additions and 36 deletions

No files matched your search

+1 -3
View File
@@ -22,9 +22,7 @@ jobs:
with:
python-version: "3.14"
- name: Install dependencies
run: pip install -r requirements.txt pytest ruff==0.17.1
- name: Lint (undefined names)
run: ruff check src/ tests/ --select F821
run: pip install -r requirements.txt pytest
- name: Run unit tests
run: pytest tests/ -v
env:
+1 -1
View File
@@ -1,5 +1,5 @@
# 3.13, because with 3.14 it requires gcc (wheels not available)
FROM docker.io/library/python:3.14-slim
FROM docker.io/library/python:3.15-slim
# Set environment variables
ENV PYTHONDONTWRITEBYTECODE=1
-7
View File
@@ -29,13 +29,6 @@ MAILDIR_FOLDERS = os.environ.get("MAILDIR_FOLDERS", "")
QDRANT_URL = os.environ.get("QDRANT_URL", "")
COLLECTION_NAME = os.environ.get("COLLECTION_NAME", "")
# Embedding model and batching. EMBEDDING_MODEL_NAME MUST stay in sync with the
# one used by server.py: indexer and server have to embed with the same model,
# otherwise the vectors stored in Qdrant are not comparable with query vectors.
EMBEDDING_MODEL_NAME = os.environ.get("EMBEDDING_MODEL_NAME", "BAAI/bge-small-en-v1.5")
BATCH_SIZE = int(os.environ.get("BATCH_SIZE", "100"))
EMBEDDING_BATCH_SIZE = int(os.environ.get("EMBEDDING_BATCH_SIZE", "64"))
METADATA_COLLECTION = "mcp_indexer_metadata"
INCREMENTAL_DAYS = int(os.environ.get("INCREMENTAL_DAYS", "7"))
FORCE_REINDEX = os.environ.get("FORCE_REINDEX", "").lower() in ("1", "true", "yes")
-25
View File
@@ -21,9 +21,6 @@ from indexer import (
parse_email_message,
get_recent_keys,
METADATA_COLLECTION,
EMBEDDING_MODEL_NAME,
BATCH_SIZE,
EMBEDDING_BATCH_SIZE,
)
@@ -230,25 +227,3 @@ class TestGetRecentKeys:
assert key.split(":")[0] in keys
for k in keys:
assert ":" not in k
# ---------------------------------------------------------------------------
# Regression: module-level constants consumed by main()
# ---------------------------------------------------------------------------
def test_indexer_module_constants_are_defined():
"""Regression (e32806a): the "make indexer importable without env" refactor
dropped these three module-level definitions while main() kept using them,
so every indexer run died with NameError before touching Qdrant."""
assert isinstance(EMBEDDING_MODEL_NAME, str) and EMBEDDING_MODEL_NAME
assert isinstance(BATCH_SIZE, int) and BATCH_SIZE > 0
assert isinstance(EMBEDDING_BATCH_SIZE, int) and EMBEDDING_BATCH_SIZE > 0
def test_embedding_model_is_the_same_as_the_server_one():
"""Indexer and server must embed with the same model, otherwise the vectors
stored by the indexer are not comparable with the query vectors."""
from server import EMBEDDING_MODEL_NAME as server_embedding_model
assert EMBEDDING_MODEL_NAME == server_embedding_model