{"record":{"id":"7a7a677e27f96b88","repo":"xai-org/grok-build","slug":"session-does-not-exist-7a7a67","errorCode":null,"errorMessage":"Session does not exist","messagePattern":"Session does not exist","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"crates/codegen/xai-grok-pager/src/app/session_startup.rs","lineNumber":1022,"sourceCode":"            })\n        }\n        RemoteMissPlan::RejectInPlaceCodeRestore { title_miss_hint } => {\n            if title_miss_hint {\n                anyhow::bail!(\n                    \"{REMOTE_RESTORE_NEEDS_WORKTREE}; {}\",\n                    super::session_title_resolve::title_miss_hint(session_id)\n                );\n            }\n            anyhow::bail!(\"{REMOTE_RESTORE_NEEDS_WORKTREE}\")\n        }\n        RemoteMissPlan::NotFound { title_miss_hint } => {\n            if title_miss_hint {\n                anyhow::bail!(\n                    \"Session does not exist: {}\",\n                    super::session_title_resolve::title_miss_hint(session_id)\n                );\n            }\n            anyhow::bail!(\"Session does not exist\")\n        }\n        RemoteMissPlan::RestoreConversation => {\n            let restored =\n                restore_session_from_remote(session_id, cwd, ctx.restore_progress_on_stdout).await;\n            if arg_is_uuid {\n                return restored;\n            }\n            restored.map_err(|e| {\n                anyhow::anyhow!(\n                    \"{e:#}; {}\",\n                    super::session_title_resolve::title_miss_hint(session_id)\n                )\n            })\n        }\n    }\n}\n/// Policy after local id/title resolution misses.\n#[derive(Debug, Clone, Copy, PartialEq, Eq)]","sourceCodeStart":1004,"sourceCodeEnd":1040,"githubUrl":"https://github.com/xai-org/grok-build/blob/bc7f02eddd3d84085849dc19ed216f11c23b0571/crates/codegen/xai-grok-pager/src/app/session_startup.rs#L1004-L1040","documentation":"The plain 'Session does not exist' bail is the no-hint branch of the same remote-miss handling: the remote store has no session matching the requested id/title and no title hint applies (the argument looked like an id/uuid rather than a fuzzy title). Startup cannot proceed because there is nothing to restore.","triggerScenarios":"`grok --resume <arg>` with `RemoteMissPlan::NotFound { title_miss_hint: false }` — the argument is not found remotely and does not look like a title needing a hint (e.g. it is a well-formed id/uuid that simply does not exist).","commonSituations":"Pasting a session id from another machine or another user; resuming after the remote session TTL expired; wrong remote backend configured (different endpoint) so the id is unknown there.","solutions":["Verify the session id is correct and from the same remote backend/account.","Run `grok --resume` with no argument to list existing sessions.","Check remote backend configuration (endpoint/credentials) matches where the session lives.","Start a new session if the original no longer exists remotely."],"exampleFix":"// before\ngrok --resume 00000000-0000-0000-0000-000000000000\n// after\ngrok --resume   # pick a valid session id from the list","handlingStrategy":"try-catch","validationCode":"let listed = grok_list_sessions()?;\nlet exists = listed.iter().any(|s| s.id == requested_id);\nif !exists { eprintln!(\"id not present remotely; pick from the list\"); }","typeGuard":null,"tryCatchPattern":"match grok_resume(id) {\n    Err(e) if e.to_string() == \"Session does not exist\" => {\n        eprintln!(\"Unknown session id — run `grok --resume` to list valid ids.\");\n    }\n    other => other?,\n}","preventionTips":["Treat session ids as machine-local; don't share them across backends","Check remote backend/endpoint config before resuming old ids","Start new sessions rather than resuming ids older than the retention window"],"tags":["session-restore","not-found","cli"],"backgroundTag":"session-not-found","analyzedSha":"bc7f02eddd3d84085849dc19ed216f11c23b0571","analyzedAt":"2026-08-31T04:59:42.031Z","schemaVersion":2},"datasetVersion":"2026-08-31T09:17:48.483Z"}