mikel / mikel/mail

Field mutation leaves derived caches and duplicated headers stale

Open
#1,679 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Ruby
Stars
3.7k
Forks
934
PR merge metrics
No merged PRs in 30d

Description

## Problem

Several address, parameter and received fields retain derived parsed/rendered caches after direct value mutation. Header duplication can also share field state. Subsequent reads may return values derived from the old source or allow changes in one header to affect its copy.

Prepared commit `89f7b47dbc6c2db32c6ca687268a4309aac42feb` invalidates affected caches on mutation while preserving explicitly assigned display names, and gives duplicated headers independent fields.

External ownership/cache models cover repeated mutation, explicit names, duplicates and parameter fields. The unchanged 1,837-example suite passes on both Rubies; package and Action Mailer integration pass.

CONTRIBUTING requires regression specs, so this report does not open a source-only PR or modify tests.

Contributor guide

Open the contributing guide

Research direction

Review prepared commit 89f7b47dbc6c2db32c6ca687268a4309aac42feb and its handling of mutation caches, explicit display names, duplicated headers, and parameter fields. Check the external ownership/cache models and regression coverage, then verify the unchanged 1,837-example suite plus package and Action Mailer integration; done means repeated mutation and duplication no longer retain stale or shared state.

Written by the indexing model from the issue text.

Assessment

Tech stack
ruby
Domain
backend
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.