papayu/docs/golden_traces/README.md
Yuriy 65e95a458d feat: мульти-провайдер LLM, тренды дизайна, Snyk/Documatic sync, личная автоматизация
- Мульти-провайдер: PAPAYU_LLM_PROVIDERS — сбор планов от нескольких ИИ (Claude, OpenAI), агрегация
- Тренды дизайна и иконок: вкладка в модалке, поиск по безопасным доменам (Tavily include_domains)
- Snyk Code: PAPAYU_SNYK_SYNC, REST API issues → snyk_findings в agent-sync
- Documatic: architecture_summary из .papa-yu/architecture.md в agent-sync
- Личная автоматизация: capability personal-automation (терминал git/npm/cargo, открытие URL)
- agent_sync расширен: snyk_findings, architecture_summary; analyze_project_cmd и run_batch пишут sync
- Документация: SNYK_AND_DOCUMATIC_SYNC.md, SECURITY_AND_PERSONAL_AUTOMATION.md, обновлён CLAUDE_AND_AGENT_SYNC

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-10 15:05:39 +03:00

2.6 KiB
Raw Blame History

Golden traces — эталонные артефакты

Фиксируют детерминированные результаты papa-yu без зависимости от LLM. Позволяют ловить регрессии в валидации, парсинге, диете, кеше.

Структура

docs/golden_traces/
  README.md
  v1/                  # Protocol v1 fixtures
    001_fix_bug_plan.json
    002_fix_bug_apply.json
    ...
  v2/                  # Protocol v2 fixtures (PATCH_FILE, base_sha256)
    001_fix_bug_plan.json
  v3/                  # Protocol v3 fixtures (EDIT_FILE, anchor/before/after)
    001_fix_bug_plan.json
    002_fix_bug_apply_edit.json
    003_edit_anchor_not_found_block.json
    004_edit_base_mismatch_block.json
    005_no_changes_apply.json

Формат fixture (без секретов)

Минимальный стабильный JSON:

  • protocol — schema_version, schema_hash
  • request — mode, input_chars, token_budget, strict_json, provider, model
  • context — context_digest (опц.), context_stats, cache_stats
  • result — validated_json (объект), validation_outcome, error_code

Без raw_content, без секретов.

Генерация из трасс

cd src-tauri
cargo run --bin trace_to_golden -- <trace_id> [output_path]
cargo run --bin trace_to_golden -- <path/to/trace.json> [output_path]

Читает trace из .papa-yu/traces/<trace_id>.json или из файла. Пишет в docs/golden_traces/v1/.

Отладка EDIT_FILE (v3)

Чеклист для E2E проверки v3 EDIT_FILE: docs/EDIT_FILE_DEBUG.md.

Регрессионный тест

cargo test golden_traces_v1_validate golden_traces_v2_validate golden_traces_v3_validate
# или
make test-protocol
npm run test-protocol

Политика обновления golden traces

Когда обновлять: только при намеренном изменении протокола или валидатора (path/content/conflicts, schema, диета).

Как обновлять: trace_to_goldenmake golden (из последней трассы) или make golden TRACE_ID=<id>.

Как добавлять новый сценарий: выполни propose с PAPAYU_TRACE=1, затем make golden и сохрани вывод в v1/NNN_<name>.json с номером NNN.

При смене schema_hash: либо bump schema_version (новый документ v2), либо обнови все fixtures (trace_to_golden на свежие трассы) и зафиксируй в CHANGELOG.