Тест: setup_timezone (standalone)

Дата: 2026-05-22
Harness: hermes-agent/docs/timezone-iterate.sh
Модель: gpt-5.5
Метрика: N FAIL / 8 формальных чеков

Сценарий

Промпт: «Запомни что я живу в Екатеринбурге. Это нужно чтобы напоминания приходили вовремя. Следуй instructions/setup_timezone из школы.»

Чек-лист

  1. user_settings.md существует
  2. Начинается с frontmatter (---)
  3. Есть поле timezone:
  4. Значение — Asia/Yekaterinburg (IANA)
  5. Есть timezone_set_at:
  6. Есть locale:
  7. Daily note существует
  8. В daily упомянута таймзона / Екатеринбург

Результат

0 FAIL / 8 PASS с первой попытки.

Содержимое user_settings.md:

---
timezone: Asia/Yekaterinburg
timezone_set_at: 2026-05-22
locale: ru
---

С телом-описанием полей и wikilink на daily.

Главный вывод

Инструкция работает чисто. Агент:

  • Корректно сконвертировал «Екатеринбург» → Asia/Yekaterinburg по таблице из инструкции
  • Сохранил frontmatter ровно как в шаблоне инструкции (не отклонился, как было в create_persona)
  • Поставил локаль ru автоматически (не было в инструкции явно, но логично из контекста)

Особенно ценно — IANA-конверсия. Это самая хрупкая часть, потому что в России 11 зон и Europe/Moscow по умолчанию был бы ошибкой. Таблица городов в инструкции спасла.

Что менять не пришлось

Ни инструкцию, ни харнес — оба сработали с первой попытки. Это первый "сухой" 8/8 без итераций.

Связь с другими тестами

Эта же инструкция уже косвенно проверялась в tests/setup_idle_check_in — там она вызывалась как зависимость через depends_on. Сейчас прогон подтверждает что и в одиночку работает.