OpenFn / OpenFn/lightning

Add `error_type` granularity to pills displaying run state

Open
#1,349 1 comment 0 reactions 1 assignee View on GitHub

@taylordowns2000 is already working on this.

Since Nov 10, 2023.

needs detail
Dominant language
Elixir
Stars
296
Forks
86
Avg merge
1d 13h
Merged PRs (30d)
50

Description

We've got a bunch of different types of errors that we track in Lightning and we use them to create different visuals using the step_icon function:

case {reason, error_type} do
  {nil, _any} -> [:pending, "text-gray-400"]
  {"success", _any} -> [:success, "text-green-500"]
  {"fail", _any} -> [:fail, "text-red-500"]
  {"crash", _any} -> [:crash, "text-orange-800"]
  {"cancel", _any} -> [:cancel, "text-grey-600"]
  {"kill", "SecurityError"} -> [:shield, "text-yellow-800"]
  {"kill", "ImportError"} -> [:shield, "text-yellow-800"]
  {"kill", "TimeoutError"} -> [:circle_ex, "text-yellow-800"]
  {"kill", "OOMError"} -> [:circle_ex, "text-yellow-800"]
  {"exception", ""} -> [:triangle_ex, "text-black-800"]
  {"lost", _nil} -> [:triangle_ex, "text-black-800"]
end

In this list, you can see the "exit_reason" on the left of the tuple, and the "ErrorType" on the right. Note that this is for a step, not a run. We do not yet provide any error_type granularity for run state pills.

It's very important for our users to see that one run was killed for TimeoutError while another was killed for running out of memory OOMError. Right now, they'll only see "Killed". This issue is to split up the run state pills to introduce error_type granularity.

There is another related issue (#1350) which allows the user to filter the history page based on runs with particular states and with particular error_types.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.