]> FriiDump Source - friidump.git/blob - docs/reports/FRIIDUMP_CANDIDATE13_SEED_DIAGNOSTICS.md
Document exact-release Linux hardware validation
[friidump.git] / docs / reports / FRIIDUMP_CANDIDATE13_SEED_DIAGNOSTICS.md
1 # FriiDump Candidate13 Seed Diagnostics
2
3 Candidate13 is a diagnostic successor to Candidate12. It does not intentionally
4 change the HLDS Method 8 cache/memdump schedule. It makes failures observable in
5 normal release builds and guarantees cleanup after seed failure.
6
7 ## Added evidence
8
9 During the initial twenty Nintendo seed blocks, FriiDump now writes
10 `[SEED-DIAG]` records to both the console and the ordinary FriiDump log. Records
11 identify:
12
13 - seed-block number and sector range;
14 - normal retry or split-recovery profile;
15 - prefetch/cache-reset, streaming read, header memdump, EDC memdump, or
16   EDC/unscramble-validation stage;
17 - transport result;
18 - operating-system error;
19 - SCSI status and sense key/ASC/ASCQ;
20 - the final command descriptor block when a transport command was involved.
21
22 The final classified failure is copied into the native report's `notes` array.
23 This preserves schema generation 1 while making the failure machine-readable
24 without requiring a DEBUG or VERBOSE build.
25
26 ## Cleanup change
27
28 When Nintendo disc initialization or seed retrieval fails, FriiDump now issues
29 STOP UNIT and records whether it succeeded. Candidate12 and earlier attempted
30 STOP UNIT only after a dump had begun.
31
32 ## Preserved behavior
33
34 Candidate13 retains Candidate12's:
35
36 - Redump DAT resolver and packaged DAT files;
37 - truthful Linux exclusive-lock reporting;
38 - native report contracts;
39 - Xbox copied-dumper behavior;
40 - Method 8 cache geometry and retry/split-recovery behavior.
41
42 ## Validation boundary
43
44 Static and Linux build validation can prove that all diagnostic stages are
45 present, transport evidence is captured on Linux and Windows, native reports
46 remain valid, and existing Redump/Xbox contracts remain intact. One live
47 GCC-4244 B101 run is required to identify the actual intermittent seed-failure
48 boundary.