{"record":{"id":"dbf7f928618a3d36","repo":"cube-js/cube","slug":"nothing-is-building-branch-branch-status-statu","errorCode":null,"errorMessage":"nothing is building branch {branch} (status {status}{}). If the branch exists, it only compiles once it is opened in dev mode — run {} and wait on the dev-… branch it prints","messagePattern":"nothing is building branch (.+?) \\(status (.+?)(.+?)\\)\\. If the branch exists, it only compiles once it is opened in dev mode — run (.+?) and wait on the dev-… branch it prints","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"rust/cube-cli/src/commands/deployments.rs","lineNumber":155,"sourceCode":"            // arrive bare.\n            let branch = named_branch(&res);\n            anyhow::bail!(\n                \"branch {branch} is not building ({verdict}){}. {}\",\n                if complaint == *verdict {\n                    String::new()\n                } else {\n                    format!(\": {complaint}\")\n                },\n                hint(deployment, &branch)\n            );\n        }\n\n        if status == \"none\" || status == \"stopped\" {\n            let since = idle_since.get().unwrap_or_else(std::time::Instant::now);\n            idle_since.set(Some(since));\n            if since.elapsed() > IDLE_GRACE {\n                let branch = named_branch(&res);\n                anyhow::bail!(\n                    \"nothing is building branch {branch} (status {status}{}). If the branch \\\n                     exists, it only compiles once it is opened in dev mode — run {} and \\\n                     wait on the dev-… branch it prints\",\n                    // This branch bails instead of timing out, so the timeout's\n                    // \"(last seen: …)\" never speaks for it.\n                    if util::is_blank(&complaint) {\n                        String::new()\n                    } else {\n                        format!(\": {complaint}\")\n                    },\n                    dev_mode_command(deployment, &branch)\n                );\n            }\n        } else {\n            idle_since.set(None);\n        }\n\n        // An unrecognised complaint rides along in the label rather than being","sourceCodeStart":137,"sourceCodeEnd":173,"githubUrl":"https://github.com/cube-js/cube/blob/7d981676b36392fec34088b9afab6bdcad40207c/rust/cube-cli/src/commands/deployments.rs#L137-L173","documentation":"Raised by wait_for_build after the IDLE_GRACE window during `--wait`: the polled build status is \"none\" or \"stopped\", meaning nothing is currently building the branch. The CLI explains that a branch only compiles once it is opened in dev mode and tells the user to run the dev-mode command and wait on the dev-… branch it prints. It bails instead of letting the wait time out silently.","triggerScenarios":"`cube deployments build/status --branch <branch> --wait` where every poll reports status \"none\" or \"stopped\" for longer than IDLE_GRACE: no orchestrator has picked up the branch, the build was stopped, or dev-mode compilation was never started for that branch.","commonSituations":"Expecting a build to start automatically for a branch that nobody has opened in dev mode; a previously running build that was stopped/cancelled; an idle environment where idle builds are reaped; CI waiting on a branch nobody activated.","solutions":["Run the dev-mode command the message suggests (it prints a dev-… branch) and wait on that branch instead.","Check whether a prior build for this branch was stopped and restart it explicitly.","Trigger the build for the branch (open it in dev mode / re-run the build command without --wait first).","If builds are being reaped by idle policies, keep the branch active or adjust environment settings."],"exampleFix":"// before: waiting on an idle branch that nothing compiles\ncube deployments build 42 --branch feature/x --wait   # status: none\n// after: start dev mode, use the dev- branch it prints\ncube dev 42   # prints e.g. dev-alice-42\ncube deployments build 42 --branch dev-alice-42 --wait","handlingStrategy":"retry","validationCode":"# Only wait on branches that a build is actually running for\nSTATUS=$(cube deployments build-status 42 --branch \"$BRANCH\" --json | jq -r .status)\n[ \"$STATUS\" != \"none\" ] && [ \"$STATUS\" != \"stopped\" ] || { echo 'start dev mode first'; exit 1; }","typeGuard":null,"tryCatchPattern":"match result {\n    Err(e) if e.to_string().contains(\"nothing is building branch\") => {\n        // trigger the dev-mode flow and re-wait on the dev-… branch it prints\n    }\n    other => other?,\n}","preventionTips":["Remember branches compile only when opened in dev mode — activate the branch before waiting.","Watch the dev-… branch printed by dev mode instead of the raw feature branch.","Check for stopped/cancelled builds before attaching --wait.","Avoid long waits on environments with idle-build reaping."],"tags":["cli","build-idle","dev-mode","polling","timeout"],"backgroundTag":"build-not-running","analyzedSha":"7d981676b36392fec34088b9afab6bdcad40207c","analyzedAt":"2026-09-02T03:45:10.400Z","contentChangedAt":null,"schemaVersion":2},"datasetVersion":"2026-09-08T15:18:49.778Z"}