test(orchestrator): expand MCP integration coverage for orchestrator - #4273
test(orchestrator): expand MCP integration coverage for orchestrator#4273HusneShabbir wants to merge 1 commit into
Conversation
…tools Add QE-style coverage for discovery, annotations, pluginSources gating, conditional RBAC filtering, validation errors, and deny/not-found paths across the five Orchestrator MCP actions. Assisted-by: Cursor Co-authored-by: Cursor <cursoragent@cursor.com>
Missing ChangesetsThe following package(s) are changed by this PR but do not have a changeset:
See CONTRIBUTING.md for more information about how to add changesets. Changed Packages
|
|
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #4273 +/- ##
=======================================
Coverage 59.09% 59.09%
=======================================
Files 2458 2458
Lines 98057 98066 +9
Branches 27341 27341
=======================================
+ Hits 57945 57955 +10
+ Misses 39830 39829 -1
Partials 282 282
*This pull request uses carry forward flags. Click here to find out more. Continue to review full report in Codecov by Harness.
🚀 New features to boost your workflow:
|
|
eventually @HusneShabbir , once we get a sign off from @lholmquist @lokanandaprabhu from the plugins / orchestrator team, we have the change #4117 that @jordigilh and @yangcao77 have been collaborating on that I suspect we would want coverage here for as well (but I'll defer to @yangcao77 for the final say on that ) |
lholmquist
left a comment
There was a problem hiding this comment.
I think you might need to add a changeset here
|
@lholmquist This PR is test-only (integration coverage under testUtils / *.integration.test.ts), so no published package surface changed. Per the Backstage changeset guidance, test-only changes don't need a changeset — same approach as #3664. Happy to add an empty one if you prefer, but I don't think it's required here. |



Summary
Expands Orchestrator MCP integration coverage to match the Scorecard QE pattern (#3664), on top of the wiring tests from #4117.
Coverage
tools/list;readOnlyHint/destructiveHint(incl.execute-workflowdestructive)pluginSourcesgating — tools hidden whenorchestratoris excludedlist-workflows— happy path; conditional RBAC → only allowed workflow IDs; access deniedget-workflow-schema— happy path; missing workflow; missing/invalidworkflowIdexecute-workflow— happy path; Ajv validation failure; access denied; missingworkflowIdlist-instances/get-instance— happy paths; missing instance; missing/invalidinstanceIdResolves:
https://redhat.atlassian.net/browse/RHIDP-15230
Test plan
yarn --cwd workspaces/orchestrator/plugins/orchestrator-backend test:integration