]> FriiDump Source - friidump.git/commitdiff
FriiDump 0.5.3.16: finalize release identity and documentation v0.5.3.16-pf1
authorjtryba <jtryba2010@gmail.com>
Sat, 25 Jul 2026 01:07:55 +0000 (20:07 -0500)
committerjtryba <jtryba2010@gmail.com>
Sat, 25 Jul 2026 01:07:55 +0000 (20:07 -0500)
13 files changed:
CMakeLists.txt
README.md
build_msvc32.cmd
docs/CURRENT_STATUS.md
docs/ChangeLog
docs/LINUX.md
docs/options
docs/reports/FRIIDUMP_NATIVE_COMPATIBILITY_REPORTING_0.5.3.16.md
docs/reports/FRIIDUMP_RELEASE_FINALIZATION_0.5.3.16.md [new file with mode: 0644]
friidump-handoff.md
src/friidump.c
validation/README.md
validation/friidump-linux-rawio-capability.sh

index 635300d426df2f5273a161cac6d41f0c6ebc1a54..d4b21bf4a1fbd220ce7ea1361902964d88026a36 100644 (file)
@@ -9,8 +9,8 @@ if (UNIX AND NOT WIN32)
     message (WARNING
         "Linux vendor-command paths require CAP_SYS_RAWIO. "
         "A normal build does not install this capability. "
     message (WARNING
         "Linux vendor-command paths require CAP_SYS_RAWIO. "
         "A normal build does not install this capability. "
-        "After validating the exact executable, run the candidate validation "
-        "script's capability phase or validation/friidump-linux-rawio-capability.sh install. "
+        "After validating the exact executable, run "
+        "validation/friidump-linux-rawio-capability.sh install. "
         "Do not run the entire FriiDump process as root; rebuilding or replacing "
         "the executable clears file capabilities."
     )
         "Do not run the entire FriiDump process as root; rebuilding or replacing "
         "the executable clears file capabilities."
     )
index 27c81d7e7d917182aac996ebbad43778f06f3ec2..0318a060334bc9be12cb92121bdb9cefa3d7c8aa 100644 (file)
--- a/README.md
+++ b/README.md
@@ -1,19 +1,19 @@
 # FriiDump — Project Frankenstein Branch
 
 # FriiDump — Project Frankenstein Branch
 
-## Candidate21 Linux Xbox DMI boundary correction
+## FriiDump 0.5.3.16-pf1 Linux Xbox DMI boundary correction
 
 Candidate20 proved the complete Linux GDR-8050L Xbox command and data path:
 direct SG_IO challenge delivery, both game-view transitions, XDVDFS metadata,
 drive-captured game lead-in, partial GAME-XDVDFS output, controlled
 cancellation, hashes, native reporting, and STOP UNIT.
 
 
 Candidate20 proved the complete Linux GDR-8050L Xbox command and data path:
 direct SG_IO challenge delivery, both game-view transitions, XDVDFS metadata,
 drive-captured game lead-in, partial GAME-XDVDFS output, controlled
 cancellation, hashes, native reporting, and STOP UNIT.
 
-Candidate21 preserves that exact Windows-sequence control flow and SG_IO
-handshake. It corrects one remaining MMC boundary: standard READ DVD STRUCTURE
-uses CDB byte 7 for the Format field. Candidate20 incorrectly wrote the format
-to byte 11 (Control), so DMI format `0x04` was not captured and the media ID
-remained empty.
+FriiDump 0.5.3.16-pf1 preserves that exact Windows-sequence control flow and
+SG_IO handshake. It corrects one remaining MMC boundary: standard READ DVD
+STRUCTURE uses CDB byte 7 for the Format field. Candidate20 incorrectly wrote
+the format to byte 11 (Control), so DMI format `0x04` was not captured and the
+media ID remained empty.
 
 
-Candidate21 also adds persistent PFI/DMI capture diagnostics and a source
+The release also adds persistent PFI/DMI capture diagnostics and a source
 contract that compares the portable request against the proven copied Windows
 `GetMediaID()` request.
 
 contract that compares the portable request against the proven copied Windows
 `GetMediaID()` request.
 
