Dan
This is actually intentional. borgmatic is a wrapper for many
executables besides just Borg; it calls out to database clients,
filesystem snapshot software, and even arbitrary commands (in the form
of before_* and after_* hooks). So IMO it doesn't make sense to adopt
the return codes for only one of those executables. But what borgmatic
does offer is the ability to configure how different Borg exit codes are
interpreted as either warnings or errors. See
https://torsion.org/borgmatic/docs/how-to/customize-warnings-and-errors/
for more information.