{"id":"6a8afcc46eebeb55735399ea","title":"2026 08 23 Issue 278","path":"how-to/committee/release-notes/2026-08-23-issue-278","contentMarkdown":"# 23-Aug-2026 — preserve read state when the own-sent repair reclassifies threads [ref #278](https://github.com/nbarrett/ngx-ramblers/issues/278)\n\n## [build 846](https://github.com/nbarrett/ngx-ramblers/actions/runs/32643487238) — [commit fe35599](https://github.com/nbarrett/ngx-ramblers/commit/fe35599f57da11ddeab678d6e3daeeef5b372334)\n\n_____\n\nThe deploy-time own-sent copy repair recomputed each thread's unread flag purely from the last message direction, ignoring per-member readByMemberIds. After a restart this could bounce an already-read thread back to unread. It now only marks an inbound thread unread when no member has read it, via a testable unreadAfterReclassify helper.","contentHtml":"<h1>23-Aug-2026 — preserve read state when the own-sent repair reclassifies threads <a href=\"https://github.com/nbarrett/ngx-ramblers/issues/278\">ref #278</a></h1>\n<h2><a href=\"https://github.com/nbarrett/ngx-ramblers/actions/runs/32643487238\">build 846</a> — <a href=\"https://github.com/nbarrett/ngx-ramblers/commit/fe35599f57da11ddeab678d6e3daeeef5b372334\">commit fe35599</a></h2>\n<hr>\n<p>The deploy-time own-sent copy repair recomputed each thread&#39;s unread flag purely from the last message direction, ignoring per-member readByMemberIds. After a restart this could bounce an already-read thread back to unread. It now only marks an inbound thread unread when no member has read it, via a testable unreadAfterReclassify helper.</p>\n"}