feat: add Jira heartbeat management components#4888
Conversation
|
👋 Commands for maintainers:
|
6936224 to
70b9d85
Compare
Signed-off-by: Felix Gateru <felix.gateru@gmail.com>
70b9d85 to
1f4133d
Compare
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 2 potential issues.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit 1f4133d. Configure here.
| req := updateHeartbeatRequestFromSpec(spec) | ||
| if updateHeartbeatRequestEmpty(req) { | ||
| return fmt.Errorf("at least one update field must be enabled") | ||
| } |
There was a problem hiding this comment.
Update setup allows empty toggles
Medium Severity
Setup treats any enabled toggle as an update via hasAnyHeartbeatUpdate, but Execute builds the PATCH with updateHeartbeatRequestFromSpec and rejects when updateHeartbeatRequestEmpty (e.g. empty description, empty alert tags, or interval under 1). Nodes can save yet fail at run with "at least one update field must be enabled".
Reviewed by Cursor Bugbot for commit 1f4133d. Configure here.
| Description: strings.TrimSpace(spec.Description), | ||
| Interval: spec.Interval, | ||
| IntervalUnit: strings.TrimSpace(spec.IntervalUnit), | ||
| Enabled: &enabled, |
There was a problem hiding this comment.
Create sends disabled by default
Medium Severity
Execute always sets CreateHeartbeatRequest.Enabled from spec.Enabled, a plain bool that is false when the key is absent after decode. That can POST "enabled": false despite the field default of true, creating disabled heartbeats unless the UI always persists enabled.
Reviewed by Cursor Bugbot for commit 1f4133d. Configure here.


Resolves #4893
What changed
Adds four Jira Service Management (JSM) Operations workflow components:
Why
Enable Superplane workflow to manage Jira Heartbeats that detects when scheduled jobs, cron tasks, or automated systems stop reporting in. If a heartbeat is not pinged within its expected interval, Jira Service Management raises an alert.
How
Backend:
Implemented new client methods in pkg/integrations/jira/client.go for heartbeat endpoints.
Registered actions in pkg/integrations/jira/jira.go and updated token permission guidance.
Added tests
Frontend:
Added Jira workflow v2 mappers
Registered mappers and event states in web_src/src/pages/workflowv2/mappers/jira/index.ts
Added mapper specs