Remove AI config approval flow

This commit is contained in:
npc0-hue
2026-09-22 15:33:32 +08:00
parent 20008b4043
commit a8b5d483a3
54 changed files with 364 additions and 875 deletions
-45
View File
@@ -44,42 +44,6 @@ func ValidatePluginLifecycleRequest(request domain.PluginLifecycleRequest) error
return finish(violations)
}
func ValidateAIConfigDiffPreview(preview domain.AIConfigDiffPreview) error {
var violations []string
violations = appendRequired(violations, "id", preview.ID)
violations = appendRequired(violations, "requestId", preview.RequestID)
violations = appendRequired(violations, "createdBy", preview.CreatedBy)
violations = appendRequired(violations, "serverInstanceId", preview.ServerInstanceID)
violations = appendRequired(violations, "key", preview.Key)
violations = appendRequired(violations, "diffSummary", preview.DiffSummary)
if preview.ConfigVersion <= 0 {
violations = append(violations, "configVersion must be positive")
}
if !validAIConfigDiffState(preview.State) {
violations = append(violations, "state is invalid")
}
if !validLogicalFileKey(preview.Key) || !validConfigFileKey(preview.Key) {
violations = append(violations, "key is invalid")
}
if len([]byte(preview.ProposedConfig)) > maxServerConfigContentSize || containsUnsafeRuntimeSecret(preview.ProposedConfig) || looksLikeRawHostPath(preview.ProposedConfig) {
violations = append(violations, "proposedConfig is unsafe")
}
if len(preview.DiffSummary) > maxProductionMessageLength || unsafeProductionText(preview.DiffSummary) {
violations = append(violations, "diffSummary is unsafe")
}
return finish(violations)
}
func ValidateAIConfigDiffApprovalRequest(request domain.AIConfigDiffApprovalRequest) error {
var violations []string
violations = appendRequired(violations, "diffId", request.DiffID)
violations = appendRequired(violations, "idempotencyKey", request.IdempotencyKey)
if unsafeProductionText(request.DiffID) || unsafeProductionText(request.IdempotencyKey) {
violations = append(violations, "AI config approval request is unsafe")
}
return finish(violations)
}
func validPluginLifecycleState(state domain.PluginLifecycleState) bool {
switch state {
case domain.PluginLifecycleStatePending, domain.PluginLifecycleStateInstalled, domain.PluginLifecycleStateEnabled, domain.PluginLifecycleStateDisabled, domain.PluginLifecycleStateUpgrading, domain.PluginLifecycleStateRollingBack, domain.PluginLifecycleStateRetired, domain.PluginLifecycleStateFailed:
@@ -98,15 +62,6 @@ func validPluginLifecycleOperation(operation domain.PluginLifecycleOperation) bo
}
}
func validAIConfigDiffState(state domain.AIConfigDiffState) bool {
switch state {
case domain.AIConfigDiffStatePending, domain.AIConfigDiffStateApproved, domain.AIConfigDiffStateCancelled, domain.AIConfigDiffStateExpired:
return true
default:
return false
}
}
func unsafeProductionText(value string) bool {
lower := strings.ToLower(value)
return containsUnsafeRuntimeSecret(value) ||