Skip to content

fix: carry draft attachments in the Pro draft tab too - #877

Merged
rathlinus merged 1 commit into
bulwarkmail:mainfrom
dealerweb:fix/pro-draft-tab-attachments
Aug 25, 2026
Merged

fix: carry draft attachments in the Pro draft tab too#877
rathlinus merged 1 commit into
bulwarkmail:mainfrom
dealerweb:fix/pro-draft-tab-attachments

Conversation

@dealerweb

Copy link
Copy Markdown
Contributor

Summary

5d2b937 fixed #849 for the classic draft path: a re-opened draft carries its already-uploaded parts into the composer. The Pro draft tab builds its own initialData and still omits email.attachments — editing a draft from a Pro tab keeps opening the composer without its files, and the next save strips them from the stored draft.

Changes

  • Pass email.attachments through the Pro draft tab's initialData; the composer's existing initializer, blob-id remap and dirty-check from 5d2b937 handle everything else.

Related issues

Related to #849 (closes the remaining Pro-mode gap of that fix).

Type of change

  • Bug fix (non-breaking change that fixes an issue)
  • New feature (non-breaking change that adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to change)
  • Documentation update
  • Refactor / code quality improvement
  • Chore / dependency update / CI change

Checklist

  • I have read the Contributing Guide
  • My code follows the project's code style and conventions
  • I have run npm run typecheck && npm run lint and there are no errors
  • The build passes (npm run build)
  • I have tested my changes locally
  • I have added or updated documentation if needed
  • I have updated translations (locales/) if my changes affect user-facing text
  • I have included screenshots or a screen recording for UI changes

Screenshots / demo

No new UI — the Pro draft tab simply shows the draft's attachment chips again, like the classic path does since 5d2b937.

Notes for reviewers

  • One-line data change; all machinery it relies on (initializer filtering, post-save blob-id remap, name/type/size dirty hash) landed with 5d2b937 and is already covered by its tests.
  • Verified with npm run typecheck, npm run lint, npm run build and the full npx vitest run.

The bulwarkmail#849 fix carries a re-opened draft's parts into the composer on the
classic path, but the Pro draft tab builds its own initialData and
still omitted email.attachments - editing a draft from a Pro tab kept
stripping its files on the next save. Pass the parts through; the
composer's existing initializer and remap handle the rest.
@rathlinus
rathlinus merged commit 1ce1f9c into bulwarkmail:main Aug 25, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Bug]: Re-opening a draft drops its attachments — next save/send silently strips them from the server copy (data loss)

2 participants