In the current implementation of unwrap_syscall lint, we simply assume that every Result<T, Array<felt252>> is an expansion of SyscallResult<T> type (which is an alias). Calling unwrap on such an object triggers unwrap_syscall lint event if the result is not a SyscallResult.
We can improve that lint as soon as the compiler allows checking all steps of type alias resolution, so we can truly find out whether the Result obtained from the semantic model used to be a SyscallResult in user code.