AI Agents SDE Task Viewer
      • Pr description
  1. Home
  2. AgentSDE
  3. agent-core
  4. gh-549
  5. changes
  6. pr_description.md
pr_description.md(1.5 KB)· Apr 24, 2026· 1 min read
  • BJ-9: Add JiraService — issue-oriented Jira Cloud API surface
  • Problem
  • Task / Link
  • Changes
  • Notes
  • Testing

BJ-9: Add JiraService — issue-oriented Jira Cloud API surface#

Problem#

The AgentSDE pipeline needs a service to interact with Jira Cloud issues (comments, transitions, labels, assignee, priority, links, search). Without it, Jira-backed projects cannot be automated end-to-end.

Task / Link#

Closes #549

Changes#

  • Add JiraService with 11 issue-oriented methods backed by Jira Cloud REST v3: postComment, editComment, transitionIssue, getTransitions, addLabel, removeLabel, setAssignee, setPriority, linkIssues, searchJql, getIssue
  • Private request() helper attaches Authorization: Bearer <token> from JIRA_AUTH_PROVIDER; retries once on 401 (token refresh) and once on 429 (honouring Retry-After)
  • Add JiraModule with factory providers for JIRA_AUTH_PROVIDER (stub until Atlassian OAuth lands) and JIRA_SERVICE
  • Register JiraModule in AppModule
  • Add JIRA_CLOUD_ID (optional) to config schema, .env.example, and CLAUDE.md
  • 24 unit tests covering all methods, 429 retry, 401 refresh, missing-config error, and empty-result paths

Notes#

  • JIRA_AUTH_PROVIDER is a stub (returns null) until the Atlassian OAuth module (BJ-3/4/5) lands; both JIRA_AUTH_PROVIDER and JIRA_SERVICE will be null until then — consumers must treat Jira support as optional
  • JIRA_CLOUD_ID is made optional in the config schema (not required()) to allow startup without Jira credentials

Testing#

  • 24 unit tests in src/jira/jira.service.spec.ts — all pass
  • npm run lint — zero warnings
PrdAi-done