You are thinking of the continuity of work, colleagues, and responsibilities. Those are of course good to have, especially from the perspective of the company.
But from the perspective of the individual worker, a much more important continuity is the one of salary, insurance, and pension. This is the stability that the employee continues getting at Company D.
No, What i'm thinking is Having the option to choose Salary Stability or Salary Risk.
In that scenario if the employee is fired after just 2 years (worse case) because the project does not work, he is still financially better (compared to what he was getting at the "stable salary") even if it takes him 2 full years to find another job (something very unlikely if there is a dynamic employment market).
in the current scenario of contract works, the employee is getting all the negative effects of changing a job without any upside.
of course I am not talking about complete US style firing, but something in the middle. The option to fire with adequate notice let's say 3 months and adequate compensation, let's say 3 months of compensation after finishing your time.
This way, the employee has 6 months of job Hunting, (I think that is a sweet spot to make it reasonable for both the company and the employee)
You are free to choose opening a consultancy yourself and take on the salary risk as well as reap the rewards.
Companies also currently aren't completely banned from firing people. If and when they do, it can look like you described, with adequate notice and compensation.
But from the perspective of the individual worker, a much more important continuity is the one of salary, insurance, and pension. This is the stability that the employee continues getting at Company D.