The changed root no longer matches the original root.

highlighted = computed this step

The old and new roots differ

The original root was 0x0e. The changed root is 0x0f.

0x0e0x0f0x0e\ne 0x0f
Original rootA toy Merkle tree recomputes only the affected path.Original root - original root 0eroot 0eoriginal rootAB 65pair hashA aaleaf hashB bbleaf hashCD a9pair hashC ccleaf hashD ddleaf hash

The changed tree shows where the difference traveled

The changed tree carries C=0xcd, CD=0xaa, and root=0x0f.

C,CD,rootC,CD,root
Changed rootA toy Merkle tree recomputes only the affected path.Changed root - changed root 0froot 0fchanged rootAB 65unchangedA aaunchangedB bbunchangedCD aarecomputedC cdchanged leafD ddunchanged

A root comparison catches the change

A verifier expecting 0x0e would recompute 0x0f from the changed chunks.

expected 0x0e recomputed 0x0f\text{expected }0x0e\ne\text{ recomputed }0x0f
Changed rootA toy Merkle tree recomputes only the affected path.Changed root - changed root 0froot 0fchanged rootAB 65unchangedA aaunchangedB bbunchangedCD aarecomputedC cdchanged leafD ddunchanged

Honesty boundary

NOTE: toy one-byte hash and four chunks only; not SHA 256, collision resistance, signatures, transparency logs, blockchain, storage proofs, or production integrity.

toy only=1\text{toy only}=1
Changed rootA toy Merkle tree recomputes only the affected path.Changed root - changed root 0froot 0fchanged rootAB 65unchangedA aaunchangedB bbunchangedCD aarecomputedC cdchanged leafD ddunchanged