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

   [CAMEL-26786](https://issues.apache.org/jira/browse/CAMEL-26786), part 2. 
**Stacked on #29498** (part 1, the CLI). It shows only its own commit while 
that one is open, and gets retargeted to main once #29498 merges.
   
   The same chaos exploration as tools, so an agent (`camel ask`, or any MCP 
client) runs an experiment in one call. A small local model makes about 10 
calls in a 10-minute exploration, not 100.
   
   | `camel ask` | MCP | Marks | Confirmed in `camel ask` |
   |---|---|---|---|
   | `chaos_explore_start` (budget, focus) | 
`camel_runtime_chaos_explore_start` | not destructive | **once**: "explore 
chaos in shop for 10m" |
   | `chaos_experiment` (rule, hypothesis, feed, body, headers, repeat, 
interval, wait, note) | `camel_runtime_chaos_experiment` | destructive | no; 
the feed is confirmed as `send_message` confirms it (an endpoint the 
integration does not have, or a file outside the project) |
   | `chaos_explore_finish` | `camel_runtime_chaos_explore_finish` | not 
destructive | no |
   
   `chaos_experiment` runs the `ChaosExperimentRun` of part 1 over the tool 
context. It returns the verdict, the expectations with their actual values, the 
faults per rule, what the routes did, the traffic sent and `timeLeft`.
   
   **The one consent (decision to check):** `camel ask` asks before each 
`chaos_add` today. For an exploration, the plan was one consent: the user 
agrees to an exploration with a budget, and the experiments in it run without 
asking again. camel-chaos enforces that bound:
   - an experiment can only begin inside a running exploration;
   - its rules end at the deadline at the latest;
   - the rules are removed at the deadline, whatever the agent does.
   
   The MCP security test that checks "exactly the destructive chaos tools are 
confirmed" now says so for `experiment`: its consent is the exploration's. In 
MCP itself nothing changes: the experiment is marked destructive, so a client 
that honours `destructiveHint` asks, and the `read-write` access level does not 
offer it.
   
   **Also**
   - The chaos tool group has the 3 new tools, and its guidance tells a small 
model the order: start, experiments, finish.
   - Over HTTP (`camel run --mcp`) none of the 3 is offered, as with every 
chaos tool that is not list or report.
   - Docs: the MCP page has the 3 tools in its chaos table and the consent 
explained.
   
   **Tests**
   - `ChaosExploreToolsTest`: start, finish, and one experiment end to end over 
the file protocol of the CLI connector, against a fake integration: begin, send 
with repeat and interval, end with the note.
   - The marks, the argument checks, the confirmations 
(`AskToolsTest.anExplorationIsAskedOnceAndItsExperimentsNot`), the group, and 
the HTTP filter.
   - camel-jbang-core: 2727 + 318 green. camel-jbang-mcp: 542 green.
   
   The TUI has its own chaos tools and gets the Explore tab in step 8.
   
   _Claude Code on behalf of davsclaus_
   
   🤖 Generated with [Claude Code](https://claude.com/claude-code)
   
   https://claude.ai/code/session_012nJsFsjqqFiwroeHRWaKbS
   


-- 
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]

  • [PR] CAMEL-26786: camel-jbang... davsclaus (via GitHub) via commits

Reply via email to