Problem
Triage workflow (v0.7.0) ships in-app status + comments per finding. For teams whose source-of-truth is JIRA or Linear, an extra step is required to manually create tickets. SecureScan should be able to file a ticket from the triage panel.
Acceptance criteria
Suggested approach
JIRA: POST /rest/api/3/issue (Atlassian API), token via API token + email.
Linear: GraphQL mutation issueCreate, token via personal access token.
Both have well-documented Python clients; thin wrapper modules in backend/securescan/integrations/{jira,linear}.py.
Difficulty
~1 day per integration.
Problem
Triage workflow (v0.7.0) ships in-app status + comments per finding. For teams whose source-of-truth is JIRA or Linear, an extra step is required to manually create tickets. SecureScan should be able to file a ticket from the triage panel.
Acceptance criteria
/settings/integrationspage (sibling to webhooks/keys) for JIRA + Linear API tokens.metadatafield; finding's expanded view shows the ticket link.Suggested approach
JIRA:
POST /rest/api/3/issue(Atlassian API), token via API token + email.Linear: GraphQL mutation
issueCreate, token via personal access token.Both have well-documented Python clients; thin wrapper modules in
backend/securescan/integrations/{jira,linear}.py.Difficulty
~1 day per integration.