klg-asutk-app/docs/JIRA_IMPORT.md
Yuriy 0150aba4f5 Consolidation: KLG ASUTK + PAPA integration
- Unify API: lib/api.ts uses /api/v1, inbox uses /api/inbox (rewrites)
- Remove localhost refs: openapi, inbox page
- Add rewrites: /api/inbox|tmc -> inbox-server, /api/v1 -> FastAPI
- Add stub routes: knowledge/insights, recommendations, search, log-error
- Transfer from PAPA: prompts (inspection, tmc), scripts, supabase, data/tmc-requests
- Fix inbox-server: ORDER BY created_at, package.json
- Remove redundant app/api/inbox/files route (rewrites handle it)
- knowledge/ in gitignore (large PDFs)

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-08 17:18:31 +03:00

150 lines
4.0 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Импорт данных из Jira
## Описание
Система поддерживает импорт данных о задачах из Jira через CSV файлы, расположенные в папке `новая папка`.
## Поддерживаемые файлы
1. **REFLY_Jira_Backlog_Subtasks_Dependencies.csv** - основной файл с эпиками, историями и подзадачами
2. **REFLY_Jira_Issue_Links.csv** - связи между задачами (зависимости)
3. **report_audit_trail.csv** - история аудита и отчетов
## Структура данных
### Эпики (Epics)
- Issue Id
- Summary (название)
- Description (описание)
- Priority (приоритет)
- Components (компоненты)
- Labels (метки)
### Истории (User Stories)
- Issue Id
- Parent Id (ID эпика)
- Summary
- Description (включая Acceptance Criteria)
- Priority
- Story Points
- Components
- Labels
### Подзадачи (Sub-tasks)
- Issue Id
- Parent Id (ID истории)
- Summary
- Description
- Priority
- Components
- Labels
### Зависимости
- From Issue Id
- To Issue Id
- Link Type (Blocks, Depends, Relates)
## Использование
### 1. Импорт данных
```bash
npm run import:jira
```
Скрипт:
- Создаст необходимые таблицы в БД (если их нет)
- Импортирует эпики, истории и подзадачи
- Импортирует зависимости между задачами
- Импортирует данные audit trail
### 2. Просмотр данных
После импорта данные доступны через:
- **Веб-интерфейс**: `/jira-tasks`
- **API**: `GET /api/jira-tasks?type=epic|story|subtask|all`
### 3. API Endpoints
#### Получить все эпики с историями
```
GET /api/jira-tasks?type=epic
```
#### Получить все истории
```
GET /api/jira-tasks?type=story
```
#### Получить истории конкретного эпика
```
GET /api/jira-tasks?type=story&epic_id=1001
```
#### Получить подзадачи
```
GET /api/jira-tasks?type=subtask
```
#### Получить подзадачи конкретной истории
```
GET /api/jira-tasks?type=subtask&story_id=1011
```
#### Получить все данные
```
GET /api/jira-tasks?type=all
```
## Структура базы данных
### Таблицы
1. **jira_epics** - эпики
2. **jira_stories** - истории пользователей
3. **jira_subtasks** - подзадачи
4. **jira_task_dependencies** - зависимости между задачами
### Схема
См. файл `lib/database/jira_tasks_schema.sql`
## Примеры использования
### Получить все эпики с приоритетом High
```sql
SELECT * FROM jira_epics WHERE priority = 'High' ORDER BY created_at DESC;
```
### Получить все истории для эпика E1
```sql
SELECT * FROM jira_stories WHERE parent_epic_id = '1001' ORDER BY story_points DESC;
```
### Получить зависимости для задачи
```sql
SELECT * FROM jira_task_dependencies WHERE from_issue_id = '1011';
```
## Обновление данных
Для обновления данных просто запустите импорт снова:
```bash
npm run import:jira
```
Скрипт использует `ON CONFLICT DO UPDATE`, поэтому существующие записи будут обновлены, а новые - добавлены.
## Интеграция с системой
Импортированные данные можно использовать для:
- Отслеживания прогресса разработки
- Планирования спринтов
- Анализа зависимостей
- Генерации отчетов
- Управления рисками (связь с рисками через метки)