[ 
https://issues.apache.org/jira/browse/CAMEL-26716?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18141840#comment-18141840
 ] 

Claus Ibsen commented on CAMEL-26716:
-------------------------------------

A hint for *When it fails*, found by the chaos explorations of CAMEL-26760 
(runs 3 to 6 on the chaos example, apache/camel-jbang-examples#134):

*When the dead letter channel fails too.* The shop parks the orders it cannot 
charge with a dead letter channel to {{direct:parked}}, a route that writes a 
file. When the payment service was down and that route failed as well, the 
orders were gone. The log had only a WARN per order ({{New exception occurred 
during processing by the DeadLetterChannel[direct:parked]}}), and the route 
counted them as neither failed nor completed. This is the documented default: 
{{deadLetterHandleNewException=true}} handles and ignores a new exception in 
the dead letter channel. Every run found it, and camel-chaos now counts these 
messages as lost at the dead letter channel (CAMEL-26789).

So, from the route model: a route whose dead letter channel goes to an endpoint 
or route that can fail (a file, a database, a broker, anything that is not a 
log or an in-memory queue) gets a hint such as:

{quote}When the dead letter channel {{direct:parked}} fails as well, the 
message is logged as a WARN and gone ({{deadLetterHandleNewException}} is true 
by default). With an input that delivers again (JMS, Kafka, a transaction), 
{{deadLetterHandleNewException=false}} fails the exchange, so the input can 
take it again.{quote}

It is also a rule to try: {{endpoint=direct:parked error at=dlq}} is what 
{{chaos-suggest}} offers for a dead letter channel. So it fits the chaos part 
of the shared rule set, as in the comment above: the same fact gives a Good to 
know hint and a rule to try.

_Claude Code on behalf of Claus Ibsen_

> camel-jbang - Good to know: hints about an integration from one shared rule 
> set (About screen, security scan, Doctor)
> ---------------------------------------------------------------------------------------------------------------------
>
>                 Key: CAMEL-26716
>                 URL: https://issues.apache.org/jira/browse/CAMEL-26716
>             Project: Camel
>          Issue Type: Improvement
>          Components: camel-jbang
>            Reporter: Claus Ibsen
>            Priority: Minor
>             Fix For: 4.24.0
>
>
> The About screen of the TUI (CAMEL-26700) should end with *Good to know*: a 
> few lines, each answering one question a newcomer to an integration has, from 
> the route model, saying what happens (a hint, not a fix):
> * *When it fails*: per entry point, retried N times then the dead letter 
> channel, returned to the HTTP caller as 500, or logged and gone.
> * *What is dropped*: a filter, a choice without otherwise, the duplicates an 
> idempotent consumer skips.
> * *What does not wait*: a wire tap, a seda: hand-off, inOnly; a failure there 
> is not seen by the caller.
> * *What a restart forgets*: an idempotent or aggregation repository in memory.
> * *Twice or out of order*: an input that redelivers (Kafka, JMS) before a 
> call out without an idempotent consumer; parallel processing or concurrent 
> consumers.
> * *What is exposed or insecure*: a call to another host over a plain 
> transport (http:, ftp:, smtp:, Kafka PLAINTEXT) where a secure one exists; an 
> option the catalog marks insecure set to its insecure value (security = 
> "insecure:ssl", "insecure:serialization", "insecure:dev", such as 
> trustAllCertificates=true); an option marked secret written as plain text 
> instead of a {{placeholder}} or a vault; an HTTP server without 
> authentication on all interfaces. A plain transport to localhost is no hint.
> The hints should not be a set picked while building the screen. They belong 
> to one curated set of rules that more tools share, kept in camel-jbang-core:
> * today's ProjectOverview findings,
> * the camel_security_scan and harden tools of camel-jbang-mcp (their rules 
> move from camel-jbang-mcp to camel-jbang-core, so the screen and the tools 
> agree),
> * the Doctor,
> * the option metadata of the catalog (secret, security = "insecure:*").
> Then the same hints are in the About screen, in camel get about (CAMEL-26700, 
> stage 5) and for an AI over MCP.
> To be talked over before it is built (decided on the walk of the About 
> screen, 7 Nov 2026). Design: 
> https://claude.ai/artifact/2H927wodRp3FAy1BbDbw3P (section "For you to 
> decide").
> _Claude Code on behalf of Claus Ibsen_



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

Reply via email to