Irregular hash mismatch in fixed-output derivation

Hello! I do have package in overlay which is coming from private git with expression similar to

    world-src = nixpkgs.fetchgitPrivate {
      url = "git@github.com:hello/world.git";
      rev = "ea4e415ddc68a15341ae48b8252c2a27ec67b4cd";
      sha256 = "0lxvl0y1p0haqw3jah0dn6i0lx3rbwd7bwyxirahi5xd44l2w4pm";
      deepClone = true;
    };

And sometimes nix is showing error similar to this without any particular reason

hash mismatch in fixed-output derivation '/nix/store/rc7065v6par2iwcy12drxl6nmy3kygsf-hello-ea4e415':
  wanted: sha256:0lxvl0y1p0haqw3jah0dn6i0lx3rbwd7bwyxirahi5xd44l2w4pm
  got:    sha256:1zcxd6vxn5libks8x2rfda29mx2ii850wb2r31x77hq7g7jrs8yk

And often if I do give desired hash to the package like this

    world-src = nixpkgs.fetchgitPrivate {
      url = "git@github.com:hello/world.git";
      rev = "ea4e415ddc68a15341ae48b8252c2a27ec67b4cd";
      sha256 = "1zcxd6vxn5libks8x2rfda29mx2ii850wb2r31x77hq7g7jrs8yk";
      deepClone = true;
    };

Suddenly nix will want original hash back with opposite error

hash mismatch in fixed-output derivation '/nix/store/rc7065v6par2iwcy12drxl6nmy3kygsf-hello-ea4e415':
  wanted: sha256:1zcxd6vxn5libks8x2rfda29mx2ii850wb2r31x77hq7g7jrs8yk
  got:    sha256:0lxvl0y1p0haqw3jah0dn6i0lx3rbwd7bwyxirahi5xd44l2w4pm

And then I give original hash, and it works. It’s very annoying. What is causing this errors and how to fix that permanently, without need of swapping hashes?