@@ -27,7 +27,6 @@ the executable clears that capability.
 See [`docs/LINUX.md`](docs/LINUX.md) before Linux hardware use.
 
 ## Candidate11 Linux Xbox parity baseline
 See [`docs/LINUX.md`](docs/LINUX.md) before Linux hardware use.
 
 ## Candidate11 Linux Xbox parity baseline
-
 Candidate11 begins the Linux parity campaign without replacing the validated
 Windows/MSVC GDR-8050L path. The Windows copied-reference implementation remains
 unchanged for challenge drives. Linux now uses the existing portable MMC/Xbox
 Candidate11 begins the Linux parity campaign without replacing the validated
 Windows/MSVC GDR-8050L path. The Windows copied-reference implementation remains
 unchanged for challenge drives. Linux now uses the existing portable MMC/Xbox
@@ -43,8 +42,8 @@ ordinary Linux ISO/XISO user paths.
 
 FriiDump is a command-line optical-disc dumping tool for Nintendo GameCube,
 Nintendo Wii, standard DVD-ROM, and selected Original Xbox/XGD workflows. This
 
 FriiDump is a command-line optical-disc dumping tool for Nintendo GameCube,
 Nintendo Wii, standard DVD-ROM, and selected Original Xbox/XGD workflows. This
-repository preserves the Project Frankenstein development branch based on
-FriiDump **0.5.3.5**.
+repository preserves the Project Frankenstein release line through
+FriiDump **0.5.3.16-pf1**.
 
 The branch extends the original FriiDump code with:
 
 
 The branch extends the original FriiDump code with:
 
@@ -61,31 +60,27 @@ Xbox-specific behavior is documented in [`docs/XBOX.md`](docs/XBOX.md).
 
 ## Repository status
 
 
 ## Repository status
 
-This is the active canonical Project Frankenstein FriiDump repository. Authority
-was accepted at annotated tag `v0.5.3.5-pf1`. The imported baseline is
-intentionally conservative: source and
-maintained documentation were preserved, while disc images, live logs, compiled
-binaries, build directories, result archives, and unrelated reverse-engineering
-work were excluded.
+This is the active canonical Project Frankenstein FriiDump repository.
+FriiDump 0.5.3.16-pf1 incorporates the accepted native-reporting campaign,
+Linux raw-I/O authorization boundary, GameCube/Linux parity work, and the
+GDR-8050L Linux Xbox DMI correction.
 
 
-The baseline source came from:
+Release authority is the annotated tag `v0.5.3.16-pf1`. Verify its live tag
+object, peeled commit, and tree before treating a checkout or archive as
+canonical.
 
 
-```text
-D:\vscode-workspace\friidump
-```
-
-No firmware binaries or disc images belong in this Git repository.
+Disc images, live logs, compiled binaries, build directories, result archives,
+and unrelated reverse-engineering work remain outside this repository.
 
 Authority surfaces:
 
 ```text
 repository: /srv/project-frankenstein/repos/friidump.git
 authority marker: /srv/project-frankenstein/catalog/authority/friidump.json
 
 Authority surfaces:
 
 ```text
 repository: /srv/project-frankenstein/repos/friidump.git
 authority marker: /srv/project-frankenstein/catalog/authority/friidump.json
-canonical tag: v0.5.3.5-pf1
+canonical tag: v0.5.3.16-pf1
 ```
 
 ## Build
 ```
 
 ## Build
-
 ### Windows — validated MSVC 32-bit path
 
 The maintained Windows helper invokes the Visual Studio 2019 Build Tools
 ### Windows — validated MSVC 32-bit path
 
 The maintained Windows helper invokes the Visual Studio 2019 Build Tools
