Seems that the contractor was crooked and should eat the $15,000. Perhaps they falsely assumed that they didn't need a permit, as the homeowner's neighbors did not. However, they should have done their due diligence and should have checked with the city before proceeding.
Unfortunately, this...