1 # FriiDump 0.5.3.7 — PFES-Aligned Redump Evidence Reporting
5 This update refines the automatic Redump verifier introduced in 0.5.3.6. It
6 changes evidence presentation and report durability only. It does not add or
7 modify any optical-drive write, firmware-update, flash, erase, `3B06`, `3B07`,
10 ## Live baseline confirmed before refinement
12 The 0.5.3.6 run on `HL-DT-ST/CDRW/DVD GCC4244/B101` completed Sonic Mega
13 Collection successfully:
16 - seed retrieval: 3 seconds
17 - output sectors: 712,880
20 - duration: 2,324.52 seconds
21 - observed average: 2,156.33 MiB/h
22 - Redump entries scanned: 2,019
29 MD5 85a525df1481d0ad67d8761f832dca12
30 SHA-1 06eb6d15b4d7f90ec0fed9ce9a77db41358d74ed
31 SHA-256 30098da93f5de9ece8da44f8afdfb85cf9bcdc24d77131221e64e3038a529010
34 The B101 drive remains a live-validated legacy Type3 fallback while exact
35 parser metadata is pending analyzer results. This update does not promote B101
38 ## Scope boundary for Xbox reference dumping
40 The bundled Xbox DAT remains mapped for Xbox ISO paths that return through
41 FriiDump's normal dumper/hash state. The copied GDR-8050L reference-dumper
42 bridge uses its own full-file hashing and sidecar writer and remains excluded
43 from this verifier call. No claim is made here that schema-2 DAT evidence is
44 produced for that separate bridge path.
46 ## Corrected log behavior
48 The schema-1 JSON report itself was valid on disk, but its structural writes
49 used FriiDump's logged `fprintf` wrapper. String values were emitted by a
50 different direct-file helper, so the human-readable run log received an
51 incomplete mirror such as:
58 0.5.3.7 writes JSON exclusively through unlogged file-output functions. The
59 human log now contains only the report completion line, while the complete JSON
60 remains in its own evidence artifact.
62 ## Evidence-oriented console result
68 ------------------------------------------------------------
69 DAT redump_dat/Nintendo - GameCube.dat
71 Matched entry Sonic Mega Collection (USA)
72 ROM Sonic Mega Collection (USA).iso
77 Overall VERIFIED AGAINST REDUMP
78 Confidence Exact archive match
81 A non-exact result displays a closest candidate only when at least one hash
82 correlates. Otherwise, FriiDump reports aggregate size/hash match counts and
83 states that no archive identity was established.
87 Schema 2 preserves the original top-level fields and adds:
93 - `field_match_counts`
97 The `evidence` object records `PASS`, `FAIL`, or `N/A` for size, CRC32, MD5, and
100 ## Atomic report publication
102 The report lifecycle is:
104 1. Write a sibling `<report>.tmp` file.
105 2. Flush the C stream.
106 3. Synchronize the file descriptor.
107 4. Close the temporary file.
108 5. Atomically replace the final report path.
110 If writing or synchronization fails, the temporary file is removed and the
111 previous complete final report remains unchanged. If the final replacement
112 fails, the complete temporary report is retained and its path is printed.
116 - Linux CMake build: PASS
117 - Help/version output: PASS (`FriiDump 0.5.3.7`)
118 - Exact Sonic DAT match: PASS
119 - Partial-correlation candidate test: PASS
120 - No-hash-correlation test: PASS
121 - Schema-2 JSON parse: PASS
122 - SHA-256 retention: PASS
123 - Atomic replacement of an existing report: PASS
124 - Temporary file absent after successful replacement: PASS
125 - Report contents absent from the run-log stream: PASS
127 The existing Reed-Solomon warning in `libfriidump/rs.c` remains unchanged and is
128 outside this update's scope.