@bobfrankston/rmfmail 1.2.297 → 1.2.298

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/.commitmsg CHANGED
@@ -1,32 +1,33 @@
1
- Reading a message outranks syncing it; a filter is not a selection
1
+ The signature in accounts.jsonc never reached compose
2
2
 
3
- Two things Bob hit on 2026-08-29.
3
+ `sig` has been a documented field on AccountConfig for months and three of the
4
+ four accounts carried one, yet no signature has ever appeared in a compose
5
+ window. The reason is a projection: `MailxService.getAccounts()` builds the
6
+ client's account list field by field — id/name/email from the DB row, then
7
+ label, defaultSend, primary*, identityDomains from the config — and `sig` and
8
+ `signature` were simply not on the list. `normalizeAccount()` resolved them
9
+ correctly, `openCompose` forwarded `a.sig` faithfully, and compose.ts appended
10
+ `acct.sig` exactly as designed; the value was undefined by the time any of that
11
+ ran.
4
12
 
5
- **"If I look at a letter while sync, things get confused. Eventually it reports
6
- an error rather than retrying. Viewing the body should get priority instead of
7
- waiting for sync."** Both halves were real:
13
+ Both fields are now carried, with a comment saying why the enumeration stays an
14
+ enumeration rather than becoming `...cfg`: cfg holds the IMAP and SMTP
15
+ passwords, which have no business crossing into the WebView. Anything new that
16
+ the client needs has to be added in that spot deliberately.
8
17
 
9
- - Lanes are strictly sequential, and a click-time body fetch went on the tail
10
- of the fast lane behind whatever background work was already queued.
11
- `withConnection` now takes `priority`, which puts the task at the FRONT of
12
- its lane; the interactive fetch uses it and a 30 s cap instead of 90 s. It
13
- still cannot preempt the command in flight an IMAP command cannot be
14
- cancelled without dropping the connection but it no longer waits out the
15
- backlog.
16
- - `fetchMessageBody` swallowed every error into `null`. To the reconciler that
17
- means "the server has no body for this message", which is classified
18
- non-transient, skips the 3-attempt retry budget, and paints a banner. A lane
19
- timeout says nothing about whether the message has a body: transient errors
20
- (timeout, dropped socket, discarded client) now propagate, so the existing
21
- retry-with-backoff applies and the reader gets the message instead of an
22
- error. Only a genuine "no body here" still arms the prefetch backoff — a
23
- timeout used to arm it too, poisoning the next view for up to 12 h.
18
+ The signature itself moved to the top level of accounts.jsonc three
19
+ byte-identical per-account copies replaced by the one the file format already
20
+ supports, which every account without its own `sig` inherits. It is now
21
+ `Bob Frankston<br>https://Frankston.com` with `html: true`; the previous text
22
+ relied on bare newlines for its line break (HTML collapses those to a space)
23
+ and pointed at a relative `href='Frankston.com'`, which resolves against
24
+ whatever page the mail client happens to be rendering.
24
25
 
25
- **"If I press * on search it shouldn't automatically select those letters, just
26
- show them."** Nothing was selected the flagged-only filter washed the whole
27
- list in the flag colour (added 2026-06-26 to make the filter unmistakable), and
28
- a coloured background over rows is exactly how this list says "chosen". The
29
- wash is gone; the filter now announces itself above the list, by name:
30
- "Showing flagged (★) messages only — click to show everything", and clicking it
31
- clears the filter. Same chip covers the priority-senders filter, which had the
32
- same shape.
26
+ Two stale comments corrected while here. `AccountSignature.html` was documented
27
+ in both mailx-types and compose.ts as "reserved for future use / currently
28
+ ignored". It has never been ignored compose has always branched on it — and
29
+ now that a signature actually renders, the difference between escaped text and
30
+ raw HTML is the thing an author needs to know.
31
+
32
+ Compose only. Nothing in the send path or the daemon appends a signature; the
33
+ body that leaves the editor is the body that goes out.