Files
git.stella-ops.org/docs/features/unchecked/integrations/github-code-scanning-upload-client.md

2.0 KiB

GitHub Code Scanning Upload Client

Module

Integrations

Status

IMPLEMENTED

Description

GitHub Code Scanning REST API client is implemented with SARIF upload, processing status polling, alert filtering, and integration with the GitHubApp connector plugin.

Implementation Details

  • Code scanning client: src/Integrations/__Plugins/StellaOps.Integrations.Plugin.GitHubApp/CodeScanning/GitHubCodeScanningClient.cs, IGitHubCodeScanningClient.cs -- SARIF upload and alert retrieval
  • SARIF upload request: src/Integrations/__Plugins/StellaOps.Integrations.Plugin.GitHubApp/CodeScanning/SarifUploadRequest.cs -- upload payload model
  • SARIF upload result: src/Integrations/__Plugins/StellaOps.Integrations.Plugin.GitHubApp/CodeScanning/SarifUploadResult.cs -- upload response model
  • Upload status: src/Integrations/__Plugins/StellaOps.Integrations.Plugin.GitHubApp/CodeScanning/SarifUploadStatus.cs -- upload status tracking
  • Processing status: src/Integrations/__Plugins/StellaOps.Integrations.Plugin.GitHubApp/CodeScanning/ProcessingStatus.cs -- processing state enum
  • Alert filter: src/Integrations/__Plugins/StellaOps.Integrations.Plugin.GitHubApp/CodeScanning/AlertFilter.cs -- alert filtering logic
  • Alert model: src/Integrations/__Plugins/StellaOps.Integrations.Plugin.GitHubApp/CodeScanning/CodeScanningAlert.cs -- alert data model
  • DI extensions: src/Integrations/__Plugins/StellaOps.Integrations.Plugin.GitHubApp/CodeScanning/GitHubCodeScanningExtensions.cs
  • Tests: src/Integrations/__Tests/StellaOps.Integrations.Tests/CodeScanning/GitHubCodeScanningClientTests.cs
  • Source: Feature matrix scan

E2E Test Plan

  • Verify SARIF upload to GitHub Code Scanning API
  • Test processing status polling until upload is complete
  • Verify alert filtering returns relevant alerts
  • Test upload handles large SARIF files (gzip compression)
  • Verify integration with GitHubApp connector plugin authentication