Skip to content

fix(connection): support required Jira transition fields #496

Description

@guoxianzhe

Problem

The Jira transition_issue Action only accepts issueIdOrKey and transitionId and sends only { transition: { id } }. Jira Server workflows with a transition screen can expose a valid transition but reject execution when required fields such as resolution are missing. Connection callers cannot discover or submit those fields, so valid completion transitions fail as invalid_input.

Observed against EP-802 on 2026-09-14: list_issue_transitions returned transition 5 (解决问题 -> 已解决), while transition_issue was deterministically rejected and the issue remained 处理中.

Scope

  • Let list_issue_transitions return transition field metadata needed by callers.
  • Let transition_issue accept optional Jira transition fields and include them in the Jira REST payload.
  • Keep identity and idempotency ownership unchanged.
  • Preserve the current no-fields behavior for workflows that do not require transition fields.
  • Add focused adapter contract and request-payload tests.

Acceptance criteria

  • AC-1: transition discovery exposes Jira transition field metadata.
  • AC-2: callers can submit optional fields with a transition.
  • AC-3: the adapter sends { transition: { id }, fields } when fields are supplied and omits fields otherwise.
  • AC-4: focused adapter tests, typecheck, provenance verification, and git diff --check pass.
  • AC-5: no Provider credentials or raw unsafe Provider response bodies are exposed.

Validation

  • pnpm --filter @agent-infra/openconnector-adapter test
  • pnpm --filter @agent-infra/openconnector-adapter check-types
  • git diff --check

Blocked by

None

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingneeds-triageIssue needs clarification or workflow triageready-for-agentHuman-confirmed Issue ready for Codex implementation

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions