afterhours-shift-manager/docs/portal-module-spec.md
Cursor Agent 1ab787308e
feat(portal-api): add Cognito shift API for the employee portal (DEV-287)
Employees and admins can pick, drop, swap, and manage coverage through
GET/POST/DELETE /api/shifts. Roster PUT accepts optional email for portal
identity. Slack slash commands and App Home admin modals stay in place.

Co-authored-by: adam <adam@seahavenind.com>
2026-09-21 00:36:31 +00:00

567 B

Locked 2026-09-21 against Adam's answers.

Employee self-service plus admin After Hours in internal-portal. Slack stays.

Decisions:

  • After Hours is a primary nav item (/shifts, /shifts/admin).
  • Identity is roster email from Paychex PUT /roster (optional for backward compatibility; portal mapping needs it). Admin remains get_admin_users() Slack IDs after that lookup.
  • Swap and late-pickup are in-portal pending actions and still DM on Slack.
  • Slack App Home admin modals stay as-is.

Tickets: DEV-286 (epic), DEV-287 (API), DEV-288 (portal UI).