HandleListUnmatchedItems built its count and list queries without the
manga-chapter exclusion guard, so manga chapter rows (type='ebook' linked
into a type='manga' series via manga_chapters) that keep a non-matched
status leaked into the admin Unmatched queue and were displayed as 'ebook'.
Apply the existing catalog.MangaChapterExclusionWhere("mi") predicate to a
shared WHERE clause used by both the count and the list query, so chapters
are hidden and the total stays consistent. Adds a DB-backed regression test.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>