appsignal-responder
v1.0 activeFetch open AppSignal incidents, filter known work, and output a prioritized list for fix dispatch.
Start a new run
Owner
opensop-worker
SLA
—
Trigger
api
Tags
appsignalincident-management
Inputs
projects
string[] · required
List of project names to scan (e.g. ["myapp", "backend"])
phase
enum · required
Dispatch phase: 1=classify-only, 2=dispatch-no-push, 3=full-PR, 4=regression-check
1
2
3
4
run_id
string · required
Unique run identifier for dedup and receipts
Outputs
incidents_to_process
object
known_work
object
total_fetched
number
deferred_count
number
run_id
string
Steps
-
1
Fetch open incidents from AppSignal
fetch-incidentsautomatedInputsprojects ←process.inputs.projects run_id ←process.inputs.run_idOutputsincidents (object) total_fetched (number) -
2
Build known-work dedup set
build-known-workautomatedInputsprojects ←process.inputs.projects incidents ←steps.fetch-incidents.outputs.incidentsOutputsknown_work (object) known_work_count (number) -
3
Apply budget and rate caps
apply-budget-capsautomatedInputsincidents ←steps.fetch-incidents.outputs.incidents projects ←process.inputs.projects run_id ←process.inputs.run_idOutputsincidents_to_process (object) deferred_count (number) run_blocked (boolean)
Raw definition
---
opensop: '0.1'
process:
name: appsignal-responder
tags:
- appsignal
- incident-management
owner: opensop-worker
steps:
- id: fetch-incidents
name: Fetch open incidents from AppSignal
type: automated
inputs:
- from: process.inputs.projects
name: projects
- from: process.inputs.run_id
name: run_id
outputs:
- name: incidents
type: object
- name: total_fetched
type: number
validation: lenient
- id: build-known-work
name: Build known-work dedup set
type: automated
inputs:
- from: process.inputs.projects
name: projects
- from: steps.fetch-incidents.outputs.incidents
name: incidents
outputs:
- name: known_work
type: object
- name: known_work_count
type: number
validation: lenient
- id: apply-budget-caps
name: Apply budget and rate caps
type: automated
inputs:
- from: steps.fetch-incidents.outputs.incidents
name: incidents
- from: process.inputs.projects
name: projects
- from: process.inputs.run_id
name: run_id
outputs:
- name: incidents_to_process
type: object
- name: deferred_count
type: number
- name: run_blocked
type: boolean
validation: lenient
inputs:
- name: projects
type: string[]
required: true
description: List of project names to scan (e.g. ["myapp", "backend"])
- name: phase
type: enum
values:
- '1'
- '2'
- '3'
- '4'
required: true
description: 'Dispatch phase: 1=classify-only, 2=dispatch-no-push, 3=full-PR,
4=regression-check'
- name: run_id
type: string
required: true
description: Unique run identifier for dedup and receipts
outputs:
- from: steps.apply-budget-caps.outputs.incidents_to_process
name: incidents_to_process
type: object
- from: steps.build-known-work.outputs.known_work
name: known_work
type: object
- from: steps.fetch-incidents.outputs.total_fetched
name: total_fetched
type: number
- from: steps.apply-budget-caps.outputs.deferred_count
name: deferred_count
type: number
- from: process.inputs.run_id
name: run_id
type: string
trigger:
type: api
version: '1.0'
description: Fetch open AppSignal incidents, filter known work, and output a prioritized
list for fix dispatch.