feat(crewing): Phase 4a — crew records & profile + PPE (flagged) #69
No reviewers
Labels
No labels
bug
claude-failed
claude-pr
claude-queue
claude-working
epic
feature
interactive
portal
triaged
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: shad0w/pelagia-portal#69
Loading…
Add table
Reference in a new issue
No description provided.
Delete branch "feat/crewing-crew-records"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Crewing — Phase 4a (Crew records & profile + PPE)
First slice of Phase 4 (4a records/profile/PPE → 4b leave/attendance → 4c sign-off/experience). Stacks on #68 (3c onboarding); base branch is
feat/crewing-onboarding, so nothing reachesmasteryet. BehindNEXT_PUBLIC_CREWING_ENABLED.What's in
crewing_crew_recordsmigration):SeafarerDocument,NextOfKin(isEmergency),ExperienceRecord,PpeIssue(PpeItemenum) — all onCrewMember;CrewActionType +=document/record/PPE/experience types. (BankDetail/EpfDetailexist from 3b.)lib/crew-pii.ts, §6/§8.8): bank account + Aadhaar full only for Accounts/SuperUser, masked (•••• 1234) otherwise; salary hidden from site staff. Applied server-side before crossing to the client.crewing/crew/actions.ts):uploadDocument/deleteDocument,saveBankEpf,addNextOfKin/deleteNextOfKin,issuePpe/returnPpe,addExperience— guarded byupload_crew_records/issue_ppe; each writes aCrewAction./crewing/crew(directory — activeEMPLOYEEcrew, search + vessel filter; ex-hands excluded, R9) and/crewing/crew/[id](tabbed profile: Documents · Bank & EPF · Next of kin · PPE · Experience · Pay status). Crew added to the flag-gated nav (MGR/MPO/Site/Accounts).Tests & docs
crew-pii.test.ts(6). Integration:crew-records.test.ts(7) — documents, bank/EPF upsert, NoK, PPE issue/return, experience + permission gating.type-checkclean; full unit (240) + integration (175) green.CLAUDE.mdupdated; wiki §12 status note bumped.Deferred
Next in Phase 4: 4b leave & attendance (Epic G), then 4c sign-off & experience (Epic K).
🤖 Generated with Claude Code
Closes Epic E — Crew records & documents (#79) · Closes Epic F — PPE issue register (#80).