Skip to content

Add SonarQube coverage integration and UI; improve template request logging and redaction#21

Merged
Idddd merged 7 commits into
mainfrom
codex/add-sonarqube-test-coverage-feature
May 18, 2026
Merged

Add SonarQube coverage integration and UI; improve template request logging and redaction#21
Idddd merged 7 commits into
mainfrom
codex/add-sonarqube-test-coverage-feature

Conversation

@Idddd
Copy link
Copy Markdown
Collaborator

@Idddd Idddd commented May 18, 2026

Motivation

  • Add a SonarQube coverage assistant to surface project coverage, list uncovered files, and optionally generate missing tests using the configured LLM.
  • Provide a convenient UI in the AI Context Box and a Tools action to inspect SonarQube results and jump to source lines.
  • Harden LLM template HTTP request logging to avoid leaking sensitive headers and payloads and improve error messages for unauthorized responses and missing JSONPath extractions.
  • Expose SonarQube settings in configuration and documentation so users can enable the new feature.

Description

  • Added SonarQube configuration support (SonarQubeConfig) to AiTestConfig and parsing in LlmSettingsLoader with helper converters for double and int, and loadSonarQubeConfig accessor.
  • Introduced a new tool window panel SonarCubeToolWindowPanel and a SonarQubeCoverageAction (with dialog, client, data models, renderer, prompt builder) to fetch measures and issues, display a summary, list uncovered files, and build prompts to generate missing tests using the LLM; registered the action and tool window tab in plugin.xml and added a prompt template SONARQUBE_MISSING_TESTS in AiPromptDefaults.
  • Enhanced TemplateRequestExecutor to set a default Content-Type when missing, redact sensitive headers and payload values from logs, truncate long bodies, include safe response summaries in error messages, and throw an explicit LlmUnauthorizedException on 401 responses; improved log messages to include responsePath on failures.
  • Added ContextBoxStateService.recordSonarQubeCoverage to record SonarQube results into the AI Context Box and wired the Sonar tab into ContextBoxToolWindowFactory; installed a runtime log sink in LlmAuthSessionService to route runtime logs into RuntimeLogStore; updated README with SonarQube configuration sample and usage notes.

Testing

  • No automated tests were added or executed as part of this change.

Codex Task

@Idddd Idddd merged commit b057cce into main May 18, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant