aboutsummaryrefslogtreecommitdiffstats
path: root/assets/fonts
diff options
context:
space:
mode:
authorDanilo M. <danix@danix.xyz>2026-08-25 12:09:54 +0200
committerDanilo M. <danix@danix.xyz>2026-08-25 12:09:54 +0200
commit8b26c3e83a0328adb3f24d808b629fb73250d377 (patch)
tree0ad763bf64cf8d21a83fde09ca633b125b484140 /assets/fonts
parent66c36f0a7f869eac10f7cfa552f23cf076ba7548 (diff)
downloadqtmaildir-8b26c3e83a0328adb3f24d808b629fb73250d377.tar.gz
qtmaildir-8b26c3e83a0328adb3f24d808b629fb73250d377.zip
docs(backlog): record item 165, a draft's Message-ID changes on every save
Found while hand-testing items 163 and 164: four saves produced four distinct ids, and one reopen-and-edit turned one into another. Cause verified in the code rather than inferred. MessageBuilder::build() calls g_mime_utils_generate_message_id() unconditionally and every autosave calls build(); OutgoingMessage has no field to carry an id in, and ComposeContext has none for the draft's own id either, since inReplyTo and references are the ORIGINAL's when replying. So a stable id needs a field threaded from forDraft() through both structs, not a changed call site. Filed as needing a DECISION rather than an implementation, because what a draft's identity is is not obvious: a stable id reused at send makes the draft and the sent message one message but means the server saw that id before anything was sent; a stable id discarded at send keeps revisions collapsed while drafting and threads under a fresh one; the status quo never reuses an id for two different things, which is its one real virtue. Not urgent and explicitly not blocking item 163, whose fix restores correct file replacement. This is the property that turned that fork into two MESSAGES rather than one duplicated file, and the remaining route to it is an interrupted save, since DraftStore::write() unlinks the previous revision only after the new one is safely on disk. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01UUQS6n3cmsFrsjCNmwNtf8
Diffstat (limited to 'assets/fonts')
0 files changed, 0 insertions, 0 deletions