@@ -210,7 +205,7 @@ FriiDump is distributed under the GNU General Public License, version 2 or
 later. See [`COPYING`](COPYING). Existing source-file copyright notices and
 authors are preserved.
 
 later. See [`COPYING`](COPYING). Existing source-file copyright notices and
 authors are preserved.
 
-## Candidate21 Xbox Linux scope
+## FriiDump 0.5.3.16-pf1 Xbox Linux scope
 
 Candidate21 preserves Candidate20's successful SG_IO Xbox handshake and
 Windows state-machine order. The only functional correction is the standard
 
 Candidate21 preserves Candidate20's successful SG_IO Xbox handshake and
 Windows state-machine order. The only functional correction is the standard
index e2a3d1dae0e0fb07aaff843b10abf4ad2992ff88..5bbc5cf22ed46419db4b2bc39b2f228fcf6e566c 100644 (file)
@@ -49,7 +49,7 @@ set "HELP_LOG=%TEMP%\friidump-help-%RANDOM%-%RANDOM%.txt"
 "%~dp0friidump.exe" --help > "%HELP_LOG%" 2>&1
 type "%HELP_LOG%"
 
 "%~dp0friidump.exe" --help > "%HELP_LOG%" 2>&1
 type "%HELP_LOG%"
 
-findstr /c:"FriiDump 0.5.3.16-pf1-candidate21" "%HELP_LOG%" >nul
+findstr /c:"FriiDump 0.5.3.16-pf1" "%HELP_LOG%" >nul
 if errorlevel 1 (
   echo [ERROR] FriiDump help/version smoke test failed.
   del /q "%HELP_LOG%" >nul 2>nul
 if errorlevel 1 (
   echo [ERROR] FriiDump help/version smoke test failed.
   del /q "%HELP_LOG%" >nul 2>nul
index 85e1df4644efdaa959ed8cd2e6ac804ef42d0a57..da3739209cc26adf9b7e61a3e8acc7e1de798f0b 100644 (file)
@@ -2,48 +2,46 @@
 
 ## Authority
 
 
 ## Authority
 
-FriiDump remains governed by the established Project Frankenstein repository
-and promoted release history. Candidate11 is a development candidate derived
-from candidate10; it is not yet a promoted release.
+FriiDump 0.5.3.16-pf1 is the release line prepared from the accepted
+Candidate21 implementation. The annotated release tag is the immutable
+authority after publication; verify the live tag object, peeled commit, and
+tree rather than inferring authority from a checkout directory or ZIP name.
 
 ## Validated paths
 
 
 ## Validated paths
 
-- Windows/MSVC 32-bit candidate10 challenge-drive behavior remains the current
-  live-validated Windows authority.
-- Candidate11 compiles cleanly through Linux/CMake as a static binary.
-- Native-report fixtures and schema/semantic validation pass.
-- A portable XDFS/XBE metadata fixture proves title, media ID, Title ID, raw
-  GameRegion, formatted region, and UTF-16-to-UTF-8 conversion.
-- Linux ISO/XISO code now returns the same structured Xbox result fields used by
-  native reports, summary output, hashes, and Redump verification.
-- Linux GDR-8050L default output names can be derived from XBE/DMI metadata.
+- The maintained Visual Studio 2019 32-bit build and native-report fixtures pass.
+- Linux/CMake builds pass with explicit normal-user `CAP_SYS_RAWIO` handling.
+- A GCC-4244 B101 completed the Sonic Mega Collection (US) GameCube dump with an
+  exact full-image hash match.
+- The Linux GDR-8050L path established both Xbox game-view transitions, read
+  XDVDFS metadata, captured DMI media ID `TQ00501A`, produced a controlled
+  partial GAME-XDVDFS output with hashes and native reporting, and completed
+  STOP UNIT.
+- Native `friidump-test-result.v1` reports cover complete, partial, failed,
+  cancelled, no-media, seed-failure, and modified-firmware states.
 
 ## Hardware-validation boundary
 
 
 ## Hardware-validation boundary
 
-Candidate11 has not yet been run against a physical Xbox-capable optical drive
-on Linux. Real hardware must prove no-media behavior, unlock state transitions,
-metadata, controlled cancellation, exact hashes, STOP UNIT, complete XISO, and
-redump-style ISO behavior before Linux support can be described as validated.
-
-The development-only XGD1 layout and raw-ID probes remain Windows-only in this
-first candidate11 increment. They are tracked as a separate Linux-port substage
-and do not block ordinary user ISO/XISO validation.
+The Linux GDR-8050L evidence validates the command path, game-view state,
+metadata, controlled partial output, cancellation, reporting, and cleanup. It
+does not by itself claim a newly completed full Original Xbox image on Linux.
+Candidate-specific validation scripts remain in `validation/` as historical,
+exact evidence tools; release builds use the maintained build entry points and
+the generic raw-I/O capability helper.
 
 ## Known inherited warnings
 
 
 ## Known inherited warnings
 
-`libfriidump/rs.c` retains an inherited right-shift-count warning. Additional
-warnings visible under an explicit `-Wall -Wextra` audit predate candidate11 or
-are non-fatal test-path warnings. No candidate11 portable metadata source error
-or warning blocked the build.
+`libfriidump/rs.c` retains an inherited right-shift-count warning. Other
+explicit `-Wall -Wextra` warnings are pre-existing or non-fatal test-path
+warnings and were not silently normalized during release finalization.
 
 ## Campaign
 
 
 ## Campaign
 
-After Linux user-path validation, work proceeds to exact-tag release automation,
-then the FriiDump homepage/compatibility site v1.3.0, then a separately identified
-MinGW investigation.
+Release publication uses an exact annotated tag, exact-tag Windows and Linux
+builders, immutable artifact manifests, and independent private/public
+read-back. Candidate retirement remains a separate final gate.
 
 ## Candidate12 correction status
 
 ## Candidate12 correction status
-
 Candidate12 closes the Linux GCC-4244 B101 full-dump gate and corrects runtime
 DAT discovery, Linux lock-status reporting, and the Linux `--help` validation
 false failure. The accepted live result is Sonic Mega Collection (US), 712880
 Candidate12 closes the Linux GCC-4244 B101 full-dump gate and corrects runtime
 DAT discovery, Linux lock-status reporting, and the Linux `--help` validation
 false failure. The accepted live result is Sonic Mega Collection (US), 712880
index 71f91eb041a04e41e203333fb226b531529627e4..ba4bcc8ff61f001011f637c54f5082f98557cf60 100644 (file)
@@ -1,5 +1,5 @@
-FriiDump 0.5.3.16-pf1-candidate21
------------------------------------
+FriiDump 0.5.3.16-pf1
+----------------------
 - Correct standard READ DVD STRUCTURE Format placement from CDB byte 11
   (Control) to byte 7, matching the copied Windows DMI request.
 - Add persistent Xbox PFI/DMI capture diagnostics.
 - Correct standard READ DVD STRUCTURE Format placement from CDB byte 11
   (Control) to byte 7, matching the copied Windows DMI request.
 - Add persistent Xbox PFI/DMI capture diagnostics.
index 513ab2f1d9f2901d01ba56198d5bd1724aa0e698..4c877fbcb123b4f6db11cd639a70a76b3d043f18 100644 (file)
@@ -89,11 +89,12 @@ bash ./validation/friidump-linux-rawio-capability.sh remove \
   ./build/src/friidump
 ```
 
   ./build/src/friidump
 ```
 
-The candidate validator exposes the same installation step:
+The maintained release helper applies the capability only to the exact
+validated executable:
 
 ```bash
 
 ```bash
-bash ./validation/friidump-v0.5.3.16-pf1-candidate21-linux-live-validation.sh \
-  capability
+bash ./validation/friidump-linux-rawio-capability.sh \
+  install ./build/src/friidump
 ```
 
 ### Capability lifetime
 ```
 
 ### Capability lifetime
index d0aceddbf19ea07e88ac8130dab2bfb89ed9b9c1..f3c02485cb7b3aabc3df6bd0b385654e53636f0d 100644 (file)
@@ -1,5 +1,5 @@
 [FRIIDUMP] Log file: friidump.log
 [FRIIDUMP] Log file: friidump.log
-FriiDump 0.5.3.16-pf1-candidate21 - Copyright (C) 2007 Arep
+FriiDump 0.5.3.16-pf1 - Copyright (C) 2007 Arep
 This software comes with ABSOLUTELY NO WARRANTY.
 This is free software, and you are welcome to redistribute it
 under certain conditions; see COPYING for details.
 This software comes with ABSOLUTELY NO WARRANTY.
 This is free software, and you are welcome to redistribute it
 under certain conditions; see COPYING for details.
index 5f8635593d13aad7ccc36db8949f71a3ef7e2aef..259f639ed2a7867183919531933ebfb0af6ffc38 100644 (file)
@@ -2,11 +2,11 @@
 
 ## Status
 
 
 ## Status
 
-This is a source candidate for Windows and physical-drive validation. It is not
-a promoted release and does not replace `v0.5.3.15-pf1`.
+This document records the implementation and accepted validation basis for
+FriiDump 0.5.3.16-pf1. Candidate-specific reports remain historical evidence;
+the release identity is the annotated tag and its exact commit/tree.
 
 ## Scope
 
 ## Scope
-
 The change adds native `friidump-test-result.v1` generation to normal dump
 invocations. It deliberately excludes broad drive-research discovery; that
 work remains assigned to a separate future utility.
 The change adds native `friidump-test-result.v1` generation to normal dump
 invocations. It deliberately excludes broad drive-research discovery; that
 work remains assigned to a separate future utility.
@@ -103,19 +103,19 @@ The source includes fixtures for:
 The fixtures are validated against the exact Compatibility Database v1.2.0 JSON
 Schema. The database PHP semantic validator is used during package validation.
 
 The fixtures are validated against the exact Compatibility Database v1.2.0 JSON
 Schema. The database PHP semantic validator is used during package validation.
 
-## Remaining promotion gates
-
-Before a release can be promoted:
-
-1. Build with the maintained Visual Studio 2019 32-bit toolchain.
-2. Run the MSVC fixture tests.
-3. Validate no-media reporting on a real drive.
-4. Validate a complete GameCube or Wii report.
-5. Validate a controlled partial cancellation.
-6. Validate Xbox assembled-output reporting on the applicable hardware path.
-   The copied GDR-8050L reference dumper remains a special Windows-only path;
-   complete output reporting must be validated there, and Ctrl+C cancellation
-   must not be claimed for that path until its copied loops receive an explicit
-   cancellation callback.
-7. Submit generated reports to the live v1.2.0 database and confirm acceptance.
-8. Review exact report contents before assigning a release tag.
+## Accepted validation basis
+
+The release campaign completed these gates:
+
+1. Maintained Visual Studio 2019 32-bit build and fixture execution.
+2. Linux/CMake build and raw-I/O authorization preflight.
+3. Real-drive no-media and controlled-partial reporting.
+4. Complete GameCube validation with an exact known-good image hash.
+5. Original Xbox GDR-8050L game-view, XDVDFS, DMI/media-ID, native-report,
+   controlled-cancellation, hashing, and STOP UNIT validation.
+6. Exact report review and compatibility-database acceptance.
+7. Candidate publication and exact fast-forward promotion to canonical `main`.
+
+The copied Windows challenge-drive loops retain their documented cancellation
+boundary. No broader cancellation claim is inferred from the portable Linux
+path.
\ No newline at end of file
diff --git a/docs/reports/FRIIDUMP_RELEASE_FINALIZATION_0.5.3.16.md b/docs/reports/FRIIDUMP_RELEASE_FINALIZATION_0.5.3.16.md
new file mode 100644 (file)
index 0000000..3bb33b7
--- /dev/null
@@ -0,0 +1,39 @@
+# FriiDump 0.5.3.16-pf1 release finalization
+
+## Accepted implementation
+
+The functional implementation was accepted and promoted from:
+
+- Candidate branch: `candidate/v0.5.3.16-pf1-candidate21`
+- Candidate/main commit: `29417fff9ebac65b1cf60ea8951c687696302c55`
+- Candidate/main tree: `d9a03be5b4ca5a5d2c5f5a14400a9ba3488c56db`
+- Parent: `de0c1a3eccb6f04bbfd23436b592fe7fc501fcf2`
+
+## Release-only scope
+
+Release finalization changes only user-visible version identity, current-status
+documentation, the generic Linux capability helper's default build path/version
+check, and release provenance documentation.
+
+It does not change the accepted optical-drive command paths, Xbox handshake,
+DMI/PFI request construction, native-report schema or behavior, dump geometry,
+hashing, cancellation boundaries, or STOP UNIT behavior.
+
+Candidate-specific validators remain unchanged as historical exact-evidence
+tools.
+
+## Accepted hardware evidence
+
+- GCC-4244 B101: complete GameCube dump and exact known-good image match.
+- GDR-8050L 0012 on Linux: both Xbox game-view transitions, XDVDFS readability,
+  DMI media ID `TQ00501A`, controlled partial output, hashes, atomic native
+  report, and STOP UNIT.
+
+The Linux GDR-8050L result validates the command and controlled-partial path; it
+does not invent a full-image completion claim.
+
+## Release boundary
+
+The intended immutable annotated tag is `v0.5.3.16-pf1`. Tag creation,
+exact-tag Windows/Linux builds, immutable artifact publication, and candidate
+retirement are separate gates.
\ No newline at end of file
index 4be897057a0e8d33e67e293a5e52a3f82d7af508..5e5ddec5735990c96588b37e164fd894a0c05f46 100644 (file)
@@ -1,37 +1,33 @@
-# FriiDump Candidate21 Handoff
-
-Candidate20 established the Linux Xbox game view twice on the USB
-`HL-DT-ST DVD-ROM GDR8050L 0012`, read Red Faction II XDVDFS data, captured the
-32-sector game lead-in, produced a 482,115,584-byte controlled partial image,
-hashed it, wrote an atomic native report, and completed STOP UNIT.
-
-Candidate20 evidence SHA-256:
-
-`f82ceb50ca7e41d3a9c962557b2dadb47276c767da756721bb9e4337572742d2`
-
-Two acceptance findings remained:
-
-1. Step 9 sticky descrambling returned CHECK CONDITION `05/81/00`, but both
-   final capacity checks reported 3,431,264 sectors and XDVDFS data was
-   readable. The transport result remains logged as FAIL, while the live
-   acceptance policy treats it as non-blocking when game-view proof succeeds,
-   matching the copied Windows path's outcome-based authority.
-2. Media ID was empty. The portable READ DVD STRUCTURE helper placed Format in
-   CDB byte 11 instead of byte 7. The copied Windows `GetMediaID()` path uses
-   byte 7. Candidate21 corrects this boundary and adds persistent
-   `[XBOX-DVD-STRUCTURE]` PFI/DMI diagnostics.
-
-Candidate21 does not add RecoveryKick or any generic recovery/authentication
-sequence.
-
-Validation order:
-
-```bash
-bash ./validation/friidump-v0.5.3.16-pf1-candidate21-linux-live-validation.sh build
-bash ./validation/friidump-v0.5.3.16-pf1-candidate21-linux-live-validation.sh capability
-```
-
-Windows MSVC validation is required before the final physical Linux Xbox smoke.
-The final smoke must report media ID `TQ00501A`, successful DMI capture, both
-game-view transitions, controlled cancellation, hashes, native report, and
-STOP UNIT.
+# FriiDump 0.5.3.16-pf1 Release Handoff
+
+## Accepted implementation authority
+
+- Promoted main commit:
+  `29417fff9ebac65b1cf60ea8951c687696302c55`
+- Promoted implementation tree:
+  `d9a03be5b4ca5a5d2c5f5a14400a9ba3488c56db`
+- Candidate branch:
+  `candidate/v0.5.3.16-pf1-candidate21`
+
+Candidate21 closed the Linux GDR-8050L DMI boundary by placing READ DVD
+STRUCTURE Format in CDB byte 7. Physical validation captured media ID
+`TQ00501A`, established both game-view transitions, read XDVDFS metadata,
+produced a controlled partial output with hashes and an atomic native report,
+and completed STOP UNIT.
+
+## Release-finalization boundary
+
+The release-finalization commit changes only release identity, active
+documentation, and the generic Linux capability helper's expected release
+version/default build path. Candidate-specific validation scripts remain
+unchanged as exact historical evidence.
+
+## Remaining release gates
+
+1. Review and accept the release-finalization commit.
+2. Build and test Windows and Linux from the exact finalization commit.
+3. Create one annotated tag `v0.5.3.16-pf1`.
+4. Push only that tag.
+5. Verify private/public tag object, peeled commit, tree, dispatcher, and exact
+   artifacts.
+6. Retire the candidate branch in a separate gate after release acceptance.
\ No newline at end of file
index 2a3997940c348c79376f1a8611c3fadf5ad2ee2c..f42b744efc2b0d251e9e941a4abd30cfc3022bfa 100644 (file)
@@ -491,7 +491,7 @@ static void friidump_print_validation_summary(double duration, bool have_duratio
 #define PACKAGE_NAME "FriiDump"
 
 /* Define to the version of this package. */
 #define PACKAGE_NAME "FriiDump"
 
 /* Define to the version of this package. */
-#define PACKAGE_VERSION "0.5.3.16-pf1-candidate21"
+#define PACKAGE_VERSION "0.5.3.16-pf1"
 
 
 #ifdef WIN32
 
 
 #ifdef WIN32
index 87d03161bed6f57fb3600e695b8090720316a32a..b7aea97c4d7ccda084f473e0a930c9130fe316ee 100644 (file)
@@ -1,10 +1,21 @@
-# FriiDump 0.5.3.16-pf1-candidate21 validation
+# FriiDump 0.5.3.16-pf1 validation history
 
 
-Candidate21 preserves Candidate13's seed diagnostics and Candidate12's DAT and
-Linux-lock corrections while making the Linux raw-I/O requirement explicit.
+The Candidate21 validators below are retained as exact campaign evidence. They
+verify the candidate identity and should not be renamed or repurposed as
+release builders.
 
 
-## Linux build
+For a normal release build, use the maintained entry points:
 
 
+```text
+Windows: build_msvc32.cmd
+Linux:   cmake -S . -B build -DBUILD_STATIC_BINARY=ON
+         cmake --build build
+```
+
+After validating the exact Linux executable, apply the minimum file capability
+with `validation/friidump-linux-rawio-capability.sh`.
+
+## Candidate21 Linux build
 Run from the source root:
 
 ```bash
 Run from the source root:
 
 ```bash
index 09542491b625d195fd5942ec6af1d96f3ef754ad..e6bef74c68129c3a7b78db1284c0cab39e7190c5 100644 (file)
@@ -3,9 +3,9 @@ set -Eeuo pipefail
 
 action="${1:-status}"
 source_root="$(cd -- "$(dirname -- "${BASH_SOURCE[0]}")/.." && pwd)"
 
 action="${1:-status}"
 source_root="$(cd -- "$(dirname -- "${BASH_SOURCE[0]}")/.." && pwd)"
-default_binary="$source_root/build-candidate21-linux/src/friidump"
+default_binary="$source_root/build/src/friidump"
 binary="${2:-$default_binary}"
 binary="${2:-$default_binary}"
-expected_version="0.5.3.16-pf1-candidate21"
+expected_version="0.5.3.16-pf1"
 
 fail() {
     printf 'ERROR: %s\n' "$*" >&2
 
 fail() {
     printf 'ERROR: %s\n' "$*" >&2