now bin-xyz is a broken link
A razão para isso é óbvia: o .. tem que se referir ao diretório pai atual , ou então seria completamente ambíguo.
Como ~/a/src -> /home/user/b/sync/src , presumo que, como $PWD e ln -s ../bin bin-xyz , você esteja tentando vincular /home/user/b/sync/src/bin-xyz a /home/user/a/sync/bin . Nesse caso, você deve usar apenas caminhos absolutos:
ln -s /home/user/a/sync/bin /home/user/b/sync/src/bin-xyz
A razão ln não preenche os .. de espaços em branco a este respeito é que, ao contrário do seu shell atual, não tem acompanhado o seu movimento e não tem como saber que .. significava algo diferente do diretório pai real.
É (talvez?) implícito em sua pergunta que você não pode fazer isso porque na verdade existem dois sistemas diferentes envolvidos. Isso implica que um compartilhamento de rede é montado ou você usa o mesmo dispositivo de bloco com ambos, o que implica, por sua vez, um Problema XY - não pode resolver isso sem mais detalhes.