Claus Ibsen created CAMEL-26699:
-----------------------------------

             Summary: camel-jbang - chaos screen: findings of a hands-on round 
(poll targets, expectation count, pick order, effect of delays and polls)
                 Key: CAMEL-26699
                 URL: https://issues.apache.org/jira/browse/CAMEL-26699
             Project: Camel
          Issue Type: Improvement
          Components: camel-jbang
            Reporter: Claus Ibsen
             Fix For: 4.24.0


Findings from a hands-on round of the chaos screen (CAMEL-26695) with a small 
demo shop: an orders timer, an HTTP stock and payment call behind a circuit 
breaker, a seda shipping route, a file poller, a dead letter channel with 2 
redeliveries.

h3. Wrong or misleading
# *Polls fail is offered for a timer.* The consumer status marks both the timer 
and the file consumer {{scheduled: true}} ({{polling: false}}), so the add form 
offers {{timer://orders}} for "Polls fail" / "Polls are skipped". {{at=poll}} 
hooks only a scheduled poll consumer: the rule {{endpoint=timer://orders error 
at=poll}} matched 0 times, and was added without a warning. The form should 
offer only poll consumers, and the rule check should warn when {{at=poll}} 
matches no poll consumer.
# *The count of a decided expectation stops.* {{expect=orders:handled<=0}} went 
unmet at the first exchange handled by the error handler, and its count stayed 
at 1 while the rule's effect and the route counts said 6. That the outcome no 
longer changes is by design; the count shown should go on (or say "unmet at 1, 
now 6").

h3. Picking and reading
# *Endpoint pick order.* For "Is slow" the first endpoint offered is 
{{seda://dlq}} (the dead letter channel), then {{direct:}} and {{seda:}} 
internals; the HTTP call is 6 of 8. Offer the calls to other systems first and 
the dead letter channel last (it has its own recipe).
# *Column widths.* The EFFECT column is cut ({{62↩ 1…}}) while TARGET has room 
to spare on a wide terminal; FAULT cuts a lifecycle rule to {{lifecycle 
action=stop duration=5}}.
# *A delay shows no impact.* A delay rule's effect is "43 completed", while the 
route's p99 went from 1 ms to 907 ms and the throughput from 2.0/s to 1.7/s 
(seen only on the Routes tab). Show the latency the rule added, or the route's 
time next to it.
# *A poll fault shows no effect.* For a poll rule the EFFECT is empty; it could 
say how many polls failed or were skipped.
# *Recent faults repeat an exchange* once per redelivery attempt (the same id 
three times); group them ("…286B ×3 → dead letter channel").

h3. Driven by an AI (the TUI's MCP)
# *A confirm dialog drops Esc too.* Keys from MCP are dropped while a confirm 
is open, by design, but that includes Esc: an AI that opened the add confirm 
cannot close it, and it stays until a person presses Esc. Let an MCP client 
cancel (never confirm).
# *{{!}} after {{tui_navigate}} to a Diagram node* takes the route entry 
instead of the node: the selected box follows the arrow keys only.

The redelivery counters that the Routes tab lacks are CAMEL-26698.

_Claude Code on behalf of Claus Ibsen_



--
This message was sent by Atlassian Jira
(v10.3.26#10030026)

Reply via email to