report-issue

Дефект или пожелание - в репозиторий набора скилов или плагина AI-EDT. Используй когда скрипт скила падает или дает неверный результат, правило расходится с поведением платформы или плагина, инструмен

SKILL.md

GitHub

/report-issue - дефект или пожелание разработчикам набора

Готовит issue в репозиторий набора или плагина AI-EDT: проверяет, что дефект наш, ищет дубликат, собирает обезличенный черновик, проверяет его скриптом на приватные данные и отправляет только после согласия пользователя.

Когда НЕ применять

  • Ошибка в конфигурации, данных или настройках пользователя, а не в скиле, правиле или плагине - объяснить пользователю, issue не заводить.
  • Сбой среды: нет платформы, не запущена EDT, нет прав, нет сети.
  • Чужой продукт: платформа 1С, другой плагин EDT, Claude Code, Cursor - назвать, куда сообщить, самому не отправлять.
  • Вопрос или обсуждение без дефекта - Telegram: Скилы и правила, Плагин.

Куда

Что Репозиторий
Скрипт скила или правило, агент в Claude Code Desko77/claude-code-skills-1c
Скрипт скила или правило, агент в Cursor Desko77/cursor-1c-skills
Инструмент MCP-сервера AI-EDT (ключ ai-edt) Desko77/ai-edt

Метки: дефект - bug, пожелание - enhancement; всегда from-agent.

Шаги

  1. Убедиться, что дефект наш. Назвать скил, правило или инструмент и воспроизведение: команда, вход, фактический результат, ожидаемый результат. Готово, когда воспроизведение есть, а не догадка о причине.

  2. Найти дубликат. При установленном gh: gh issue list --repo <репозиторий> --state all --search "<ключевые слова>". Без gh - дать пользователю ссылку https://github.com/<репозиторий>/issues?q=<ключевые слова>. Нашлась такая же issue - предложить дописать в нее комментарий вместо новой. Готово, когда поиск выполнен и результат назван.

  3. Черновик. Текст записать во временный файл вне репозитория пользователя (каталог временных файлов). Заголовок: <скил или инструмент>: <что не так>, до 80 символов.

    • Дефект - разделы "Что произошло", "Как воспроизвести", "Ожидалось", "Среда" (версия набора или плагина, Claude Code или Cursor, PowerShell или Python, версия платформы 1С, ОС).
    • Пожелание - разделы "Задача", "Чего не хватает", "Как могло бы работать".
    • Обезличивание: объекты - Catalog.Товары, Document.Продажа; путь - C:/Projects/my-project; база - my-base. Текст ошибки платформы и код выхода сохраняются дословно. Фрагмент кода - минимальный, на обобщенных именах. Выгрузки, логи целиком и скриншоты с данными не прикладываются.

    Готово, когда черновик заполнен по разделам своего вида.

  4. Проверить скриптом.

    pwsh -NoProfile -File "<каталог скила>/scripts/issue-draft.ps1" -Repo "<репозиторий>" -Title "<заголовок>" -BodyFile "<черновик>" -Labels "bug,from-agent"
    
    python "<каталог скила>/scripts/issue-draft.py" -Repo "<репозиторий>" -Title "<заголовок>" -BodyFile "<черновик>" -Labels "bug,from-agent"
    

    Код 1 - в stderr перечень находок с номерами строк (пути, домашние каталоги, IP, почта, пароли и токены, строки соединения Srvr/Ref, UUID кроме нулевого, ссылки вне github.com, t.me и сайтов 1С); исправить каждую и повторить. Код 0 - в stdout ссылка на создание issue. Имена заказчика скрипт не знает: после кода 0 перечитать черновик на имена конфигураций, расширений, префиксы объектов, названия организаций и людей. Готово, когда код 0 и черновик перечитан.

  5. Согласие пользователя. Показать заголовок и текст целиком, назвать репозиторий и метки, спросить разрешение. Без явного согласия не отправлять. Готово, когда ответ получен.

  6. Отправить.

    • gh auth status с кодом 0: gh issue create --repo <репозиторий> --title "<заголовок>" --body-file <черновик> --label bug --label from-agent. Отказ из-за отсутствующей метки - повторить без нее.
    • Иначе - передать пользователю ссылку из вывода скрипта: он открывает ее и нажимает Submit. Текст длиннее предела ссылки - ссылка несет заголовок и метки, текст передать для вставки.

    Готово, когда пользователь получил ссылку на созданную issue либо ссылку для ее создания.

  7. Удалить временный файл черновика.