Skip to content

Merge pull request #34 from framedparadox/main#35

Merged
ajaykontham merged 2 commits into
buildfrom
master
May 26, 2026
Merged

Merge pull request #34 from framedparadox/main#35
ajaykontham merged 2 commits into
buildfrom
master

Conversation

@ajaykontham

Copy link
Copy Markdown
Member

No description provided.

Copilot AI review requested due to automatic review settings May 26, 2026 14:54

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This pull request expands the GitHub Copilot for Eclipse codebase with MuleSoft/Anypoint Studio-specific capabilities, including a new Anypoint integration bundle/feature, Mule-focused agent tools/prompts, and new chat context features (@console, @transform) plus related UI/theming refinements.

Changes:

  • Add a new com.microsoft.copilot.eclipse.anypoint plugin + feature, including MuleSoft MCP registration and a preference page to configure it.
  • Add MuleSoft-oriented agent tools/prompts and new chat context processors (@console, @transform), plus DataWeave (.dwl) content-type + formatting integration.
  • Update UI styling/background behavior and terminal shell integration markers; adjust build/target/repository/workflow assets for packaging.

Reviewed changes

Copilot reviewed 16 out of 16 changed files in this pull request and generated 6 comments.

Show a summary per file
File Description
pom.xml Adds new Anypoint plugin + feature modules to the build.
docs/DEVELOPER_NOTES_MULESOFT_SUPPORT.md New developer notes documenting MuleSoft support/hardening work.
com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/utils/UiUtils.java Adds icon-button background inheritance support and paint/redraw adjustments.
com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/utils/PreferencesUtils.java Adds helpers for console/transform context preference flags.
com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/swt/ItemController.java Improves focused background painting and background propagation; disposes created colors.
com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/swt/DropdownPopup.java Ensures popup background applied recursively (popup + hover).
com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/swt/DropdownButton.java Adds option to use parent background when not hovered.
com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/swt/CssConstants.java Adds chat surface foreground/background color helpers.
com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/preferences/WrappableNoteLabel.java Ensures preference note labels inherit parent background (including on resize).
com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/preferences/WrappableIconLink.java Ensures preference icon links inherit parent background (including on resize).
com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/preferences/PreferencePageUtils.java Adds helpers to inherit background and style text inputs for dark mode.
com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/preferences/messages.properties Adds UI strings for console/transform context preferences.
com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/preferences/Messages.java Adds NLS fields for new console/transform context strings.
com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/preferences/McpPreferencePage.java Styles MCP-related text inputs for dark theme readability.
com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/preferences/LanguageServerSettingManager.java Migrates stored MCP tool status to “simple” server names.
com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/preferences/GeneralPreferencesPage.java Styles GitHub Enterprise text input for dark theme readability.
com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/preferences/CustomModesPreferencePage.java Styles custom mode name text input for dark theme readability.
com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/preferences/CustomInstructionPreferencePage.java Styles custom instruction text inputs for dark theme readability.
com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/preferences/CopilotPreferenceInitializer.java Changes defaults for workspace/console/transform context preferences.
com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/preferences/ChatPreferencesPage.java Adds preference toggles for console and transform context; styles numeric input.
com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/preferences/AddByokModelDialog.java Styles BYOK dialog text inputs for dark theme readability.
com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/preferences/AddApiKeyDialog.java Styles API key text input for dark theme readability.
com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/UserTurnWidget.java Applies chat message CSS class and adjusts background behavior for light theme.
com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/tools/MunitValidateFlowTestsTool.java New tool: validates MUnit suite structure/coverage for Mule flows.
com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/tools/MunitImprovementSuggestionsTool.java New tool: suggests MUnit cadence/coverage improvements.
com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/tools/MunitFullReviewTool.java New tool: comprehensive MUnit review for quality and missing scenarios.
com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/tools/MuleToolResponse.java Adds a structured response shape for MuleSoft tools.
com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/tools/MuleSecurityReviewTool.java New tool: scans Mule projects for common security issues.
com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/tools/MuleProjectSummaryTool.java New tool: human-readable Mule project summary.
com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/tools/MuleProjectScanTool.java New tool: deterministic structured scan of Mule project structure/metadata.
com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/tools/MuleProjectErrorsTool.java New tool: reads Eclipse problem markers for a Mule project.
com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/tools/MuleProjectAnalysis.java Adds in-memory analysis model for Mule project scanning.
com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/tools/MuleDwlWriteTool.java New tool: writes full .dwl scripts with confirmation + workspace refresh.
com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/tools/MuleDwlReadTool.java New tool: reads .dwl script content and metadata.
com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/tools/MuleDiagnostic.java Adds diagnostic record for Mule tool findings.
com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/tools/MuleCodeReviewTool.java New tool: MuleSoft code review across XML/DW/specs/tests.
com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/tools/ApiSchemaAnalyzeTool.java New tool: analyzes API schema files (RAML/OAS/etc.) for issues.
com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/services/UserPreferenceService.java Reloads built-in modes asynchronously on status change to address startup race.
com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/services/TransformEditorContextPromptProcessor.java New: injects transform editor context when @transform is used.
com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/services/MuleConsoleParser.java New: enriches Mule runtime exceptions with a summary block.
com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/services/McpExtensionPointManager.java Sanitizes persisted MCP extension data and compares redacted values for change detection.
com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/services/MavenConsoleParser.java New: enriches Maven console output with a summary block.
com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/services/ConsoleContextPromptProcessor.java New: injects console context when @console is used (with parser enrichment).
com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/services/AgentToolService.java Registers the new MuleSoft/MUnit/DataWeave tools and related utilities.
com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/ChatMarkupViewer.java Applies consistent message background + CSS class to markup viewer text widget.
com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/ChatAssistProcessor.java Adds completion proposals for @console and @transform commands.
com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/AddContextButton.java Makes attach-context icon button use parent background when not hovered.
com.microsoft.copilot.eclipse.ui/src/com/microsoft/copilot/eclipse/ui/chat/ActionBar.java Makes action bar icon buttons and dropdown faces inherit parent background; refreshes input background.
com.microsoft.copilot.eclipse.ui/plugin.xml Registers .dwl content type, content assist processor, and binds TextEditor for DWL.
com.microsoft.copilot.eclipse.ui/mulesoft-copilot/.github/prompts/mule-security-review.prompt.md New MuleSoft security review agent prompt.
com.microsoft.copilot.eclipse.ui/mulesoft-copilot/.github/prompts/mule-performance-review.prompt.md New MuleSoft performance review agent prompt.
com.microsoft.copilot.eclipse.ui/mulesoft-copilot/.github/prompts/mule-code-review.prompt.md New MuleSoft code review agent prompt.
com.microsoft.copilot.eclipse.ui/mulesoft-copilot/.github/prompts/logging-observability.prompt.md New logging/observability review agent prompt.
com.microsoft.copilot.eclipse.ui/mulesoft-copilot/.github/prompts/generate-munit-tests.prompt.md New MUnit generation workflow prompt.
com.microsoft.copilot.eclipse.ui/mulesoft-copilot/.github/prompts/error-handling-contract.prompt.md New error-handling contract review prompt.
com.microsoft.copilot.eclipse.ui/mulesoft-copilot/.github/prompts/deployment-readiness.prompt.md New deployment readiness prompt.
com.microsoft.copilot.eclipse.ui/mulesoft-copilot/.github/prompts/dataweave-optimize.prompt.md New DataWeave optimization prompt.
com.microsoft.copilot.eclipse.ui/mulesoft-copilot/.github/prompts/dataweave-best-practices.prompt.md New DataWeave best practices prompt.
com.microsoft.copilot.eclipse.ui/mulesoft-copilot/.github/prompts/connector-governance.prompt.md New connector governance prompt.
com.microsoft.copilot.eclipse.ui/mulesoft-copilot/.github/prompts/batch-job-review.prompt.md New batch job review prompt.
com.microsoft.copilot.eclipse.ui/mulesoft-copilot/.github/prompts/async-flow-review.prompt.md New async flow review prompt.
com.microsoft.copilot.eclipse.ui/mulesoft-copilot/.github/prompts/api-spec-review.prompt.md New API spec review prompt.
com.microsoft.copilot.eclipse.ui/mulesoft-copilot/.github/prompts/api-led-architecture-review.prompt.md New API-led architecture review prompt.
com.microsoft.copilot.eclipse.ui/META-INF/MANIFEST.MF Broadens Mylyn Wikitext required bundle version ranges.
com.microsoft.copilot.eclipse.ui/css/macosx-light.css Adds chat message background styling for macOS light theme.
com.microsoft.copilot.eclipse.ui/css/light.css Updates light theme backgrounds and chat message styling.
com.microsoft.copilot.eclipse.ui/css/dark.css Updates dark theme backgrounds and adds CSS classes for input styling.
com.microsoft.copilot.eclipse.ui/build.properties Packages the mulesoft-copilot/ assets into the UI bundle build.
com.microsoft.copilot.eclipse.ui.test/src/com/microsoft/copilot/eclipse/ui/preferences/CopilotPreferenceInitializerTest.java Adds preference default coverage (but currently conflicts with initializer).
com.microsoft.copilot.eclipse.ui.test/src/com/microsoft/copilot/eclipse/ui/chat/tools/RunInTerminalToolAdapterTest.java Tightens assertion style for terminal adapter test output.
com.microsoft.copilot.eclipse.ui.test/src/com/microsoft/copilot/eclipse/ui/chat/services/MavenConsoleParserTest.java Adds unit tests for Maven console enrichment logic.
com.microsoft.copilot.eclipse.ui.test/src/com/microsoft/copilot/eclipse/ui/chat/services/ConsoleContextServiceTest.java Adds tests for capturing/truncating console context snapshots.
com.microsoft.copilot.eclipse.ui.test/src/com/microsoft/copilot/eclipse/ui/chat/services/ConsoleContextPromptProcessorTest.java Adds tests for @console prompt processing and enrichment.
com.microsoft.copilot.eclipse.ui.test/src/com/microsoft/copilot/eclipse/ui/chat/services/ChatCompletionServiceTest.java Adds tests around @console command availability gating.
com.microsoft.copilot.eclipse.ui.test/src/com/microsoft/copilot/eclipse/ui/chat/ChatAssistProcessorTest.java Adds tests for @console completion proposal behavior.
com.microsoft.copilot.eclipse.ui.test/src/com/microsoft/copilot/eclipse/anypoint/MuleSoftMcpConfigurationTest.java Adds tests for MuleSoft MCP configuration JSON generation.
com.microsoft.copilot.eclipse.ui.test/META-INF/MANIFEST.MF Adds test bundle deps for new Anypoint bundle and console API.
com.microsoft.copilot.eclipse.terminal.api/src/com/microsoft/copilot/eclipse/terminal/api/ShellIntegrationScripts.java Reworks shell marker constants and exposes Bash/PowerShell script paths.
com.microsoft.copilot.eclipse.terminal.api/src/com/microsoft/copilot/eclipse/terminal/api/IRunInTerminalTool.java Extends terminal tool API with working directory + cancel support.
com.microsoft.copilot.eclipse.terminal.api/scripts/copilot-sh-integration.sh Removes POSIX sh integration script.
com.microsoft.copilot.eclipse.terminal.api/scripts/copilot-powershell-integration.ps1 Adds PowerShell shell integration script for OSC markers.
com.microsoft.copilot.eclipse.terminal.api/scripts/copilot-bash-integration.sh Adds Bash shell integration script for OSC markers.
com.microsoft.copilot.eclipse.terminal.api/META-INF/MANIFEST.MF Adds Apache Commons Lang dependency.
com.microsoft.copilot.eclipse.repository/pom.xml Updates repository build to include all dependencies and restores director executions.
com.microsoft.copilot.eclipse.repository/category.xml Switches category feature to Anypoint feature and updates category label.
com.microsoft.copilot.eclipse.core/src/com/microsoft/copilot/eclipse/core/lsp/protocol/CopilotAgentSettings.java Adds MCP auto-approve settings shape and includes it in equals/hashCode/toString.
com.microsoft.copilot.eclipse.core/src/com/microsoft/copilot/eclipse/core/format/FormatOptionProvider.java Adds DataWeave language id mapping for .dwl files.
com.microsoft.copilot.eclipse.core/src/com/microsoft/copilot/eclipse/core/Constants.java Adds new preference keys for console and transform context.
com.microsoft.copilot.eclipse.core/src/com/microsoft/copilot/eclipse/core/completion/CompletionProvider.java Treats CancellationException as a cancelled completion status.
com.microsoft.copilot.eclipse.core/src/com/microsoft/copilot/eclipse/core/chat/BuiltInChatModeManager.java Adds async reload for built-in chat modes with error logging.
com.microsoft.copilot.eclipse.core/src/com/microsoft/copilot/eclipse/core/AuthStatusManager.java Handles CancellationException during sign-out by clearing local auth state.
com.microsoft.copilot.eclipse.core/plugin.xml Maps the DWL content type to languageId="dataweave".
com.microsoft.copilot.eclipse.core/copilot-agent/package.json Formatting-only change.
com.microsoft.copilot.eclipse.core/copilot-agent/copy-binaries.js Avoids failing install when platform-specific binaries are missing.
com.microsoft.copilot.eclipse.core.test/src/com/microsoft/copilot/eclipse/core/completion/FormatOptionProviderTests.java Adds tests asserting default formatting behavior for .dwl.
com.microsoft.copilot.eclipse.core.agent.win32/pom.xml Adds tycho-packaging-plugin configuration.
com.microsoft.copilot.eclipse.core.agent.macosx.x64/pom.xml Adds tycho-packaging-plugin configuration.
com.microsoft.copilot.eclipse.core.agent.macosx.aarch64/pom.xml Adds tycho-packaging-plugin configuration.
com.microsoft.copilot.eclipse.core.agent.linux.x64/pom.xml Adds tycho-packaging-plugin configuration.
com.microsoft.copilot.eclipse.core.agent.linux.aarch64/pom.xml Adds tycho-packaging-plugin configuration.
com.microsoft.copilot.eclipse.anypoint/templates/copilot-instructions-mule-template.md Adds a Copilot instructions scaffold template for Mule projects.
com.microsoft.copilot.eclipse.anypoint/src/com/microsoft/copilot/eclipse/anypoint/MuleSoftMcpSettings.java Stores MuleSoft MCP settings in Eclipse secure storage (with env fallbacks).
com.microsoft.copilot.eclipse.anypoint/src/com/microsoft/copilot/eclipse/anypoint/MuleSoftMcpRegistrationProvider.java Registers official MuleSoft MCP server config via extension point.
com.microsoft.copilot.eclipse.anypoint/src/com/microsoft/copilot/eclipse/anypoint/MuleSoftMcpPreferencePage.java Adds UI to configure MuleSoft MCP registration and credentials.
com.microsoft.copilot.eclipse.anypoint/src/com/microsoft/copilot/eclipse/anypoint/MuleSoftMcpConfiguration.java Builds MCP JSON configuration for mulesoft-mcp-server via npx.
com.microsoft.copilot.eclipse.anypoint/pom.xml New Anypoint integration plugin module POM.
com.microsoft.copilot.eclipse.anypoint/plugin.xml Registers MCP provider + preference page contributions.
com.microsoft.copilot.eclipse.anypoint/META-INF/MANIFEST.MF Declares Anypoint bundle metadata and dependencies.
com.microsoft.copilot.eclipse.anypoint/build.properties Configures build output and included resources for new bundle.
com.microsoft.copilot.eclipse.anypoint.feature/pom.xml New Anypoint feature module POM.
com.microsoft.copilot.eclipse.anypoint.feature/feature.xml Defines Anypoint feature packaging and required dependencies.
CHANGELOG.md Adds “Unreleased” notes describing MuleSoft enhancements and default changes.
base.target Adds Eclipse TM terminal features to the target platform.
.gitignore Adjusts zip ignore rules and adds additional ignored build folders.
.github/workflows/sync-upstream.yml Adds a scheduled upstream sync workflow.
.github/workflows/ci.yml Disables (comments out) the CI workflow.
.github/workflows/build-and-package.yml Adds a packaging workflow to produce a p2 ZIP and GitHub release.

Comment on lines 43 to 50
Comment thread .github/workflows/ci.yml
Comment on lines 1 to 43
Comment on lines 65 to 74
Comment on lines 34 to 46
Comment on lines 49 to 54
Comment on lines 36 to 53
@chatgpt-codex-connector

Copy link
Copy Markdown

💡 Codex Review


P1 Badge Clean up consoles when interrupted open completes late

When a foreground command is interrupted, its future is completed before openConsole(...).handle(...) runs; this branch then exits early on commandFuture.isDone() and never disposes the console that was just opened. In the rapid-submit case (start command A, then command B before A's console callback fires), A can leave an orphan Copilot terminal/listener behind, causing tab leaks and cross-command output contamination.


allServers.merge(serverName, serverValue,
(existingValue, newValue) -> newValue != null ? newValue : existingValue);

P2 Badge Preserve unique MCP server keys across extensions

Merging approved MCP servers by raw serverName now allows collisions between different extension contributors, so one plugin's server config silently overwrites another when names match. This is a functional regression for multi-plugin setups because both providers can be approved yet only one server definition survives in approvedExtMcpServers.

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@ajaykontham ajaykontham merged commit 3758190 into build May 26, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants