- Alembic 0003_corporate: 10 new tables (tasks, planned_blocks, manual_entries, project_budgets, tags, task_tags, azure_integrations, azure_work_items, ai_reports, audit_log) + session.task_id FK - New routers: calendar, tasks, manual_entries, budgets, tags, devops, exports, reports - Services: crypto (Fernet PAT encryption), audit log, Mailgun email, APScheduler (ADO sync every 15 min, daily AI report at 20:00, weekly Sunday 21:00) - Azure DevOps two-way sync: pull assigned work items, push CompletedWork on task complete - AI reports: Anthropic API summaries or plain-stats fallback, sent via Mailgun - structlog JSON/console logging, LoggingMiddleware, updated main.py lifespan - pyproject.toml (ruff/mypy/pytest config), CI workflow, pre-commit hooks - Schemas: CalendarBlock, Task*, ManualEntry*, Budget*, Tag*, AzureIntegration*, AiReport*, SyncReport Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
15 lines
263 B
TOML
15 lines
263 B
TOML
[tool.pytest.ini_options]
|
|
asyncio_mode = "auto"
|
|
testpaths = ["src/tests"]
|
|
|
|
[tool.ruff]
|
|
target-version = "py311"
|
|
line-length = 100
|
|
|
|
[tool.ruff.lint]
|
|
select = ["E", "F", "W", "I"]
|
|
ignore = ["E501"]
|
|
|
|
[tool.mypy]
|
|
python_version = "3.11"
|
|
ignore_missing_imports = true
|