Documentation
¶
Index ¶
- Constants
- func ComputeContractShapeHash(repoRoot string, trackedFiles []string) (string, error)
- func DefaultV2ContractFreezeGuardPath(repoRoot string) string
- func EvaluateV2Alerts(snapshot observability.MetricsSnapshot, integration V2IntegrationSummary) []observability.Alert
- func FormatV2FreezeDate(value string) (string, error)
- func RequiredSignoffTeams() []string
- func ValidateTrackCContractGuard(repoRoot string, guard TrackCContractGuard) ([]string, error)
- func ValidateV2ContractFreezeGuard(repoRoot string, guard V2ContractFreezeGuard, now time.Time) ([]string, error)
- type Checklist
- type ProductizationExitSummary
- type RolloutEvidenceSummary
- type RuntimeReadinessSummary
- type SecurityReviewSummary
- type Signoff
- type TrackCContractGuard
- type V2ContractFreezeGuard
- type V2IntegrationSummary
- type V2SLOStatus
- type V2SLOTargetStatus
- type V2ScenarioSummary
- type V2ValidationConfig
- type V2ValidationResult
- type ValidationConfig
- type ValidationResult
Constants ¶
const ( TeamBackend = "be" TeamFrontend = "fe" TeamQA = "qa" TeamOps = "ops" )
const ( // V2 SLO/alert thresholds for Phase 28 validation gates. ThresholdV2SignerSessionReadP95MS = 800.0 ThresholdV2StageTransitionP95MS = 1_000.0 ThresholdV2CompletionDeliverySuccessRate = 99.0 ThresholdV2IntegrationSyncSuccessRate = 99.0 ThresholdV2IntegrationSyncLagP95MS = 2_000.0 ThresholdV2IntegrationConflictBacklogTotal = 0.0 )
Variables ¶
This section is empty.
Functions ¶
func ComputeContractShapeHash ¶
ComputeContractShapeHash returns a deterministic hash over tracked contract files.
func DefaultV2ContractFreezeGuardPath ¶
DefaultV2ContractFreezeGuardPath resolves the canonical v2 guard file path.
func EvaluateV2Alerts ¶
func EvaluateV2Alerts(snapshot observability.MetricsSnapshot, integration V2IntegrationSummary) []observability.Alert
EvaluateV2Alerts emits explicit v2 gate alerts for signer, completion, and integration thresholds.
func FormatV2FreezeDate ¶
FormatV2FreezeDate validates and normalizes YYYY-MM-DD dates.
func RequiredSignoffTeams ¶
func RequiredSignoffTeams() []string
func ValidateTrackCContractGuard ¶
func ValidateTrackCContractGuard(repoRoot string, guard TrackCContractGuard) ([]string, error)
ValidateTrackCContractGuard validates contract hash snapshot and ledger entry requirements.
func ValidateV2ContractFreezeGuard ¶
func ValidateV2ContractFreezeGuard(repoRoot string, guard V2ContractFreezeGuard, now time.Time) ([]string, error)
ValidateV2ContractFreezeGuard validates v2 contract freeze snapshot and post-freeze exception rules.
Types ¶
type Checklist ¶
type Checklist struct {
ReleaseID string `json:"release_id"`
Track string `json:"track"`
Phase string `json:"phase"`
Signoffs map[string]Signoff `json:"signoffs"`
Security SecurityReviewSummary `json:"security"`
Runtime RuntimeReadinessSummary `json:"runtime"`
Evidence RolloutEvidenceSummary `json:"evidence"`
Productization ProductizationExitSummary `json:"productization_154"`
SLOSnapshot observability.MetricsSnapshot `json:"slo_snapshot"`
}
func LoadChecklist ¶
type ProductizationExitSummary ¶
type ProductizationExitSummary struct {
RecipientJourneyFromSignLink bool `json:"recipient_journey_from_sign_link"`
InvitationLinkActionable bool `json:"invitation_link_actionable"`
CompletionLinkActionable bool `json:"completion_link_actionable"`
PrimaryCTANotContractJSON bool `json:"primary_cta_not_contract_json"`
CISmokeWorkflowPassed bool `json:"ci_smoke_workflow_passed"`
CISmokeRef string `json:"ci_smoke_ref"`
}
type RolloutEvidenceSummary ¶
type RuntimeReadinessSummary ¶
type RuntimeReadinessSummary struct {
UsesMockDependencies bool `json:"uses_mock_dependencies"`
RequiresManualPatches bool `json:"requires_manual_patches"`
APIOnlyFallbackDetected bool `json:"api_only_fallback_detected"`
LegacyRuntimePathActive bool `json:"legacy_runtime_path_active"`
Notes string `json:"notes"`
}
type SecurityReviewSummary ¶
type TrackCContractGuard ¶
type TrackCContractGuard struct {
TrackedFiles []string `json:"tracked_files"`
ContractHash string `json:"contract_hash"`
LedgerPath string `json:"ledger_path"`
RequiredLedgerEntryID string `json:"required_ledger_entry_id"`
}
TrackCContractGuard defines the contract-shape guardrails enforced in tests/CI.
func LoadTrackCContractGuard ¶
func LoadTrackCContractGuard(path string) (TrackCContractGuard, error)
LoadTrackCContractGuard reads and decodes a guard configuration file.
type V2ContractFreezeGuard ¶
type V2ContractFreezeGuard struct {
TrackedFiles []string `json:"tracked_files"`
ContractHash string `json:"contract_hash"`
FreezeDate string `json:"freeze_date"`
ReleaseOwner string `json:"release_owner"`
ExceptionApprovalRef string `json:"exception_approval_ref"`
ExceptionApprovedBy string `json:"exception_approved_by"`
}
V2ContractFreezeGuard defines v2 GA contract freeze guardrails.
func LoadV2ContractFreezeGuard ¶
func LoadV2ContractFreezeGuard(path string) (V2ContractFreezeGuard, error)
LoadV2ContractFreezeGuard reads and decodes a v2 contract freeze guard configuration file.
type V2IntegrationSummary ¶
type V2IntegrationSummary struct {
SyncRunsStarted int `json:"sync_runs_started"`
SyncRunsCompleted int `json:"sync_runs_completed"`
SyncRunLagP95MS float64 `json:"sync_run_lag_p95_ms"`
ConflictsDetected int `json:"conflicts_detected"`
ConflictsResolved int `json:"conflicts_resolved"`
ConflictBacklog int `json:"conflict_backlog"`
SampleRunIDs []string `json:"sample_run_ids"`
}
V2IntegrationSummary captures v2 integration workflow validation metrics.
type V2SLOStatus ¶
type V2SLOStatus struct {
OverallPass bool `json:"overall_pass"`
Targets []V2SLOTargetStatus `json:"targets"`
}
V2SLOStatus captures v2 gate outcomes.
func EvaluateV2SLO ¶
func EvaluateV2SLO(snapshot observability.MetricsSnapshot, integration V2IntegrationSummary) V2SLOStatus
EvaluateV2SLO validates v2-specific thresholds for signer, completion, and integration gates.
type V2SLOTargetStatus ¶
type V2SLOTargetStatus struct {
Metric string `json:"metric"`
Actual float64 `json:"actual"`
Threshold float64 `json:"threshold"`
Comparator string `json:"comparator"`
Pass bool `json:"pass"`
Unit string `json:"unit"`
}
V2SLOTargetStatus captures one v2 gate target result.
type V2ScenarioSummary ¶
type V2ScenarioSummary struct {
MixedStageAgreements int `json:"mixed_stage_agreements"`
StageEdgeCaseChecks int `json:"stage_edge_case_checks"`
PlacementReadiness int `json:"placement_readiness_checks"`
}
V2ScenarioSummary captures v2 signer/authoring scenario coverage.
type V2ValidationConfig ¶
V2ValidationConfig controls v2-focused production-hardening validation profile execution.
type V2ValidationResult ¶
type V2ValidationResult struct {
AgreementCount int `json:"agreement_count"`
IntegrationRunCount int `json:"integration_run_count"`
Elapsed time.Duration `json:"elapsed"`
Snapshot observability.MetricsSnapshot `json:"snapshot"`
SLO observability.SLOStatus `json:"slo"`
Alerts []observability.Alert `json:"alerts"`
V2Alerts []observability.Alert `json:"v2_alerts"`
V2SLO V2SLOStatus `json:"v2_slo"`
Scenario V2ScenarioSummary `json:"scenario"`
Integration V2IntegrationSummary `json:"integration"`
}
V2ValidationResult captures v2 production-hardening validation profile outcomes.
func RunV2ValidationProfile ¶
func RunV2ValidationProfile(ctx context.Context, cfg V2ValidationConfig) (V2ValidationResult, error)
RunV2ValidationProfile executes v2 production-hardening validation scenarios.
type ValidationConfig ¶
type ValidationConfig struct {
AgreementCount int
}
type ValidationResult ¶
type ValidationResult struct {
AgreementCount int
Elapsed time.Duration
Snapshot observability.MetricsSnapshot
SLO observability.SLOStatus
}
func RunValidationProfile ¶
func RunValidationProfile(ctx context.Context, cfg ValidationConfig) (ValidationResult, error)