[PATCH b4 0/2] b4 review: cover-letter titling on the update path

Christian Brauner <[email protected]> Wed, 29 Jul 2026 10:58:16 +0200
Newsgroups org.kernel.linux.tools
Message-ID <[email protected]>
Commit 83551c65f68d ("review: identify discovered revisions by their
cover letter") fixed how discovered revisions are identified, but the
copy of the recording loop in update_series_tracking() -- what
pressing 'u' in the tracking TUI runs -- was left as is. Newly
discovered revisions were still identified by their first present
patch, so upgrading a series re-titled it after patch 1/N, and since
series.subject is only written on track or upgrade, the row kept that
title forever.

Patch 1 routes the update path through the shared helper, re-derives a
stale series title from the cover letter on update (never from the
first-patch fallback, which would mis-title coverless series), and
makes the upgrade dialog use the resolved series' own title instead of
the catalog's.

Patch 2 adds the missing coverage: integration tests driving real
messages through a real LoreMailbox, unit tests pinning
realign_series_subject() to its narrow contract, and TUI tests for the
upgrade dialog title.

Signed-off-by: Christian Brauner (Amutable) <[email protected]>
---
Christian Brauner (2):
      b4 review: identify updated revisions by their cover letter too
      b4 review: test cover-letter titling on the update path

 src/b4/review/_review.py           |  35 +++----
 src/b4/review/tracking.py          |  40 ++++++++
 src/b4/review_tui/_tracking_app.py |   9 ++
 src/tests/test_review_tracking.py  | 204 +++++++++++++++++++++++++++++++++++--
 src/tests/test_tui_tracking.py     | 106 +++++++++++++++++--
 5 files changed, 356 insertions(+), 38 deletions(-)
---
base-commit: 99fe195c0aa5a88be5033f87cad22bc32d27cbfe
change-id: 20260729-work-b4-cover-subject-9ca0bce3b7a9