qualification

package
v0.1.0-alpha.2 Latest Latest
Warning

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

Go to latest
Published: Jul 17, 2026 License: Apache-2.0 Imports: 12 Imported by: 0

Documentation

Overview

Package qualification contains operational release-evidence runners. It is separate from storage tests so receipts are produced by the same VCS-stamped executable that performs the work.

Index

Constants

View Source
const RaceEnabled = false
View Source
const SoakReceiptSchemaVersion uint32 = 4

Variables

This section is empty.

Functions

func ValidateSoakOptions

func ValidateSoakOptions(options SoakOptions) error

Types

type SoakOptions

type SoakOptions struct {
	TargetDirectory  string
	Profile          string
	Seconds          int
	Documents        int
	Reopens          int
	SourceRevision   string
	BuildRevision    string
	BuildModified    bool
	Volume           VolumeIdentity
	ProgressInterval time.Duration
	Progress         func(SoakProgress)
}

type SoakPhaseReceipt

type SoakPhaseReceipt struct {
	Ordinal              int           `json:"ordinal"`
	Duration             time.Duration `json:"durationNanos"`
	ConcurrentDuration   time.Duration `json:"concurrentDurationNanos"`
	Writes               uint64        `json:"writes"`
	SnapshotReads        uint64        `json:"snapshotReads"`
	IndexBuildBatches    uint64        `json:"indexBuildBatches"`
	ReclamationAttempts  uint64        `json:"reclamationAttempts"`
	ReclamationConflicts uint64        `json:"reclamationConflicts"`
	CommitSequence       uint64        `json:"commitSequence"`
	PhysicalPages        uint64        `json:"physicalPages"`
	ReusablePages        uint64        `json:"reusablePages"`
	IndexBuildPhase      uint8         `json:"indexBuildPhase"`
}

type SoakProgress

type SoakProgress struct {
	Stage                SoakProgressStage
	Phase                int
	TotalPhases          int
	Elapsed              time.Duration
	ConcurrentDuration   time.Duration
	Writes               uint64
	SnapshotReads        uint64
	IndexBuildBatches    uint64
	ReclamationAttempts  uint64
	ReclamationConflicts uint64
}

type SoakProgressStage

type SoakProgressStage string
const (
	SoakProgressStarted         SoakProgressStage = "started"
	SoakProgressPhaseRunning    SoakProgressStage = "phase_running"
	SoakProgressPhaseVerifying  SoakProgressStage = "phase_verifying"
	SoakProgressPhaseVerified   SoakProgressStage = "phase_verified"
	SoakProgressShadowVerifying SoakProgressStage = "shadow_verifying"
	SoakProgressShadowVerified  SoakProgressStage = "shadow_verified"
	SoakProgressFinalVerifying  SoakProgressStage = "final_verifying"
	SoakProgressComplete        SoakProgressStage = "complete"
)

type SoakReceipt

type SoakReceipt struct {
	SchemaVersion         uint32             `json:"schemaVersion"`
	FormatRevision        uint16             `json:"formatRevision"`
	Engine                string             `json:"engine"`
	Profile               string             `json:"profile"`
	RaceEnabled           bool               `json:"raceEnabled"`
	GOOS                  string             `json:"goos"`
	GOARCH                string             `json:"goarch"`
	GoVersion             string             `json:"goVersion"`
	SourceRevision        string             `json:"sourceRevision,omitempty"`
	BuildRevision         string             `json:"buildRevision,omitempty"`
	BuildModified         bool               `json:"buildModified"`
	Device                uint64             `json:"device"`
	FilesystemType        string             `json:"filesystemType"`
	FilesystemName        string             `json:"filesystemName"`
	BlockSize             uint64             `json:"blockSize"`
	StartedAt             time.Time          `json:"startedAt"`
	FinishedAt            time.Time          `json:"finishedAt"`
	RequestedSeconds      int                `json:"requestedSeconds"`
	ConcurrentDuration    time.Duration      `json:"concurrentDurationNanos"`
	ActualDuration        time.Duration      `json:"actualDurationNanos"`
	Documents             int                `json:"documents"`
	RequestedReopens      int                `json:"requestedReopens"`
	CompletedReopens      int                `json:"completedReopens"`
	Writes                uint64             `json:"writes"`
	SnapshotReads         uint64             `json:"snapshotReads"`
	IndexBuildBatches     uint64             `json:"indexBuildBatches"`
	ReclamationAttempts   uint64             `json:"reclamationAttempts"`
	ReclamationConflicts  uint64             `json:"reclamationConflicts"`
	FinalCommitSequence   uint64             `json:"finalCommitSequence"`
	FinalFileBytes        uint64             `json:"finalFileBytes"`
	FinalPhysicalPages    uint64             `json:"finalPhysicalPages"`
	FinalReachablePages   uint64             `json:"finalReachablePages"`
	FinalReclaimablePages uint64             `json:"finalReclaimablePages"`
	FinalFileSHA256       string             `json:"finalFileSha256"`
	PersistentFreeSpace   bool               `json:"persistentFreeSpace"`
	FreeSpaceValid        bool               `json:"freeSpaceValid"`
	SemanticIndexes       bool               `json:"semanticIndexesVerified"`
	SemanticIndexBuilds   bool               `json:"semanticIndexBuildsVerified"`
	FinalIndexBuildAbsent bool               `json:"finalIndexBuildAbsent"`
	Phases                []SoakPhaseReceipt `json:"phases"`
}

func RunStorageSoak

func RunStorageSoak(ctx context.Context, options SoakOptions) (_ SoakReceipt, resultErr error)

type VolumeIdentity

type VolumeIdentity struct {
	Device         uint64
	FilesystemType string
	FilesystemName string
	BlockSize      uint64
}

Jump to

Keyboard shortcuts

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