Interface for chat command ingress. Declares Owns to check if a message belongs to this handler and ExecuteAsync to run the command asynchronously using an authentication function, message, request id and cancellation token.
namespace SboxSuperuser.Engine.ChatIntegration;
internal interface IChatCommandIngress
{
bool Owns( string message );
Task<CommandResult> ExecuteAsync( Func<ActorIdentity> authenticate, string message, Guid requestId, CancellationToken cancellation );
}