summaryrefslogtreecommitdiff
path: root/BACKLOG.md
diff options
context:
space:
mode:
authorPeter Stone <thepeterstone@gmail.com>2026-07-23 07:38:28 +0000
committerPeter Stone <thepeterstone@gmail.com>2026-07-23 07:38:28 +0000
commitecdb45778e274126737aa87e27ed1b1c00cda01c (patch)
treeb632e53bc91475ba49094539e04b51e7a5eaa41c /BACKLOG.md
parent3bec692d9613b9b3e688441e5945424bd0fe20f0 (diff)
Rebrand to FeeDreader; overflow-menu cleanup; deferred read-marking; folder-organized feed list
- Rename app to FeeDreader with an owl launcher icon and a paywall-avoidance note in Settings - Move Open original/Save to Stash into the reader's overflow menu; add Mark unread there too - Only mark an article read when navigating away via Previous/Next, not on open or on back - Saved list no longer crosses out read items; its count includes them - Back from Unread (the root screen) now opens the feed list instead of exiting the app - Feed list: clearer separator above the per-feed list, folder grouping (from OPML categories) with case-insensitive sort, and a virtual "Last fetch failed" section at the top - Reader extraction: cap unsized decorative SVG icons (fixes Ars Technica's giant section-badge icon), force native loading="lazy" images to load eagerly in the hidden extraction WebView, and drop a lightbox's duplicate caption only when a real figcaption sibling exists - Backlog notes on swipe-to-next research, extraction test coverage, and an async-rendered-gallery race confirmed live on Ars Technica Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01EZ7ikw2ukGJFTHE3bJS7zL
Diffstat (limited to 'BACKLOG.md')
-rw-r--r--BACKLOG.md40
1 files changed, 40 insertions, 0 deletions
diff --git a/BACKLOG.md b/BACKLOG.md
index 6ed83cd..559113c 100644
--- a/BACKLOG.md
+++ b/BACKLOG.md
@@ -81,3 +81,43 @@ scrolling still feels jerky now that nothing above the WebView is doing any
gesture detection at all -- if it still does, the cause is something else
(WebView rendering/compositing itself, the emulator's software rendering
not reflecting real-device feel, etc.), not gesture interception.
+
+**Confirmed on a real device (2026-07):** scrolling measurably improved
+once swipe-to-next was dropped. So any future attempt to bring back a
+swipe-to-next gesture needs to be judged against that baseline -- it must
+not regress scroll feel back to the pre-removal state. Two arbitration
+approaches already tried and failed (see above); a fresh approach (e.g.
+a much larger/edge-only swipe hit target that never competes with
+vertical scroll gestures at all, rather than trying to disambiguate axis
+mid-gesture) would need to be prototyped and felt out live, not just
+reasoned about in code review.
+
+## Extraction test coverage for WHT / Ars Technica (not yet built)
+
+**Motivation:** both sites' Readability extraction has needed repeat fixes
+(lazy-loaded images, doubled captions, paywall-targeted un-hide) and each
+fix so far has been diagnosed by hand against a single live article rather
+than against a standing set of known-tricky pages. Reported as still
+inconsistent after multiple rounds of fixes -- regressions are easy to
+reintroduce without something to check against.
+
+**Rough shape (not yet built):** save a handful of representative fixture
+HTML pages from each site (lazy-image markup, a paywalled article, one
+with duplicate captions) alongside the expected extracted output, and run
+them through `ReaderExtractor`'s pipeline in an instrumented test (it needs
+a real WebView to run Readability.js, so this can't be a plain JVM unit
+test) on every change to the extraction/paywall-unhide logic, instead of
+re-fetching a live article by hand each time.
+
+**Also confirmed live (2026-07):** the same Ars Technica article extracted
+with its gallery photos included on one run and without them on another,
+with no code change in between. Ars's gallery section appears to render
+in client-side JS some time after the page's initial HTML document load
+(`onPageFinished`, which is when `ReaderExtractor` currently runs
+Readability) -- so whether it's finished by the time our script executes
+is a real race, not something the `loading="lazy"` fix (also added this
+round) addresses. A proper fix likely means waiting for the page to go
+network-idle (or a short fixed settle delay) before parsing, which trades
+against `TIMEOUT_MS` and adds latency to every single extraction -- worth
+deciding deliberately rather than bolting on, so left for this backlog
+item rather than this round's quick fixes.