{"record":{"id":"429b2c8519a8fddd","repo":"HKUDS/nanobot","slug":"slack-channel-name-was-not-found-use-a-joined","errorCode":null,"errorMessage":"Slack channel '{name}' was not found. Use a joined channel name like '#general' or a concrete channel ID.","messagePattern":"Slack channel '(.+?)' was not found\\. Use a joined channel name like '#general' or a concrete channel ID\\.","errorType":"validation","errorClass":"ValueError","httpStatus":null,"severity":"error","filePath":"nanobot/channels/slack/runtime.py","lineNumber":335,"sourceCode":"                limit=200,\n                cursor=cursor,\n            ))\n            for channel_value in cast(list[object], response.get(\"channels\", [])):\n                channel = cast(dict[str, Any], channel_value)\n                if self._normalize_target_name(str(channel.get(\"name\") or \"\")) == normalized:\n                    channel_id = str(channel.get(\"id\") or \"\")\n                    if channel_id:\n                        self._target_cache[cache_key] = channel_id\n                        return channel_id\n            response_metadata = cast(\n                dict[str, Any],\n                response.get(\"response_metadata\") or {},\n            )\n            cursor = str(response_metadata.get(\"next_cursor\") or \"\").strip()\n            if not cursor:\n                break\n\n        raise ValueError(\n            f\"Slack channel '{name}' was not found. Use a joined channel name like \"\n            f\"'#general' or a concrete channel ID.\"\n        )\n\n    async def _resolve_user_handle(self, handle: str) -> str:\n        normalized = self._normalize_target_name(handle)\n        if not normalized:\n            raise ValueError(\"Slack target user handle is empty\")\n\n        cache_key = f\"user:{normalized}\"\n        if cache_key in self._target_cache:\n            return self._target_cache[cache_key]\n\n        cursor: str | None = None\n        web_api = self._require_web_api()\n        while True:\n            response = cast(\n                dict[str, Any],","sourceCodeStart":317,"sourceCodeEnd":353,"githubUrl":"https://github.com/HKUDS/nanobot/blob/42f37dc4c0e409eac7818a82d165c5f2757bc075/nanobot/channels/slack/runtime.py#L317-L353","documentation":"Error \"Slack channel '{name}' was not found. Use a joined channel name like '#general' or a concrete channel ID.\" thrown in HKUDS/nanobot.","triggerScenarios":"Thrown at nanobot/channels/slack/runtime.py:335 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":"42f37dc4c0e409eac7818a82d165c5f2757bc075","analyzedAt":"2026-08-26T00:18:52.276Z","schemaVersion":2},"datasetVersion":"2026-08-26T04:18:47.238Z"}