{"record":{"id":"bf9e4e0f4d4c0046","repo":"warpdotdev/warp","slug":"schedule-not-found","errorCode":null,"errorMessage":"Schedule not found","messagePattern":"Schedule not found","errorType":"validation","errorClass":"anyhow::Error","httpStatus":null,"severity":"error","filePath":"app/src/ai/agent_sdk/schedule.rs","lineNumber":609,"sourceCode":"}\n\nfn get(\n    ctx: &mut AppContext,\n    output_format: OutputFormat,\n    args: GetScheduleArgs,\n) -> anyhow::Result<()> {\n    let schedule_id = SyncId::ServerId(ServerId::try_from(args.schedule_id)?);\n\n    ScheduledAgentManager::handle(ctx).update(ctx, move |_manager, ctx| {\n        let warp_drive_sync_future = super::common::refresh_warp_drive(ctx);\n        ctx.spawn(warp_drive_sync_future, move |manager, result, ctx| {\n            if let Err(err) = result {\n                super::report_fatal_error(err, ctx);\n                return;\n            }\n\n            let Some(schedule) = CloudScheduledAmbientAgent::get_by_id(&schedule_id, ctx) else {\n                super::report_fatal_error(anyhow::anyhow!(\"Schedule not found\"), ctx);\n                return;\n            };\n\n            let id = match &schedule_id {\n                SyncId::ServerId(server_id) => server_id.to_string(),\n                SyncId::ClientId(_) => \"Unsynced\".to_string(),\n            };\n            let scope = super::common::format_owner(&schedule.permissions().owner).to_string();\n            let config = schedule.model().string_model.clone();\n\n            // Don't hold references into the CloudObject store across an async spawn.\n            let history_future = manager.fetch_schedule_history(schedule_id, ctx);\n\n            ctx.spawn(history_future, move |_manager, history, ctx| {\n                let history = match history {\n                    Ok(v) => v,\n                    Err(err) => {\n                        log::warn!(\"Failed to fetch scheduled agent history: {err:#}\");","sourceCodeStart":591,"sourceCodeEnd":627,"githubUrl":"https://github.com/warpdotdev/warp/blob/e72fd7aacbbb2236d9b3be2aad7e7178fe94b4bc/app/src/ai/agent_sdk/schedule.rs#L591-L627","documentation":"During a schedule command, the schedule ID from args is parsed into a server SyncId, warp drive is refreshed, and then the local cloud-object store is queried with CloudScheduledAmbientAgent::get_by_id. 'Schedule not found' means that after a successful sync no scheduled ambient agent with that server ID is visible to the current user: wrong ID, deleted schedule, or an object the caller cannot see.","triggerScenarios":"oz schedule update/delete <id> where the ID is malformed-or-stale, the schedule was already deleted by another client, or the synced cloud objects do not include it (permissions/ownership).","commonSituations":"Reusing an ID copied from an old listing; schedule deleted from another machine; permissions changed so the object is no longer synced to this account; typos in long opaque IDs.","solutions":["List schedules and copy the current ID from the live listing","Confirm the schedule still exists and is owned by (or shared with) the current user","Retry after a completed sync; if it still fails, treat the ID as wrong or deleted"],"exampleFix":"// before\noz schedule update 01J8ZK9abc...\n# Error: Schedule not found\n\n// after\noz schedule list\noz schedule update <id-from-list>","handlingStrategy":"validation","validationCode":"let id = ServerId::try_from(raw_id)?;\nrefresh_warp_drive(ctx).await?;\nif CloudScheduledAmbientAgent::get_by_id(&SyncId::ServerId(id), ctx).is_none() {\n    anyhow::bail!(\"schedule {id} not found after sync; re-list schedules\");\n}\n// safe to proceed with update/delete","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Always copy schedule IDs from a fresh listing","Do not persist schedule IDs across long-lived scripts without re-validation","Confirm ownership/share status before acting on synced objects"],"tags":["agent-sdk","schedule","ambient-agents","not-found","cloud-sync"],"backgroundTag":null,"analyzedSha":"e72fd7aacbbb2236d9b3be2aad7e7178fe94b4bc","analyzedAt":"2026-08-16T08:27:25.381Z","schemaVersion":2},"datasetVersion":"2026-08-16T13:17:31.715Z"}