oscerd commented on PR #25361: URL: https://github.com/apache/camel/pull/25361#issuecomment-5207406427
Thanks for taking this over and folding in the fixes, @davsclaus — the hard-boundary rework in `RecipientListProcessor`/`PollEnricher` and the `ignoreInvalidEndpoints` tests match what I had locally. 👍 One small completeness observation for a possible follow-up (non-blocking — this can land as-is): in `RoutingSlip`, the `allowedSchemes` check is applied on the synchronous hop (`RoutingSlip.java:267`) but not on the **async continuation** path (`RoutingSlip.java:468-469`), where subsequent hops are resolved via `iter.next(ex)` → `prepareRecipient(...)` without the check. So a multi-hop slip whose first hop completes asynchronously could still route to a disallowed scheme on a later hop — e.g. slip `seda:allowed,http://blocked` with `allowedSchemes("seda")`: hop 1 (`seda:allowed`) is allowed and goes async, then hop 2 (`http://blocked`) is resolved on the async path unchecked. Adding the same `ProcessorHelper.checkAllowedSchemes(allowedSchemes, recipient);` right after the `prepareRecipient(...)` call at `RoutingSlip.java:469` closes it — the surrounding `catch` already does `current.setException(e); break;`, so it hard-fails consistently with the sync path. Happy to send a tiny follow-up PR for it if you'd prefer to keep this one as-is. _Claude Code on behalf of Andrea Cosentino_ -- 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]
