{"record":{"id":"5676bd729422eeff","repo":"amir20/dozzle","slug":"invalid-image-check-mode-input-expected-automa","errorCode":null,"errorMessage":"invalid image check mode: <input> (expected automatic, manual or off)","messagePattern":"invalid image check mode: <input> \\(expected automatic, manual or off\\)","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"error","filePath":"internal/imagecheck/checker.go","lineNumber":32,"sourceCode":"\n// Mode controls whether Dozzle contacts registries at all.\ntype Mode string\n\nconst (\n\t// ModeAutomatic checks in the background when a container is viewed.\n\tModeAutomatic Mode = \"automatic\"\n\t// ModeManual only checks when a user explicitly asks.\n\tModeManual Mode = \"manual\"\n\t// ModeOff disables the feature entirely; no route, no egress.\n\tModeOff Mode = \"off\"\n)\n\nfunc ParseMode(input string) (Mode, error) {\n\tswitch mode := Mode(input); mode {\n\tcase ModeAutomatic, ModeManual, ModeOff:\n\t\treturn mode, nil\n\tdefault:\n\t\treturn \"\", errors.New(\"invalid image check mode: \" + input + \" (expected automatic, manual or off)\")\n\t}\n}\n\n// Status is the outcome of an update check for a single container.\ntype Status string\n\nconst (\n\tStatusUpToDate        Status = \"up-to-date\"\n\tStatusUpdateAvailable Status = \"update-available\"\n\t// StatusPinned means the container runs a digest-pinned image, which by\n\t// definition cannot drift.\n\tStatusPinned Status = \"pinned\"\n\t// StatusNotCheckable means the image has no registry digest locally,\n\t// which is the case for locally built images.\n\tStatusNotCheckable Status = \"not-checkable\"\n\t// StatusAuthRequired means the registry refused an anonymous request.\n\tStatusAuthRequired Status = \"auth-required\"\n\t// StatusSkipped means the container opted out via label.","sourceCodeStart":14,"sourceCodeEnd":50,"githubUrl":"https://github.com/amir20/dozzle/blob/d9463cbe21874e44ab79db6fa63e746ca7d22928/internal/imagecheck/checker.go#L14-L50","documentation":"ParseMode is a strict enum validator for the image-update-check Mode type. The input string matched none of the three accepted values (automatic, manual, off), so the flag/config value is a typo or unsupported value and startup cannot determine whether registry egress is allowed.","triggerScenarios":"Thrown at internal/imagecheck/checker.go:32 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Use exactly one of: automatic, manual, or off (case-sensitive).","Check the --image-check flag or config key for typos like 'Auto' or 'disabled'.","Wrap with usage feedback showing the accepted values when surfacing CLI parse errors."],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"d9463cbe21874e44ab79db6fa63e746ca7d22928","analyzedAt":"2026-09-07T10:08:55.855Z","contentChangedAt":"2026-09-07T10:08:55.855Z","schemaVersion":2},"datasetVersion":"2026-09-16T04:17:20.429Z"}