brainstorming
brainstorming
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or planning anything new, in software or out of it (a talk, a business, a renovation).
lidfly-support-escalationБезопасно восстанавливать transport errors и эскалировать проблемы LidFly MCP через read-only support_prepare_report и подтверждённый support_send_message. Использовать при unexpected/internal support_hint, повторном timeout read-вызова после retry и connectivity probe или неизвестной отсутствующей возможности после широкого search_tools; известные ограниче…
Independent GitHub snapshot · Automated classification · Original documentation governs
Подготавливать обращение про MCP только после безопасной диагностики. Никогда не отправлять его автоматически.
support_hint.reason=unexpected_internal_error: перейти к подготовке отчёта.search_tools({}) без query и provider. Только если широкий поиск ничего подходящего не вернул, подготовить запрос на возможность.search_tools вернул capability_notice.status=unsupported_by_provider_api либо методология явно говорит, что действие доступно только в интерфейсе провайдера: объяснить пользователю summary, user_action и доступные API-альтернативы. Это известная граница API, поэтому не эскалировать её, не вызывать support_prepare_report/support_send_message и не подменять задачу похожим write-инструментом.resolve_campaign_scope.status=resolved|ambiguous|not_observed — штатный типизированный результат, а не технический инцидент. Для incomplete эскалация допустима после второго типизированного timeout либо при contract error; для failed — только при internal/contract reason.transport send error, HTTP request failed, HTTP 000, нулевой ответ без заголовков и разрыв до получения HTTP-статуса означают транспортную неопределённость на участке между MCP-клиентом и LidFly. Это не доказывает ошибку инструмента или провайдера. Не считать такую ситуацию ошибкой Wordstat, Яндекс Директа или отсутствием нужной возможности.
subscription_status({}) как один лёгкий connectivity/auth probe. Не запускать параллельные повторы.Отдельная ветка для уже полученного HTTP-ответа: если сервер вернул HTTP 429 или 503 с Retry-After, шаги 1–4 восстановления транспорта не выполнять. Выдержать указанную задержку и один раз повторить read вместо connectivity probe или немедленной эскалации.
Для write-вызова транспортная неопределённость означает неизвестный исход. Не повторять write автоматически: проверить состояние read-инструментом или get_write_operation_status, если есть operation_id.
При support_hint вызвать прямой top-level tool:
support_prepare_report({
reason: support_hint.next_arguments.reason,
tool_name: support_hint.next_arguments.tool_name,
error: support_hint.next_arguments.error,
user_goal: "...",
expected_result: "...",
attempted_steps: ["..."]
})
При повторном read-timeout передать reason: { kind: "repeated_read_timeout", attempt_count: 2, error_code: "timeout" }. Для campaign discovery также передать фактический campaign_resolution_status: "incomplete".
При неизвестном результате write передать reason: { kind: "unknown_write_outcome", operation_id }; при ошибке structured provider-контракта — reason: { kind: "provider_contract_error", contract_error_code }.
Для отсутствующей после широкого поиска возможности использовать reason: { kind: "capability_request", capability: "..." } и tool_name: "search_tools". Сервер создаст feature request, а не диагностический incident.
Передавать только диагностический текст: цель, ожидаемый результат и до восьми коротких проверенных шагов. Не передавать raw arguments, токены, OAuth/API keys, пароли, seller secrets, персональные данные, содержимое файлов или локальные логи.
Если redactions_count > 0, сообщить, что секретные фрагменты автоматически скрыты.
support_prepare_report read-only: он не создаёт thread/message, не пишет в PostgreSQL и не отправляет данные во внешние сервисы.
Если support_prepare_report успешно ответил после transport error, endpoint снова отвечает. До запроса согласия один раз повтори исходный read. При успехе продолжи задачу, сообщи, что соединение восстановлено, и не предлагай отправлять уже неактуальный черновик; при повторной транспортной ошибке покажи полный report_text и переходи к согласию ниже.
Если проблема осталась актуальной, показать пользователю полный report_text без скрытых сокращений и спросить: «Отправить этот черновик в поддержку LidFly?»
support_send_message в том же ходе до ответа пользователя.Вызвать прямой top-level tool:
support_send_message({
request_id: prepared.suggested_request_id,
text: prepared.report_text
})
suggested_request_id при сетевом retry.support_get_messages.support_request_image_upload; не прикладывать файлы автоматически.