Mail layout fixture leaves second-account HTML pending #1512

Open
opened 2026-10-09 07:31:53 +00:00 by kayg · 1 comment
Owner

Merge round #1500 preserves #1449 latest-Message row selection and its explicit Open thread action. The 10,000-Message selection probe passes all 40 selections with one body request each.

The broader Mail layout suite later waits for the second account's Message 44444444-4444-4444-8444-444444444444. Its real API response has body_html length 46,000 and content_pending=true. The fixture seeds this HTML with html_policy_version=0 and no preparation job. The first account's three HTML fixtures are explicitly marked prepared; the second account is not. The unchanged waitForMessage assertion times out after 20 seconds.

The new /mail/m row path exposes this fixture's pending state. Keep its current values and assertions until the fixture contract is reviewed. Prepared thread screenshots and the real TLS Mail backfill are checked separately. No 5xx, provider crash or lost Message was observed.

Merge round #1500 preserves #1449 latest-Message row selection and its explicit Open thread action. The 10,000-Message selection probe passes all 40 selections with one body request each. The broader Mail layout suite later waits for the second account's Message 44444444-4444-4444-8444-444444444444. Its real API response has body_html length 46,000 and content_pending=true. The fixture seeds this HTML with html_policy_version=0 and no preparation job. The first account's three HTML fixtures are explicitly marked prepared; the second account is not. The unchanged waitForMessage assertion times out after 20 seconds. The new /mail/m row path exposes this fixture's pending state. Keep its current values and assertions until the fixture contract is reviewed. Prepared thread screenshots and the real TLS Mail backfill are checked separately. No 5xx, provider crash or lost Message was observed.
Author
Owner

Correction from a focused exact-identity comparison: both production 9dc65437e and the candidate return the second-account Message's own text, with no HTML and content_pending=false, before and after its complete MIME read. Its cached MIME also has the same text. No account or Message identity collision was found.

The previous diagnostic described the visible second-account URL, but the failed wait had already requested the next, latest Message. That latest fixture has the 46,000-byte HTML body and html_policy_version=0 on both binaries. The original report assigned the pending HTML to the wrong Message. The fixture only wakes delivery jobs for prepared-images; its seed action did not wake the HTML preparation slots.

A focused fixture correction now reuses those delivery jobs for seed as well, with every body, identity, assertion and sanitization rule unchanged. This is required by #1449's explicit latest-Message selection behavior. The full Mail layout regression is running. A separate forced uncached latest-MIME read returns 500 for the deliberately unusable provider credentials on both binaries; that baseline error gets its own issue.

Correction from a focused exact-identity comparison: both production 9dc65437e and the candidate return the second-account Message's own text, with no HTML and content_pending=false, before and after its complete MIME read. Its cached MIME also has the same text. No account or Message identity collision was found. The previous diagnostic described the visible second-account URL, but the failed wait had already requested the next, latest Message. That latest fixture has the 46,000-byte HTML body and html_policy_version=0 on both binaries. The original report assigned the pending HTML to the wrong Message. The fixture only wakes delivery jobs for prepared-images; its seed action did not wake the HTML preparation slots. A focused fixture correction now reuses those delivery jobs for seed as well, with every body, identity, assertion and sanitization rule unchanged. This is required by #1449's explicit latest-Message selection behavior. The full Mail layout regression is running. A separate forced uncached latest-MIME read returns 500 for the deliberately unusable provider credentials on both binaries; that baseline error gets its own issue.
Commenting is not possible because the repository is archived.
No labels
No milestone
No project
No assignees
1 participant
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
kayg/calternal-v0#1512
No description provided.