← back to Wallco Ai
data/yolo-overnight/sb-page50-20260525-1346.md
43 lines
# Status-Browser Page 50 Verification — 2026-05-25 13:46 PT
**Target:** `GET /admin/status-browser?page=50&status=published`
**Host:** `http://127.0.0.1:9905` (wallco-ai, PM2 id 119)
**Source:** `/root/public-projects/wallco-ai/server.js:8334-8338`
## Result: PASS (with one UX caveat)
### Page load
| Request | HTTP | Bytes | Time |
|---|---|---|---|
| `/admin/status-browser?page=50&status=published` | **200** | 29,772 | 5.7 ms |
No 500. Static HTML SPA shell served from `public/admin/status-browser.html` via `sendFile`. Admin gate (`isAdmin`) passed via 127.0.0.1 loopback per `src/admin-gate.js`.
### Pagination behavior verified
Pagination is **client-side**, driven by `/api/status-browser?limit=200&offset=N`. Prev/next are JS buttons (`status-browser.html:441-447`). The page URL's `?page=50` query string is **ignored** by both the route handler and the client-side init (no URL→`OFFSET` bridge), so the page always lands on offset 0.
API smoke at three offsets (status=published, limit=200):
| Offset | HTTP | `ok` | `total` | items returned |
|---|---|---|---|---|
| 0 (page 1) | 200 | true | 203 | 200 |
| 200 (page 2) | 200 | true | 203 | 3 |
| 9800 (synthetic "page 50") | 200 | true | 203 | 0 (clean empty array, no error) |
Prev/next math (`Math.ceil(j.total / LIMIT)`) computes `pages = ceil(203/200) = 2`, so the rendered pager is `‹ prev … page 1/2 … next ›`. Both buttons function correctly and disable at the bounds.
### UX caveat (not a bug per the request, but worth noting)
- `?page=50` is a dead query param. Visiting it loads page 1, not page 50. There is no URL ↔ pagination-state sync. If deep-linking matters, `load()` in `status-browser.html:389` would need to read `URLSearchParams` on init.
- Moot for `status=published` today: only 203 published designs → page 50 cannot exist at LIMIT=200 regardless. Would matter under `status=all` (much larger N).
### Files touched
None. Read-only verification.
### Commands run
```
curl -sw 'HTTP %{http_code}\n' "http://127.0.0.1:9905/admin/status-browser?page=50&status=published"
curl -s "http://127.0.0.1:9905/api/status-browser?status=published&limit=200&offset=0"
curl -s "http://127.0.0.1:9905/api/status-browser?status=published&limit=200&offset=200"
curl -s "http://127.0.0.1:9905/api/status-browser?status=published&limit=200&offset=9800"
```