'manager'], [ 'name' => 'Manager', 'description' => 'Team manager with elevated permissions', ] ); // Give Manager all permissions except sensitive settings management (idempotent) // If permissions are not seeded yet, this will simply sync an empty set. $permissionIds = Permission::query() ->where('slug', '!=', 'manage-settings') ->pluck('id'); $manager->permissions()->sync($permissionIds); } }