compliance

package
v1.10.0 Latest Latest
Warning

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

Go to latest
Published: Nov 4, 2026 License: MIT Imports: 4 Imported by: 1

Documentation

Overview

Package compliance provides compliance reporting for regulatory frameworks.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Framework

type Framework string

Framework identifies a compliance framework.

const (
	FrameworkEUAIAct Framework = "eu_ai_act"
	FrameworkNIST    Framework = "nist_ai_rmf"
	FrameworkSOC2    Framework = "soc2"
)

type ListFilter

type ListFilter struct {
	ScopeKey  string
	Framework Framework
	Limit     int
	Offset    int
}

ListFilter defines filtering for compliance report list queries.

type Report

type Report struct {
	shield.Entity
	ID          id.ComplianceReportID `json:"id" bun:",pk"`
	Framework   Framework             `json:"framework" bun:",notnull"`
	ScopeKey    string                `json:"scope_key" bun:",notnull"`
	ScopeLevel  string                `json:"scope_level" bun:",notnull"`
	PeriodStart time.Time             `json:"period_start" bun:",notnull"`
	PeriodEnd   time.Time             `json:"period_end" bun:",notnull"`
	Summary     map[string]any        `json:"summary" bun:"type:jsonb"`
	Details     map[string]any        `json:"details" bun:"type:jsonb"`
	GeneratedAt time.Time             `json:"generated_at" bun:",notnull"`
}

Report represents a generated compliance report.

type Store

type Store interface {
	CreateReport(ctx context.Context, report *Report) error
	GetReport(ctx context.Context, reportID id.ComplianceReportID) (*Report, error)
	ListReports(ctx context.Context, filter *ListFilter) ([]*Report, error)
}

Store defines persistence operations for compliance reports.

Jump to

Keyboard shortcuts

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