{"record":{"id":"dbb5bcdef3dd4915","repo":"ruvnet/RuView","slug":"token-verification-failed","errorCode":null,"errorMessage":"Token verification failed","messagePattern":"Token verification failed","errorType":"exception","errorClass":"AuthenticationError","httpStatus":401,"severity":"error","filePath":"archive/v1/src/middleware/auth.py","lineNumber":287,"sourceCode":"            if not user:\n                raise AuthenticationError(\"User not found\")\n            \n            if not user.get(\"is_active\", False):\n                raise AuthenticationError(\"User account is disabled\")\n            \n            # Return user info without sensitive data\n            return {\n                \"username\": user[\"username\"],\n                \"email\": user[\"email\"],\n                \"roles\": user[\"roles\"],\n                \"is_active\": user[\"is_active\"],\n            }\n            \n        except AuthenticationError:\n            raise\n        except Exception as e:\n            logger.error(f\"Token verification error: {e}\")\n            raise AuthenticationError(\"Token verification failed\")\n    \n    def _requires_auth(self, request: Request) -> bool:\n        \"\"\"Check if the request requires authentication.\"\"\"\n        # All API endpoints require authentication by default\n        path = request.url.path\n        return path.startswith(\"/api/\") or path.startswith(\"/ws/\")\n    \n    def _add_auth_headers(self, response: Response, user_info: Optional[Dict[str, Any]]):\n        \"\"\"Add authentication-related headers to response.\"\"\"\n        if user_info:\n            response.headers[\"X-User\"] = user_info[\"username\"]\n            response.headers[\"X-User-Roles\"] = \",\".join(user_info[\"roles\"])\n    \n    async def login(self, username: str, password: str) -> Dict[str, Any]:\n        \"\"\"Authenticate user and return token.\"\"\"\n        user = self.user_manager.authenticate_user(username, password)\n        if not user:\n            raise AuthenticationError(\"Invalid username or password\")","sourceCodeStart":269,"sourceCodeEnd":305,"githubUrl":"https://github.com/ruvnet/RuView/blob/4685618388a5e49fad5b3005806f3bdd6a7c25c3/archive/v1/src/middleware/auth.py#L269-L305","documentation":"Error \"Token verification failed\" thrown in ruvnet/RuView.","triggerScenarios":"Thrown at archive/v1/src/middleware/auth.py:287 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":"4685618388a5e49fad5b3005806f3bdd6a7c25c3","analyzedAt":"2026-08-16T06:09:40.886Z","schemaVersion":2},"datasetVersion":"2026-08-16T08:17:34.114Z"}