Diagnostic Infrastructure's target users

hey folks, I’m a bit confused about the purpose of the Diagnostic Infrastructure. Is it the case that compiler frontends can create their own diagnostic infrastructure based on the MLIR’s to report back errors and that type of stuff to the end users? or is it just purely for using with mlir dialects only and aimed for developers only (mlir devs)?