That's fine, that doesn't change anything. If GitHub and their employees disagree so strongly on right and wrong that one side believes doing X is immoral and the other believes not doing X is immoral, GitHub can either attempt to convince their employees that they are in fact right, or let them leave.
(If GitHub does not believe they have a moral obligation to sell to ICE, they can drop the contract and keep their employees. It's a very small contract, less than one engineer's salary, and they committed to donating that money anyway. So I'm assuming that GitHub feels a moral or equivalently strong obligation to keep the contract, possibly of the form of feeling an obligation not to let employees influence moral direction. If not, this is just a story of bad business sense.)
Even others (a plurality I think) don't have strong feelings on the laws, but know one of the following:
- the executive has selective enforcement rights
- (at the time) congress + the WH could change laws!
- the laws were written with an understanding of selective enforcement
and so rightly recognized that this was a bad thing that could be made right.
There is an n-sided die about how people see this problem, and people acted in accordance to it. And yeah, it means that some sides don't believe in the legitimacy of other sides. They're incompatible after all.
Besides, it's not the point. The point of the game isn't to make a set of meta-rules for defining what is morally right. It's for, on a case-by-case basis, to say "this thing is good/bad" and then act on that.
I don't need to be able to answer every moral hypothetical to be able to say that _this one specific thing is bad_. To bring it back to HN, it's a P=/=NP problem. I can say one thing is good/bad without providing the full strategy for determining every thing. And then we work from there.
I think your entire argument would make a lot more sense if you replaced “right” with “what I think is right”. Your position is just one side of the dice (as you say).
(If GitHub does not believe they have a moral obligation to sell to ICE, they can drop the contract and keep their employees. It's a very small contract, less than one engineer's salary, and they committed to donating that money anyway. So I'm assuming that GitHub feels a moral or equivalently strong obligation to keep the contract, possibly of the form of feeling an obligation not to let employees influence moral direction. If not, this is just a story of bad business sense.)