Комплексний аналіз репозиторію та виправлення багів: AI-аудит коду

Опис

Професійний інструмент для глибокого аудиту та виправлення коду

Цей промпт перетворює ШІ на досвідченого Lead Developer або Security Engineer, здатного провести вичерпний аналіз всього репозиторію. Він охоплює всі етапи життєвого циклу розробки: від картографування архітектури до впровадження перевірених виправлень та створення детальної звітності.

Для кого цей промпт?

  • Розробникам: для швидкої ідентифікації логічних помилок, витоків пам’яті та технічного боргу в складних проектах.
  • QA-інженерам та Тестувальникам: для автоматичного створення тест-кейсів для граничних випадків та перевірки регресії.
  • DevSecOps спеціалістам: для виявлення критичних вразливостей (SQL Injection, XSS, RCE) та пошуку хардкоджених секретів.
  • Project Managers: для отримання об’єктивної оцінки стану кодової бази та пріоритезації виправлень.

Ключові переваги

  • Глибока діагностика: Аналіз охоплює 5 категорій помилок — від критичних вразливостей безпеки до якості коду та продуктивності.
  • Системний підхід: Промпт включає 7 фаз аналізу, що гарантує відсутність пропущених проблем навіть у великих репозиторіях.
  • TDD-орієнтованість: Пропонує впровадження виправлень через написання тесту, що провалюється, забезпечуючи надійність змін.
  • Гнучкість форматів: Вихідні дані можуть бути представлені у Markdown, JSON або CSV для легкої інтеграції в Jira або GitHub Issues.
>_ Промпт
{
  "task": "comprehensive_repository_analysis",
  "objective": "Провести вичерпний аналіз усієї кодової бази для ідентифікації, пріоритезації, виправлення та документування ВСІХ верифікованих багів, вразливостей безпеки та критичних проблем у будь-якому технологічному стеку",
  "analysis_phases": [
    {
      "phase": 1,
      "name": "Виявлення та картографування репозиторію",
      "steps": [
        {
          "step": "1.1",
          "title": "Аналіз архітектури та структури",
          "actions": [
            "Скласти карту повної структури каталогів (src/, lib/, tests/, docs/, config/, scripts/, build/, deploy/)",
            "Ідентифікувати всі технологічні стеки та фреймворки, що використовуються",
            "Проаналізувати маніфести залежностей (package.json, requirements.txt, go.mod, pom.xml, Gemfile, Cargo.toml, composer.json)",
            "Задокументувати точки входу, основні шляхи виконання та межі модулів",
            "Проаналізувати системи збірки (Webpack, Gradle, Maven, Make, CMake)",
            "Переглянути конфігурації CI/CD (GitHub Actions, GitLab CI, Jenkins, CircleCI)",
            "Вивчити існуючу документацію (README, CONTRIBUTING, специфікації API, діаграми архітектури)"
          ]
        },
        {
          "step": "1.2",
          "title": "Інвентаризація середовища розробки",
          "actions": [
            "Ідентифікувати фреймворки для тестування (Jest, Mocha, pytest, PHPUnit, Go test, JUnit, RSpec, xUnit)",
            "Переглянути конфігурації лінтерів/форматерів (ESLint, Prettier, Black, Flake8, RuboCop, golangci-lint, Checkstyle)",
            "Сканувати на наявність вбудованих маркерів проблем (TODO, FIXME, HACK, XXX, BUG, NOTE)",
            "Проаналізувати історію git на предмет проблемних паттернів та нещодавніх хотфіксів",
            "Витягти існуючі звіти про покриття тестами та метрики",
            "Ідентифікувати інструменти аналізу коду, що вже використовуються (SonarQube, CodeClimate тощо)"
          ]
        }
      ]
    },
    {
      "phase": 2,
      "name": "Систематичне виявлення багів",
      "bug_categories": [
        {
          "category": "КРИТИЧНІ",
          "severity": "P0",
          "types": [
            "Вразливості SQL Injection",
            "Недоліки Cross-Site Scripting (XSS)",
            "Вразливості Cross-Site Request Forgery (CSRF)",
            "Обхід автентифікації/авторизації",
            "Ризики віддаленого виконання коду (RCE)",
            "Пошкодження або безповоротна втрата даних",
            "Збої системи, взаємні блокування (deadlocks) або нескінченні цикли",
            "Витоки пам'яті та вичерпання ресурсів",
            "Небезпечні криптографічні реалізації",
            "Хардкоджені секрети або облікові дані"
          ]
        },
        {
          "category": "ФУНКЦІОНАЛЬНІ",
          "severity": "P1-P2",
          "types": [
            "Логічні помилки (неправильні умови, помилкові обчислення, помилки на одиницю)",
            "Проблеми управління станом (race conditions, застарілий стан, неналежні мутації)",
            "Неправильні контракти API або мапінг запитів/відповідей",
            "Відсутня або недостатня валідація вводу",
            "Порушення бізнес-логіки або робочих процесів",
            "Неправильні трансформації або серіалізація даних",
            "Невідповідність типів або небезпечне приведення типів",
            "Неправильна обробка виключень або прокидання помилок"
          ]
        }
      ]
    }
  ]
}
Категорії:
Моделі:
Any
Формат виводу: