# План работ по рефакторингу API и расширению тестов ## 1. Рефакторинг vault_utils.py - [x] Заменить единый `vault_query` с хардкодом строк на экспортируемые прямые функции. - [x] Обновить XML-doc (docstrings) для всех методов. - [x] Добавить универсальную функцию `get_recent_files` (на базе JsonLogic). ## 2. Рефакторинг faction_utils.py - [x] Перевести вызовы с `vault_query(...)` на прямые вызовы API. - [x] Переписать `get_all_factions` и `get_recent_events` как обёртки вокруг `get_recent_files`. ## 3. Рефакторинг time_utils.py - [x] Обновить импорты из `vault_utils`. - [x] Заменить `vault_query` на прямые методы (`get_file`, `write_file`). ## 4. Исследование Obsidian Local REST API - [x] Добавить примеры JSONLogic-запросов и PowerShell-скрипт с сортировкой. - [x] Очистить документацию от сбоев форматирования Markdown ссылок. ## 5. Расширение тестов фракций - [x] Дописать интеграционные тесты для `get_recent_events`, `get_location` и работы с активами. - [x] Расширить тесты логики ходов фракций в `test_wwn_mechanics.py`. - [x] Добавлены setup-тесты для перезаписи тестовых файлов фракций (frontmatter и контент) для детерминированности среды. - [x] Убедиться, что текущий набор pytest проходит без ошибок (`pytest -v`).