pelagia-portal/App/prisma/migrations
Hardik 3d30155b6c feat(crewing): Phase 2 — requisitions + relief requests (flagged)
Second slice of the Crewing module per wiki Crewing-Implementation-Spec §12
(build order item 2). Everything stays behind NEXT_PUBLIC_CREWING_ENABLED;
production is unchanged. Schema is added incrementally — this lands the
requisition lifecycle layer.

What's in
- Schema: Requisition (OPEN→SHORTLISTING→PROPOSING→INTERVIEWING→SELECTED→FILLED,
  →CANCELLED), ReliefRequest, CrewAction (the POAction mirror) + their enums.
  Migration crewing_requisitions.
- State machine: lib/requisition-state-machine.ts mirrors po-state-machine
  (selection Manager-only; orthogonal cancel from OPEN/SHORTLISTING by
  cancel_requisition holders, §6). Codes REQ-9000… via lib/requisition-number.ts.
- Actions: raise/cancel/transition + requestReliefCover/convertReliefToRequisition,
  each guarding flag+permission+state, writing a CrewAction and notifying. Shared
  autoRaiseRequisition() (lib/requisition-service.ts) is the backfill entry point
  for sign-off / leave-clash (later phases).
- Notifier: notifyCrew() PO-independent path + CrewNotificationEvent.
- Screens: /crewing/requisitions (list + Raise modal + relief convert) and
  /crewing/requisitions/[id] (detail). Requisitions added to the flag-gated
  Crewing sidebar (Manager + MPO, §7).

Tests & docs
- Unit: requisition-state-machine.test.ts (11).
- Integration: requisitions.test.ts (15) — raise/cancel/transition, relief
  request + convert, auto-raise, permission gating.
- CLAUDE.md "Crewing" section updated with the Phase 2 surface.

Deferred: sign-off/experience (Epic K, §12 item 2) depends on the crew/assignment
models from Phase 3/4; autoRaiseRequisition() is ready for it.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-22 15:42:07 +05:30
..
20260503171522_add_item_db chore: restructure repo — flatten App/pelagia-portal to App, rename Prototype→Wireframe and Spec→Design 2026-05-18 23:18:58 +05:30
20260503180801_add_product_catalogue_size_manager_edit chore: restructure repo — flatten App/pelagia-portal to App, rename Prototype→Wireframe and Spec→Design 2026-05-18 23:18:58 +05:30
20260505114211_add_po_export_fields chore: restructure repo — flatten App/pelagia-portal to App, rename Prototype→Wireframe and Spec→Design 2026-05-18 23:18:58 +05:30
20260505121423_structured_tc_fields chore: restructure repo — flatten App/pelagia-portal to App, rename Prototype→Wireframe and Spec→Design 2026-05-18 23:18:58 +05:30
20260510215950_add_line_item_name chore: restructure repo — flatten App/pelagia-portal to App, rename Prototype→Wireframe and Spec→Design 2026-05-18 23:18:58 +05:30
20260510221329_add_product_vendor_price chore: restructure repo — flatten App/pelagia-portal to App, rename Prototype→Wireframe and Spec→Design 2026-05-18 23:18:58 +05:30
20260514060941_add_site_inventory_consumption chore: restructure repo — flatten App/pelagia-portal to App, rename Prototype→Wireframe and Spec→Design 2026-05-18 23:18:58 +05:30
20260514091124_vendor_pincode chore: restructure repo — flatten App/pelagia-portal to App, rename Prototype→Wireframe and Spec→Design 2026-05-18 23:18:58 +05:30
20260514185519_ chore: restructure repo — flatten App/pelagia-portal to App, rename Prototype→Wireframe and Spec→Design 2026-05-18 23:18:58 +05:30
20260514191638_vendor_contacts chore: restructure repo — flatten App/pelagia-portal to App, rename Prototype→Wireframe and Spec→Design 2026-05-18 23:18:58 +05:30
20260516103013_partial_receipt chore: restructure repo — flatten App/pelagia-portal to App, rename Prototype→Wireframe and Spec→Design 2026-05-18 23:18:58 +05:30
20260516103515_user_profile_signature chore: restructure repo — flatten App/pelagia-portal to App, rename Prototype→Wireframe and Spec→Design 2026-05-18 23:18:58 +05:30
20260516104351_notification_isread_link chore: restructure repo — flatten App/pelagia-portal to App, rename Prototype→Wireframe and Spec→Design 2026-05-18 23:18:58 +05:30
20260521000000_remove_vessel_imo_number feat(vessels): remove IMO number tracking 2026-05-22 17:14:40 +05:30
20260527000000_partial_payment feat(payments): partial/advance payment support 2026-05-27 04:17:19 +05:30
20260527010000_vessel_code feat(admin): auto-generate structured IDs for users, vendors, accounts and cost centres 2026-05-27 15:02:50 +05:30
20260528000000_optional_password_hash_for_sso feat(auth): add Microsoft 365 SSO via Azure Entra ID 2026-05-28 22:48:37 +05:30
20260530000000_vessel_optional_cost_centre feat: Cost Centre covers vessels and sites, vessel codes, Accounting Code rename, vessel-site assignment 2026-05-30 03:04:29 +05:30
20260530000001_account_hierarchy feat(accounts): hierarchical accounting codes with 6-digit format and category tree 2026-05-30 03:27:31 +05:30
20260530000002_vessel_no_site_po_vessel_required refactor: revert cost centre to vessels only, remove vessel-site link 2026-05-30 18:14:24 +05:30
20260530000003_add_company feat: Companies — multi-company PO support with admin CRUD and export integration 2026-05-30 19:31:34 +05:30
20260531000000_company_invoice_email feat(companies): add invoiceEmail field separate from contact email 2026-05-31 01:32:17 +05:30
20260531000001_company_code feat: structured PO numbers, import closed, auto-vendor/product, company code, inventory flag 2026-05-31 01:56:33 +05:30
20260531000002_po_payment_date feat(payments): compulsory payment date when Accounts records payment 2026-06-10 08:59:25 +05:30
20260616000000_add_po_date feat(po): allow submitter to set an optional PO date 2026-06-16 13:06:12 +05:30
20260621000000_company_branding_assets feat(po): per-company logo, stamp & brand bar on exported POs 2026-06-21 01:17:23 +05:30
20260621100000_po_cancel_supersede feat(po): cancel POs (manager/superuser) + optional supersede link (#53) 2026-06-21 12:20:54 +05:30
20260622071237_crewing_foundations feat(crewing): foundations — SITE_STAFF role, ranks reference data + admin (flagged) 2026-06-22 13:26:04 +05:30
20260622095543_crewing_requisitions feat(crewing): Phase 2 — requisitions + relief requests (flagged) 2026-06-22 15:42:07 +05:30
migration_lock.toml chore: restructure repo — flatten App/pelagia-portal to App, rename Prototype→Wireframe and Spec→Design 2026-05-18 23:18:58 +05:30