Skip to main content
← Back to list
01Issue
BugShippedSwamp CLIPublic
Assigneeshammz

Relationships

#2802 Telemetry bridge drops a parent step's invocation when a nested workflow step has the same job and step names

Opened by hammz · 9/30/2026· Shipped 9/30/2026

Summary

The libswamp telemetry bridge (src/libswamp/workflows/telemetry_bridge.ts) tracks in-flight method invocations in a map keyed on jobId and stepId only. A nested workflow step forwards its child's step events into the parent's stream, and those events carry no run identity. If a child step's job and step names match a parent step that is running concurrently (parallel jobs or steps), the child's method_executing overwrites the parent's in-flight entry: the child's step_completed records it, and the parent's own step_completed finds no entry, so the parent's invocation is never recorded.

Context

Found while triaging swamp-club#2735, which attributes nested runs to the top-level run. Fixing this needs run identity on forwarded step events (for example a runId on method_executing, step_completed and step_failed), so the bridge can key in-flight entries per run.

Steps to reproduce

  1. Workflow child with job main and a model_method step a.
  2. Workflow parent with job main containing a model_method step a and, in parallel, a workflow step running child.
  3. Run parent with telemetry enabled. Only one invocation for main:a is recorded instead of two.
02Bog Flow
✓OPEN✓TRIAGED✓IN PROGRESS✓SHIPPED+ 1 MOREASSIGNED+ 5 MOREREVIEW+ 7 MOREPR_MERGED+ 2 MORESESSION_SUMMARIZED

Shipped

9/30/2026, 8:03:16 PM

Click a lifecycle step above to view its details.

03Sludge Pulse
hammz assigned hammz9/30/2026, 7:26:23 PM

Sign in to post a ripple.