Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 12 additions & 2 deletions ymir/agents/triage_agent.py
Original file line number Diff line number Diff line change
Expand Up @@ -1581,6 +1581,10 @@ async def retry(task, error, input=input, user_triggered=user_triggered):
except Exception as e:
logger.warning(f"Failed to check/queue primary for sibling {input.issue}: {e}")

# Modular issues (downstream_component = "module:stream/package")
# stop after triage — no downstream jobs or reproducer.
_modular_component = "/" in (state.downstream_component or "")

# Dispatch to downstream queues
if output.resolution == Resolution.ERROR:
await retry(task, output.data.model_dump_json())
Expand All @@ -1599,7 +1603,7 @@ async def retry(task, error, input=input, user_triggered=user_triggered):
Resolution.CLARIFICATION_NEEDED,
Resolution.OPEN_ENDED_ANALYSIS,
):
if auto_chain:
if auto_chain and not _modular_component:
if output.resolution == Resolution.OPEN_ENDED_ANALYSIS:
queue = RedisQueues.OPEN_ENDED_ANALYSIS_LIST.value
downstream_payload = output.data.model_dump_json()
Expand Down Expand Up @@ -1651,11 +1655,17 @@ async def retry(task, error, input=input, user_triggered=user_triggered):
if queue is not None:
await fix_await(redis.lpush(queue, downstream_payload))
logger.info(f"Pushed {input.issue} to {queue}")
elif _modular_component:
logger.info(
f"Modular issue {input.issue} — stopping after triage, skipping downstream queue"
)
else:
logger.info(f"AUTO_CHAIN disabled, skipping downstream queue for {input.issue}")

if output.resolution in _REPRODUCER_ELIGIBLE_RESOLUTIONS:
if enqueue_reproducer:
if _modular_component:
logger.info("Modular issue %s — skipping reproducer queue", input.issue)
elif enqueue_reproducer:
async with mcp_tools(os.environ["MCP_GATEWAY_URL"]) as gateway_tools:
await _enqueue_reproducer(redis, state, user_triggered, gateway_tools)
else:
Expand Down
Loading