GNU tar emits Autotest result lines with dotted test numbers and
records failures in the detailed failure section. The previous
extractor only matched an older colon-based format, so CI uploaded an
empty gnu-full-result.json while still exiting successfully.
The aggregate step also called analyze-gnu-results.py with -o and a
single input file, but the script only wrote the requested output
in the multi-input path. Parse GNU tar's current result lines,
fail loudly when extraction finds no results, and always write the
requested aggregate output.