M1 — Jira fetch (REST) + prompt input #2

Closed
opened 2026-07-24 00:53:29 +00:00 by david · 0 comments
Owner

Goal: turn a Jira key into a validated JiraContext artifact.

Tasks

  • JiraClient interface + JiraRestClient implementation (Jira Cloud REST API v3, Basic auth via email + API token). Plain orchestrator code, no pi session.
  • Fetch and normalize into JiraContext: summary, description (flatten ADF→text), acceptance criteria, labels, components, issue type, parent key, linked keys, url. Exclude comments/attachments (v1).
  • Validate + persist jira-context.json in the run dir.
  • Error mapping: 401/403→auth (fail-fast), 404→not-found (fail-fast), 429/5xx→transient (retry).

Depends on: M0.

Validation: unit tests with mocked HTTP cover success + 401/404/429/malformed. For a real key, jira-context.json validates against the schema.

**Goal:** turn a Jira key into a validated `JiraContext` artifact. ### Tasks - [ ] `JiraClient` interface + `JiraRestClient` implementation (Jira Cloud REST API v3, Basic auth via email + API token). Plain orchestrator code, no pi session. - [ ] Fetch and normalize into `JiraContext`: summary, description (flatten ADF→text), acceptance criteria, labels, components, issue type, parent key, linked keys, url. Exclude comments/attachments (v1). - [ ] Validate + persist `jira-context.json` in the run dir. - [ ] Error mapping: `401/403`→auth (fail-fast), `404`→not-found (fail-fast), `429/5xx`→transient (retry). **Depends on:** M0. **Validation:** unit tests with mocked HTTP cover success + `401/404/429`/malformed. For a real key, `jira-context.json` validates against the schema.
david closed this issue 2026-07-24 03:34:58 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
david/pi-loop#2
No description provided.