D084 - A real container can be audited against the format table - the oracle step, as a command

A real container can be audited against the format table - the oracle step, as a command.

data/self-format.tsv is derived from previous-generation sources and says every row is a hypothesis until a current-generation file settles it. Until now nothing ran that check; it was a sentence in a header. selfish_container::audit and selfish audit <file> do it: parse a real container, identify the generation from the magic, and report which fixed header rows the file confirms and which it contradicts.

The discipline is in the code, not just the prose. The magic is read to identify the generation and then excluded from the tally - a magic that differs across generations is the split itself (D003), not a row the newer file got wrong. And a contradiction is reported as a difference with the real value beside the expected one; it is not interpreted. Settling what a field means at a new generation needs a citable source, not the bytes (principle 1). A difference is a finding, not a derivation.

Proved by round trip: a container this crate builds confirms every fixed row for both generations, and a corrupted header byte is reported as differing. On a real current-generation eboot.bin - dumped off a console - the run shows which previous-generation rows carry over, which is the one thing that turns the table's gen-current rows from hypothesis into measured.