Skip to content

Allow large save writes and fix replacement verification - #16

Merged
dougchansan merged 2 commits into
mainfrom
feature/pr12-replacement-verification
Nov 8, 2026
Merged

dougchansan merged 2 commits into
mainfrom
feature/pr12-replacement-verification

Conversation

@dougchansan

Copy link
Copy Markdown
Owner

PR #12 adds bounded hashing for large save files, but its single-file writer reports failure after successfully replacing saveg.dat: postwrite verification checks the replacement against both the new payload and the original backup.

This PR carries forward the original contributor commit from #12 and adds a fix:

  • Verify the target against the replacement payload, including its displayed status.
  • Compare only preserved files against the original backup.
  • Retain the prewrite backup comparison and missing-target/read-back failure checks.
  • Add seven offline tests that execute the actual writer with in-memory engine adapters.

Validation:

  • All seven writer regression tests and three existing hash-helper tests pass locally.
  • The changed-replacement test fails against the original Allow Elden Ring saves and verify large writes in chunks #12 source with "Preserved file differs after commit" and passes with this fix.
  • Syntax and whitespace checks pass.
  • No hardware execution was performed for this fix.

The GitHub integration could not update the contributor's branch ("Resource not accessible by integration"), so the corrected changes are published here. The original contributor commit and authorship are preserved. This is the corrected replacement for #12.

cpypwn and others added 2 commits November 2, 2026 21:48
Compare the written target with the replacement payload and reserve backup
comparisons for preserved files, including the displayed verification status.

Add offline writer regression tests for changed and identical replacements,
stale backups, corrupted read-backs, and missing or unreadable targets.
@dougchansan
dougchansan merged commit 146fcdd into main Nov 8, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants