shoc-backend/SeaHaven.Services
Alexandre Brandizzi 9084b7f642 fix(team-members): answer invalid_invite when send-code finds the invite closed
SendCodeAsync validates the invite, then starts the code with a conditional
update that also requires the invite to still be open. When an admin revoked
the link (or it was used) between those two reads, the refusal was reported as
resend_too_soon with a Retry-After, although the link was already dead.

On a refused start the invite is now read again: a closed invite gets the same
generic invalid_invite response as any other dead link, and a cooldown or send
limit refusal is computed from the fresh row.
2026-09-25 16:40:54 -03:00
..
Configuration feat(permissions): protect configured account owner (SH-329) 2026-09-16 21:40:22 -03:00
Constants feat(team-members): support pending member creation (SH-325) 2026-09-16 21:41:55 -03:00
DependencyInjection feat(team-members): invite registration with emailed code confirmation (SH-385) 2026-09-25 11:49:10 -03:00
DTOs Merge pull request #186 from Sea-Haven-Industries/feat/ab/sh-386-password-policy 2026-09-25 16:27:36 +00:00
Exceptions Sites API: site code uniqueness, soft delete with role check, open work orders, site notes 2026-09-25 11:19:29 -03:00
Helpers Merge remote-tracking branch 'origin/main' into feat/ab/sh-385-invite-registration 2026-09-25 12:45:03 -03:00
Implementation fix(team-members): answer invalid_invite when send-code finds the invite closed 2026-09-25 16:40:54 -03:00
Interfaces Merge pull request #186 from Sea-Haven-Industries/feat/ab/sh-386-password-policy 2026-09-25 16:27:36 +00:00
Validation feat(locations): manage ordered site contacts 2026-09-15 19:03:54 -03:00
SeaHaven.Services.csproj refactor: enforce backend boundaries and optimize dispatch (#30) 2026-07-24 17:35:34 -03:00