From your link:
It works by letting users record fake ancestry information for commits. This way you can make git pretend the set of parents a commit has is different from what was recorded when the commit was created.
In a shallow clone, your root commit is one that should have parents, but not in your repo. So it seems a good use case for grafting.
In effect:
Def.: Shallow commits do have parents, but not in the shallow
repo, and therefore grafts are introduced pretending that
these commits have no parents.