Вот мое мнение, если ТЗ готово, оно просматриваеться программистом, и уже потом решаеться стоимость и сроки выполнения. Если ТЗ не понятное то необходимо уточнить неястности. Если в ТЗ не указаны такие или иные разработки то они по правилам не делаються (или за доп. плату).
Судя по данной ситуации, исполнитель не прав в следующем.
1. Не понял нормально (это еще нормально) составленного ТЗ.
2. Не верно определил стоимость и сроки разработки.
3. Не выполнил заказ, макс 40%.
4. <meta http-equiv="Cache-Control" content="no-cache" />
Pragma: no-cache довольно хорошо поддерживаемое соглашение, которому следует большинство web-браузеров. Обнаружив этот тэг, они обычно не кэшируют страницу (хотя никаких гарантий нет, это всего лишь соглашение).
Кешированием близко не пахнет.
Ну и так далее. Я думаю тут все понятно, человек просто не смог справиться с предоставленным заданием или просто решил забить на поставленную задачу (и такое бывает, в таком случаи идет возврат средств).
Для разрешение конфликта, исполниитель обязан вернуть деньги заказчику.