Closes #2281


Summary by cubic

Adds a Jira Service Management connector to index service desk tickets with request type, participants, and SLA status. Registers the source in the backend and web UI; supports full loads and incremental polling with label and size filters. Addresses bounty #2281.

  • New Features

    • New JiraServiceManagementConnector scoped to projectType = service_desk.
    • Enriches tickets with request type, participants, and SLA text; skips by labels and enforces a 100KB size limit after enrichment.
    • Supports full and incremental sync; uses jsm_user_email/jsm_api_token; adds DocumentSource.JIRA_SERVICE_MANAGEMENT, registry entry, web source, and basic tests.
  • Bug Fixes

    • Enforces post-enrichment size check and applies projectType = service_desk when project_key is set.
    • Sanitizes project keys in JQL and validates empty sanitized keys.
    • Corrects SLA parsing: reads SLA name from top-level, aligns status fields with JSM API, returns empty when no values, uses the friendly remaining time for ongoing cycles, and guards null ongoingCycle.
    • Adds Accept: application/json, explicit HTTP timeouts, and graceful 429 handling; trims skip-label env var; improves logging; fixes docs link; removes BOM; narrows exceptions to RequestException; fixes mutable default for labels_to_skip.

Written for commit 43a9b196ae693b94bcc32a6446118997c7cc4610. Summary will update on new commits.

/claim #2281

Claim

Total prize pool $250
Total paid $0
Status Pending
Submitted March 19, 2026
Last updated March 19, 2026

Contributors

LA

lanxevo3

@lanxevo3

100%

Sponsors

ON

Onyx (YC W24)

@onyx-dot-app

$250