Calm down OP, this is normal in software development (which does not mean that I like it). The developers commit themselves to an arbitrary deadline, have a mega huge load of work to do and because planning is a guessing game (planning is mathematically hard and the planned work is confronted with Murphy’s law on a daily basis), so it looks doable for a while (and sometimes developers say on delivery day that they are not finished, which is basically the worst screwup, because telling early helps to mitigate issues and deal with expectations early).
But in the end you deliver what you have on release day and make sure the worst bugs are gone and the most important features are done by prioritizing. What is important for this kind of game?
The frontend (“the game”) on the customer’s computer runs, the backends don’t explode, the maps are playable, and the networking works.
What is not crucial? Cosmetics, balancing, extra features.
The barber shop was also implemented later, why do you think that feature was unlocked a couple of days after starting the beta? Because they had more major concerns in the playability and did not even implement the barber feature yet.
As the barber uses features from character creation, it was quickly done, once more major issues were dealt with.
And crafting is not crucial, no matter what you may think. Sorry, but I had to laugh at that idea, that crafting is somewhat important for an ego shooter, when playability, stability and scalability is at stake.
The day they unlocked the crafting shop with such obvious bugs in the menu itself, it was directly clear that the developers did not even had time to test this themselves and that means, they are not finished with it. They hacked it together, maybe clicked two times through the menu and uploaded it.
Note for the future: Nobody leaves out major parts of a program when the program is going to be tested, unless the features are not implemented or known to be completely broken!
Because every tiny change to a program requires a RETEST of all interacting components. So it makes no sense to cut stuff out and partially add it.
If you don’t like how this works, never become a software developer because it works like this in EVERY sector of the industry. I was a software developer and that planning and deadline hell is very, very unsatisfying for all parties involved. The developer even has the worst part in it. While coding is usually fun it is slow and error prone, and the daily overhead in the job usually results in 50% of coding time max per day (because colleagues need something, the bosses need something, the customer wants something and you need to work on other projects as well - who do you think created the Vermintide 2 patch that came out the last days, hm? Probably the same poor guy who has to develop the crafting. The person may do it alone even.)
Every developer at FS must be extremely busy right now. I bet, the state they have NOW is uploaded at the moment so it can be available tomorrow and everything they don’t have NOW just won’t be in the game.
Once the most pressure is out, they deliver patches that include major bugfixes and features. That will require a couple of weeks. And then we have X-mas, so everything that won’t be done until then will come next year. Deal with that thought and manage your expectations.
You know why I usually buy GOTY versions of a game? Because then it is finished. One year later, with all major fixes and additional content for a lower price.