Before Sketch introduced Libraries I worked in one big Sketch file with lots of symbols. When Libraries were introduced I split this file into separate libraries for different parts of my design system. One for icons, one for buttons, one for components etc. I did this by duplicating the file and deleting the symbols not needed in the particular library.
The problem is that when you duplicate a file, you create a new file with the same identifier as the old file. If both are used as libraries then you have a situation where you can insert symbol instances from different library but the identifier is not unique.
I don't know for sure whether Sketch can handle this because I don't know whether Sketch uses anything other than the document ID to reference the library. But this issue has definitely broken Zeplin! The symbols instances are visible on the page but you can't inspect the elements, or access any exported assets related to these symbols.
Can anyone think of a fix? I was thinking there might be a way to programmatically create a new unique identifier in a conflicted library and then process files that reference the library so that they point at the new identifier.
Perhaps there is a plugin that already does something like this.