Skip to content

[TASK] Валидация формата GitHub-токена при старте #6

@prog-time

Description

@prog-time

Note

The task was generated using the MCP server — prog-time/mcp-github-issues

Type: task

Context

getToken() возвращает любое значение из env без проверки. Пустой токен, placeholder ghp_your_token_here или некорректная строка доходят до GitHub API и возвращают непонятный 401 только в момент вызова инструмента.

Желаемое поведение:

  • Проверка формата при старте сервера или при первом обращении к проекту.
  • Регулярки: ^ghp_[A-Za-z0-9]{36,}$ для classic PAT, ^github_pat_[A-Za-z0-9_]+$ для fine-grained.
  • Чёткая ошибка: "Token for project X has invalid format — expected ghp_... or github_pat_...".

Плюсы:

  • Быстрый feedback при ошибке конфигурации.
  • Отлов placeholder-значений до реальных API-вызовов.

Affected Files

  • src/config.ts

Checklist

  • Добавить регулярку для ghp_ и github_pat_
  • Выводить понятную ошибку при невалидном токене
  • Покрыть тестами сценарии: valid/invalid/empty/placeholder
  • Обновить .env.example с примером валидного формата

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions