You are stretching the definition so hard they are no longer useful or intelligible. Almost everywhere in distributed systems the word "honest" and "dishonest" merely means that you aren't trying to fake something, may it be the state, the history or Sybil etc.. These are not moral judgements, no one is calling the cheaters bad Christians or sinners or pedos or whatever nonsense knotzis are saying, in fact they are usually called adversaries. Moreover no one following the spec is ever called dishonest, people usually just focus on the spec being weak.
Even if none of the 3 things you listed are not necessary to have Bitcoin, which would be an absurd statement, that doesn't make them moral judgements... That at most make them objective specification of the goal, by specification I mean narrowing.
Now if Knotzis drop the morality bullshit and discuss narrowing the definition of Bitcoin from what is to what they want it to be, fine they are welcome, but they know they can't actually make any technical specification that is implementable so they argue nonsense instead.
I actually want them to fork to see if they ever manage to define a consensus narrower than Bitcoin current consensus that doesn't leak left and right while remaining usable.
I am also not sure why are you invested in calling things that are so technical that you can write them as code morality... Who benefits from that muddling? There is a centuries of mortality discourse that basically prove that morality is the domain of the hand wavy subjectiv stuff ... How can that be consensus software??
Login to reply