Skip to content

feat(mail-evidence): import read-only Gmail evidence#60

Merged
max5800 merged 7 commits into
mainfrom
feature/mail-evidence-analysis-context
Jun 22, 2026
Merged

feat(mail-evidence): import read-only Gmail evidence#60
max5800 merged 7 commits into
mainfrom
feature/mail-evidence-analysis-context

Conversation

@max5800

@max5800 max5800 commented Jun 22, 2026

Copy link
Copy Markdown
Owner

Summary

  • Add a real read-only Gmail payload converter for mail evidence imports
  • Add POST /api/v1/mail-evidence/import while keeping /mock-import for compatibility
  • Add a gws-based Gmail import script with dry-run and quality gating
  • Improve German invoice amount/payment parsing and avoid false refund detection from shop boilerplate
  • Document the Gmail mail-evidence import workflow and safety boundary

Verification

  • uv run pytest tests/test_mail_evidence_layer.py -> 17 passed
  • uv run ruff check src/api/routers/mail_evidence.py src/external/gmail_import.py src/services/mail_evidence.py scripts/import_gmail_evidence.py tests/test_mail_evidence_layer.py
  • uv run alembic heads -> 0027_mail_evidence_analysis_context (head)
  • OpenAPI check confirms /api/v1/mail-evidence/import
  • uv run pytest -> 369 passed, 317 skipped
  • Gmail dry-run against real mailbox: 10 seen, 2 finance evidence candidates, 8 skipped by quality gate, 0 Gmail writes

@max5800 max5800 merged commit 771d571 into main Jun 22, 2026
5 checks passed
@github-actions

Copy link
Copy Markdown

🎉 This PR is included in version 1.42.0 🎉

The release is available on GitHub release

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant