refactor(diagnostics): Leverage JSON for Duo Agent Platform settings

Description

This change updates how diagnostic information is displayed in a GitLab extension for VS Code. The main improvements are:

  1. Better formatting for feature status checks: Instead of showing checkmarks and X marks with brackets, it now uses a cleaner checkbox-style format (like [x] for enabled and [ ] for disabled) with the actual status in parentheses.

  2. Simplified settings display: The diagnostics now show a consolidated "JSON Settings" section that only displays configuration values that have been changed from their defaults, rather than showing separate sections for different types of settings. This makes it easier to see what's actually been customized.

  3. Smarter configuration detection: The system now automatically detects which settings have been modified by comparing current values to default values, so users only see relevant information instead of all possible settings.

  4. Improved readability: The diagnostic output now uses proper markdown formatting with bullet points and code blocks, making it easier to read and understand the current state of the extension.

These changes make the diagnostic information more concise and user-friendly, helping developers quickly identify their current configuration and any potential issues with their GitLab extension setup.

Related Issues

Resolves [VS Code] Consider using JSON for Diagnostics Page (#1924 - closed)

How has this been tested?

  • If src/browser or src/common has been modified, please consider interoperability with the Web IDE. See Running the Extension in WebIDE.
  • Consider an end-to-end test for significant new features that aren't covered by integration tests.

Screenshots (if appropriate)

VSCode WebIDE
image image

What CHANGELOG entry will this MR create?

  • fix: Bug fix fixes - a user-facing issue in production - included in changelog
  • feature: New feature - a user-facing change which adds functionality - included in changelog
  • BREAKING CHANGE: (fix or feature that would cause existing functionality to change) - should bump major version, mentioned in the changelog
  • None - other non-user-facing changes
Edited by Dylan Bernardi

Merge request reports

Loading
Loading