After playing around with this character and adding a spiked collar and armband (that I have kindly taken from Tourlist's Demoness, thank you very much), this happened as soon as I tried to rescale some bones (actually after trying to rescale a second time, the first time it just kind of locks in place?). The problem seems to come from having the collar as a part and then have the spikes as a part on the collar, because if I delete the spikes (but leave the collar) everything works fine.
Here's the char file
Comments
I tried recreating your bug and your workaround, and, for me, the part that caused the issue was the Armband, not the neck spikes, wich means the issue is not the part parenting. A simple workaround I've found is to either delete the part (as you said), or un-parent it.
First thing I can say is that I was unable to replicate the bug on other characters, even though they also have parts that parent other parts (the Demoness, for example). And because of that, I give you two tips:
1st - try recreating the char from anew, maybe this one got corrupted somehow
2nd - and the most valuable tip I can give you, is to NEVER scale the root (on this one and future chars), rather, scale each bone individualy. Unity (though I LOVE it) is a vengeful asshole, and doesn't seem to it like when you scale the root, and most likely it'll give you trouble for that.
Edit: I was able to recreate this bug everytime on any char, and it seems to only happen to me when I scale whilst any of the armLower bones (left or right) has a child part. Why exactly this happens, I don't know. I'd need access to the original (and rigged) model files @odes and @dogson use to try to find the root of the problem (unless it's a bug on the code, in wich I'd need to take a look at it as well).
For now, I reccomend you test to see if your problem is also on the armLower bones, or any other bone in particular. And if it's on other bone, not the armLower ones, then the problem is on either installation, or bug in the code
The bug is solved and the fix will be included in the next release.
When bone options is changed, it fetches all relevant bones and processes them. The code for fetching the forearm bones* was lazily written though - it simply just selected all transforms residing in the forearm. Needless to say, if there was something else in there, like a part, the rest of the code wouldn't work properly. I just added a filter so it only fetches transforms that are part of the skinned mesh.
* (As you may know, we're using multiple bones in the forearm to better handle twisting, essentially mimicking bendy bones.)