Loading page...Загружаем страницу...正在加载页面...
AtlasRepo

10 of my Temporal workflows were never going to finish. A 4B model on my laptop wrote their death certificates

Описание и применение

Утилита Undertaker автоматически определяет «мертвые» рабочие процессы Temporal, классифицирует причину остановки и предоставляет конкретную команду для исправления, снижая время ручного расследования.

Задача

Temporal workflows can remain in a "Running" state indefinitely due to reasons such as missing workers, persistent activity failures, code changes that break replay, or unsent signals, and the platform does not reveal why.

Результат

Undertaker automatically identifies dead Temporal workflows, classifies the cause, and provides actionable remediation commands, reducing manual investigation time.

Рабочий процесс

  • 1. Point Undertaker at a Temporal server.
  • 2. Undertaker lists all running workflows via ListWorkflowExecutions.
  • 3. For each workflow, it gathers data from DescribeWorkflowExecution, the workflow history, and DescribeTaskQueue.
  • 4. It applies a set of deterministic rules to classify the cause of stalling.
  • 5. It generates a certificate of undeath containing evidence and a remediation command.
  • 6. If source code is provided, it runs Gemma 4 via Ollama to generate a natural‑language diagnosis.
  • 7. The generated text is validated against the evidence before display.
  • 8. The user receives a clear explanation and a command to fix the workflow.

Доказательства

Undertaker finds the Temporal workflows that will never finish, sorts each one into a cause using Temporal's own data, and writes a checked certificate of undeath for it

Источник

The diagnosis is a set of fixed rules, checked in order, over data from four places: ListWorkflowExecutions, DescribeWorkflowExecution, the history, and DescribeTaskQueue

Источник

Only then does the model come in. Gemma 4 e4b gets the cause, its rule, the workflow's id and type, the evidence list and, with --source, the function around each stack frame

Источник

  • Дата записи: 2026-11-01T07:28:43.072Z