But... I never made this choice, I got bitcoin but no idea of which "version" they are! Is it my electrum wallet which chose for me (i.e. by using electrum I'm using a certain version of bitcoin without even knowing)?
If you use Simplified Payment Verification, more commonly referred to as "SPV" or "lightweight" clients, you're relying on other (full) nodes to ensure the blocks they relay to you are correct. Full nodes verify transactions to ensure they conform to the rules of the network as defined in that version of the full node software. SPV just keeps the block headers, so in effect receives a pre-approved list of valid transactions, rather than checking the validity itself. So yes, by using Electrum, you're going with the flow and allowing others to choose for you what rules should govern the network.
SPV clients will simply follow the longest chain without question and have no say in what the rules are. Full nodes enforce a ruleset and will ultimately determine which chain is the longest. Rules only come into force if the rest of the network agrees. As for the wider matter of "True" definition of consensus, some people still mistake consensus as the developers of full node software agreeing on a ruleset and users running it without question, but this is incorrect and should be challenged at every opportunity. The definition of consensus is that the users freely choose the code that governs the network. The ruleset that results in the longest chain at any given time
is Bitcoin.
It's peculiar in a way that the Bitcoin whitepaper only uses the word "consensus" once, so it may as well be quoted in the thread:
We have proposed a system for electronic transactions without relying on trust. We started with
the usual framework of coins made from digital signatures, which provides strong control of
ownership, but is incomplete without a way to prevent double-spending. To solve this, we
proposed a peer-to-peer network using proof-of-work to record a public history of transactions
that quickly becomes computationally impractical for an attacker to change if honest nodes
control a majority of CPU power. The network is robust in its unstructured simplicity. Nodes
work all at once with little coordination. They do not need to be identified, since messages are
not routed to any particular place and only need to be delivered on a best effort basis. Nodes can
leave and rejoin the network at will, accepting the proof-of-work chain as proof of what
happened while they were gone. They vote with their CPU power, expressing their acceptance of
valid blocks by working on extending them and rejecting invalid blocks by refusing to work on
them. Any needed rules and incentives can be enforced with this consensus mechanism.
Although the way it's worded seems to vastly understate the role that non-mining full nodes play in determining consensus. Obviously it's the miners that build the longest chain (again conforming to the rules as defined in their chosen software), but if the rest of the nodes choose not to relay that chain, the miners are wasting their time and hashpower. Bare this in mind when you see the dozens of threads about mining centralisation and certain countries supposedly "controlling" Bitcoin. Miners have an important role to play, but other full nodes are equally vital.