Skip to content

feat(runs): add durable external-event wait diagnostics #98

Description

@ccarvalho-eng

Outcome

Operators can see why a workflow is waiting for an external event, when its timeout becomes eligible, and how the wait was resolved.

Scope

  • Show active wait details including event name, correlation key, due time, timeout target, and current resolution state.
  • Use Jizoku.inspect_run/2, Jizoku.inspect_run_graph/2, and Jizoku.explain_run/2 as the authoritative sources for wait and timeout diagnostics.
  • Distinguish event delivery, timeout resolution, cancellation, and stale duplicate delivery without presenting resolved timeouts as active work.
  • Add example-app scenarios for event arrival before timeout and timeout winning the race.

Acceptance criteria

  • Run detail and graph views clearly identify active external-event waits and their timeout path.
  • Resolution history records whether the event or timeout won, with no duplicate active wait after resolution.
  • Explain output gives an actionable reason when delivery is rejected as stale, duplicate, or terminal.
  • LiveView and example-app tests cover both event-arrival and timeout outcomes.

Runtime support: agentjido/jizoku#484 and agentjido/jizoku#508.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions