Files
nixfiles/home/claude/memory/jira_tooling.md
Emma ThorpeandClaude Opus 4.8 86ef677f2f
CI / flake (push) Skipped
CI / flake (pull_request) Successful in 1m6s
docs(memory): record WSP Jira transition field + ADF quirks
Add to jira-tooling memory:
- per-issue-type transition required fields (Story Cancelled needs
  Resolution + Justification; Epic Cancelled needs neither)
- cancel/won't-do resolution IDs (Won't Fix 10068, Canceled 10070,
  Obsolete 10073)
- customfield_10070 (Justification) requires ADF, not a plain string,
  despite its textarea schema

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-21 10:32:14 +01:00

1.9 KiB

name, description, metadata
name description metadata
jira-tooling Jira MCP tool quirks — comment markdown, transitions, link direction, WSP transition IDs
type
feedback

Comment markup: addCommentToJiraIssue commentBody renders as Markdown — use ### headings, **bold**, backtick code, 1. / - lists. Do NOT use wiki markup (h3., {{code}}, _italic_, # numbered) — it renders literally.

Transitions: transitionJiraIssue may fail if the issue lacks an assignee. Set assignee first via editJiraIssue when a transition errors on assignee requirement.

Transition required fields (WSP): the same target status can enforce different required fields per issue type — e.g. Cancelled on a Story requires Resolution + Justification, but on an Epic requires neither (so an Epic can land in Cancelled while still reading Unresolved). Fetch requirements with getTransitionsForJiraIssue + expand=transitions.fields before transitioning. Cancel/won't-do resolution values: Won't Fix (10068), Canceled (10070), Obsolete (10073 — use for superseded-by-another-ticket).

ADF-only custom fields: the WSP Justification field (customfield_10070) advertises schema textarea (string) but the API rejects a plain string — it requires an Atlassian Document Format object ({type:"doc",version:1,content:[...]}). If a transition/edit errors with "Operation value must be an Atlassian Document", wrap the text in ADF.

Issue link direction: For createIssueLink, "X is blocked by Y" means inwardIssue=Y (the blocker), outwardIssue=X (the blocked), type.name="Blocks". Inward = the side the link points from; outward = the side it points to.

WSP project transition IDs:

  • Start Work = 101
  • Submit for Review = 441

Why: Hard-won quirks from prior Jira work. Cuts trial-and-error.

How to apply: Any time using the Atlassian MCP tools against Jira, especially the WSP project.