Class: ReporterSink

Inherits:
Object
  • Object
show all
Defined in:
action/lib/reporter_sink.rb

Overview

Interface for optional external report destinations, such as PR/MR comments.

Direct Known Subclasses

GithubIntegration

Constant Summary collapse

SUCCESS_MESSAGE =
"✅ **SPM Dependencies**: All dependencies are up to date!"

Instance Method Summary collapse

Instance Method Details

#clearObject



35
36
37
# File 'action/lib/reporter_sink.rb', line 35

def clear
  raise_not_implemented(:clear)
end

#configure(_inputs) ⇒ Object

Optional hook for per-run reporter configuration read from action inputs.



10
11
12
# File 'action/lib/reporter_sink.rb', line 10

def configure(_inputs)
  # Intentionally no-op; subclasses override when they need configuration.
end

#publish_successObject



31
32
33
# File 'action/lib/reporter_sink.rb', line 31

def publish_success
  raise_not_implemented(:publish_success)
end

#publish_updates(_payload) ⇒ Object



27
28
29
# File 'action/lib/reporter_sink.rb', line 27

def publish_updates(_payload)
  raise_not_implemented(:publish_updates)
end

#tracking_issue_resultObject

The tracking issue created or updated by the last publish, as { number:, url: }. Nil for sinks without tracking-issue support or when no issue was touched.



17
18
19
# File 'action/lib/reporter_sink.rb', line 17

def tracking_issue_result
  # Intentionally no-op; subclasses override when they expose issue metadata.
end

#tracking_issue_run?Boolean

True when this run reports via a tracking issue rather than a PR comment, so publishing must happen even when PR commenting is disabled.

Returns:

  • (Boolean)


23
24
25
# File 'action/lib/reporter_sink.rb', line 23

def tracking_issue_run?
  false
end