- Мульти-провайдер: 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>
2.6 KiB
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_hashrequest— mode, input_chars, token_budget, strict_json, provider, modelcontext— context_digest (опц.), context_stats, cache_statsresult— 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_golden — make 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.