Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AffectedRecord ¶
type AffectedRecord struct {
CollectionID string
FilePath string
RecordKey string // empty if entire file changed (list/map format)
ChangeKind ingitdb.ChangeKind
}
AffectedRecord identifies which record was touched by a file change.
type ChangeSetResolver ¶
type ChangeSetResolver interface {
Resolve(dbPath string, def *ingitdb.Definition, changedFiles []ingitdb.ChangedFile) ([]AffectedRecord, error)
}
ChangeSetResolver maps changed files → (collectionID, recordKey) pairs. Handles all three RecordType layouts.
type DataValidator ¶
type DataValidator interface {
Validate(ctx context.Context, dbPath string, def *ingitdb.Definition) (*ingitdb.ValidationResult, error)
}
DataValidator runs a full validation pass over all records.
type ForeignKeyIndex ¶
ForeignKeyIndex is a pre-built read-only lookup for FK validation. Built once before validation begins; shared read-only across goroutines.
type IncrementalValidator ¶
type IncrementalValidator interface {
ValidateChanges(
ctx context.Context,
dbPath string,
def *ingitdb.Definition,
fromCommit, toCommit string,
) (*ingitdb.ValidationResult, error)
}
IncrementalValidator validates only records changed between two git refs.
type RecordValidator ¶
type RecordValidator interface {
ValidateRecord(
col *ingitdb.CollectionDef,
entry ingitdb.RecordEntry,
result *ingitdb.ValidationResult,
) int
}
RecordValidator validates one record against its collection schema. Goroutine-safe. Appends findings to result; returns count of errors appended.
Click to show internal directories.
Click to hide internal directories.