Main changes
Hotfix: reliable book completion detection
- Crossing the real end of an EPUB or XTC completes it automatically.
- Leaving from the final page or while rounded progress reads 100% asks for confirmation, so trailing material or a direct jump cannot silently finish a book.
- Declining the confirmation suppresses it until reading advances, including when reading-stat tracking is disabled.
- The first completion date is preserved across reopenings and rereads, and a pending Reading Achievement screen survives a reader restart.
Dated Finished Books timelines
Finished Books now shows each known reading span as a compact start-to-finish timeline with the year on both dates and the active reading time. The redundant elapsed-day count has been removed.
Opening Reading Stats reconciles a completed book's persistent start and finish dates with its retained history entry. Older version 1 indexes remain readable, entries accidentally keyed by a cache path are merged into the real book identity, and the next write upgrades the index automatically.
Automatic reading start dates now require two active minutes plus forward progress, or five active minutes on one long page, so a brief preview does not start a book's timeline.
Previous Page on side-button hold
The side-button long-press setting now offers Previous Page for EPUB, TXT, and XTC. A hold turns back exactly one page while the normal short press keeps its configured direction; the button must be released before another long-press turn.
Downloads
Both variants support Xteink X3 and X4; the device is detected automatically.
YACP-1.4.0-yacp.167-tiny.bin: built-in 10, 12, 14, and 16 pt reader fonts.YACP-1.4.0-yacp.167-xlarge.bin: built-in 16, 18, and 20 pt reader fonts.SHA256SUMS.txt: SHA-256 checksums for both firmware images.
Validation
- Tiny and XLarge built successfully locally and in GitHub Actions.
- The downloaded release assets match the published SHA-256 checksums.
- Embedded identifiers were verified as
.167-tinyand.167-xlarge. - The X3 simulator build and deterministic English Finished Books capture succeeded.
- All 102 host tests pass.
- Earlier X3 testing of
.166exposed the retained-date reconciliation issue fixed in.167; these exact GitHub release assets have not yet been confirmed on X3 or X4 hardware.
Commit: 8e503faa0e21ef99f7a99cd5157dda87b674a9fa
