luigidemasi opened a new issue, #47: URL: https://github.com/apache/camel-kit/issues/47
> Imported from [luigidemasi/camel-kit#79](https://github.com/luigidemasi/camel-kit/issues/79), opened by [luigidemasi](https://github.com/luigidemasi) on 2026-05-13. > Closed by [luigidemasi/camel-kit#83](https://github.com/luigidemasi/camel-kit/pull/83), merged on 2026-05-15. --- ## Context **Source pattern:** `doubt-driven-development` skill from [agent-skills](https://github.com/addyosmani/agent-skills) — subjects every non-trivial decision to a fresh-context adversarial review before it stands. Process: CLAIM → EXTRACT → DOUBT → RECONCILE → STOP. ## Problem Camel-kit's review system (Iron Law 4: two-stage review) is: - Not adversarial (prompt is "evaluate", not "find what's wrong") - Not fresh-context (reviewers run as guides within the main conversation, sharing accumulated context) - Not per-decision (reviews cover the whole design/implementation, not individual non-trivial decisions) ## Proposed Solution ### 1. Adversarial spec review Reframe the spec-reviewer prompt from "evaluate this spec" to "assume the author is overconfident — find what's wrong, what's missing, what will fail." Prompt change in existing reviewer criteria. ### 2. In-flight doubt during camel-execute When a subagent makes a non-trivial decision (e.g., choosing between two EIP patterns, designing a DataMapper transformation), the orchestrator applies a CLAIM → EXTRACT → DOUBT mini-cycle. Fresh-context reviewer gets only artifact + contract + adversarial prompt — no accumulated session context. ### 3. Decision triviality gate Define non-trivial in the Camel context: - Introduces branching logic (choice, filter, circuitBreaker) - Crosses a system boundary (external API, database, message broker) - Asserts something the type system can't verify - Depends on invisible context (ordering, timing, state) - Is irreversible (data transformation, deletion) Adding a timer with a fixed period = trivial. Choosing between pollEnrich and from().aggregate() = non-trivial. ### 4. Bounded loop discipline 3-cycle hard cap with escalation. If the reviewer surfaces issues across 3 iterations without convergence, escalate to the user. ### 5. Finding classification Each reviewer finding classified as: - **Contract misread** → actionable (reviewer misunderstood the contract) - **Actionable** → fix before proceeding - **Trade-off** → document, user decides - **Noise** → dismiss with reason "Doubt theater" red flag: across 2+ cycles, zero findings classified as actionable → you're validating, not doubting. Stop and escalate. ## Acceptance Criteria - [ ] Spec-reviewer criteria reframed with adversarial prompt - [ ] Decision triviality gate defined for Camel integration context - [ ] CLAIM → EXTRACT → DOUBT mini-cycle in camel-execute for non-trivial decisions - [ ] Finding classification taxonomy (contract misread / actionable / trade-off / noise) - [ ] 3-cycle hard cap with user escalation - [ ] Fresh-context subagent for doubt review (not inline in main context) -- 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]
