No description
Find a file
Claude (auto-fix) 5cefe8f7ed
All checks were successful
PR checks / checks (pull_request) Successful in 44s
PR checks / integration (pull_request) Successful in 32s
feat(history): paginate PO history with items-per-page control
The /history page fetched a fixed first 200 POs in one flat table with no
way to page further and no control over page size. Replace that with real
pagination:

- page.tsx: read page/perPage from searchParams; clamp perPage to 25/50/100
  (default 25) and page to [1, totalPages] via a new shared resolvePagination
  helper. Swap the fixed take:200 for skip/take + a count() for totals.
  Replace the "first 200 results" notice with a footer ("Showing X-Y of N",
  Prev/Next, page indicator) that preserves all filters. Export PDF/CSV links
  stay on the full filtered set.
- history-filters.tsx: add a Per-page dropdown; changing it or any filter
  resets to page 1 while preserving perPage in the URL.
- lib/pagination.ts: dependency-free clamp/skip/take helper, unit-tested.

Verified: type-check clean, 272 unit tests pass (9 new), skip/take windows
and clamping checked against the test DB.

Fixes #104
2026-06-24 03:26:47 +05:30
.claude seed(prod): trim SITES to geocoded entries only; update admin email 2026-05-31 02:44:37 +05:30
.forgejo fix(deploy): expand sparse checkout so microservices/ecosystem are on disk 2026-06-24 03:12:54 +05:30
App feat(history): paginate PO history with items-per-page control 2026-06-24 03:26:47 +05:30
automation fix(deploy): expand sparse checkout so microservices/ecosystem are on disk 2026-06-24 03:12:54 +05:30
Docs @ 2026-06-19 13:56:50 +05:30
EpfoService test(crewing): cover EPFO stub contract + /api/epfo permission gate 2026-06-22 23:56:14 +05:30
GstService fix: preserve tracked request typing 2026-05-22 17:39:26 +05:30
Progress chore{perm}: Allow managers to confirm receipt 2026-06-15 11:49:14 +05:30
static fix(static): prevent mobile layout overflow 2026-05-22 18:11:31 +05:30
Wireframe chore(design-system): add PPMS design system reference and sync bundle 2026-06-22 04:30:22 +05:30
.gitattributes feat(automation): port issue watcher to bash for pms1 (cron, 24/7) 2026-06-19 04:32:06 +05:30
.gitignore @ 2026-06-19 13:56:50 +05:30
CHANGELOG.md docs: bring CLAUDE.md, README, Docs and CHANGELOG up to date with current product 2026-06-19 12:43:24 +05:30
ecosystem.config.js chore(deploy): build & (re)start microservices on release tag 2026-06-24 02:59:36 +05:30
generate_po.py chore(inventory): remove item detail page; move SiteSelect to shared components 2026-05-16 00:07:04 +05:30
inspect_po.py chore(inventory): remove item detail page; move SiteSelect to shared components 2026-05-16 00:07:04 +05:30
test-report-2026-05-17.md docs: consolidate design notes and test report 2026-05-22 17:15:38 +05:30

Docs — retired (moved to the wiki)

The design, architecture, and test documents that used to live here have been migrated to the project wiki and removed from the repo. The wiki is the living reference going forward.

Wiki: https://git.pelagiamarine.com/shad0w/pelagia-portal/wiki (working clone: pelagia-portal.wiki/ alongside this repo).

Where each retired doc went

Retired file Now in the wiki
01-design-document.md System/Architecture, Product/Workflows (user stories), Product/Design-System, Overview/Open-Questions
02-architecture.md System/Architecture (+ System/Data-Model, Ops/Deployment-and-Operations, Build-and-Run/Environment-Variables)
03-open-questions.md Overview/Open-Questions
DESIGN.md Product/Workflows, Product/Pages-and-Navigation, Product/Design-System
TEST_PLAN.md Quality/Test-Plan
e2e-test-framework.md Quality/E2E-Test-Framework
e2e-test-plan.md Quality/E2E-Test-Plan
PLAYRIGHT_TEST_DESIGN.md Quality/Playwright-Test-Design

The wiki's on-disk folder layout (Overview / Build-and-Run / System / Product / Quality / Ops) mirrors its sidebar hierarchy.

Keep current behaviour documented in the wiki, not here. Other authoritative in-repo sources remain: App/CLAUDE.md, App/README.md, automation/README.md, and CHANGELOG.md.