refactor: drop ActorType::VOLUNTEER pending volunteer role introduction
VOLUNTEER was reserved-but-unused. Resolver mapped non-admin authenticated users to ORG_MEMBER because Crewli has no dedicated volunteer Spatie role; volunteer-ness is behaviour (shift assignments), not identity. Dead enum cases are YAGNI violations under zero-compromise: a future developer could use the case without realising no resolution path leads to it, producing a silent no-op. Re-introduce alongside a real volunteer role split when that lands (BACKLOG OBS-1). ActorType keeps ORGANIZER_ADMIN, SUPER_ADMIN, PORTAL_TOKEN, ORG_MEMBER, UNAUTHENTICATED. Tests at 1537, Larastan clean. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -140,9 +140,8 @@ final class BindSentryContextTest extends TestCase
|
||||
|
||||
public function test_org_member_authenticated_user_tags_actor_type_org_member(): void
|
||||
{
|
||||
// Crewli has no `volunteer` Spatie role today; volunteers fall into
|
||||
// org_member. The VOLUNTEER ActorType case is reserved for a future
|
||||
// split — see ActorType::resolve() docblock.
|
||||
// Volunteer-ness is behaviour in Crewli (shift assignments), not
|
||||
// identity — non-admin authenticated users resolve to ORG_MEMBER.
|
||||
$user = User::factory()->create();
|
||||
$user->assignRole('org_member');
|
||||
|
||||
|
||||
Reference in New Issue
Block a user