2.3 KiB
2.3 KiB
MODIFIED Requirements
Requirement: Импорт CSV-пакета
jira-hub import <папка admin/jira-sync> SHALL прочитать tasks.csv, new_tasks.csv, epics.csv и заполнить
issue_note по ключу Jira: статус по факту, вид работы, что сделано, что осталось, внутренние колонки. Строки
new_tasks.csv без ключа SHALL получать временный ключ new:<номер строки>; строки tasks.csv и epics.csv без ключа
SHALL пропускаться. links.csv SHALL импортироваться как сверочный набор в отчёт импорта (ожидаемые связи против зеркала
после первого refresh), не как команды. Связь, которой в зеркале нет как source→target того же типа, но есть как
target→source того же типа, SHALL попадать в reversed_links, а не в missing_links. Импорт идемпотентен: повтор
обновляет заметки, не дублирует.
Scenario: Импорт и первая синхронизация
- WHEN выполнены
init,import, запущены хаб и агент,refresh fullзавершён - THEN число задач зеркала ≥ числа строк
tasks.csv+ созданных изnew_tasks.csv; отчёт импорта перечисляет ключи из CSV, которых нет в зеркале, связи изlinks.csv, которых нет вissue_link, и связи, которые есть в обратную сторону
Scenario: Связь в обратную сторону
- WHEN в
links.csvстрока «AURORA-1445 → AURORA-1446, связанные», а в зеркале есть только «ASUPR_Связанные» 1446→1445 - THEN связь в
reversed_links, вmissing_linksеё нет
Scenario: Эпик без ключа
- WHEN в
epics.csvстрока без значения в колонке «Ключ» - THEN строка пропущена, заметка
new:*для неё не создаётся