This is how Remora‘s PO file looks like when opened in POEdit:

Red usually means that a string is broken and has an error – but in this case it does not, this is the file with the original strings. But since the “original” string is just a key name, POEdit thinks that all the “%s” etc. are errors, as they don’t appear in the “original”…
And the status bar in that screenshot states: “329 strings, 0 fuzzy, 60 broken, 0 untranslated”. In fact, none are broken and there are 329 untranslated.
There’s nothing wrong in using a key-value paradigm. But when you’re using it in a format that was not designed with this in mind, you just break things.