model

package
v1.14.0 Latest Latest
Warning

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

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

Documentation

Index

Constants

View Source
const (
	CheckResultPass = "pass"
	CheckResultFail = "fail"

	SeverityCritical = "critical"
	SeverityHigh     = "high"
	SeverityMedium   = "medium"
	SeverityLow      = "low"
	SeverityInfo     = "info"

	DiscoveryMethodStatic = "static"
)

Variables

This section is empty.

Functions

func FilterLegacyArtifactIdentityRecords added in v1.0.9

func FilterLegacyArtifactIdentityRecords(records []manifest.IdentityRecord) []manifest.IdentityRecord

FilterLegacyArtifactIdentityRecords preserves only lifecycle-bearing tool identities from older artifacts.

func IsIdentityBearingFinding

func IsIdentityBearingFinding(f Finding) bool

IsIdentityBearingFinding returns whether a finding participates in lifecycle/regress identity state.

func IsInventoryBearingFinding added in v1.0.8

func IsInventoryBearingFinding(f Finding) bool

IsInventoryBearingFinding returns whether a finding should materialize inventory entities.

func IsLegacyArtifactIdentityCandidate added in v1.0.9

func IsLegacyArtifactIdentityCandidate(toolType, toolID, agentID string) bool

IsLegacyArtifactIdentityCandidate rejects only the non-tool identities older runtimes could materialize. When older artifacts do not retain enough type information to decide safely, this helper preserves them.

func SortFindings

func SortFindings(findings []Finding)

Types

type Evidence

type Evidence struct {
	Key   string `json:"key"`
	Value string `json:"value"`
}

Evidence is a deterministic key/value tuple attached to a finding.

type ExecutionRelationship added in v1.14.0

type ExecutionRelationship struct {
	RelationshipID    string   `json:"relationship_id" yaml:"relationship_id"`
	Kind              string   `json:"kind" yaml:"kind"`
	Caller            string   `json:"caller" yaml:"caller"`
	Callee            string   `json:"callee" yaml:"callee"`
	Origin            string   `json:"origin" yaml:"origin"`
	ResolutionState   string   `json:"resolution_state" yaml:"resolution_state"`
	Confidence        string   `json:"confidence" yaml:"confidence"`
	EvidenceRefs      []string `json:"evidence_refs,omitempty" yaml:"evidence_refs,omitempty"`
	TruncationReasons []string `json:"truncation_reasons,omitempty" yaml:"truncation_reasons,omitempty"`
}

func NormalizeExecutionRelationships added in v1.14.0

func NormalizeExecutionRelationships(in []ExecutionRelationship) []ExecutionRelationship

type Finding

type Finding struct {
	FindingType            string                  `json:"finding_type"`
	RuleID                 string                  `json:"rule_id,omitempty"`
	CheckResult            string                  `json:"check_result,omitempty"`
	PolicyOutcomeID        string                  `json:"policy_outcome_id,omitempty"`
	Severity               string                  `json:"severity"`
	DiscoveryMethod        string                  `json:"discovery_method"`
	Remediation            string                  `json:"remediation,omitempty"`
	ToolType               string                  `json:"tool_type"`
	Location               string                  `json:"location"`
	LocationRange          *LocationRange          `json:"location_range,omitempty"`
	Repo                   string                  `json:"repo,omitempty"`
	Org                    string                  `json:"org"`
	Detector               string                  `json:"detector,omitempty"`
	Permissions            []string                `json:"permissions,omitempty"`
	Autonomy               string                  `json:"autonomy,omitempty"`
	Evidence               []Evidence              `json:"evidence,omitempty"`
	ExecutionRelationships []ExecutionRelationship `json:"execution_relationships,omitempty"`
	ParseError             *ParseError             `json:"parse_error,omitempty"`
}

Finding is the canonical detector/policy output contract.

func NormalizeFinding

func NormalizeFinding(item Finding) Finding

type LocationRange added in v1.0.8

type LocationRange struct {
	StartLine int `json:"start_line"`
	EndLine   int `json:"end_line"`
}

type ParseError

type ParseError struct {
	Kind     string `json:"kind"`
	Format   string `json:"format"`
	Path     string `json:"path"`
	Detector string `json:"detector"`
	Message  string `json:"message"`
}

ParseError captures structured parsing failures for deterministic reporting.

Jump to

Keyboard shortcuts

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