pelagia-portal/App/tests
Hardik 2afdeec6ad
Some checks failed
PR checks / checks (pull_request) Failing after 2m14s
PR checks / integration (pull_request) Failing after 2m13s
fix(po): upload attachments server-side so they persist & show
PO/receipt attachments were uploaded via a browser presigned PUT straight
to R2 (POST /api/files/sign -> PUT uploadUrl -> linkDocument). That direct
browser->R2 PUT only succeeds when the bucket carries a CORS policy
allowing PUT from the portal origin; in production that policy was missing,
so the browser silently blocked the PUT, linkDocument never ran, and no
PODocument row was created -- "documents uploaded but not visible anywhere"
(0 PODocument rows in prod/staging).

Route uploads through a server action (uploadPoDocuments) that writes the
file with uploadBuffer and creates the PODocument row atomically -- the
same pattern the crewing module already uses for CV/crew-document uploads,
and within the 10mb serverActions.bodySizeLimit. This removes the R2-CORS
dependency and guarantees a created row always has its stored file.

Removes the now-dead presigned path (lib/upload-files.ts,
app/actions/link-document.ts, api/files/sign/route.ts).

Adds an integration test that drives the action against a real DB and
asserts the PODocument row is created and surfaced by the exact include
the PO detail page renders from (i.e. the attachment is visible).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-28 00:28:16 +05:30
..
e2e chore: rename e2e folder to catalogue + drop /inventory redirects 2026-06-24 05:06:44 +05:30
fixtures test(integration): repair stale integration suite (wip: 97/108) 2026-06-21 02:34:07 +05:30
integration fix(po): upload attachments server-side so they persist & show 2026-06-28 00:28:16 +05:30
staging feat(history): add Accounting Code search filter to PO History 2026-06-24 13:18:00 +05:30
unit test(history): cover removal of Approved From/To filters (#136) 2026-06-26 03:46:03 +05:30
setup.ts chore: restructure repo — flatten App/pelagia-portal to App, rename Prototype→Wireframe and Spec→Design 2026-05-18 23:18:58 +05:30