luigidemasi opened a new issue, #77:
URL: https://github.com/apache/camel-kit/issues/77

   > Imported from 
[luigidemasi/camel-kit#146](https://github.com/luigidemasi/camel-kit/issues/146),
 opened by [luigidemasi](https://github.com/luigidemasi) on 2026-07-12.
   > Closed by 
[luigidemasi/camel-kit#197](https://github.com/luigidemasi/camel-kit/pull/197), 
merged on 2026-09-01.
   
   ---
   
   ## Description
   
   Every existing JSON-based AI target generates a Citrus MCP server, but 
`camel-kit doctor` validates only the Camel and Camel Knowledge servers for 
those targets. As a result, Doctor can report a healthy workspace when the 
Citrus server is missing or its tool allowlist is invalid.
   
   The gap is historical: Doctor support landed before Citrus MCP integration. 
PR luigidemasi/camel-kit#143 adds complete three-server validation for the new 
Codex TOML path, but intentionally leaves the pre-existing JSON Doctor path 
unchanged.
   
   ## Steps to Reproduce
   
   1. Initialize a workspace with an existing JSON-based target, such as `--ai 
claude`.
   2. Remove the `citrus` server from the generated MCP configuration, or 
change its configured tool allowlist.
   3. Run `camel-kit doctor`.
   4. Observe that no Citrus-specific failure is reported when Camel and Camel 
Knowledge remain valid.
   
   ## Expected Behavior
   
   Doctor validates that every generated MCP configuration contains the Citrus 
server with the exact workflow tool allowlist for that target's schema, and 
reports an actionable remediation when it is missing or incorrect.
   
   ## Actual Behavior
   
   The legacy JSON Doctor path checks only `camel` and `camel-knowledge`. 
Citrus generation is covered by tests, but an existing workspace's Citrus 
configuration is not validated at runtime.
   
   ## Additional Context
   
   - Doctor was introduced in commit `27f1d965` before Citrus integration.
   - Citrus MCP generation was added in commit `5e261285` without extending 
`DoctorService` or `DoctorExpectations`.
   - Existing generated schemas use `autoApprove`/`alwaysAllow`, Copilot 
`tools`, or Pi `directTools`; the follow-up should preserve those 
schema-specific checks.
   - Discovered while reviewing [PR 
luigidemasi/camel-kit#143](https://github.com/luigidemasi/camel-kit/pull/143).
   
   ### Acceptance Criteria
   
   - Validate the presence of the Citrus MCP server for every JSON-based AI 
target.
   - Validate its exact allowed-tool set using each target's existing schema.
   - Add Doctor tests for missing and mismatched Citrus configuration.
   - Keep the Codex TOML validation introduced by PR luigidemasi/camel-kit#143 
passing.
   - Report actionable regeneration or correction guidance.
   - Keep the full existing AI-target test suite green.
   
   Website impact: not required — this fixes Doctor so it enforces the 
already-generated and documented three-server MCP contract.
   


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

Reply via email to