Misc Mail Tools — Defect History (RESOLVED)

Both original defects fixed and tested (2026-08-25). See misc-server/email-tools for the current, authoritative description of how each tool works.

Defect 1: IMAP tools NameError — FIXED

Issue: IMAPClient import failed (NameError)Solution: Copied imap_client.py to /home/john/py/gdata-server, deployed .netrc credentialsStatus: ✅ Verified working — email_list, email_read functional

Defect 2: SMTP/mail submission — FIXED via local Postfix

Original attempts:• Brevo SMTP: needed credentials (not available)• localhost:25: initially failed because Postfix was not running• Direct Maildir write: permissions issues, no sudo• WebDAV delivery (writing .eml files into gravlax's /mail/<local-part>/new/): tried as a workaround but was NOT the fix that shipped — superseded once Postfix was brought up

Actual fix: Postfix on localhost was started and left running. email_send submits via local SMTP on port 25 to mail.critchley.biz, exactly as documented in misc-server/email-tools. The WebDAV approach mentioned in earlier drafts of this note was an abandoned intermediate attempt, not the deployed solution — corrected 2026-08-26 after the discrepancy was flagged.

Complete Workflow Now Functional

✅ email_list_folders — list mailbox folders✅ email_send — submit email via local Postfix SMTP:25✅ email_list — find emails in folder✅ email_read — retrieve email body and headers

Testing workflow: email_send('envoy@critchley.biz', ...) → email delivered via local SMTP, arrives in the local mail.critchley.biz mailbox, retrieved via email_list/email_read. This is a local test mailbox, separate from Envoy's real inbox on gravlax — see envoy/mail-delivery-loop for the actual delivery chain.

created 2026-08-19  ·  tags misc-server, email, defects  ·  updated 2026-08-26  ·  version 3