Skip to content

feat: add status filters and improve paging on list pages - #65

Open
KexyBiscuit wants to merge 1 commit into
masterfrom
feat/status-filter-and-paging
Open

feat: add status filters and improve paging on list pages#65
KexyBiscuit wants to merge 1 commit into
masterfrom
feat/status-filter-and-paging

Conversation

@KexyBiscuit

@KexyBiscuit KexyBiscuit commented Aug 24, 2026

Copy link
Copy Markdown
Member

Summary

  • Pipelines and jobs pages now support filtering by status, applied server-side through a new optional, comma-separated status parameter on /api/pipeline/list and /api/job/list. For jobs this is a plain SQL filter; for pipelines the filter is applied after status computation, since a pipeline's status is derived from its latest job per architecture (there is no status column on pipelines). The unfiltered path remains page-first.
  • Jobs page now syncs page, page size, and active filters to the URL query, like the pipelines page already does; changing any filter resets the view to page 1 on all three list pages.
  • Workers page no longer paginates: it loads all workers in a single request (items_per_page=-1) and filters client-side by Live / Dead / Idle / Busy (Live matches both Idle and Busy).

Verification

  • yarn build (vue-tsc --noEmit + vite build) passes.
  • cargo check passes on Linux (run in WSL; the server uses tokio::net::unix and does not build on Windows). Note: requires --ignore-rust-version at the moment because the committed Cargo.lock pins takecell 0.1.2, which declares rustc 1.96 — a pre-existing lockfile/toolchain mismatch unrelated to this change.
  • Not exercised against a live API (no local database/RabbitMQ available).

==================================

AI Assistance Usage Declaration

This PR is authored with assistance from AI/LLM:

  • Model: Kimi K3 (Moonshot AI)
  • Platform: Moonshot AI (kimi.com)
  • Agent platform: Kimi Code CLI
  • Prompt:
The frontend now has very limited filtering and inconvenient paging for pipelines, jobs, and workers. There won't be many workers, so not paging the workers would be better. Also allow the user to filter pipelines, jobs, and workers, by status.

Add status filtering to the pipelines, jobs, and workers list pages:

- Pipelines and jobs pages filter server-side through a new optional,
  comma-separated `status` parameter on /api/pipeline/list and
  /api/job/list. As a pipeline's status is computed from its latest
  job per architecture, pipeline status filtering is applied after
  status computation when the parameter is present; the unfiltered
  path remains page-first.
- Jobs page now syncs page, page size, and active filters to the URL
  query, like the pipelines page already does; changing any filter
  resets the view to page 1 on all three pages.
- Workers page no longer paginates: it loads all workers in a single
  request (items_per_page=-1) and filters client-side by
  Live/Dead/Idle/Busy.

This commit is authored with assistance from AI/LLM:

- Model: Kimi K3 (Moonshot AI)
- Platform: Moonshot AI (kimi.com)
- Agent platform: Kimi Code CLI
- Prompt:
  The frontend now has very limited filtering and inconvenient paging
  for pipelines, jobs, and workers. There won't be many workers, so
  not paging the workers would be better. Also allow the user to
  filter pipelines, jobs, and workers, by status.
@KexyBiscuit
KexyBiscuit force-pushed the feat/status-filter-and-paging branch from 4711bcb to c93b77d Compare August 24, 2026 23:17
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.

1 participant