fix(package): review pass on the PyPI package

- docsgpt api binds 127.0.0.1 by default, like gunicorn and uvicorn do;
  --host 0.0.0.0 exposes it. The docs say so.
- The embedded Milvus and LanceDB defaults derive from the data home, so
  they follow DOCSGPT_HOME like the faiss indexes and uploads do. A checkout
  run from its root and the Docker image resolve to the same paths as before.
- The docs and the pyproject comment describe the CPU torch install as two
  steps (torch and torchvision from the PyTorch CPU index first, then the
  docling extra): pip picks the highest version across indexes, so
  --extra-index-url only yields the CPU build while that index keeps pace
  with PyPI.
- AGENTS.md separates DOCSGPT_HOME (moves the data home) from
  DOCSGPT_ENV_FILE (selects the .env file); the docs example uses a password
  placeholder.
This commit is contained in:
Alex committed 2026-09-07 15:25:30 +01:00
1 parent bea26336f8
commit ae9348bb2a
7 files changed
+43 -12

No files matched your search

+19
View File
@@ -36,6 +36,25 @@ class TestEnvFile:
assert paths.env_file() == tmp_path / "custom.env"
class TestSettingsFollowTheHome:
def test_embedded_vector_stores_default_under_the_home(self, monkeypatch, tmp_path):
from docsgpt.core.settings import Settings
monkeypatch.setenv(paths.HOME_ENV, str(tmp_path))
monkeypatch.delenv("MILVUS_URI", raising=False)
monkeypatch.delenv("LANCEDB_PATH", raising=False)
fresh = Settings(_env_file=None)
assert fresh.MILVUS_URI == str(tmp_path.resolve() / "milvus_local.db")
assert fresh.LANCEDB_PATH == str(tmp_path.resolve() / "data" / "lancedb")
def test_env_overrides_still_win(self, monkeypatch, tmp_path):
from docsgpt.core.settings import Settings
monkeypatch.setenv(paths.HOME_ENV, str(tmp_path))
monkeypatch.setenv("LANCEDB_PATH", "/srv/lancedb")
assert Settings(_env_file=None).LANCEDB_PATH == "/srv/lancedb"
class TestPackageDir:
def test_holds_the_shipped_data(self):
assert paths.package_dir().name == "docsgpt"