Skip to content

fix(catalog): improve mobile discovery and pagination#435

Merged
tiankaima merged 5 commits into
mainfrom
agent/issues-378-398-399-catalog-mobile
Jul 15, 2026
Merged

fix(catalog): improve mobile discovery and pagination#435
tiankaima merged 5 commits into
mainfrom
agent/issues-378-398-399-catalog-mobile

Conversation

@tiankaima

@tiankaima tiankaima commented Jul 15, 2026

Copy link
Copy Markdown
Member

Goal

Make the public course, section, and teacher catalogs usable in the first mobile viewport and restore complete URL-driven pagination.

Closes #378
Closes #398
Closes #399

Changes

  • Keep one prominent mobile search row and move advanced filters into an accessible right-side Sheet.
  • Show removable active-filter chips outside the Sheet, including clear-all, while preserving hidden advanced filters on search.
  • Preserve the 17rem desktop filter sidebar and contain wide result tables inside their own horizontal scroll region.
  • Replace append-only infinite paging with real Previous / numbered-page / Next anchors that preserve query parameters and browser history.
  • Remove duplicated course/section header summaries and redundant subtitles.
  • Mark app hydration explicitly and make E2E interactions wait for it, eliminating click-before-hydration flakes.
  • Add shared catalog filter/pagination components, mobile/desktop E2E coverage, an isolated 25-course pagination fixture with guaranteed cleanup, and update docs/contracts/_ui.json.

Verification

Final head: 0623ecb8a98b61ddd306179c8011c38df5a5d53a

  • GitHub Actions run 29432233190: all jobs passed.
    • Check / OpenAPI parity: passed
    • Static loader image: passed
    • MCP integration: passed
    • public-web E2E: 160 passed, 0 failed, 0 flaky
    • api-mcp, signed-in, and admin-comments E2E: passed
  • Published Playwright report
  • Cloudflare commit preview: deployment successful for the final head.
  • Local Bun 1.3.13 checks: app preparation, Biome, Svelte check (0/0), all three TypeScript projects, Vitest, OpenAPI parity, build, and focused pagination/contract tests passed. Biome retains only the pre-existing unused-parameter warning in src/static-loader/import.ts:1325.
  • Fresh independent source/full-check review: passed.
  • Fresh independent visual review of the final CI artifacts: passed.
    • Courses, sections, and teachers at 390×844 show search, filter trigger, active chips, result summary, and the first result in the initial viewport with no page-level horizontal overflow.
    • Desktop screenshot retains both sidebars and shows page 2 with Previous, page 1/2, and Next controls.
    • Sheet access, query preservation, aria-current, history/Back, geometry, and overflow assertions all passed.

Risk / Scope

  • Catalog navigation intentionally changes from client-side infinite append to route-based pages.
  • Pagination's full database-backed browser journey is exercised on courses; sections and teachers use the same shared component and URL builder.
  • No schema, migration, auth, API response, privacy, OpenAPI, or message changes.
  • No screenshots, traces, generated outputs, or scratch probes are committed.

@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented Jul 15, 2026

Copy link
Copy Markdown

Deploying with  Cloudflare Workers  Cloudflare Workers

The latest updates on your project. Learn more about integrating Git with Workers.

Status Name Latest Commit Preview URL Updated (UTC)
✅ Deployment successful!
View logs
life-ustc 0623ecb Commit Preview URL

Branch Preview URL
Jul 15 2026, 04:25 PM

@github-actions

github-actions Bot commented Jul 15, 2026

Copy link
Copy Markdown

@tiankaima
tiankaima marked this pull request as ready for review July 15, 2026 16:40
@tiankaima
tiankaima merged commit 30dc400 into main Jul 15, 2026
14 checks passed
@tiankaima
tiankaima deleted the agent/issues-378-398-399-catalog-mobile branch July 15, 2026 16:41
github-actions Bot pushed a commit that referenced this pull request Jul 15, 2026
## [1.51.4](v1.51.3...v1.51.4) (2026-07-15)

### Bug Fixes

* **catalog:** improve mobile discovery and pagination ([#435](#435)) ([30dc400](30dc400))
* **subscriptions:** reject unscoped batch replacement ([c54e918](c54e918))
@github-actions

Copy link
Copy Markdown

🎉 This PR is included in version 1.51.4 🎉

The release is available on GitHub release

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

1 participant