Skip to content

fix(arabic/galaxynovels): list all chapters via static manifest (stacks on #2529) - #13

Open
RibatTRW wants to merge 1 commit into
fm/lnreader-arabic-empty-chaptersfrom
fm/lnreader-galaxy-full-index
Open

RibatTRW wants to merge 1 commit into
fm/lnreader-arabic-empty-chaptersfrom
fm/lnreader-galaxy-full-index

Conversation

@RibatTRW

@RibatTRW RibatTRW commented Sep 24, 2026 •

Copy link
Copy Markdown
Owner

Fix

Stacks on lnreader#2529 — merge after it. This branch sits on that PR's head, so the diff here is only the chapter-list fix on top. Fixes lnreader#2490.

Galaxy Novels novel pages render only the latest 30 chapters (data-per-page="30", 30 data-chapter-id items) with an empty data-index-url, so parseNovel fell through to the page list and returned just the latest 30 — chapters 1–621 of a 651-chapter novel were unreachable.

parseNovel now reads data-manifest-url from the chapters container and loads the full index the way the site's own reader does: the manifest's pack_url file holding every chapter, with live_tail merged over the pack by chapter id (newest wins), sorted ascending. When the manifest is absent, unreachable, or malformed it returns null and parseNovel falls back to the existing HTML list — never an empty list. Only the chapters-container manifest is used; the second manifest on the page covers the VIP time-locked schedule and is ignored, matching the total the site itself renders. Chapter-body and lock handling are untouched. Version 1.1.1 → 1.1.2.

Verification (live, 2026-09-24)

check:plugin: 30 chapters before, 651 after; popular (20), search (1), and chapter steps pass. Served counts equal the manifest's own totals in the same run (651/651, 3155/3155, 234/234), numbering contiguous 1..N with no gaps or duplicates; a previously unreachable first chapter returns full text. Fallback proven with manifest requests blocked (30 page-derived chapters, not empty). build:compile and build:multisrc pass; eslint clean on the touched file (2 repo-wide errors pre-existing). AI-authored change, no human review.

The novel page only renders the latest 30 chapters and data-index-url
is empty, so parseNovel now reads data-manifest-url from the chapters
container, merges the pack file with live_tail the way the site reader
does, and falls back to the page-derived list when the manifest is
absent or malformed.

This change was authored by an AI coding agent.

Co-Authored-By: firstmate-crewmate <crewmate@firstmate.local>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant