Skip to content

feat(stovepipe): load older queue requests on scroll - #931

Merged
mnoah1 merged 1 commit into
mainfrom
mnoah1/stovepipe-infinite-scroll
Oct 23, 2026
Merged

mnoah1 merged 1 commit into
mainfrom
mnoah1/stovepipe-infinite-scroll

Conversation

@mnoah1

@mnoah1 mnoah1 commented Oct 23, 2026 •

Copy link
Copy Markdown
Contributor

Why?

Browsing a long Stovepipe queue currently requires navigating between pages. Load older requests as users scroll, with clear loading feedback that stays stable while batches arrive.

What?

  • Append 50-request batches using existing continuation URLs, retaining rows and scroll position across request-detail visits.
  • Add an authenticated, uncached host endpoint; prevent overlapping loads, duplicate rows, and repeated continuation loops, and offer explicit retry after failures.
  • Show a delayed, fading BaseUI spinner in a reserved footer so fast loads do not flash and controls stay steady. Respect reduced motion and retain link pagination without JavaScript.
  • Refresh visible statuses without reordering rows; offer new arrivals through Show latest requests.
  • Cover scrolling, failures, navigation, authentication, accessibility, narrow layouts, and loading visuals in browser tests.

Test Plan

Manually scrolled through 500 seeded requests in ten batches, verifying all IDs appeared once without clicking Load more. Checked the loading indicator on desktop and narrow viewports, stable footer height, reduced motion, and request details with history and project results.

For a reproducible real-stack browser run with seeded pagination data, run ./tool/bazel test //web/test/e2e/stovepipe:web_test --test_output=errors with Docker running.

To run the UI locally, use make local-stovepipe-web-start, open the printed Web UX URL, and sign in with test / test (or the configured STOVEPIPE_WEB_TOKEN). Ingest more than 50 requests into a queue to exercise scrolling; the regular local stack starts without the browser-test fixtures.

@mnoah1 mnoah1 changed the title feat(stovepipe): load older queue requests on scroll [draft] feat(stovepipe): load older queue requests on scroll Oct 23, 2026
@mnoah1
mnoah1 marked this pull request as ready for review October 23, 2026 20:59
@mnoah1
mnoah1 requested review from a team, behinddwalls and sbalabanov as code owners October 23, 2026 20:59
Summary:
## Why?
Browsing a long Stovepipe queue currently requires navigating between pages. Load older requests as users scroll, with clear loading feedback that stays stable while batches arrive.

## What?
- Append 50-request batches using existing continuation URLs, retaining rows and scroll position across request-detail visits.
- Add an authenticated, uncached host endpoint; prevent overlapping loads, duplicate rows, and repeated continuation loops, and offer explicit retry after failures.
- Show a delayed, fading BaseUI spinner in a reserved footer so fast loads do not flash and controls stay steady. Respect reduced motion and retain link pagination without JavaScript.
- Refresh visible statuses without reordering rows; offer new arrivals through Show latest requests.
- Cover scrolling, failures, navigation, authentication, accessibility, narrow layouts, and loading visuals in browser tests.

Test Plan:
Manually scrolled through 500 seeded requests in ten batches, verifying all IDs appeared once without clicking Load more. Checked the loading indicator on desktop and narrow viewports, stable footer height, reduced motion, and request details with history and project results.

For a reproducible real-stack browser run with seeded pagination data, run `./tool/bazel test //web/test/e2e/stovepipe:web_test --test_output=errors` with Docker running.

To run the UI locally, use `make local-stovepipe-web-start`, open the printed Web UX URL, and sign in with `test` / `test` (or the configured `STOVEPIPE_WEB_TOKEN`). Ingest more than 50 requests into a queue to exercise scrolling; the regular local stack starts without the browser-test fixtures.
@mnoah1
mnoah1 force-pushed the mnoah1/stovepipe-infinite-scroll branch from ef67e4a to d45fa6f Compare October 23, 2026 21:04
@mnoah1
mnoah1 added this pull request to the merge queue Oct 23, 2026
Merged via the queue into main with commit 64442a2 Oct 23, 2026
19 checks passed
@mnoah1
mnoah1 deleted the mnoah1/stovepipe-infinite-scroll branch October 23, 2026 21:22
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.

2 participants