macOS のテキストエディット.app を使ってハードリンクのファイルを編集・保存すると、inode が別のファイルとして保存される。
詳細
a.txt を作成し、ハードリンク b.txt を作成する。
% echo "test" > a.txt
% ln a.txt b.txt
% ls -i
7972329 a.txt 7972329 b.txt
この状態でテキストエディット.app で b.txt を開いて編集し保存すると inode が別なファイルとして保存される。
% ls -i
7972329 a.txt 7972381 b.txt
システム的な制限というわけではなくテキストエディット.app の問題のようで、VS Code で編集した場合はハードリンクは壊れないし、当然 vi などで編集しても壊れない。
なお、シンボリックリンクの場合にはテキストエディット.app で編集しても壊れない。