{"record":{"id":"d57e122be2349c09","repo":"JuliusBrussee/caveman","slug":"cache-replay-unsupported-provider-q","errorCode":null,"errorMessage":"cache-replay: unsupported provider %q","messagePattern":"cache-replay: unsupported provider %q","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"error","filePath":"cacheengine/cmd/cache-replay/main.go","lineNumber":392,"sourceCode":"\t\tswitch provider {\n\t\tcase \"openai\":\n\t\t\tif os.Getenv(\"OPENAI_API_KEY\") == \"\" {\n\t\t\t\treturn errors.New(\"cache-replay: OPENAI_API_KEY unavailable\")\n\t\t\t}\n\t\tcase \"anthropic\":\n\t\t\tif os.Getenv(\"ANTHROPIC_API_KEY\") == \"\" {\n\t\t\t\treturn errors.New(\"cache-replay: ANTHROPIC_API_KEY unavailable\")\n\t\t\t}\n\t\tcase \"gemini\":\n\t\t\tif os.Getenv(\"GEMINI_API_KEY\") == \"\" {\n\t\t\t\treturn errors.New(\"cache-replay: GEMINI_API_KEY unavailable\")\n\t\t\t}\n\t\tcase \"bedrock\":\n\t\t\tif os.Getenv(\"AWS_BEARER_TOKEN_BEDROCK\") == \"\" && (os.Getenv(\"AWS_ACCESS_KEY_ID\") == \"\" || os.Getenv(\"AWS_SECRET_ACCESS_KEY\") == \"\") {\n\t\t\t\treturn errors.New(\"cache-replay: Bedrock bearer token or AWS access credentials unavailable\")\n\t\t\t}\n\t\tdefault:\n\t\t\treturn fmt.Errorf(\"cache-replay: unsupported provider %q\", provider)\n\t\t}\n\t}\n\treturn nil\n}\n\nfunc verifierEnvironment(extra []string) ([]string, error) {\n\tallowed := map[string]bool{\"PATH\": true, \"LANG\": true, \"LC_ALL\": true, \"TMPDIR\": true}\n\tblocked := map[string]bool{\n\t\t\"OPENAI_API_KEY\": true, \"ANTHROPIC_API_KEY\": true, \"GEMINI_API_KEY\": true,\n\t\t\"AWS_BEARER_TOKEN_BEDROCK\": true, \"AWS_ACCESS_KEY_ID\": true, \"AWS_SECRET_ACCESS_KEY\": true, \"AWS_SESSION_TOKEN\": true,\n\t}\n\tfor _, name := range extra {\n\t\tname = strings.TrimSpace(name)\n\t\tif !validEnvironmentName(name) || blocked[name] {\n\t\t\treturn nil, fmt.Errorf(\"cache-replay: verifier environment variable %q is invalid or credential-bearing\", name)\n\t\t}\n\t\tallowed[name] = true\n\t}","sourceCodeStart":374,"sourceCodeEnd":410,"githubUrl":"https://github.com/JuliusBrussee/caveman/blob/27d5a3981a347890211bb1bf2439e5c821a63bc9/cacheengine/cmd/cache-replay/main.go#L374-L410","documentation":"Error \"cache-replay: unsupported provider %q\" thrown in JuliusBrussee/caveman.","triggerScenarios":"Thrown at cacheengine/cmd/cache-replay/main.go:392 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Use a supported provider."],"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"}