{"record":{"id":"b5c39cf139640bae","repo":"filamentphp/filament","slug":"the-user-does-not-have-any-app-authentication-reco","errorCode":null,"errorMessage":"The user does not have any app authentication recovery codes.","messagePattern":"The user does not have any app authentication recovery codes\\.","errorType":"exception","errorClass":"LogicException","httpStatus":null,"severity":"error","filePath":"packages/panels/src/Auth/MultiFactor/App/AppAuthentication.php","lineNumber":107,"sourceCode":"        }\n\n        return $secret;\n    }\n\n    public function saveSecret(HasAppAuthentication $user, #[SensitiveParameter] ?string $secret): void\n    {\n        $user->saveAppAuthenticationSecret($secret);\n    }\n\n    /**\n     * @return array<string>\n     */\n    public function getRecoveryCodes(HasAppAuthenticationRecovery $user): array\n    {\n        $codes = $user->getAppAuthenticationRecoveryCodes();\n\n        if (blank($codes)) {\n            throw new LogicException('The user does not have any app authentication recovery codes.');\n        }\n\n        return $codes;\n    }\n\n    /**\n     * @param  array<string> | null  $codes\n     */\n    public function saveRecoveryCodes(HasAppAuthenticationRecovery $user, #[SensitiveParameter] ?array $codes): void\n    {\n        if (! is_array($codes)) {\n            $user->saveAppAuthenticationRecoveryCodes(null);\n\n            return;\n        }\n\n        $user->saveAppAuthenticationRecoveryCodes(array_map(\n            fn (#[SensitiveParameter] string $code): string => Hash::make($code),","sourceCodeStart":89,"sourceCodeEnd":125,"githubUrl":"https://github.com/filamentphp/filament/blob/53483fa9340e4ec637985fe454ebb58afb92ea24/packages/panels/src/Auth/MultiFactor/App/AppAuthentication.php#L89-L125","documentation":"Error \"The user does not have any app authentication recovery codes.\" thrown in filamentphp/filament.","triggerScenarios":"Thrown at packages/panels/src/Auth/MultiFactor/App/AppAuthentication.php:107 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"53483fa9340e4ec637985fe454ebb58afb92ea24","analyzedAt":"2026-08-17T02:06:23.049Z","schemaVersion":2},"datasetVersion":"2026-08-17T04:17:16.089Z"}