Versions in this module Expand all Collapse all v0 v0.2.0 Jul 10, 2026 v0.1.0 Jul 9, 2026 Changes in this version + const TopicAuditRecorded + var ErrBackendUnavailable = errors.New("graudit: backend unavailable") + var ErrChainCorrupted = errors.New("graudit: chain state corrupted") + var ErrClosed = errors.New("graudit: audit log is closed") + var ErrEntryNotFound = errors.New("graudit: entry not found") + var ErrInvalidEvent = errors.New("graudit: invalid audit event") + var ErrReplicaSetRequired = errors.New("graudit: mongo backend requires a replica-set deployment") + var GenesisPrevHash = strings.Repeat("0", 64) + func ComputeHash(entryID EntryID, actorID, entityType, entityID, action string, payload any, ...) (string, error) + func DecodeStoredPayload(raw []byte) (any, error) + func PublishRecorded(ctx context.Context, bus grevents.Bus, logger Logger, entry AuditEvent) + type AuditEvent struct + Action string + ActorID string + EntityID string + EntityType string + Hash string + ID EntryID + Payload any + PrevHash string + Timestamp time.Time + func BuildChangeEvent(actorID, entityType, entityID string, before, after any) (AuditEvent, error) + func (e AuditEvent) Validate() error + type AuditLog interface + Close func() error + Query func(ctx context.Context, filter QueryFilter) ([]AuditEvent, error) + Record func(ctx context.Context, event AuditEvent) (EntryID, error) + RecordChange func(ctx context.Context, actorID, entityType, entityID string, before, after any) (EntryID, error) + Verify func(ctx context.Context, from, to EntryID) (ok bool, detail VerifyResult, err error) + type ChangeDiff map[string]FieldDiff + type EntryID uint64 + type FieldDiff struct + After any + Before any + type Logger interface + Errorf func(format string, args ...interface{}) + Infof func(format string, args ...interface{}) + Warnf func(format string, args ...interface{}) + func NopLogger() Logger + func OrNop(l Logger) Logger + type QueryFilter struct + ActorID string + EntityID string + EntityType string + From time.Time + Limit int + To time.Time + type VerifyResult struct + Actual string + BrokenAt EntryID + Expected string + Valid bool