Extraction Pipeline
FluidRAG can extract Jira issues into your knowledge graph on a schedule, making ticket history available for RAG queries alongside your other ingested documents.
How It Works
Section titled “How It Works”The pipeline runs in three stages:
-
Issue Extraction — FluidRAG queries Jira using JQL for issues updated since the last sync. Issues are fetched with pagination (50 per page) and saved as individual JSON files with all fields (summary, description, status, assignee, priority, issuetype, reporter, dates).
-
ADF-to-Markdown Conversion — Each Jira issue is converted from Atlassian Document Format (ADF) to structured Markdown. The output includes metadata (type, status, assignee, dates), the description body, and all comments with authors and timestamps. This conversion is rule-based (no LLM required).
-
Knowledge Graph Ingestion — Processed Markdown documents are ingested into FalkorDB with entity extraction, embedding generation, and relationship creation, making them searchable via graph and vector search.
Default Schedule
Section titled “Default Schedule”Extraction runs automatically every 8 hours by default. You can trigger it manually at any time via the Admin UI.
Configuring Extraction via Admin UI
Section titled “Configuring Extraction via Admin UI”Enable Jira Extraction
Section titled “Enable Jira Extraction”- Open the Admin UI at
http://localhost/config-ui - Navigate to the Sources page
- Find Jira in the source list
- Toggle Enabled to on
Select Projects
Section titled “Select Projects”Specify which Jira projects to extract from:
- On the Sources page, click Jira to expand its configuration
- Enter project keys in the Project Keys field (e.g.,
PROJ,ENG,SUPPORT) - You can enter multiple keys separated by commas
- Save your configuration
| Setting | Default | Description |
|---|---|---|
jira_project_key | (empty) | Single project key |
jira_project_keys | (empty) | Comma-separated list of project keys |
jira_sync_schedule | 0 */8 * * * | Cron expression for extraction schedule |
jira_timeout | 3600s | Maximum extraction runtime |
jira_max_retries | 3 | Retry attempts on transient errors |
Manual Actions
Section titled “Manual Actions”| Action | How |
|---|---|
| Trigger extraction now | Sources → Jira → Trigger Extraction |
| Full resync | Sources → Jira → Trigger Extraction with “Full Resync” enabled |
| Reset sync state | Sources → Jira → Reset Sync — clears last sync timestamp so the next run extracts everything |
API Endpoints
Section titled “API Endpoints”All endpoints require admin authentication.
| Endpoint | Method | Description |
|---|---|---|
/api/agents/jira | GET | Get Jira agent status and configuration |
/api/agents/jira | PATCH | Enable/disable the Jira agent (hot-reload) |
/api/sources/jira | GET | Get Jira source configuration |
/api/sources/jira | PATCH | Update Jira settings (project keys, schedule, enabled) |
/api/sources/jira/enable | POST | Enable Jira extraction |
/api/sources/jira/disable | POST | Disable Jira extraction |
/api/extraction/trigger/jira | POST | Trigger extraction (supports force, full_resync, start_date_override) |
/api/extraction/reset/jira | POST | Reset sync state for full resync |
/api/extraction/status | GET | Get extraction status for all sources |