email-connect/WORK-RECORDS.md
tegwick 86f22c2e65
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
EMAIL-WP-0005-T01: add Maildir mailbox source
Adds MaildirMailboxSource reading new/ and cur/, wired through
source.maildir_dir and mailbox.protocol: maildir. Message identity is the
Maildir unique name without its :2,FLAGS suffix, so it survives the new/ to
cur/ move; it is carried on MailboxSourceMessage.dedup_uid and appended to the
message dedup key only when set, leaving fixture and IMAP keys unchanged.

Cursor ordering parses the Maildir delivery time instead of comparing names
lexically. mark_seen and a missing directory are rejected, matching the
read-only IMAP contract.

Also fixes the parse-failure path, which keyed identity on raw_message_ref.
A new/ to cur/ move rewrites that ref, so an unparseable message re-registered
as new on every rescan; it now prefers the source uid when one exists.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-14 01:31:58 +02:00

48 lines
4.3 KiB
Markdown

# Work Records — email-connect
> Generated by `statehub fix-consistency` (CUST-WP-0061-T04, work-record
> stage 3). Do not edit by hand — edit the source file/block listed for
> each record and re-run fix-consistency to refresh this index. Archived
> workplans are omitted; closed decisions/intakes/engagements stay listed
> so recently-resolved work is still visible. [auto]
| Kind | ID | Status | Lane | Source |
| --- | --- | --- | --- | --- |
| workplan | EMAIL-WP-0001 | finished | — | workplans/EMAIL-WP-0001-repo-onboarding.md |
| workplan | EMAIL-WP-0002 | finished | — | workplans/EMAIL-WP-0002-mvp-mailbox-evidence-scanner.md |
| workplan | EMAIL-WP-0003 | finished | — | workplans/EMAIL-WP-0003-expected-recipient-reporting-and-mailbox-tutorial.md |
| workplan | EMAIL-WP-0004 | finished | — | workplans/EMAIL-WP-0004-transactional-mail-delivery-service.md |
| workplan | EMAIL-WP-0005 | proposed | — | workplans/EMAIL-WP-0005-test-mailbox-harness.md |
| task | EMAIL-WP-0001-T01 | done | — | workplans/EMAIL-WP-0001-repo-onboarding.md |
| task | EMAIL-WP-0001-T02 | done | — | workplans/EMAIL-WP-0001-repo-onboarding.md |
| task | EMAIL-WP-0001-T03 | done | — | workplans/EMAIL-WP-0001-repo-onboarding.md |
| task | EMAIL-WP-0001-T04 | done | — | workplans/EMAIL-WP-0001-repo-onboarding.md |
| task | EMAIL-WP-0002-T01 | done | — | workplans/EMAIL-WP-0002-mvp-mailbox-evidence-scanner.md |
| task | EMAIL-WP-0002-T02 | done | — | workplans/EMAIL-WP-0002-mvp-mailbox-evidence-scanner.md |
| task | EMAIL-WP-0002-T03 | done | — | workplans/EMAIL-WP-0002-mvp-mailbox-evidence-scanner.md |
| task | EMAIL-WP-0002-T04 | done | — | workplans/EMAIL-WP-0002-mvp-mailbox-evidence-scanner.md |
| task | EMAIL-WP-0002-T05 | done | — | workplans/EMAIL-WP-0002-mvp-mailbox-evidence-scanner.md |
| task | EMAIL-WP-0002-T06 | done | — | workplans/EMAIL-WP-0002-mvp-mailbox-evidence-scanner.md |
| task | EMAIL-WP-0002-T07 | done | — | workplans/EMAIL-WP-0002-mvp-mailbox-evidence-scanner.md |
| task | EMAIL-WP-0002-T08 | done | — | workplans/EMAIL-WP-0002-mvp-mailbox-evidence-scanner.md |
| task | EMAIL-WP-0002-T09 | done | — | workplans/EMAIL-WP-0002-mvp-mailbox-evidence-scanner.md |
| task | EMAIL-WP-0002-T10 | done | — | workplans/EMAIL-WP-0002-mvp-mailbox-evidence-scanner.md |
| task | EMAIL-WP-0002-T11 | done | — | workplans/EMAIL-WP-0002-mvp-mailbox-evidence-scanner.md |
| task | EMAIL-WP-0002-T12 | done | — | workplans/EMAIL-WP-0002-mvp-mailbox-evidence-scanner.md |
| task | EMAIL-WP-0003-T01 | done | — | workplans/EMAIL-WP-0003-expected-recipient-reporting-and-mailbox-tutorial.md |
| task | EMAIL-WP-0003-T02 | done | — | workplans/EMAIL-WP-0003-expected-recipient-reporting-and-mailbox-tutorial.md |
| task | EMAIL-WP-0003-T03 | done | — | workplans/EMAIL-WP-0003-expected-recipient-reporting-and-mailbox-tutorial.md |
| task | EMAIL-WP-0003-T04 | done | — | workplans/EMAIL-WP-0003-expected-recipient-reporting-and-mailbox-tutorial.md |
| task | EMAIL-WP-0003-T05 | done | — | workplans/EMAIL-WP-0003-expected-recipient-reporting-and-mailbox-tutorial.md |
| task | EMAIL-WP-0003-T06 | done | — | workplans/EMAIL-WP-0003-expected-recipient-reporting-and-mailbox-tutorial.md |
| task | EMAIL-WP-0003-T07 | done | — | workplans/EMAIL-WP-0003-expected-recipient-reporting-and-mailbox-tutorial.md |
| task | EMAIL-WP-0004-T01 | done | — | workplans/EMAIL-WP-0004-transactional-mail-delivery-service.md |
| task | EMAIL-WP-0004-T02 | done | — | workplans/EMAIL-WP-0004-transactional-mail-delivery-service.md |
| task | EMAIL-WP-0004-T03 | done | — | workplans/EMAIL-WP-0004-transactional-mail-delivery-service.md |
| task | EMAIL-WP-0004-T04 | done | — | workplans/EMAIL-WP-0004-transactional-mail-delivery-service.md |
| task | EMAIL-WP-0005-T01 | todo | — | workplans/EMAIL-WP-0005-test-mailbox-harness.md |
| task | EMAIL-WP-0005-T02 | todo | — | workplans/EMAIL-WP-0005-test-mailbox-harness.md |
| task | EMAIL-WP-0005-T03 | todo | — | workplans/EMAIL-WP-0005-test-mailbox-harness.md |
| task | EMAIL-WP-0005-T04 | todo | — | workplans/EMAIL-WP-0005-test-mailbox-harness.md |
| task | EMAIL-WP-0005-T05 | todo | — | workplans/EMAIL-WP-0005-test-mailbox-harness.md |
| task | EMAIL-WP-0005-T06 | todo | — | workplans/EMAIL-WP-0005-test-mailbox-harness.md |