Christian Krakau-Louis
f808d6262d
Merge branch 'main' into copilot/fix-mailbox-connectivity-issues
2026-05-04 00:21:59 +02:00
copilot-swe-agent[bot]
428850b476
refactor: address code-review comments (DNS constant, last_exc, comment clarity)
...
Agent-Logs-Url: https://github.com/christianlouis/InboxConverge/sessions/5ad49738-4b0b-4ed7-8686-07adb0ba9e5d
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-05-03 22:09:08 +00:00
copilot-swe-agent[bot]
92f60c6052
fix: retry POP3/IMAP, DNS 8.8.8.8 fallback, debug counter, notification backoff
...
Agent-Logs-Url: https://github.com/christianlouis/InboxConverge/sessions/5ad49738-4b0b-4ed7-8686-07adb0ba9e5d
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-05-03 22:06:12 +00:00
Christian Krakau-Louis
b771484afa
Merge pull request #226 from christianlouis/copilot/fix-smtp-fallback-issues
...
fix: add sender_email to SMTP config to decouple auth credential from From: header
2026-05-03 23:50:49 +02:00
Christian Krakau-Louis
dd5f28ad25
Merge pull request #225 from christianlouis/copilot/fix-imap-connection-timeout
...
fix: normalise naive UTC expiry from google-auth before DB storage
2026-05-03 23:47:43 +02:00
copilot-swe-agent[bot]
a21e2f7df6
fix: add sender_email to UserSmtpConfig to fix SMTP From header (501 bad sender address)
...
Agent-Logs-Url: https://github.com/christianlouis/InboxConverge/sessions/dc853384-976a-46e5-945b-60c9a9cce638
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-05-03 21:46:47 +00:00
copilot-swe-agent[bot]
01a85ebede
fix: normalise naive UTC expiry from google-auth to tz-aware in GmailService
...
Agent-Logs-Url: https://github.com/christianlouis/InboxConverge/sessions/a94e2685-c88f-4109-a6eb-566c7343ab1f
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-05-03 21:45:02 +00:00
Christian Krakau-Louis
0396cc6f33
Merge branch 'main' into copilot/add-test-mail-button
2026-05-03 23:01:30 +02:00
copilot-swe-agent[bot]
2a005d9103
feat: add Send Test Email button for SMTP Fallback config
...
Agent-Logs-Url: https://github.com/christianlouis/InboxConverge/sessions/9485ffb9-ce3d-4c6b-9d2c-9144dd4287ff
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-05-03 20:58:32 +00:00
copilot-swe-agent[bot]
28a7592731
fix: address code review comments (type hints, loop var name, em dashes)
...
Agent-Logs-Url: https://github.com/christianlouis/InboxConverge/sessions/be0a3bbd-1af1-408e-b918-84753723154b
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-05-03 20:51:52 +00:00
copilot-swe-agent[bot]
45a2dd8be2
fix: IPv4 preference + DNS cache fallback for stable POP3/IMAP connections
...
- Add DNS_CACHE_FALLBACK_ENABLED setting (default: true)
- Add in-process DNS cache (_dns_cache, _dns_cache_lock, _get/_set_cached_ipv4)
- Add _resolve_ipv4 (async) and _resolve_ipv4_sync: AF_INET lookup, cache on
success, return cached IP on EAI_AGAIN when fallback enabled
- Add _IMAP4SSLwithSNI: connects to pre-resolved IPv4 but uses original
hostname for TLS SNI/cert verification
- Add _POP3SSLWithIPv4Pref / _POP3WithIPv4Pref: override _create_socket to
use pre-resolved IPv4 while keeping original host for POP3_SSL SNI
- Add _make_pop3_conn factory and _make_imap_client async factory
- Wire IPv4/cache helpers into all 6 connection call-sites (IMAP x3, POP3 x3)
- Distinguish transient DNS (EAI_AGAIN) from permanent in _format_connection_error
- Replace asyncio.get_event_loop() with get_running_loop() in 4 async sites
- All 75 existing unit tests pass unchanged
Agent-Logs-Url: https://github.com/christianlouis/InboxConverge/sessions/be0a3bbd-1af1-408e-b918-84753723154b
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-05-03 20:49:51 +00:00
Christian Krakau-Louis
ed4c4f5a60
Merge branch 'main' into copilot/add-debug-logging-for-mail-fetching
2026-05-03 21:17:01 +02:00
copilot-swe-agent[bot]
eeb3fa5c66
refactor: use __len__ for MailDebugRecorder, str() size estimate, clearer tests, fix unused import
...
Agent-Logs-Url: https://github.com/christianlouis/InboxConverge/sessions/5d2918de-630e-4a66-8355-1b036c620b1c
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-05-03 18:59:41 +00:00
copilot-swe-agent[bot]
aab60d6866
feat: frontend clear-error button, debug trace viewer, debug_logging toggle, docs updates
...
Agent-Logs-Url: https://github.com/christianlouis/InboxConverge/sessions/5d2918de-630e-4a66-8355-1b036c620b1c
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-05-03 18:53:52 +00:00
copilot-swe-agent[bot]
db893d05e9
feat: add friendly error messages, MailDebugRecorder, clear-error endpoint, debug_logging column
...
Agent-Logs-Url: https://github.com/christianlouis/InboxConverge/sessions/5d2918de-630e-4a66-8355-1b036c620b1c
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-05-03 18:43:06 +00:00
copilot-swe-agent[bot]
e98c81cce4
Add exc_info=True to OAuth error logging and endpoint-level catch in google_oauth
...
Agent-Logs-Url: https://github.com/christianlouis/InboxConverge/sessions/8d0fb51a-ede5-4bb7-aad8-3d29a0d3d7d3
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-05-03 17:35:49 +00:00
copilot-swe-agent[bot]
075ba92f09
feat: add in-depth OAuth logging across auth_service, auth, providers, gmail_service
...
Agent-Logs-Url: https://github.com/christianlouis/InboxConverge/sessions/91c7dd2b-0d88-46a9-a711-3a4c69d99520
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-05-03 15:05:27 +00:00
copilot-swe-agent[bot]
3470213fb3
fix: combine f-strings, align product name in notification titles
...
Agent-Logs-Url: https://github.com/christianlouis/InboxConverge/sessions/2bcd611e-3598-4b83-95bd-3276a7d5ad7c
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-05-03 14:53:17 +00:00
copilot-swe-agent[bot]
992e157f02
feat: proactive Gmail token refresh, GmailAuthError, improved logging
...
Agent-Logs-Url: https://github.com/christianlouis/InboxConverge/sessions/2bcd611e-3598-4b83-95bd-3276a7d5ad7c
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-05-03 14:50:58 +00:00
Christian Krakau-Louis
592495c1af
Merge pull request #171 from christianlouis/copilot/ensure-emails-are-retried
...
fix: retry failed email forwards; only mark/delete successfully forwarded messages
2026-04-07 13:09:32 +02:00
copilot-swe-agent[bot]
31dc059274
fix: replace deprecated .dict() with .model_dump() and fix db.add() AsyncMock warnings
...
Agent-Logs-Url: https://github.com/christianlouis/InboxConverge/sessions/ac39d3f7-d4c3-4417-8c33-8e6340a27281
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-04-07 10:38:27 +00:00
copilot-swe-agent[bot]
3dd71cd61d
fix: restore missing forward_email signature and reformat with black
...
Agent-Logs-Url: https://github.com/christianlouis/InboxConverge/sessions/3c4ae596-6052-4a61-9edd-b668a6cda32e
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-04-07 10:38:00 +00:00
copilot-swe-agent[bot]
ff7b50d944
fix: retry failed forwarded emails; only post-process successfully forwarded messages
...
Agent-Logs-Url: https://github.com/christianlouis/InboxConverge/sessions/e1fb16dc-0187-4ab9-901a-e0a76de64599
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-04-07 10:32:38 +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
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
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
copilot-swe-agent[bot]
fc7e09d4d6
Add Pull Now button and provider logos to accounts page
...
Agent-Logs-Url: https://github.com/christianlouis/InboxConverge/sessions/0201089a-598d-4ab0-a5a3-8d2ae1120c9e
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-28 19:02:52 +00:00
copilot-swe-agent[bot]
441e8b54e9
fix: test connection always showed success; add per-account test endpoint
...
Agent-Logs-Url: https://github.com/christianlouis/InboxConverge/sessions/6268035d-325f-422a-886f-8b2919127261
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-28 18:57:25 +00:00
copilot-swe-agent[bot]
dd4532f660
feat: mailbox-centric activity view, reduce log noise from empty polling cycles
...
Agent-Logs-Url: https://github.com/christianlouis/InboxConverge/sessions/1a78a249-127f-4a73-a454-3c6bafbf6e58
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-28 18:45:38 +00:00
copilot-swe-agent[bot]
d0719eff76
Fix Celery datetime timezone crash and per-account polling interval
...
- Wrap account.last_check_at with _as_utc() helper before datetime
subtraction to fix "can't subtract offset-naive and offset-aware
datetimes" crash that silently prevented all mail account processing
- Change beat schedule from every 5 min to every 1 min so accounts
configured with check_interval_minutes=1 are polled as expected
Agent-Logs-Url: https://github.com/christianlouis/InboxConverge/sessions/53169783-5139-43a1-bda8-709fadd0f774
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-28 17:59:22 +00:00
Christian Krakau-Louis
526824de05
Merge pull request #104 from christianlouis/copilot/update-processing-log-entries
...
Fix processing log entries: stale runs, error handler crash, and duration display bug
2026-03-28 12:30:39 +01:00
copilot-swe-agent[bot]
88fac1d8dd
Fix processing log bugs: error handler crash, early-exit path, stale-run detection, and duration formatting
...
Agent-Logs-Url: https://github.com/christianlouis/InboxConverge/sessions/3f1ca3bd-627e-4c78-a652-0262d63638fc
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-28 11:19:37 +00:00
copilot-swe-agent[bot]
1bb3f71230
Add version/build-date status bar to dashboard footer
...
Agent-Logs-Url: https://github.com/christianlouis/InboxConverge/sessions/9efbf677-2d92-487b-abae-9adf0c728f88
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-28 11:09:38 +00:00
copilot-swe-agent[bot]
4844377342
Decouple Gmail permissions from Google Sign-In OAuth flow
...
The Google Sign-In flow now only requests basic profile scopes (openid,
email, profile) instead of also requesting Gmail API scopes. Users can
grant Gmail access separately via the "Connect Gmail" button in Settings.
- Remove GMAIL_SCOPES from GOOGLE_LOGIN_SCOPES in auth.py
- Remove Gmail credential auto-provisioning from google_oauth endpoint
- Simplify /auth/google/authorize-url (no offline access or forced consent)
- Clean up auth_service.py OAuth registration to only use login scopes
- Remove unused imports (GmailCredential, GmailService, encrypt_credential, etc.)
Agent-Logs-Url: https://github.com/christianlouis/InboxConverge/sessions/91d2db11-811f-46f5-ac89-29952ab358b5
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-27 21:01:46 +00:00
copilot-swe-agent[bot]
f8a9f3ce53
fix: SyntaxWarning in mail_processor and stale running runs in tasks
...
Agent-Logs-Url: https://github.com/christianlouis/InboxConverge/sessions/b5def92f-03a4-493c-a5a7-d15a7ca82492
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-27 17:28:28 +00:00
copilot-swe-agent[bot]
69de187aab
fix: add Alembic migration for notification_configs columns and create /logs and /admin/logs pages
...
Agent-Logs-Url: https://github.com/christianlouis/InboxConverge/sessions/fccf042a-a3d9-4eff-a897-9bb3650629cc
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-26 21:17:55 +00:00
copilot-swe-agent[bot]
412e7bc6f5
fix: make NotificationConfigBase.name optional with default 'My Notification' to match DB default
...
Agent-Logs-Url: https://github.com/christianlouis/InboxConverge/sessions/7640aaa6-61f4-4c65-8eb7-f33c2d3eb755
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-26 19:34:38 +00:00
copilot-swe-agent[bot]
896329ccb7
Fix black lint, fix /processing-runs 404s, add semantic release and GitOps deploy
...
Agent-Logs-Url: https://github.com/christianlouis/InboxConverge/sessions/3fdf6219-3e1f-4867-b74d-efb6e4fe7e72
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com >
2026-03-26 19:17:11 +00:00
Christian Krakau-Louis
b824095bf5
Merge branch 'main' into copilot/add-apprise-alerting-capabilities
2026-03-26 19:39:27 +01:00