Yes, in many places this is common because essentially a contracting role comes along when a company does not have in house skills to perform the role. Now, as you may know, if in a permanent role, one really doesnt bother if a project kick off gets delayed by 1 week or 1 year but it makes a big difference to contractors.
Of course, this really cannot be helped. Due to reasons that the company will be happy to clarify, they have had to delay it by a month. Contractors are also worried about this and protect themselves for such eventualities. Few ways to achieve this is by the following
1. Check wording of the contract. It will clearly state what the employer is legally allowed to do and given delays are common, there will be a clause in there supporting that claim
2. Contractors always have 2 or 3 offers on hand in case one doesnt work out OR if one gets delayed
3. NEVER listen to recruiters when they say remove your profile from websites. If they say you have to, then ask them what will happen if last minute the contract gets delayed, how will you live till that job starts? Why should you suffer if its delayed. Recruiters do not have legal rights to tell you anything and if they say such a thing then you know they are trying to bully you so they are sure you wont go and their commission is safe!
4. You can and should always hunt for roles because nothing is guaranteed in contracting. a 3 month role will be reduced to 1 month - and again, the contract will say this. The contract may also get extended for 2 years so there is never clarity on this
It is very unfortunate for your friend and the only positive she can take from this is she knows how things work in contracting. Tell her to keep her chin up and go for other roles. Its a given this contract will start in a month's time but given there is an inherent risk this role will disappear if that company decides to cancel the project, tell her to continue hunting for roles. Shes done well to get this far and she will get another one soon. And finally, tell her to never settle for verbal agreement. If they want her to be committed then get it in writing and with a detailed contract, ask up front what will happen if the project gets cancelled or delayed etc......and of course, dont believe anyone and continue job hunting.
Everyone is here to make money, businesses want you so they can make more money and if that is not the case, if the projects get canned or the role can be filled by an in house employee they dont care and dont think twice when going back on their word. In contracting too, even if you start one contract and a month later you get an offer for longer and paying double the rate now, then leave and take that offer up - many do this regularly and thats how the world works
Wish her the very best and tell her to remain positive