I suppose by calling it "forking", I made it sound complicated, but my thought process is basically this:
- 80%+ of the time changes shouldn't be needed, so we want users to just be able to say "this Reason is relevant here" and add it.
- Another, say, ~15% of the time, a change will need to be made everywhere an option appears (e.g., updating a price or fixing a spelling error). Users should be able to edit the option where they are, without thinking about every other context, and without going to a special "meta" page. Before it gets automatically propagated to other contexts, someone should probably confirm that it makes sense in that other context (or at least, notified of it after the fact so they can revert/reject it if need be).
- The last < 5% of the time, some change only makes sense in the current context/is only relevant to a particular Question. For those cases, I think users should still be able to make that change, but we probably shouldn't optimize for it, especially since it makes it more difficult for that Option/Reason to get updated by changes elsewhere in the future.
Of course, I'm pulling those numbers out of nowhere, so my assumptions of how common each is might be be completely off.
Alternatively, we could disallow localized changes, as DannyM and hethegreat suggested, but I worry that if the situation does come up, people might just resort to making alternative/duplicate localized content, or will just get frustrated with their edits getting reverted for being too context-specific. The former might be ok, but at the very least, it'd make it a little harder to get information like "overall, people like X because of Y", since Y would be broken up in different Questions, which in turn could make things like search results less accurate (if we ever get really clever with search). It certainly would make everything a lot less complicated, though.
We know that Reasons definitely change based on Question scoping, but the question really is, does their content or phrasing change based on Question scoping? I think it's probably more likely the more that a Reason is directly addressing something about another Option (e.g. "has 4GB of RAM" is less likely to change based on context than "has lots of RAM", which depends on what it's being compared to - but then, maybe that Reason just gets left off in some contexts). We may just need to see what we can do about getting some real estimates of how common these things are.