Versions in this module Expand all Collapse all v0 v0.5.81 Sep 5, 2026 v0.5.9 Sep 8, 2026 v0.5.8 Sep 3, 2026 v0.5.7 Aug 24, 2026 Changes in this version + type CheckPatch struct + Category *string + ControlID *string + Description *string + Enabled *bool + Framework *string + Interval *int + Name *string + Platform *string + ProfileDescription *string + ProfileID *string + ProfileName *string + ProfilePlatform *string + Query *string + QueryName *string + ScoringRule *string + Severity *string + Snapshot *bool + Weight *int type ControlResult + MaxScore int + type PostureCheck struct + Category string + ControlID string + CreatedAt time.Time + Description string + Enabled bool + Framework Framework + ID uint + Interval int + Name string + Platform string + ProfileDescription string + ProfileID string + ProfileName string + ProfilePlatform string + Query string + QueryName string + ScoringRule string + Severity Severity + Snapshot bool + UpdatedAt time.Time + Weight int + func (PostureCheck) TableName() string type PostureManager + func (pm *PostureManager) AllProfiles() ([]PostureProfile, error) + func (pm *PostureManager) CreateCheck(patch CheckPatch) (*PostureCheck, error) + func (pm *PostureManager) DeleteCheck(id uint) error + func (pm *PostureManager) GetCheck(id uint) (*PostureCheck, error) + func (pm *PostureManager) GetProfile(id string) (*PostureProfile, error) + func (pm *PostureManager) ListChecks() ([]PostureCheck, error) + func (pm *PostureManager) Score(records []NodePosture) (PostureScore, error) + func (pm *PostureManager) SeedDefaultChecks() error + func (pm *PostureManager) UpdateCheck(id uint, patch CheckPatch) (*PostureCheck, error) type ProfileQuery + QueryName string type ScoreCalculator + func NewScoreCalculatorWithChecks(checks []PostureCheck) *ScoreCalculator type ScoringRule + RuleKey string + Weight int v0.5.6 Aug 19, 2026 v0.5.5 Aug 5, 2026 Changes in this version + const DefaultQueryPrefix + const UptimeCategory + var QueryPrefix = DefaultQueryPrefix + var SeverityWeight = map[Severity]int + func IsPostureQuery(name string) bool + func ParseUptime(record NodePosture) (*types.NodeUptime, error) + func PostureCategory(name string) string + func RiskLevelFromScore(score int) string + func SetPrefix(prefix string) + func SummaryFromRecords(records []NodePosture) *types.NodePostureSummary + type ControlResult struct + Category string + ControlID string + Description string + Detail string + Framework Framework + Score int + Severity Severity + Status string + Title string + type FleetCategorySummary struct + Category string + NodeCount int + TotalRows int + type Framework string + const FrameworkISO27001 + const FrameworkSOC2 + type NodePosture struct + Category string + CreatedAt time.Time + Environment string + FirstSeen time.Time + ID uint + LastSeen time.Time + NodeUUID string + QueryName string + RowCount int + Snapshot string + Summary string + UpdatedAt time.Time + func (NodePosture) TableName() string + type PostureManager struct + DB *gorm.DB + func NewPostureManager(db *gorm.DB) *PostureManager + func (pm *PostureManager) GetByNode(nodeUUID string) ([]NodePosture, error) + func (pm *PostureManager) GetByNodeCategory(nodeUUID, category string) (*NodePosture, error) + func (pm *PostureManager) GetFleetSummary(environment string) ([]FleetCategorySummary, error) + func (pm *PostureManager) GetSummaryByNode(nodeUUID string) (*types.NodePostureSummary, error) + func (pm *PostureManager) GetSummaryByNodes(nodeUUIDs []string) (map[string]*types.NodePostureSummary, error) + func (pm *PostureManager) GetUptimeByNode(nodeUUID string) (*types.NodeUptime, error) + func (pm *PostureManager) GetUptimeByNodes(nodeUUIDs []string) (map[string]*types.NodeUptime, error) + func (pm *PostureManager) IngestResult(nodeUUID, environment, queryName string, columns json.RawMessage) error + type PostureProfile struct + Description string + ID string + Name string + Platform string + Queries map[string]ProfileQuery + func AllProfiles() []PostureProfile + func GetProfile(id string) *PostureProfile + func LinuxLaptopProfile() PostureProfile + func LinuxServerProfile() PostureProfile + func MacOSLaptopProfile() PostureProfile + func WindowsLaptopProfile() PostureProfile + func WindowsServerProfile() PostureProfile + func (p PostureProfile) ToScheduleEntries() (map[string]map[string]interface{}, error) + func (p PostureProfile) ToScheduleJSON() (string, error) + type PostureScore struct + Controls []ControlResult + FailCount int + NodeUUID string + PassCount int + RiskLevel string + Timestamp time.Time + TotalScore int + WarnCount int + type ProfileQuery struct + Interval int + Platform string + Query string + Snapshot bool + type ScoreCalculator struct + func NewScoreCalculator() *ScoreCalculator + func (sc *ScoreCalculator) Score(records []NodePosture) PostureScore + type ScoringRule struct + Categories []string + ControlID string + Description string + Evaluate func(data map[string][]map[string]interface{}) (status, detail string) + Framework Framework + Severity Severity + Title string + type Severity string + const SeverityCritical + const SeverityHigh + const SeverityLow + const SeverityMedium