davsclaus opened a new pull request, #29496:
URL: https://github.com/apache/camel/pull/29496

   _Claude Code on behalf of davsclaus_
   
   In the Inspect tab, an exchange that went through a circuit breaker read 
`from → circuitBreaker → log → done`. The steps inside the breaker, and the 
route they call, were missing.
   
   **Cause:** a circuit breaker runs its steps on a copy of the exchange. The 
history has those steps under the copy's exchange id, for example `to1` and the 
whole `supplier` route called over direct, with `correlationExchangeId` 
pointing back. Inspect builds the history depth-first from the exchange it 
shows. It inlines another exchange either under an EIP that runs its steps on 
exchanges of its own (`multicast`, `split`, `enrich` …), or where a step sends 
to the endpoint that exchange's route starts from. The copy starts with `to1`, 
which is no route's first step, and `circuitBreaker` was not on that list, so 
the copy was dropped.
   
   **Fix:** `circuitBreaker` is now on that list, so the copy's steps, 
including the route it calls, are inlined under the breaker one level deeper. 
This covers both the history and the live trace. When the breaker is open, the 
fallback runs on the original exchange and was already shown.
   
   **Test:** `HistoryTabRenderTest#theStepsOfACircuitBreakerAreUnderIt` uses 
the history of the `fail-well/circuit-breaker` example. Without the fix it 
gives `[from1, circuitBreaker1, log1, from1]`; with it, `[from1, 
circuitBreaker1, to1, from2, setBody3, from2, log1, from1]`. The full 
`camel-jbang-plugin-tui` suite passes. `HistoryTab.java` is at its line limit 
in `SourceSizeTest`, so the change adds no lines. I checked it live with the 
example: the history now has 9 steps, with the supplier route under the breaker.
   
   This merges cleanly with #29468, #29486, #29493 and #29495.
   
   🤖 Generated with [Claude Code](https://claude.com/claude-code)
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to