papayu/docs/E2E_SCENARIO.md
Yuriy e76236dc55 Initial commit: papa-yu v2.4.4
- Schema version (x_schema_version, schema_hash) в prompt/trace
- Кеш read/search/logs/env (ContextCache) в plan-цикле
- Контекст-диета: MAX_FILES=8, MAX_FILE_CHARS=20k, MAX_TOTAL_CHARS=120k
- Plan→Apply двухфазность, NO_CHANGES, path sanitization
- Protected paths, content validation, EOL normalization
- Trace (PAPAYU_TRACE), redaction (PAPAYU_TRACE_RAW)
- Preview diff, undo/redo, transactional apply

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-01-31 11:33:19 +03:00

3.2 KiB
Raw Blame History

E2E сценарий: анализ → применение → undo

Сценарий для ручной или автоматической проверки полного цикла работы приложения.

Предусловия

  • Установлены зависимости: npm install, cargo build (или npm run tauri build).
  • Приложение запущено: npm run tauri dev.
  • Есть тестовая папка с минимальным проектом (например, пустая папка с package.json или Cargo.toml без README).

Шаги

  1. Выбор папки
    Нажать «Выбрать папку» и указать путь к тестовой папке (или ввести путь вручную и нажать «Отправить» / Ctrl+Enter).

  2. Анализ
    Убедиться, что запустился анализ и в ленте появилось сообщение ассистента вида «Нашёл X проблем. Могу исправить Y.» и отчёт (findings, actions).

  3. Применение
    Нажать «Применить рекомендованные исправления» или выбрать действия и нажать «Предпросмотр изменений», затем «Применить». Убедиться, что появилось сообщение об успешном применении и при необходимости — о прохождении проверок (auto_check).

  4. Откат (Undo)
    Нажать «Откатить» (или кнопку «Откатить изменения (Undo)» в блоке результата). Убедиться, что появилось сообщение «Последнее действие отменено.» или «Откат выполнен.» и что файлы на диске вернулись в состояние до применения (например, созданный README удалён).

Критерии успеха

  • Анализ возвращает отчёт с путём и списком действий.
  • Применение создаёт/изменяет файлы и при включённом auto_check выполняет проверки (cargo check / npm run build и т.д.).
  • После undo состояние проекта на диске соответствует состоянию до применения; кнопка «Откатить» снова неактивна (или активна для предыдущей транзакции).

Автоматизация (будущее)

Для автоматического E2E можно использовать:

  • Tauri test — запуск приложения и вызов команд через контекст теста.
  • Playwright — управление окном приложения (WebView) и клики по кнопкам, проверка текста в ленте.

Текущие юнит-тесты эвристик (detect_project_type, is_protected_file, is_text_allowed) запускаются командой: cd src-tauri && cargo test.