chore: pydantic-settings config, logging, CI workflow
Config (src/config.py): - pydantic-settings Settings class: OLLAMA_URL, OLLAMA_MODEL, DEBUG - Reads from .env (gitignored) with sane defaults - settings singleton imported by health.py and agent.py Removes two hardcodes: - health.py: OLLAMA_URL="http://localhost:11434" → settings.ollama_url - agent.py: Ollama(id="llama3.2") → settings.ollama_model app.py: - logging.basicConfig at INFO — requests/errors now visible in terminal - docs_url/redoc_url gated on settings.debug (off by default) pyproject.toml: - pydantic-settings>=2.0.0 added to main dependencies - hatch wheel config updated to include src/config.py .env.example: documents all three env vars with inline comments .gitignore: add !.env.example negation so the template gets committed .github/workflows/tests.yml: runs pytest --cov on every push/PR (ubuntu-latest, Python 3.11, pip cache) All 27 tests pass. https://claude.ai/code/session_01M4L3R98N5fgXFZRvV8X9b6
This commit is contained in:
@@ -19,6 +19,7 @@ dependencies = [
|
||||
"aiofiles>=24.0.0",
|
||||
"typer>=0.12.0",
|
||||
"rich>=13.0.0",
|
||||
"pydantic-settings>=2.0.0",
|
||||
]
|
||||
|
||||
[project.optional-dependencies]
|
||||
@@ -32,7 +33,8 @@ dev = [
|
||||
timmy = "timmy.cli:main"
|
||||
|
||||
[tool.hatch.build.targets.wheel]
|
||||
packages = ["src/timmy", "src/dashboard"]
|
||||
sources = {"src" = ""}
|
||||
include = ["src/timmy", "src/dashboard", "src/config.py"]
|
||||
|
||||
[tool.pytest.ini_options]
|
||||
testpaths = ["tests"]
|
||||
|
||||
Reference in New Issue
Block a user