Christian Krakau-Louis
5f0e9ed598
Merge branch 'main' into copilot/analyze-test-coverage
2026-04-05 20:55:08 +02:00
copilot-swe-agent[bot]
149ff3d997
fix: address CodeQL URL substring sanitization false positives in tests
...
Agent-Logs-Url: https://github.com/christianlouis/InboxConverge/sessions/8cb47b1c-b744-4212-8b6d-8132d6642d98
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-04-05 15:12:32 +00:00
copilot-swe-agent[bot]
39052af4e2
fix: upgrade pytest-asyncio to 1.3.0 for pytest 9.x compatibility
...
Agent-Logs-Url: https://github.com/christianlouis/InboxConverge/sessions/7634797f-a0bf-40e9-abd5-4504b7e4e357
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-04-05 15:11:10 +00:00
copilot-swe-agent[bot]
58f9ad72ed
test: add 150 new unit tests covering auth, users, notifications, logs, settings, GDPR, and Gmail label utilities
...
Agent-Logs-Url: https://github.com/christianlouis/InboxConverge/sessions/8cb47b1c-b744-4212-8b6d-8132d6642d98
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-04-05 15:10:38 +00:00
dependabot[bot]
4a6f93e5ac
chore(deps): bump pytest from 7.4.4 to 9.0.2 in /backend
...
Bumps [pytest](https://github.com/pytest-dev/pytest ) from 7.4.4 to 9.0.2.
- [Release notes](https://github.com/pytest-dev/pytest/releases )
- [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst )
- [Commits](https://github.com/pytest-dev/pytest/compare/7.4.4...9.0.2 )
---
updated-dependencies:
- dependency-name: pytest
dependency-version: 9.0.2
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-04-05 15:05:10 +00:00
Christian Krakau-Louis
1c3d902c9b
Merge pull request #136 from christianlouis/dependabot/pip/backend/python-dotenv-1.2.2
...
chore(deps): bump python-dotenv from 1.0.0 to 1.2.2 in /backend
2026-04-05 17:03:54 +02:00
Christian Krakau-Louis
190e41058e
Merge pull request #138 from christianlouis/dependabot/pip/backend/celery-5.6.3
...
chore(deps): bump celery from 5.6.2 to 5.6.3 in /backend
2026-04-05 17:03:37 +02:00
Christian Krakau-Louis
669ddf70fb
Merge pull request #143 from christianlouis/dependabot/pip/backend/bcrypt-5.0.0
...
chore(deps): bump bcrypt from 4.3.0 to 5.0.0 in /backend
2026-04-05 17:02:56 +02:00
dependabot[bot]
5992a9e802
chore(deps): bump celery from 5.6.2 to 5.6.3 in /backend
...
Bumps [celery](https://github.com/celery/celery ) from 5.6.2 to 5.6.3.
- [Release notes](https://github.com/celery/celery/releases )
- [Changelog](https://github.com/celery/celery/blob/v5.6.3/Changelog.rst )
- [Commits](https://github.com/celery/celery/compare/v5.6.2...v5.6.3 )
---
updated-dependencies:
- dependency-name: celery
dependency-version: 5.6.3
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-04-05 15:02:44 +00:00
Christian Krakau-Louis
3432b93712
Merge pull request #145 from christianlouis/dependabot/pip/backend/httpx-0.28.1
...
chore(deps): bump httpx from 0.26.0 to 0.28.1 in /backend
2026-04-05 17:02:41 +02:00
Christian Krakau-Louis
e2b3bac1cc
Merge pull request #146 from christianlouis/dependabot/pip/backend/uvicorn-0.42.0
...
chore(deps): bump uvicorn from 0.27.0 to 0.42.0 in /backend
2026-04-05 17:02:31 +02:00
Christian Krakau-Louis
c06074e0d5
Merge pull request #147 from christianlouis/dependabot/pip/backend/apprise-1.9.9
...
chore(deps): bump apprise from 1.7.1 to 1.9.9 in /backend
2026-04-05 17:02:11 +02:00
Christian Krakau-Louis
e5d3a7c166
Merge pull request #149 from christianlouis/dependabot/pip/backend/prometheus-client-0.24.1
...
chore(deps): bump prometheus-client from 0.19.0 to 0.24.1 in /backend
2026-04-05 17:01:57 +02:00
Christian Krakau-Louis
0ac7bd7fb4
Merge pull request #142 from christianlouis/dependabot/pip/backend/aiohttp-3.13.4
...
chore(deps): bump aiohttp from 3.13.3 to 3.13.4 in /backend
2026-04-05 17:01:45 +02:00
dependabot[bot]
77c84266fd
chore(deps): bump prometheus-client from 0.19.0 to 0.24.1 in /backend
...
Bumps [prometheus-client](https://github.com/prometheus/client_python ) from 0.19.0 to 0.24.1.
- [Release notes](https://github.com/prometheus/client_python/releases )
- [Commits](https://github.com/prometheus/client_python/compare/v0.19.0...v0.24.1 )
---
updated-dependencies:
- dependency-name: prometheus-client
dependency-version: 0.24.1
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-03-30 07:22:03 +00:00
dependabot[bot]
b914ac0ecd
chore(deps): bump redis from 7.3.0 to 7.4.0 in /backend
...
Bumps [redis](https://github.com/redis/redis-py ) from 7.3.0 to 7.4.0.
- [Release notes](https://github.com/redis/redis-py/releases )
- [Changelog](https://github.com/redis/redis-py/blob/master/CHANGES )
- [Commits](https://github.com/redis/redis-py/compare/v7.3.0...v7.4.0 )
---
updated-dependencies:
- dependency-name: redis
dependency-version: 7.4.0
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-03-30 07:22:00 +00:00
dependabot[bot]
094b1e177f
chore(deps): bump apprise from 1.7.1 to 1.9.9 in /backend
...
Bumps [apprise](https://github.com/caronc/apprise ) from 1.7.1 to 1.9.9.
- [Release notes](https://github.com/caronc/apprise/releases )
- [Commits](https://github.com/caronc/apprise/compare/v1.7.1...v1.9.9 )
---
updated-dependencies:
- dependency-name: apprise
dependency-version: 1.9.9
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-03-30 07:21:56 +00:00
dependabot[bot]
ac6a837522
chore(deps): bump uvicorn from 0.27.0 to 0.42.0 in /backend
...
Bumps [uvicorn](https://github.com/Kludex/uvicorn ) from 0.27.0 to 0.42.0.
- [Release notes](https://github.com/Kludex/uvicorn/releases )
- [Changelog](https://github.com/Kludex/uvicorn/blob/main/docs/release-notes.md )
- [Commits](https://github.com/Kludex/uvicorn/compare/0.27.0...0.42.0 )
---
updated-dependencies:
- dependency-name: uvicorn
dependency-version: 0.42.0
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-03-30 07:21:53 +00:00
dependabot[bot]
c50cf6e0b3
chore(deps): bump httpx from 0.26.0 to 0.28.1 in /backend
...
Bumps [httpx](https://github.com/encode/httpx ) from 0.26.0 to 0.28.1.
- [Release notes](https://github.com/encode/httpx/releases )
- [Changelog](https://github.com/encode/httpx/blob/master/CHANGELOG.md )
- [Commits](https://github.com/encode/httpx/compare/0.26.0...0.28.1 )
---
updated-dependencies:
- dependency-name: httpx
dependency-version: 0.28.1
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-03-30 07:21:50 +00:00
dependabot[bot]
f0213a0b03
chore(deps): bump bcrypt from 4.3.0 to 5.0.0 in /backend
...
Bumps [bcrypt](https://github.com/pyca/bcrypt ) from 4.3.0 to 5.0.0.
- [Changelog](https://github.com/pyca/bcrypt/blob/main/CHANGELOG.rst )
- [Commits](https://github.com/pyca/bcrypt/compare/4.3.0...5.0.0 )
---
updated-dependencies:
- dependency-name: bcrypt
dependency-version: 5.0.0
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-03-30 07:21:47 +00:00
dependabot[bot]
d919939647
chore(deps): bump aiohttp from 3.13.3 to 3.13.4 in /backend
...
---
updated-dependencies:
- dependency-name: aiohttp
dependency-version: 3.13.4
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-03-30 07:21:44 +00:00
dependabot[bot]
4dbe30b0ea
chore(deps): bump python-dotenv from 1.0.0 to 1.2.2 in /backend
...
Bumps [python-dotenv](https://github.com/theskumar/python-dotenv ) from 1.0.0 to 1.2.2.
- [Release notes](https://github.com/theskumar/python-dotenv/releases )
- [Changelog](https://github.com/theskumar/python-dotenv/blob/main/CHANGELOG.md )
- [Commits](https://github.com/theskumar/python-dotenv/compare/v1.0.0...v1.2.2 )
---
updated-dependencies:
- dependency-name: python-dotenv
dependency-version: 1.2.2
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-03-30 07:21:22 +00:00
copilot-swe-agent[bot]
c3ee2fc821
test: expand gmail_service.py unit test coverage (10 new tests)
...
Add tests for uncovered branches:
- inject_email HttpError handling
- get_or_create_label: existing label, create new, HttpError, generic error
- inject_debug_email full flow + dedup of test label
- get_refreshed_token: token changed vs unchanged
- service property lazy initialization via build()
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-29 01:01:33 +00:00
copilot-swe-agent[bot]
4d1451ecde
test: add 23 unit tests for provider endpoints
...
Cover all 9 endpoints in providers.py:
- Provider presets (list all, get by ID, not found)
- Gmail credential CRUD (create, update, get, delete)
- Import labels update
- Gmail authorize URL (success, not configured)
- Debug email (success, no credentials, injection failure)
- OAuth callback (new/update cred, not configured, token exchange
failure, missing access token, verification failure)
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-29 00:45:50 +00:00
copilot-swe-agent[bot]
65318b8c1b
Add unit tests for mail account endpoints (30 tests)
...
Comprehensive test coverage for backend/app/api/v1/endpoints/mail_accounts.py:
- CRUD operations (create, list, get, update, delete)
- Subscription limit enforcement and superuser bypass
- Account toggle with ERROR→ACTIVE status reset
- Pull-now with disabled account guard
- Test connection (new and existing) with decrypt failure handling
- Auto-detect mail settings
- Paginated processing runs and logs
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-29 00:37:44 +00:00
copilot-swe-agent[bot]
4d07d04c63
Add comprehensive unit tests for auth endpoints
...
22 tests covering:
- Helper functions (_domain_of, _check_domain_allowed, _default_tier, _is_admin_email)
- POST /register (success, duplicate email, domain restriction)
- POST /login (success, user not found, wrong password, inactive, admin auto-promotion)
- POST /google (existing user, new user, unverified email, domain restriction)
- GET /google/authorize-url (correct URL construction)
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-29 00:30:38 +00:00
Christian Krakau-Louis
815629910b
Merge branch 'main' into copilot/improve-test-coverage-tasks
2026-03-29 01:15:40 +01:00
Christian Krakau-Louis
ddad290e82
Merge branch 'main' into copilot/improve-test-coverage-tasks
2026-03-29 01:11:22 +01:00
Christian Krakau-Louis
3cd7a781f6
Merge branch 'main' into copilot/improve-test-coverage-admin-file
2026-03-29 01:10:45 +01:00
copilot-swe-agent[bot]
e52f00bc16
Move model imports to module level per code review feedback
...
Agent-Logs-Url: https://github.com/christianlouis/InboxConverge/sessions/519609d2-8cd4-44e8-96b0-4e9aaa76b45a
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-29 00:06:19 +00:00
copilot-swe-agent[bot]
da9d822afa
Add 87 unit tests for admin endpoints (24% → 100% coverage), fix conftest.py fixtures
...
Agent-Logs-Url: https://github.com/christianlouis/InboxConverge/sessions/d17e4b46-03fd-450a-af61-1870011377b4
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-29 00:06:02 +00:00
copilot-swe-agent[bot]
983ce75264
Add 40 unit tests for backend/app/workers/tasks.py (9% → 96% coverage)
...
Agent-Logs-Url: https://github.com/christianlouis/InboxConverge/sessions/519609d2-8cd4-44e8-96b0-4e9aaa76b45a
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-29 00:04:40 +00:00
copilot-swe-agent[bot]
eb47594e53
Add 46 unit tests for mail_processor.py: POP3, forwarding, connection testing, and IMAP edge cases (coverage 42%→98%)
...
Agent-Logs-Url: https://github.com/christianlouis/InboxConverge/sessions/4dd19cb3-dd43-4b00-be39-493fa3a35458
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-29 00:03:58 +00:00
copilot-swe-agent[bot]
029c272a4e
Fix log noise: cache_discovery=False for Gmail API, suppress aioimaplib INFO logs
...
Agent-Logs-Url: https://github.com/christianlouis/InboxConverge/sessions/8855bf16-124d-4d85-b6bd-ab82e8361114
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-28 23:40:49 +00:00
copilot-swe-agent[bot]
da05016143
Fix IMAP emails appearing empty: accept bytearray from aioimaplib literals
...
aioimaplib stores RFC822 literal data as bytearray in response.lines,
not bytes. The extraction loop checked isinstance(line, bytes) which
returns False for bytearray, silently dropping every email body and
causing all IMAP emails (T-Online, GMX, etc.) to appear empty.
Fix: accept (bytes, bytearray) and convert to bytes() immediately so
the rest of the pipeline is unaffected. Two new regression tests mirror
the real aioimaplib behaviour by passing bytearray as the literal.
Agent-Logs-Url: https://github.com/christianlouis/InboxConverge/sessions/341f5c82-70f8-438d-91ca-8e906a06c400
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-28 22:08:04 +00:00
copilot-swe-agent[bot]
0720901265
fix: drop empty emails, clear stale errors on success, harden IMAP extraction
...
Agent-Logs-Url: https://github.com/christianlouis/InboxConverge/sessions/d50e7f06-4c6f-4caa-b5dd-329068e8096c
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-28 21:42:19 +00:00
Christian Krakau-Louis
eae2f59c53
Merge branch 'main' into copilot/upgrade-fastapi-starlette
2026-03-28 22:07:04 +01:00
copilot-swe-agent[bot]
5bddbb42f5
security: upgrade fastapi to 0.135.2, fix safety scan command, add safety policy for ecdsa CVEs
...
Agent-Logs-Url: https://github.com/christianlouis/InboxConverge/sessions/902f3b74-792c-4afa-8aae-96611262ee5f
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-28 21:04:13 +00:00
copilot-swe-agent[bot]
062739a9a1
Fix IMAP UID SEARCH crash and RFC 3501 flag parentheses
...
Agent-Logs-Url: https://github.com/christianlouis/InboxConverge/sessions/a44d5455-25ea-49b9-8310-4efd6d467e84
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-28 21:00:44 +00:00
copilot-swe-agent[bot]
c092dd9ac6
fix: suppress bandit B104 false positive for 0.0.0.0 binding in config.py
...
Agent-Logs-Url: https://github.com/christianlouis/InboxConverge/sessions/3b265b6d-865c-4453-b22c-60feff2aa049
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-28 20:37:25 +00:00
copilot-swe-agent[bot]
3c8bb4bfb6
style: apply black formatting to test_mail_processor_imap.py
...
Agent-Logs-Url: https://github.com/christianlouis/InboxConverge/sessions/2f63c66a-f2dd-41f4-aba4-b89b66f9e11b
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-28 20:28:33 +00:00
Christian Krakau-Louis
9073f43aed
Merge branch 'main' into copilot/debug-imap-errors-t-online
2026-03-28 21:21:54 +01:00
copilot-swe-agent[bot]
454452a0b6
fix: use UID-based IMAP commands and batch STORE operations to fix T-Online BYE errors
...
Agent-Logs-Url: https://github.com/christianlouis/InboxConverge/sessions/d01a05d3-31e1-4aca-b75d-c4e63b7e5af0
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-28 20:20:43 +00:00
Christian Krakau-Louis
96dda16a66
Merge branch 'main' into copilot/fix-status-tracking-issue
2026-03-28 21:19:31 +01:00
copilot-swe-agent[bot]
d92affabec
Fix worker status tracking: use fresh DB session for notifications, commit before notifying
...
Agent-Logs-Url: https://github.com/christianlouis/InboxConverge/sessions/70a69601-e0b9-4a00-bcf4-0a85d2bdf6cb
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-28 20:04:52 +00:00
copilot-swe-agent[bot]
f7caa05c8f
Fix provider logos, improve Fetch button UX on mail accounts page
...
Agent-Logs-Url: https://github.com/christianlouis/InboxConverge/sessions/058b6481-f8eb-43ed-8f5f-715c19c4a377
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-28 20:03:19 +00:00
copilot-swe-agent[bot]
0698eca628
fix: resolve 21 mypy type errors across backend modules
...
Agent-Logs-Url: https://github.com/christianlouis/InboxConverge/sessions/bc16203d-7907-4e3f-952f-18c760c85076
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-28 19:32:53 +00:00
Christian Krakau-Louis
15af7fde61
Merge pull request #108 from christianlouis/copilot/add-pull-now-option-mailbox
...
Add "Pull Now" button, provider logo banners, and Proton Mail support
2026-03-28 20:24:34 +01:00
copilot-swe-agent[bot]
aa2ea611b1
Logo banner layout rework, Proton Mail provider, ProviderWizard sizing improvements
...
Agent-Logs-Url: https://github.com/christianlouis/InboxConverge/sessions/8dc8f341-02b2-4449-8a88-a2124033c31a
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-28 19:18:17 +00:00
Christian Krakau-Louis
9638e031ea
Merge pull request #107 from christianlouis/copilot/check-mailbox-credentials
...
Fix: Test Connection always reports success regardless of auth result
2026-03-28 20:14:42 +01:00