scanquality

package
v1.15.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 19, 2026 License: Apache-2.0 Imports: 6 Imported by: 0

Documentation

Index

Constants

View Source
const (
	SurfaceMCPServer                      = "mcp_server"
	AbsenceStatusNotFoundCompleteCoverage = "not_found_with_complete_coverage"
	AbsenceStatusNotFoundReducedCoverage  = "not_found_with_reduced_coverage"
	AbsenceStatusNotScanned               = "not_scanned"
	AbsenceStatusUnsupportedSurface       = "unsupported_surface"
	AbsenceStatusCandidateParseFailed     = "candidate_parse_failed"

	CoverageConfidenceComplete = "complete"
	CoverageConfidenceReduced  = "reduced"
	CoverageConfidenceUnknown  = "unknown"

	HostedCoverageAuthenticatedOrg  = "authenticated_org"
	HostedCoverageAuthenticatedRepo = "authenticated_repo"
	HostedCoveragePublicOnly        = "public_only"
	HostedCoverageNotApplicable     = "not_applicable"
	HostedCoverageComplete          = "complete"
	HostedCoverageReduced           = "reduced"
)
View Source
const ReportVersion = "2"

Variables

This section is empty.

Functions

func CoverageConfidence added in v1.6.0

func CoverageConfidence(report *Report) string

func CoverageReduced added in v1.6.0

func CoverageReduced(report *Report) bool

func UpdateReportProjection added in v1.14.0

func UpdateReportProjection(report *Report, displayedPaths, suppressedPaths int)

Types

type AbsenceClaim added in v1.6.0

type AbsenceClaim struct {
	Org     string   `json:"org,omitempty"`
	Repo    string   `json:"repo,omitempty"`
	Surface string   `json:"surface"`
	Status  string   `json:"status"`
	Reasons []string `json:"reasons,omitempty"`
	Impact  string   `json:"impact,omitempty"`
}

func AbsenceClaimForSurface added in v1.6.0

func AbsenceClaimForSurface(report *Report, org string, repo string, surface string) *AbsenceClaim

type CompactCoverageSummary added in v1.6.0

type CompactCoverageSummary struct {
	CoverageConfidence           string `json:"coverage_confidence"`
	ReducedDetectorCount         int    `json:"reduced_detector_count,omitempty"`
	ParseFailureCount            int    `json:"parse_failure_count,omitempty"`
	SuppressedGeneratedFileCount int    `json:"suppressed_generated_file_count,omitempty"`
	BlockedDetectorCount         int    `json:"blocked_detector_count,omitempty"`
	UnsupportedDeclarationCount  int    `json:"unsupported_declaration_count,omitempty"`
	ImpactStatement              string `json:"impact_statement,omitempty"`
}

func BuildCompactCoverageSummary added in v1.6.0

func BuildCompactCoverageSummary(report *Report) CompactCoverageSummary

type CompletenessSignals added in v1.6.0

type CompletenessSignals struct {
	ReducedCoverage     bool     `json:"reduced_coverage,omitempty"`
	ReducedDetectors    []string `json:"reduced_detectors,omitempty"`
	UnsupportedSurfaces []string `json:"unsupported_surfaces,omitempty"`
	Reasons             []string `json:"reasons,omitempty"`
}

func CompletenessSignalsForRepo added in v1.6.0

func CompletenessSignalsForRepo(report *Report, org string, repo string) CompletenessSignals

type DetectorHealth added in v1.4.0

type DetectorHealth struct {
	Org                     string   `json:"org,omitempty"`
	Repo                    string   `json:"repo,omitempty"`
	Detector                string   `json:"detector"`
	Status                  string   `json:"status"`
	CoverageReasons         []string `json:"coverage_reasons,omitempty"`
	AttemptedFiles          int      `json:"attempted_files"`
	ParsedFiles             int      `json:"parsed_files"`
	PartialParses           int      `json:"partial_parses,omitempty"`
	SkippedFiles            int      `json:"skipped_files,omitempty"`
	SuppressedFiles         int      `json:"suppressed_files,omitempty"`
	ParseFailures           int      `json:"parse_failures,omitempty"`
	UnsupportedDeclarations int      `json:"unsupported_declarations,omitempty"`
	Findings                int      `json:"findings,omitempty"`
}

type HostedCoverage added in v1.12.0

