Claus Ibsen created CAMEL-26821:
-----------------------------------

             Summary: camel-jbang - explain a failure: why an error, a lost 
message or a chaos experiment happened, from the Good to know rules, with AI on 
Shift+F8
                 Key: CAMEL-26821
                 URL: https://issues.apache.org/jira/browse/CAMEL-26821
             Project: Camel
          Issue Type: New Feature
            Reporter: Claus Ibsen
            Assignee: Claus Ibsen


Explain a failure in plain words: why it happened, what it means in production, 
and the choices to fix it. This covers any failure of a Camel integration, not 
only chaos:
* a failed exchange on the Errors tab or the Timeline of the TUI, {{camel get 
errors}}, and the MCP tools {{camel_get_errors}} and {{camel_error_diagnose}};
* messages lost or duplicated between two routes;
* a chaos experiment that made it happen on purpose (let there be chaos, 
CAMEL-26760). This is stage 2 of the start dialog of the TUI (PR #29577), whose 
results confuse a new user: {{inbox->ship:lost<=0: unmet, 39 lost}} says what 
broke, not why.

Design sketch (Shift+F8 on the Explore view, the facts it uses, the "why" line 
without AI): https://claude.ai/artifact/RrgdyNZE5oejbiXvbUFtnd

How:
* The "why" is the Good to know rule (CAMEL-26716, design PR #29554, section 
"Explaining a failure") whose {{outcome}} the failure is. Without an AI, it is 
one line next to the error or the unmet expectation.
* With an AI (F8), Shift+F8 explains from the rule, its facts and what was seen 
(counts, exception, message history), and offers the {{choices}} of the rule. 
The user decides; the fix is validated before it is shown. Then {{e}} edits 
with the fix, {{r}} runs the chaos rule again, and {{t}} makes it a test.
* The TUI works out the facts, and there is one small prompt per kind of 
outcome, so a small local model can write it.
* When no rule matches, the explanation says it is less certain. Each such 
failure is a rule the file does not have yet.

Needs from CAMEL-26716: the {{receiver}}, {{outcome}}, {{impact}} and 
{{choices}} fields of the rules, the {{onSuccess}} fact, redelivery in the 
{{errorHandler}} condition, and transient or permanent per exception and HTTP 
status in the catalog.

_Claude Code on behalf of davsclaus_



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

Reply via email to