feat(crewing): Phase 3c — onboarding (flagged) #68
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#68
Loading…
Add table
Reference in a new issue
No description provided.
Delete branch "feat/crewing-onboarding"
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 3c (Onboarding)
Final slice of Phase 3 (3a candidates → 3b pipeline → 3c onboarding). Stacks on #67 (3b pipeline); base branch is
feat/crewing-pipeline, so nothing reachesmasteryet. BehindNEXT_PUBLIC_CREWING_ENABLED.What's in
crewing_onboardingmigration):CrewAssignment+AssignmentStatus(ACTIVE/ON_LEAVE/SIGNED_OFF — leave/sign-off are Phase 4);ContractLetter(salaryRestricted);SalaryStructure += assignmentId;CrewActionType += CREW_ONBOARDED. Employee numbersCRW-xxxxvialib/employee-number.ts.onboardCandidate,onboard_crew): one transaction off aSELECTEDapplication — assignemployeeId, createCrewAssignment(ACTIVE, signOnDate), bind the approvedSalaryStructure(assignmentId+effectiveFrom),Application → ONBOARDED,Requisition → FILLED,CrewMember → EMPLOYEE(+currentRank); contract letter stored after. Guards flag + permission + SELECTED state.CRW-number shows on the ONBOARDED card.Tests & docs
onboarding.test.ts(5) — full transaction, requisition FILLED + salary binding, joining-date + SELECTED-only guards, permission gating, sequential CRW- ids.type-checkclean; full unit (234) + integration (168) green.CLAUDE.mdupdated; wiki §12 status note bumped (3c ✅).Deferred
grantsLogin) — a follow-up (per your call).This completes Phase 3. Next is Phase 4 (crew records, PPE, leave/attendance + the deferred sign-off/experience, Epic K).
🤖 Generated with Claude Code
Closes Epic D — Onboarding (#78).
21b5d75bcftoc82efa71af