Help us shape the future of Go! Take the 2026 Go Developer Survey

assessmentrollout

package
v0.2.4 Latest Latest
Warning

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

Go to latest
Published: Sep 28, 2026 License: Apache-2.0 Imports: 4 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Decision

type Decision struct {
	Phase    Phase     `json:"phase"`
	TenantID string    `json:"tenant_id"`
	Allowed  bool      `json:"allowed"`
	Blockers []Finding `json:"blockers"`
	Warnings []Finding `json:"warnings"`
}

func Evaluate

func Evaluate(phase Phase, snapshot Snapshot) (Decision, error)

type Finding

type Finding struct {
	Code    string `json:"code"`
	Message string `json:"message"`
}

type Phase

type Phase string
const (
	PhaseInternalCanary Phase = "internal_canary"
	PhaseOptInCanary    Phase = "opt_in_canary"
	PhaseReadCutover    Phase = "read_cutover"
	PhaseUIDefault      Phase = "ui_default"
	PhaseRollbackDrill  Phase = "rollback_drill"
)

func (Phase) Valid

func (phase Phase) Valid() bool

type Snapshot

type Snapshot struct {
	TenantID                           string `json:"tenant_id"`
	IntegrityViolations                int    `json:"integrity_violations"`
	AutomaticFixedPartialUnknown       int    `json:"automatic_fixed_partial_unknown"`
	ComparableItems                    int    `json:"comparable_items"`
	SemanticMismatches                 int    `json:"semantic_mismatches"`
	ProducerItems                      int    `json:"producer_items"`
	ReviewCandidates                   int    `json:"review_candidates"`
	SevenDayReviewCandidateBaselineBPS int    `json:"seven_day_review_candidate_baseline_bps"`
	APIRequests                        int    `json:"api_requests"`
	APIErrors                          int    `json:"api_errors"`
	APIWindowMinutes                   int    `json:"api_window_minutes"`
	LatencyWindowMinutes               int    `json:"latency_window_minutes"`
	CycleListP95Millis                 int    `json:"cycle_list_p95_millis"`
	CycleDetailP95Millis               int    `json:"cycle_detail_p95_millis"`
	ComparisonPageP95Millis            int    `json:"comparison_page_p95_millis"`
	ProductionSLOContinuousMinutes     int    `json:"production_slo_continuous_minutes"`
	TargetCardinality                  bool   `json:"target_cardinality"`
	ComparisonBacklog                  int    `json:"comparison_backlog"`
	OldestComparisonAgeSeconds         int    `json:"oldest_comparison_age_seconds"`
	Comparison100KDurationSeconds      int    `json:"comparison_100k_duration_seconds"`
	DeadLetterGrowth10Minutes          int    `json:"dead_letter_growth_10_minutes"`
	SuccessfulRepairs10Minutes         int    `json:"successful_repairs_10_minutes"`
	MetricsRecorded                    bool   `json:"metrics_recorded"`
	ApprovalRecorded                   bool   `json:"approval_recorded"`
	ReadCutoverApproved                bool   `json:"read_cutover_approved"`
	LifecycleReadEnabled               bool   `json:"lifecycle_read_enabled"`
	LifecycleUIDefaultEnabled          bool   `json:"lifecycle_ui_default_enabled"`
	SourceRowsPreserved                bool   `json:"source_rows_preserved"`
	ImmutableArtifactsPreserved        bool   `json:"immutable_artifacts_preserved"`
	RollbackDrillPassed                bool   `json:"rollback_drill_passed"`
}

Jump to

Keyboard shortcuts

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