eddiewebb actor is not passed as an argument. Actor is obtained either from the cookie session or an authentication header.
In the case of a Flarum extension like here you shouldn't have anything special to do.
$request->getAttribute('actor') should never return null though, so that's the strange thing here. If you're not authenticated, it should return an instance of Flarum\User\Guest
Can you clarify what exactly you are experiencing? Is the $actor variable null, is $actor->id null or something else?
In your controller you should add a permission check before doing anything. You can use a policy or start simple with the assertRegistered($actor) method of https://github.com/flarum/core/blob/v0.1.0-beta.13/src/User/AssertPermissionTrait.php