type HostedCoverage struct {
	Scope              string   `json:"scope"`
	Authenticated      bool     `json:"authenticated"`
	Completeness       string   `json:"completeness"`
	RequestedRepos     int      `json:"requested_repos,omitempty"`
	CompletedRepos     int      `json:"completed_repos,omitempty"`
	FailedRepos        int      `json:"failed_repos,omitempty"`
	AcquisitionMode    string   `json:"acquisition_mode,omitempty"`
	Requests           int      `json:"requests,omitempty"`
	EstimatedRequests  int      `json:"estimated_requests,omitempty"`
	RateLimitLimit     int      `json:"rate_limit_limit,omitempty"`
	RateLimitRemaining int      `json:"rate_limit_remaining,omitempty"`
	RateLimitReset     string   `json:"rate_limit_reset,omitempty"`
	Reasons            []string `json:"reasons,omitempty"`
}

func BuildHostedCoverage added in v1.12.0

func BuildHostedCoverage(input HostedCoverageInput) *HostedCoverage

type HostedCoverageInput added in v1.12.0

type HostedCoverageInput struct {
	HostedTarget       bool
	OrgTarget          bool
	Authenticated      bool
	PublicOnlyOptIn    bool
	RequestedRepos     int
	CompletedRepos     int
	FailedRepos        int
	AcquisitionMode    string
	Requests           int
	EstimatedRequests  int
	RateLimitLimit     int
	RateLimitRemaining int
	RateLimitReset     string
}

type Input

type Input struct {
	Mode                 string
	Scopes               []detect.Scope
	Findings             []model.Finding
	DetectorErrors       []detect.DetectorError
	SurfaceCoverage      []detect.SurfaceCoverage
	NormalizedFacts      int
	Bindings             int
	EffectiveAuthorities int
	EligiblePaths        int
	ConfirmedPaths       int
	CandidatePaths       int
	UnresolvedPaths      int
	DisplayedPaths       int
	SuppressedPathsCount int
}

type ParseIssue

type ParseIssue struct {
	Org               string `json:"org,omitempty"`
	Repo              string `json:"repo,omitempty"`
	Path              string `json:"path"`
	Detector          string `json:"detector,omitempty"`
	Kind              string `json:"kind"`
	Format            string `json:"format,omitempty"`
	Message           string `json:"message,omitempty"`
	Reason            string `json:"reason,omitempty"`
	RecommendedAction string `json:"recommended_action,omitempty"`
	OccurrenceCount   int    `json:"occurrence_count,omitempty"`
}

type ReconciliationLedger added in v1.14.0

type ReconciliationLedger struct {
	Version string                `json:"version"`
	Stages  []ReconciliationStage `json:"stages"`
	Valid   bool                  `json:"valid"`
	Errors  []string              `json:"errors,omitempty"`
}

type ReconciliationStage added in v1.14.0

type ReconciliationStage struct {
	StageID string `json:"stage_id"`
	Unit    string `json:"unit"`
	Count   int    `json:"count"`
}

type Report

type Report struct {
	ScanQualityVersion   string                   `json:"scan_quality_version"`
	Mode                 string                   `json:"mode"`
	CompactSummary       *CompactCoverageSummary  `json:"compact_summary,omitempty"`
	Detectors            []DetectorHealth         `json:"detectors,omitempty"`
	SuppressedPaths      []SuppressedPath         `json:"suppressed_paths,omitempty"`
	ParseErrors          []ParseIssue             `json:"parse_errors,omitempty"`
	DetectorErrors       []detect.DetectorError   `json:"detector_errors,omitempty"`
	AbsenceClaims        []AbsenceClaim           `json:"absence_claims,omitempty"`
	HostedCoverage       *HostedCoverage          `json:"hosted_coverage,omitempty"`
	SurfaceCoverage      []detect.SurfaceCoverage `json:"surface_coverage,omitempty"`
	ReconciliationLedger *ReconciliationLedger    `json:"reconciliation_ledger,omitempty"`
}

func Build

func Build(input Input) Report

type SuppressedPath

type SuppressedPath struct {
	Org    string `json:"org,omitempty"`
	Repo   string `json:"repo,omitempty"`
	Path   string `json:"path"`
	Kind   string `json:"kind"`
	Reason string `json:"reason"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL