1) I'm having a content /content/en/homepage - and used experience fragment component inside the page and authored this experience fragment URL /content/experience-fragments/sample/en/header-component-xf/master.html which i already created in experience fragment.
2) I created a language copy(fr) from /content/en and type is translation project. After creating this language copy, if i go and see this url /content/fr/homepage and edit the content fragment and see the url it has been converted from /content/experience-fragments/sample/en/header-component-xf/master.html to /content/experience-fragments/sample/fr/header-component-xf/master.html.But the url change is not happening if you create the language copy.
I want to know how the URL conversion happening in language copy and not in live copy. Where the logic is written? I want to write my own logic if it is livecopy and update the XF URL. is it possible?
I had a look on this, but i could find out any clue /libs/cq/experience-fragments/editor/components/experiencefragment .
I am not sure if I'm able to interpret it correctly. I think your question is that experience fragment url changes happen "automatically" for language copies but not for live copies. Is that an accurate statement?
To me it appears to be more of MSM issue than an experience fragment issue. Hence, I'm not able to understand the reason to overlay XF.
Did you validate that you have proper Live copy configurations; cq:LiveSync and cq:LiveRelationship? You could check the MSM configurations in /system/console/configMgr