[ 
https://issues.apache.org/jira/browse/CAMEL-26438?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Work on CAMEL-26438 started by shashank.
----------------------------------------
> camel-test-dst - mark the fake worlds with @DstWorld and list them in the 
> camel-catalog
> ---------------------------------------------------------------------------------------
>
>                 Key: CAMEL-26438
>                 URL: https://issues.apache.org/jira/browse/CAMEL-26438
>             Project: Camel
>          Issue Type: Improvement
>          Components: camel-test
>            Reporter: shashank
>            Assignee: shashank
>            Priority: Minor
>
> Discussed with Claus on Zulip (2026-10-31). There are 5 fake worlds for 
> deterministic simulation tests on main (camel-aws2-sqs {{SqsWorld}}, 
> camel-azure-eventhubs {{EventHubsWorld}}, camel-kafka-share 
> {{KafkaShareWorld}}, camel-pulsar {{PulsarWorld}}, camel-slack 
> {{SlackWorld}}). The only list of them is a hand-written table in 
> {{test-dst.adoc}}, which will drift, and tools (the MCP server, an AI agent 
> asked to test a consumer) cannot find out which components have a world, what 
> it simulates, or which have none yet.
> *Proposal*
> * An annotation {{@DstWorld}} in camel-test-dst, put on the world class, with 
> the metadata: the component, the fake, what the world covers, the faults it 
> injects, the invariant it checks, and the related JIRA issues. An annotation 
> rather than an interface: the worlds are test classes of different shapes, 
> and the metadata is what is needed.
> * Annotate the 5 existing worlds.
> * The worlds live in {{src/test}}, so they never reach the component JAR: 
> camel-package-maven-plugin scans the test sources of a component for 
> {{@DstWorld}} and writes a {{dstWorlds}} section into the component's catalog 
> JSON, generated and checked like the rest of the catalog (CI fails when it is 
> out of date).
> * Generate the table of worlds in {{test-dst.adoc}} from the same data.
> * Later steps (separate PRs): an MCP tool that lists the worlds (and the 
> consumers without one), so an agent can extend or copy an existing world 
> following the guide "Writing a fake world" in {{test-dst.adoc}}; and a short 
> generated section on each component page that has a world (what it covers, 
> how to run it with a seed).
> _Filed with Claude Code on behalf of allthingssecurity._



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

Reply via email to