Skip to content

Conversation

@aadamgough
Copy link
Collaborator

Summary

Added JSM tool

Type of Change

  • New feature

Testing

Tested manually

Checklist

  • Code follows project style guidelines
  • Self-reviewed my changes
  • Tests added/updated and passing
  • No new warnings introduced
  • I confirm that I have read and agree to the terms outlined in the Contributor License Agreement (CLA)

@vercel
Copy link

vercel bot commented Dec 30, 2025

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Review Updated (UTC)
docs Error Error Dec 30, 2025 10:28pm

@greptile-apps
Copy link
Contributor

greptile-apps bot commented Dec 30, 2025

Greptile Summary

Added comprehensive Jira Service Management integration with 20 tools covering service desk operations, request management, customers, organizations, SLAs, queues, participants, and approvals.

Key Changes:

  • Created 20 JSM tools with proper OAuth configuration and type safety
  • Added 19 API routes following Next.js patterns with proper error handling
  • Configured OAuth provider with extensive JSM-specific scopes
  • Implemented block with conditional UI fields based on operation
  • Registered all tools and blocks in appropriate registries
  • Added JSM icon component
  • Reused existing Jira Cloud ID utility for consistency

Implementation Quality:

  • Follows established patterns from existing Jira integration
  • Uses absolute imports consistently
  • Proper TypeScript typing throughout
  • Consistent error handling with @sim/logger
  • OAuth tokens properly marked as hidden visibility

Confidence Score: 5/5

  • This PR is safe to merge with no issues found
  • Implementation follows established codebase patterns consistently, uses proper TypeScript types, implements correct OAuth configuration, and includes comprehensive error handling. Code is well-structured and maintainable.
  • No files require special attention

Important Files Changed

Filename Overview
apps/sim/tools/jsm/types.ts comprehensive TypeScript types for JSM API entities and responses
apps/sim/blocks/blocks/jira_service_management.ts comprehensive block config with 20 operations and conditional UI fields
apps/sim/lib/oauth/oauth.ts added jira-service-management OAuth provider with extensive scopes
apps/sim/lib/auth/auth.ts added Jira Service Management OAuth provider configuration
apps/sim/app/api/tools/jsm/request/route.ts dual-purpose API route for creating and fetching JSM requests

Sequence Diagram

sequenceDiagram
    participant User
    participant Block as JSM Block
    participant Tool as JSM Tool
    participant API as API Route
    participant Auth as OAuth Provider
    participant JSM as Jira Service Management API

    User->>Block: Select operation (e.g., Create Request)
    User->>Block: Configure parameters
    Block->>Auth: Request OAuth token
    Auth-->>Block: Return access token
    Block->>Tool: Execute tool with params
    Tool->>API: POST /api/tools/jsm/request
    API->>API: Validate domain & token
    API->>API: Get Cloud ID (if needed)
    API->>JSM: POST /rest/servicedeskapi/request
    JSM-->>API: Return created request
    API-->>Tool: Return formatted response
    Tool-->>Block: Return output
    Block-->>User: Display result (issueKey, URL)
Loading

@icecrasher321 icecrasher321 merged commit 7356edc into staging Dec 30, 2025
10 of 11 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants