# 14-Jun-2026 — stop content pages from loading the full member list

## [build 695](https://github.com/nbarrett/ngx-ramblers/actions/runs/27513529741) — [commit c77bfcd](https://github.com/nbarrett/ngx-ramblers/commit/c77bfcdb02692ca6b7c8e0ab12d84ae6c84662dd)

_____

WalkDisplayService is a root singleton, and shared components that render
plain CMS content (card-image-or-map, related-links) inject it just to get
walk-edit behaviour. Because the service did backend work in its constructor,
simply being injected on a content, admin or committee page fired two requests
that page never needed: the full member list (member/all, ~3.5s on an M0
cluster even as a 304, because it re-reads the whole collection) and the
per-group next-walk dates.

Both loads are now lazy and only run where walks are actually shown:

- the member list loads only when a walk component calls refreshCachedData
(the walks list, the walk view and the copy-from editor already do this on
init), so the constructor no longer pre-loads it
- the next-walk dates are fetched once, on demand, from walk-view (the leaf
component that uses the "next walk" highlight), guarded so the many walk
cards in a list trigger a single request rather than one each, and no longer
fired from the system-config subscription in the constructor

Net effect: opening a public page, a documentation page or any non-walk admin
page no longer pulls the membership down. The walk pages are unchanged. The
durable follow-up for the walk pages themselves is a short-lived server-side
cache of the member list so repeat loads stop hitting the cluster.