{"record":{"id":"d1866c786730be42","repo":"JuliusBrussee/caveman","slug":"duplicate-provider-q","errorCode":null,"errorMessage":"duplicate provider %q","messagePattern":"duplicate provider %q","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"error","filePath":"cacheengine/cmd/cache-replay/main.go","lineNumber":64,"sourceCode":"\tkeys := make([]string, 0, len(*values))\n\tfor key := range *values {\n\t\tkeys = append(keys, key)\n\t}\n\tsort.Strings(keys)\n\treturn strings.Join(keys, \",\")\n}\n\nfunc (values *baseURLValues) Set(value string) error {\n\tprovider, raw, ok := strings.Cut(value, \"=\")\n\tprovider = strings.ToLower(strings.TrimSpace(provider))\n\tif !ok || provider == \"\" || strings.TrimSpace(raw) == \"\" {\n\t\treturn errors.New(\"want provider=https://host\")\n\t}\n\tif *values == nil {\n\t\t*values = map[string]string{}\n\t}\n\tif _, exists := (*values)[provider]; exists {\n\t\treturn fmt.Errorf(\"duplicate provider %q\", provider)\n\t}\n\t(*values)[provider] = strings.TrimSpace(raw)\n\treturn nil\n}\n\ntype runManifest struct {\n\tSchema        string                            `json:\"schema\"`\n\tStatus        string                            `json:\"status\"`\n\tPublishable   bool                              `json:\"publishable\"`\n\tTraceSHA256   string                            `json:\"trace_sha256\"`\n\tStartedAt     string                            `json:\"started_at\"`\n\tCompletedAt   string                            `json:\"completed_at,omitempty\"`\n\tPreflight     cachebench.ReplayPreflight        `json:\"preflight\"`\n\tTarget        cachebench.Target                 `json:\"target\"`\n\tCompleted     int                               `json:\"completed_requests\"`\n\tFailedRequest string                            `json:\"failed_request,omitempty\"`\n\tFailureCode   string                            `json:\"failure_code,omitempty\"`\n\tEvidenceBasis string                            `json:\"evidence_basis\"`","sourceCodeStart":46,"sourceCodeEnd":82,"githubUrl":"https://github.com/JuliusBrussee/caveman/blob/27d5a3981a347890211bb1bf2439e5c821a63bc9/cacheengine/cmd/cache-replay/main.go#L46-L82","documentation":"Error \"duplicate provider %q\" thrown in JuliusBrussee/caveman.","triggerScenarios":"Thrown at cacheengine/cmd/cache-replay/main.go:64 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Remove the duplicate provider entry."],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"27d5a3981a347890211bb1bf2439e5c821a63bc9","analyzedAt":"2026-08-15T09:26:11.751Z","schemaVersion":2},"datasetVersion":"2026-08-15T22:17:37.221Z"}