[{"data":1,"prerenderedAt":2061},["ShallowReactive",2],{"navigation_docs":3,"-troubleshooting-why-did-my-item-stop":520,"-troubleshooting-why-did-my-item-stop-surround":2056},[4,28,51,191,222,485],{"title":5,"path":6,"stem":7,"children":8},"Get started","\u002Fget-started","1.get-started",[9,12,16,20,24],{"title":10,"path":6,"stem":11},"Overview","1.get-started\u002Findex",{"title":13,"path":14,"stem":15},"Why Kraft","\u002Fget-started\u002Fwhy-kraft","1.get-started\u002F0.why-kraft",{"title":17,"path":18,"stem":19},"Install","\u002Fget-started\u002Finstall","1.get-started\u002F1.install",{"title":21,"path":22,"stem":23},"Your first work item","\u002Fget-started\u002Ffirst-work-item","1.get-started\u002F2.first-work-item",{"title":25,"path":26,"stem":27},"FAQ","\u002Fget-started\u002Ffaq","1.get-started\u002F3.faq",{"title":29,"path":30,"stem":31,"children":32},"Concepts","\u002Fconcepts","2.concepts",[33,35,39,43,47],{"title":10,"path":30,"stem":34},"2.concepts\u002Findex",{"title":36,"path":37,"stem":38},"How a work item runs","\u002Fconcepts\u002Fhow-a-work-item-runs","2.concepts\u002F1.how-a-work-item-runs",{"title":40,"path":41,"stem":42},"Caps and budgets","\u002Fconcepts\u002Fcaps-and-budgets","2.concepts\u002F2.caps-and-budgets",{"title":44,"path":45,"stem":46},"Why a permission gate","\u002Fconcepts\u002Fpermission-gate","2.concepts\u002F3.permission-gate",{"title":48,"path":49,"stem":50},"Vocabulary","\u002Fconcepts\u002Fvocabulary","2.concepts\u002F4.vocabulary",{"title":52,"path":53,"stem":54,"children":55},"Guides","\u002Fguides","3.guides",[56,58,96,117,138,187],{"title":10,"path":53,"stem":57},"3.guides\u002Findex",{"title":59,"path":60,"stem":61,"children":62,"page":95},"Day to day","\u002Fguides\u002Fday-to-day","3.guides\u002F1.day-to-day",[63,67,71,75,79,83,87,91],{"title":64,"path":65,"stem":66},"The setup wizard on first start","\u002Fguides\u002Fday-to-day\u002Ffirst-run","3.guides\u002F1.day-to-day\u002F2.first-run",{"title":68,"path":69,"stem":70},"File a work item","\u002Fguides\u002Fday-to-day\u002Ffile-a-work-item","3.guides\u002F1.day-to-day\u002F3.file-a-work-item",{"title":72,"path":73,"stem":74},"Use Kraft from your agent","\u002Fguides\u002Fday-to-day\u002Fagent-integration","3.guides\u002F1.day-to-day\u002F4.agent-integration",{"title":76,"path":77,"stem":78},"Reviewing a change","\u002Fguides\u002Fday-to-day\u002Freview-a-change","3.guides\u002F1.day-to-day\u002F5.review-a-change",{"title":80,"path":81,"stem":82},"Raise a cap on a stopped item","\u002Fguides\u002Fday-to-day\u002Fraise-a-cap","3.guides\u002F1.day-to-day\u002F6.raise-a-cap",{"title":84,"path":85,"stem":86},"Kraft for VS Code","\u002Fguides\u002Fday-to-day\u002Fvscode","3.guides\u002F1.day-to-day\u002F7.vscode",{"title":88,"path":89,"stem":90},"Kraft on a phone","\u002Fguides\u002Fday-to-day\u002Fkraft-on-a-phone","3.guides\u002F1.day-to-day\u002F8.kraft-on-a-phone",{"title":92,"path":93,"stem":94},"Get notified when an item needs you","\u002Fguides\u002Fday-to-day\u002Fnotifications","3.guides\u002F1.day-to-day\u002F9.notifications",false,{"title":97,"path":98,"stem":99,"children":100,"page":95},"Customize and automate","\u002Fguides\u002Fcustomize","3.guides\u002F2.customize",[101,105,109,113],{"title":102,"path":103,"stem":104},"Write your own chain","\u002Fguides\u002Fcustomize\u002Fwrite-your-own-chain","3.guides\u002F2.customize\u002F1.write-your-own-chain",{"title":106,"path":107,"stem":108},"Add a security review or a gate reviewer","\u002Fguides\u002Fcustomize\u002Fadd-review-agents","3.guides\u002F2.customize\u002F2.add-review-agents",{"title":110,"path":111,"stem":112},"Schedule or webhook work","\u002Fguides\u002Fcustomize\u002Fschedule-and-webhook-work","3.guides\u002F2.customize\u002F3.schedule-and-webhook-work",{"title":114,"path":115,"stem":116},"Share chains with add-ons","\u002Fguides\u002Fcustomize\u002Fshare-chains-with-addons","3.guides\u002F2.customize\u002F4.share-chains-with-addons",{"title":118,"path":119,"stem":120,"children":121,"page":95},"Agents and harnesses","\u002Fguides\u002Fharnesses","3.guides\u002F3.harnesses",[122,126,130,134],{"title":123,"path":124,"stem":125},"Switch a task to another harness","\u002Fguides\u002Fharnesses\u002Fswitch-harness","3.guides\u002F3.harnesses\u002F1.switch-harness",{"title":127,"path":128,"stem":129},"Add or override a harness","\u002Fguides\u002Fharnesses\u002Fadding-a-harness","3.guides\u002F3.harnesses\u002F2.adding-a-harness",{"title":131,"path":132,"stem":133},"Build a worker Kit","\u002Fguides\u002Fharnesses\u002Fworker-kit","3.guides\u002F3.harnesses\u002F3.worker-kit",{"title":135,"path":136,"stem":137},"Give a worker its login","\u002Fguides\u002Fharnesses\u002Fgive-a-worker-its-login","3.guides\u002F3.harnesses\u002F4.give-a-worker-its-login",{"title":139,"path":140,"stem":141,"children":142,"page":95},"Run the server","\u002Fguides\u002Frun","3.guides\u002F4.run",[143,147,151,155,159,163,167,171,175,179,183],{"title":144,"path":145,"stem":146},"Remote access","\u002Fguides\u002Frun\u002Fremote-access","3.guides\u002F4.run\u002F01.remote-access",{"title":148,"path":149,"stem":150},"Put a proxy in front of Kraft","\u002Fguides\u002Frun\u002Fput-a-proxy-in-front-of-kraft","3.guides\u002F4.run\u002F02.put-a-proxy-in-front-of-kraft",{"title":152,"path":153,"stem":154},"Restart Kraft without ending running agents","\u002Fguides\u002Frun\u002Frestart-kraft","3.guides\u002F4.run\u002F03.restart-kraft",{"title":156,"path":157,"stem":158},"Back up and restore the database","\u002Fguides\u002Frun\u002Fback-up-and-restore","3.guides\u002F4.run\u002F04.back-up-and-restore",{"title":160,"path":161,"stem":162},"Logs and disk space","\u002Fguides\u002Frun\u002Flogs-and-disk-space","3.guides\u002F4.run\u002F05.logs-and-disk-space",{"title":164,"path":165,"stem":166},"Run Kraft as a service","\u002Fguides\u002Frun\u002Frun-as-a-service","3.guides\u002F4.run\u002F06.run-as-a-service",{"title":168,"path":169,"stem":170},"Upgrade Kraft","\u002Fguides\u002Frun\u002Fupgrade-kraft","3.guides\u002F4.run\u002F07.upgrade-kraft",{"title":172,"path":173,"stem":174},"Upgrade your configuration","\u002Fguides\u002Frun\u002Fupgrade-your-configuration","3.guides\u002F4.run\u002F08.upgrade-your-configuration",{"title":176,"path":177,"stem":178},"Upgrade from 1.4","\u002Fguides\u002Frun\u002Fupgrade-from-1-4","3.guides\u002F4.run\u002F09.upgrade-from-1-4",{"title":180,"path":181,"stem":182},"Upgrade from 0.x or a release candidate","\u002Fguides\u002Frun\u002Fupgrade-from-0-x-or-a-release-candidate","3.guides\u002F4.run\u002F10.upgrade-from-0-x-or-a-release-candidate",{"title":184,"path":185,"stem":186},"Roll back to 1.4","\u002Fguides\u002Frun\u002Froll-back","3.guides\u002F4.run\u002F11.roll-back",{"title":188,"path":189,"stem":190},"Kraft Lite","\u002Fguides\u002Fkraft-lite","3.guides\u002F5.kraft-lite",{"title":192,"path":193,"stem":194,"children":195},"Troubleshooting","\u002Ftroubleshooting","4.troubleshooting",[196,198,202,206,210,214,218],{"title":10,"path":193,"stem":197},"4.troubleshooting\u002Findex",{"title":199,"path":200,"stem":201},"Why did my item stop?","\u002Ftroubleshooting\u002Fwhy-did-my-item-stop","4.troubleshooting\u002F1.why-did-my-item-stop",{"title":203,"path":204,"stem":205},"Stop reasons in detail","\u002Ftroubleshooting\u002Fstop-reasons-in-detail","4.troubleshooting\u002F2.stop-reasons-in-detail",{"title":207,"path":208,"stem":209},"Starting and reaching Kraft","\u002Ftroubleshooting\u002Fstarting-and-reaching-kraft","4.troubleshooting\u002F3.starting-and-reaching-kraft",{"title":211,"path":212,"stem":213},"Doctor failures","\u002Ftroubleshooting\u002Fdoctor-failures","4.troubleshooting\u002F4.doctor-failures",{"title":215,"path":216,"stem":217},"Sandbox and Kit stops","\u002Ftroubleshooting\u002Fsandbox-and-kit-stops","4.troubleshooting\u002F5.sandbox-and-kit-stops",{"title":219,"path":220,"stem":221},"Add-on problems","\u002Ftroubleshooting\u002Faddon-problems","4.troubleshooting\u002F6.addon-problems",{"title":223,"path":224,"stem":225,"children":226},"Reference","\u002Freference","5.reference",[227,229,267,289,293,391,409,435,439,443,477,481],{"title":10,"path":224,"stem":228},"5.reference\u002Findex",{"title":230,"path":231,"stem":232,"children":233},"Web UI","\u002Freference\u002Fweb-ui","5.reference\u002F00.web-ui\u002Findex",[234,235,239,243,247,251,255,259,263],{"title":10,"path":231,"stem":232},{"title":236,"path":237,"stem":238},"Sidebar, search, and keyboard","\u002Freference\u002Fweb-ui\u002Fsidebar-search-and-keyboard","5.reference\u002F00.web-ui\u002F0.sidebar-search-and-keyboard",{"title":240,"path":241,"stem":242},"The board","\u002Freference\u002Fweb-ui\u002Fboard","5.reference\u002F00.web-ui\u002F1.board",{"title":244,"path":245,"stem":246},"An item's page","\u002Freference\u002Fweb-ui\u002Fitem-page","5.reference\u002F00.web-ui\u002F2.item-page",{"title":248,"path":249,"stem":250},"Fix loops and test scopes","\u002Freference\u002Fweb-ui\u002Ffix-loops-and-test-scopes","5.reference\u002F00.web-ui\u002F3.fix-loops-and-test-scopes",{"title":252,"path":253,"stem":254},"Config before an item starts","\u002Freference\u002Fweb-ui\u002Fconfig-before-start","5.reference\u002F00.web-ui\u002F4.config-before-start",{"title":256,"path":257,"stem":258},"The review page","\u002Freference\u002Fweb-ui\u002Freview-page","5.reference\u002F00.web-ui\u002F5.review-page",{"title":260,"path":261,"stem":262},"Templates and Settings","\u002Freference\u002Fweb-ui\u002Ftemplates-and-settings","5.reference\u002F00.web-ui\u002F6.templates-and-settings",{"title":264,"path":265,"stem":266},"Analytics","\u002Freference\u002Fweb-ui\u002Fanalytics","5.reference\u002F00.web-ui\u002F7.analytics",{"title":268,"path":269,"stem":270,"children":271},"CLI","\u002Freference\u002Fcli","5.reference\u002F01.cli\u002Findex",[272,273,277,281,285],{"title":10,"path":269,"stem":270},{"title":274,"path":275,"stem":276},"Item verbs","\u002Freference\u002Fcli\u002Fitem","5.reference\u002F01.cli\u002F2.item",{"title":278,"path":279,"stem":280},"View verbs","\u002Freference\u002Fcli\u002Fview","5.reference\u002F01.cli\u002F3.view",{"title":282,"path":283,"stem":284},"Repo verbs","\u002Freference\u002Fcli\u002Frepo","5.reference\u002F01.cli\u002F4.repo",{"title":286,"path":287,"stem":288},"Admin verbs","\u002Freference\u002Fcli\u002Fadmin","5.reference\u002F01.cli\u002F5.admin",{"title":290,"path":291,"stem":292},"Work item statuses","\u002Freference\u002Fstatuses","5.reference\u002F02.statuses",{"title":294,"path":295,"stem":296,"children":297},"Configuration","\u002Freference\u002Fconfiguration","5.reference\u002F03.configuration\u002Findex",[298,299,317,321,325,329,333,337,341,345,379,383,387],{"title":10,"path":295,"stem":296},{"title":300,"path":301,"stem":302,"children":303},"repos.yaml","\u002Freference\u002Fconfiguration\u002Frepos","5.reference\u002F03.configuration\u002F02.repos\u002Findex",[304,305,309,313],{"title":10,"path":301,"stem":302},{"title":306,"path":307,"stem":308},"How connect proposes commands","\u002Freference\u002Fconfiguration\u002Frepos\u002Fconnect-proposals","5.reference\u002F03.configuration\u002F02.repos\u002F1.connect-proposals",{"title":310,"path":311,"stem":312},"detectors.yaml","\u002Freference\u002Fconfiguration\u002Frepos\u002Fdetectors","5.reference\u002F03.configuration\u002F02.repos\u002F2.detectors",{"title":314,"path":315,"stem":316},"Workspaces","\u002Freference\u002Fconfiguration\u002Frepos\u002Fworkspaces","5.reference\u002F03.configuration\u002F02.repos\u002F3.workspaces",{"title":318,"path":319,"stem":320},"policy.yaml","\u002Freference\u002Fconfiguration\u002Fpolicy","5.reference\u002F03.configuration\u002F03.policy",{"title":322,"path":323,"stem":324},"Library and chains","\u002Freference\u002Fconfiguration\u002Flibrary-and-chains","5.reference\u002F03.configuration\u002F04.library-and-chains",{"title":326,"path":327,"stem":328},"harnesses.yaml","\u002Freference\u002Fconfiguration\u002Fharnesses-file","5.reference\u002F03.configuration\u002F05.harnesses-file",{"title":330,"path":331,"stem":332},"access.yaml","\u002Freference\u002Fconfiguration\u002Faccess","5.reference\u002F03.configuration\u002F06.access",{"title":334,"path":335,"stem":336},"intake.yaml","\u002Freference\u002Fconfiguration\u002Fintake","5.reference\u002F03.configuration\u002F07.intake",{"title":338,"path":339,"stem":340},"notify.yaml","\u002Freference\u002Fconfiguration\u002Fnotify","5.reference\u002F03.configuration\u002F08.notify",{"title":342,"path":343,"stem":344},"theme.yaml","\u002Freference\u002Fconfiguration\u002Ftheme","5.reference\u002F03.configuration\u002F09.theme",{"title":346,"path":347,"stem":348,"children":349},"Sandboxed workers","\u002Freference\u002Fconfiguration\u002Fsandbox","5.reference\u002F03.configuration\u002F10.sandbox\u002Findex",[350,351,355,359,363,367,371,375],{"title":10,"path":347,"stem":348},{"title":352,"path":353,"stem":354},"Resource limits","\u002Freference\u002Fconfiguration\u002Fsandbox\u002Fresource-limits","5.reference\u002F03.configuration\u002F10.sandbox\u002F1.resource-limits",{"title":356,"path":357,"stem":358},"Callbacks from a sandbox","\u002Freference\u002Fconfiguration\u002Fsandbox\u002Fcallbacks","5.reference\u002F03.configuration\u002F10.sandbox\u002F2.callbacks",{"title":360,"path":361,"stem":362},"Network policy","\u002Freference\u002Fconfiguration\u002Fsandbox\u002Fnetwork-policy","5.reference\u002F03.configuration\u002F10.sandbox\u002F3.network-policy",{"title":364,"path":365,"stem":366},"Credentials","\u002Freference\u002Fconfiguration\u002Fsandbox\u002Fcredentials","5.reference\u002F03.configuration\u002F10.sandbox\u002F4.credentials",{"title":368,"path":369,"stem":370},"Kits","\u002Freference\u002Fconfiguration\u002Fsandbox\u002Fkits","5.reference\u002F03.configuration\u002F10.sandbox\u002F5.kits",{"title":372,"path":373,"stem":374},"sandbox.yaml","\u002Freference\u002Fconfiguration\u002Fsandbox\u002Fsandbox-yaml","5.reference\u002F03.configuration\u002F10.sandbox\u002F6.sandbox-yaml",{"title":376,"path":377,"stem":378},"Git in a sandbox","\u002Freference\u002Fconfiguration\u002Fsandbox\u002Fgit-in-a-sandbox","5.reference\u002F03.configuration\u002F10.sandbox\u002F7.git-in-a-sandbox",{"title":380,"path":381,"stem":382},"Environment variables","\u002Freference\u002Fconfiguration\u002Fenvironment-variables","5.reference\u002F03.configuration\u002F11.environment-variables",{"title":384,"path":385,"stem":386},"Add-ons and collections","\u002Freference\u002Fconfiguration\u002Faddons","5.reference\u002F03.configuration\u002F12.addons",{"title":388,"path":389,"stem":390},"Repo libraries","\u002Freference\u002Fconfiguration\u002Frepo-libraries","5.reference\u002F03.configuration\u002F13.repo-libraries",{"title":392,"path":393,"stem":394,"children":395},"Chain file keys","\u002Freference\u002Fchain-nodes","5.reference\u002F04.chain-nodes\u002Findex",[396,397,401,405],{"title":10,"path":393,"stem":394},{"title":398,"path":399,"stem":400},"Subprocess tasks","\u002Freference\u002Fchain-nodes\u002Fsubprocess-tasks","5.reference\u002F04.chain-nodes\u002F2.subprocess-tasks",{"title":402,"path":403,"stem":404},"Fix loop and judge","\u002Freference\u002Fchain-nodes\u002Ffix-loop","5.reference\u002F04.chain-nodes\u002F3.fix-loop",{"title":406,"path":407,"stem":408},"Result file","\u002Freference\u002Fchain-nodes\u002Fresult-file","5.reference\u002F04.chain-nodes\u002F4.result-file",{"title":410,"path":411,"stem":412,"children":413},"Agent harnesses","\u002Freference\u002Fharnesses","5.reference\u002F05.harnesses\u002Findex",[414,415,419,423,427,431],{"title":10,"path":411,"stem":412},{"title":416,"path":417,"stem":418},"Unattended runs","\u002Freference\u002Fharnesses\u002Funattended-runs","5.reference\u002F05.harnesses\u002F2.unattended-runs",{"title":420,"path":421,"stem":422},"Agent profiles","\u002Freference\u002Fharnesses\u002Fagent-profiles","5.reference\u002F05.harnesses\u002F3.agent-profiles",{"title":424,"path":425,"stem":426},"Harness definition files","\u002Freference\u002Fharnesses\u002Fharness-files","5.reference\u002F05.harnesses\u002F4.harness-files",{"title":428,"path":429,"stem":430},"Fallback and escalation","\u002Freference\u002Fharnesses\u002Ffallback-and-escalation","5.reference\u002F05.harnesses\u002F5.fallback-and-escalation",{"title":432,"path":433,"stem":434},"Cost reporting","\u002Freference\u002Fharnesses\u002Fcost-reporting","5.reference\u002F05.harnesses\u002F6.cost-reporting",{"title":436,"path":437,"stem":438},"Permission gate","\u002Freference\u002Fpermissions","5.reference\u002F06.permissions",{"title":440,"path":441,"stem":442},"Inbound triggers","\u002Freference\u002Ftriggers","5.reference\u002F07.triggers",{"title":444,"path":445,"stem":446,"children":447},"HTTP API","\u002Freference\u002Fhttp-api","5.reference\u002F08.http-api\u002Findex",[448,449,453,457,461,465,469,473],{"title":10,"path":445,"stem":446},{"title":450,"path":451,"stem":452},"Filing, reading and changing work items","\u002Freference\u002Fhttp-api\u002Fwork-items","5.reference\u002F08.http-api\u002F2.work-items",{"title":454,"path":455,"stem":456},"Gates, run control, ending and retry","\u002Freference\u002Fhttp-api\u002Fgates-run-control-and-ending","5.reference\u002F08.http-api\u002F3.gates-run-control-and-ending",{"title":458,"path":459,"stem":460},"The work item object","\u002Freference\u002Fhttp-api\u002Fwork-item-object","5.reference\u002F08.http-api\u002F4.work-item-object",{"title":462,"path":463,"stem":464},"Budget, events, diff and documents","\u002Freference\u002Fhttp-api\u002Fbudget-and-events","5.reference\u002F08.http-api\u002F5.budget-and-events",{"title":466,"path":467,"stem":468},"Repos, chains, harnesses and the server","\u002Freference\u002Fhttp-api\u002Frepos-chains-harnesses-and-server","5.reference\u002F08.http-api\u002F6.repos-chains-harnesses-and-server",{"title":470,"path":471,"stem":472},"Drafts","\u002Freference\u002Fhttp-api\u002Fdrafts","5.reference\u002F08.http-api\u002F7.drafts",{"title":474,"path":475,"stem":476},"Ops for each draft area","\u002Freference\u002Fhttp-api\u002Fdraft-ops","5.reference\u002F08.http-api\u002F8.draft-ops",{"title":478,"path":479,"stem":480},"MCP tools","\u002Freference\u002Fmcp-tools","5.reference\u002F09.mcp-tools",{"title":482,"path":483,"stem":484},"Events","\u002Freference\u002Fevents","5.reference\u002F10.events",{"title":486,"path":487,"stem":488,"children":489},"Security and project","\u002Fproject","6.project",[490,492,496,500,504,508,512,516],{"title":10,"path":487,"stem":491},"6.project\u002Findex",{"title":493,"path":494,"stem":495},"Security","\u002Fproject\u002Fsecurity","6.project\u002F1.security",{"title":497,"path":498,"stem":499},"Data and privacy","\u002Fproject\u002Fdata-and-privacy","6.project\u002F2.data-and-privacy",{"title":501,"path":502,"stem":503},"What's new in 2.0","\u002Fproject\u002Fwhats-new","6.project\u002F3.whats-new",{"title":505,"path":506,"stem":507},"Status and support","\u002Fproject\u002Fstatus-and-support","6.project\u002F4.status-and-support",{"title":509,"path":510,"stem":511},"Architecture","\u002Fproject\u002Farchitecture","6.project\u002F5.architecture",{"title":513,"path":514,"stem":515},"Source map","\u002Fproject\u002Fsource-map","6.project\u002F6.source-map",{"title":517,"path":518,"stem":519},"Contributing","\u002Fproject\u002Fcontributing","6.project\u002F7.contributing",{"id":521,"title":199,"body":522,"description":2049,"extension":2050,"links":2051,"meta":2052,"navigation":2053,"path":200,"seo":2054,"stem":201,"__hash__":2055},"docs\u002F4.troubleshooting\u002F1.why-did-my-item-stop.md",{"type":523,"value":524,"toc":2024},"minimark",[525,564,569,572,622,646,649,662,667,820,824,970,974,1062,1066,1246,1250,1370,1373,1485,1489,1594,1598,1604,1718,1722,1885,1888,1907,1910,1938,1941,1947,1953,1956,1980,1983,1990,1993,1997],[526,527,528,529,534,535,539,540,544,545,548,549,553,554,558,559,563],"p",{},"Start here when a ",[530,531,533],"a",{"href":532},"\u002Fconcepts\u002Fvocabulary#work-item","work item"," appears under ",[536,537,538],"strong",{},"Needs you"," (",[541,542,543],"code",{},"needs_human"," in ",[541,546,547],{},"kraft view list","), or when one waits and nothing moves.\nFind the text Kraft shows in the tables under ",[530,550,552],{"href":551},"#find-your-reason","Find your reason",": each row has the fix, or links to an entry that has it.\nA pending gate and the two waits on CI or a review are not stops: ",[530,555,557],{"href":556},"#escalation-turns-and-things-that-are-not-a-stop","Escalation turns and things that are not a stop"," and ",[530,560,562],{"href":561},"#waiting-on-ci-or-a-review","Waiting on CI or a review"," cover them.",[565,566,568],"h2",{"id":567},"check-the-cause-before-you-retry","Check the cause before you retry",[526,570,571],{},"A retry without the cause reruns the same failure. Read the reason first, with these three commands:",[573,574,575,588],"table",{},[576,577,578],"thead",{},[579,580,581,585],"tr",{},[582,583,584],"th",{},"Command",[582,586,587],{},"What it shows",[589,590,591,602,612],"tbody",{},[579,592,593,599],{},[594,595,596],"td",{},[541,597,598],{},"kraft view show ID",[594,600,601],{},"The node it stopped on, and the reason.",[579,603,604,609],{},[594,605,606],{},[541,607,608],{},"kraft view events ID --type work_item_needs_human",[594,610,611],{},"The stop, with every field.",[579,613,614,619],{},[594,615,616],{},[541,617,618],{},"kraft view logs ID",[594,620,621],{},"The log of the session that stopped it.",[526,623,624,625,628,629,632,633,636,637,640,641,645],{},"Where a fix says ",[536,626,627],{},"retry",", run ",[541,630,631],{},"kraft item retry ID",", and add ",[541,634,635],{},"--steer \"...\""," to tell the agent what to do differently; a retry you run resets the node's attempt counters. In Claude Code, ",[541,638,639],{},"\u002Fkraft:triage"," reads all three and suggests the next step. The ",[530,642,644],{"href":643},"\u002Freference\u002Fevents#work_item_needs_human","events catalogue"," lists every field of a stop.",[565,647,552],{"id":648},"find-your-reason",[526,650,651,652,654,655,658,659,661],{},"The first column is the text Kraft shows, in the item's side panel, in ",[541,653,598],{}," and in the board's stop card. ",[541,656,657],{},"..."," stands for text that varies. A row either holds the whole fix, or links to an entry under ",[530,660,203],{"href":204},".",[663,664,666],"h3",{"id":665},"questions-failed-tasks-and-logins","Questions, failed tasks and logins",[573,668,669,682],{},[576,670,671],{},[579,672,673,676,679],{},[582,674,675],{},"The reason says",[582,677,678],{},"What happened",[582,680,681],{},"Fix",[589,683,684,700,716,743,790],{},[579,685,686,691,694],{},[594,687,688],{},[541,689,690],{},"needs_context: \u003Cquestion>",[594,692,693],{},"The agent asked a question it could not answer from the repo.",[594,695,696,697,661],{},"Answer it: ",[541,698,699],{},"kraft item resume ID --steer \"\u003Canswer>\"",[579,701,702,707,710],{},[594,703,704],{},[541,705,706],{},"task failed in node \u003Cnode>: ...",[594,708,709],{},"An agent task or command failed.",[594,711,712,713,715],{},"Read ",[541,714,618],{},", then retry with a steer that names the fix.",[579,717,718,723,726],{},[594,719,720,722],{},[541,721,706],{},", and the log shows an authentication or login error",[594,724,725],{},"The agent CLI is installed but not logged in.",[594,727,728,729,732,733,735,736,739,740,661],{},"Run the agent once in a terminal and log in (",[541,730,731],{},"claude"," for the shipped chains), then ",[541,734,631],{},". ",[541,737,738],{},"kraft admin doctor"," checks only that it is on ",[541,741,742],{},"PATH",[579,744,745,773,783],{},[594,746,747,748,752,753,756,757,756,760,756,763,756,766,769,770],{},"A ",[530,749,751],{"href":750},"\u002Fconcepts\u002Fvocabulary#forge","forge"," task (opening, syncing or merging the merge request), or a git push or fetch, failed, and the log shows ",[541,754,755],{},"HTTP 401",", ",[541,758,759],{},"Bad credentials",[541,761,762],{},"Authentication failed",[541,764,765],{},"could not read Username",[541,767,768],{},"Permission denied (publickey)"," or ",[541,771,772],{},"gh auth login",[594,774,775,776,756,779,782],{},"Kraft holds no forge token, and the forge refused what ",[541,777,778],{},"gh",[541,780,781],{},"glab"," or git sent.",[594,784,785,786,661],{},"See ",[530,787,789],{"href":788},"\u002Ftroubleshooting\u002Fstop-reasons-in-detail#forge-authentication-fails","Forge authentication fails",[579,791,792,812,815],{},[594,793,794,795,756,798,769,801,804,805,808,809,661],{},"The log shows ",[541,796,797],{},"Could not resolve host",[541,799,800],{},"Connection timed out",[541,802,803],{},"Connection refused"," on a forge or git call. The stop's ",[541,806,807],{},"facts.cause"," is ",[541,810,811],{},"forge_unreachable",[594,813,814],{},"The machine the server runs on could not reach the forge.",[594,816,817,818,661],{},"Check that machine's network, DNS and proxy settings, then ",[541,819,631],{},[663,821,823],{"id":822},"a-task-kraft-would-not-launch","A task Kraft would not launch",[573,825,826,836],{},[576,827,828],{},[579,829,830,832,834],{},[582,831,675],{},[582,833,678],{},[582,835,681],{},[589,837,838,854,880,900,923,948],{},[579,839,840,845,848],{},[594,841,842],{},[541,843,844],{},"could not start \u003Ctask> in node \u003Cnode>: ...",[594,846,847],{},"Kraft refused the launch, and the rest of the reason says why.",[594,849,850,851,853],{},"Fix the named cause, often with ",[541,852,738],{},", then retry. The rows below are the common causes.",[579,855,856,865,872],{},[594,857,858,861,862],{},[541,859,860],{},"could not start ..."," with ",[541,863,864],{},"cannot run: backend: auto, but no forge is recorded for this repo",[594,866,867,868,871],{},"The repo had no GitHub or GitLab ",[541,869,870],{},"origin"," when you connected it.",[594,873,785,874,661],{},[530,875,877],{"href":876},"\u002Ftroubleshooting\u002Fstop-reasons-in-detail#no-forge-is-recorded-for-this-repo",[541,878,879],{},"no forge is recorded for this repo",[579,881,882,889,892],{},[594,883,884,861,886],{},[541,885,860],{},[541,887,888],{},"declares neither test_scopes nor test_command in repos.yaml",[594,890,891],{},"The repo has no test command, and Kraft will not guess one.",[594,893,785,894,661],{},[530,895,897],{"href":896},"\u002Ftroubleshooting\u002Fstop-reasons-in-detail#declares-neither-test_scopes-nor-test_command",[541,898,899],{},"declares neither test_scopes nor test_command",[579,901,902,909,915],{},[594,903,904,861,906],{},[541,905,860],{},[541,907,908],{},"stored model override is not a model id: clear it with ...",[594,910,911,912,661],{},"A model override on the item or a node is not a model id, such as ",[541,913,914],{},"sonnet 4",[594,916,785,917,661],{},[530,918,920],{"href":919},"\u002Ftroubleshooting\u002Fstop-reasons-in-detail#stored-model-override-is-not-a-model-id",[541,921,922],{},"stored model override is not a model id",[579,924,925,932,940],{},[594,926,927,861,929],{},[541,928,860],{},[541,930,931],{},"add-on \u003Cid> \u003Cversion> could not be read: ...",[594,933,934,935,939],{},"The item pinned a version of a ",[530,936,938],{"href":937},"\u002Fconcepts\u002Fvocabulary#add-on","Kraft add-on"," whose files are gone from this machine, and Kraft could not fetch them again. The rest says why.",[594,941,785,942,661],{},[530,943,945],{"href":944},"\u002Ftroubleshooting\u002Fstop-reasons-in-detail#add-on-could-not-be-read",[541,946,947],{},"add-on ... could not be read",[579,949,950,955,962],{},[594,951,952],{},[541,953,954],{},"... nothing registers it for Claude Code: ...",[594,956,957,958,961],{},"No ",[541,959,960],{},"kraft"," MCP server is registered, so Kraft refused a Claude worker.",[594,963,785,964,661],{},[530,965,967],{"href":966},"\u002Ftroubleshooting\u002Fstop-reasons-in-detail#nothing-registers-it-for-claude-code",[541,968,969],{},"nothing registers it for Claude Code",[663,971,973],{"id":972},"setting-up-the-worktree","Setting up the worktree",[573,975,976,986],{},[576,977,978],{},[579,979,980,982,984],{},[582,981,675],{},[582,983,678],{},[582,985,681],{},[589,987,988,1015,1037],{},[579,989,990,1000,1007],{},[594,991,992,995,996,999],{},[541,993,994],{},"no user.name configured in \u003Crepo>; set it before Kraft can commit"," (or ",[541,997,998],{},"user.email",")",[594,1001,1002,1003,661],{},"git has no commit identity for the repo, so Kraft would not make the item's ",[530,1004,1006],{"href":1005},"\u002Fconcepts\u002Fvocabulary#worktree","worktree",[594,1008,785,1009,661],{},[530,1010,1012],{"href":1011},"\u002Ftroubleshooting\u002Fstop-reasons-in-detail#no-username-configured",[541,1013,1014],{},"no user.name configured",[579,1016,1017,1022,1029],{},[594,1018,1019],{},[541,1020,1021],{},"no setup_command declared for \u003Crepo> in repos.yaml, so \u003Cid>'s worktree cannot be prepared. Declare one ...",[594,1023,1024,1025,1028],{},"The repo has no ",[541,1026,1027],{},"setup_command",", and Kraft will not guess what to run in a fresh worktree.",[594,1030,785,1031,661],{},[530,1032,1034],{"href":1033},"\u002Ftroubleshooting\u002Fstop-reasons-in-detail#no-setup_command-declared",[541,1035,1036],{},"no setup_command declared",[579,1038,1039,1044,1050],{},[594,1040,1041],{},[541,1042,1043],{},"setup command failed for \u003Cid>: '\u003Ccommand>': \u003Coutput>",[594,1045,1046,1047,1049],{},"The repo's ",[541,1048,1027],{}," ran in the new worktree and exited non-zero, and the reason ends with its output.",[594,1051,1052,1053,1056,1057,1059,1060,661],{},"In the worktree (",[541,1054,1055],{},"cd \"$(kraft repo path ID)\"","), run the command yourself. Fix it, or the repo's ",[541,1058,1027],{},", then ",[541,1061,631],{},[663,1063,1065],{"id":1064},"fix-loops-gates-and-reviews","Fix loops, gates and reviews",[573,1067,1068,1078],{},[576,1069,1070],{},[579,1071,1072,1074,1076],{},[582,1073,675],{},[582,1075,678],{},[582,1077,681],{},[589,1079,1080,1101,1132,1145,1182,1217,1233],{},[579,1081,1082,1087,1094],{},[594,1083,1084],{},[541,1085,1086],{},"\u003Cloop> exhausted after N fix cycle(s)",[594,1088,747,1089,1093],{},[530,1090,1092],{"href":1091},"\u002Fconcepts\u002Fvocabulary#fix-loop","fix loop"," spent its attempts without passing.",[594,1095,1096,1097,1100],{},"Read the findings (",[541,1098,1099],{},"kraft view events ID --type findings_measured","), then retry with a steer.",[579,1102,1103,1108,1116],{},[594,1104,1105],{},[541,1106,1107],{},"\u003Cnode>.on_base_changed exhausted after N restart(s) from '\u003Cnode>'",[594,1109,1110,1111,1115],{},"The ",[530,1112,1114],{"href":1113},"\u002Fconcepts\u002Fvocabulary#base-branch","base branch"," kept moving: each restart from the named node found it moved again, until the restarts ran out.",[594,1117,1118,1119,544,1122,1124,1125,1128,1129,661],{},"Retry once the base branch settles; a retry resets the count. To allow more restarts, raise that key under ",[541,1120,1121],{},"loops:",[541,1123,318],{},". The shipped chain restarts ",[541,1126,1127],{},"merge_request_feedback"," from ",[541,1130,1131],{},"verification",[579,1133,1134,1139,1142],{},[594,1135,1136],{},[541,1137,1138],{},"\u003Cgate> exhausted after N rejection(s)",[594,1140,1141],{},"A gate was rejected as many times as its chain allows.",[594,1143,1144],{},"Retry with a steer, or rework the spec or plan yourself.",[579,1146,1147,1155,1170],{},[594,1148,1149,769,1152],{},[541,1150,1151],{},"stuck: ...",[541,1153,1154],{},"judge: ...",[594,1156,1157,1158,1161,1162,1166,1167,1169],{},"A fix loop made no progress across cycles (",[541,1159,1160],{},"stuck","), or the loop's ",[530,1163,1165],{"href":1164},"\u002Fconcepts\u002Fvocabulary#judge","judge"," decided another repair attempt is not justified (",[541,1168,1165],{},").",[594,1171,1172,1173,1177,1178,1181],{},"Kraft has already tried an ",[530,1174,1176],{"href":1175},"\u002Fconcepts\u002Fvocabulary#escalation-turn","escalation turn"," on its own. Send a message with ",[541,1179,1180],{},"kraft item escalate ID --message \"...\"",", or retry with a steer.",[579,1183,1184,1189,1192],{},[594,1185,1186],{},[541,1187,1188],{},"the merge request was closed on the forge without merging",[594,1190,1191],{},"Someone or something other than Kraft closed the item's merge request without merging it.",[594,1193,1194,1195,756,1198,1201,1202,1205,1206,1210,1211,808,1214,1169],{},"The board offers ",[536,1196,1197],{},"Reopen !N",[536,1199,1200],{},"Open a new MR"," (only when the item had opened one) and ",[536,1203,1204],{},"Cancel item…",". See ",[530,1207,1209],{"href":1208},"\u002Freference\u002Fstatuses#mr-closed-externally","MR closed externally"," (the stop's ",[541,1212,1213],{},"stop.kind",[541,1215,1216],{},"mr_closed",[579,1218,1219,1224,1227],{},[594,1220,1221],{},[541,1222,1223],{},"a repair in node \u003Cnode> finished with concerns ...",[594,1225,1226],{},"A repair ran, but its agent doubted the result.",[594,1228,1229,1230,661],{},"Read the concerns in the reason, then retry with a steer, or ",[541,1231,1232],{},"kraft item skip ID",[579,1234,1235,1240,1243],{},[594,1236,1237],{},[541,1238,1239],{},"\u003Cscope> is read_only, but it changed the worktree: ...",[594,1241,1242],{},"A read-only step edited files.",[594,1244,1245],{},"Look at the named files, then retry.",[663,1247,1249],{"id":1248},"git-state-of-the-worktree","Git state of the worktree",[573,1251,1252,1262],{},[576,1253,1254],{},[579,1255,1256,1258,1260],{},[582,1257,675],{},[582,1259,678],{},[582,1261,681],{},[589,1263,1264,1280,1300,1316,1335,1353],{},[579,1265,1266,1271,1274],{},[594,1267,1268],{},[541,1269,1270],{},"the conflict in node \u003Cnode> cannot be resolved ...",[594,1272,1273],{},"Rebasing onto the base branch hit a conflict nobody resolved.",[594,1275,1276,1277,1279],{},"Resolve it in the worktree (",[541,1278,1055],{},"), commit, then retry.",[579,1281,1282,1291,1294],{},[594,1283,1284,1287,1288],{},[541,1285,1286],{},"untracked \u003Cpaths> would be overwritten by the base branch; move or delete it, then retry",", or ",[541,1289,1290],{},"git would not start the rebase onto the base branch ...",[594,1292,1293],{},"Kraft went to rebase the item onto its base branch, and git refused to start, so nothing was rebased.",[594,1295,785,1296,661],{},[530,1297,1299],{"href":1298},"\u002Ftroubleshooting\u002Fstop-reasons-in-detail#git-would-not-start-the-rebase","Git would not start the rebase",[579,1301,1302,1307,1310],{},[594,1303,1304],{},[541,1305,1306],{},"\u003Cworktree> has a \u003Cname> in progress: inspect it, then delete ...",[594,1308,1309],{},"The worktree holds a rebase, merge, cherry-pick, revert, bisect or autostash, so Kraft would not rebase or commit over it.",[594,1311,785,1312,661],{},[530,1313,1315],{"href":1314},"\u002Ftroubleshooting\u002Fstop-reasons-in-detail#a-git-operation-is-in-progress","A git operation is in progress",[579,1317,1318,1323,1326],{},[594,1319,1320],{},[541,1321,1322],{},"\u003Cworktree> is not on \u003Cbranch>; check it out by hand, then retry",[594,1324,1325],{},"The worktree's HEAD names another branch, so Kraft would not commit, rebase or push from it.",[594,1327,1328,1330,1331,1334],{},[541,1329,1055],{},", check that nothing of yours is on the named branch, ",[541,1332,1333],{},"git checkout \u003Cbranch>",", then retry.",[579,1336,1337,1342,1345],{},[594,1338,1339],{},[541,1340,1341],{},"origin\u002F\u003Cbranch> is at \u003Csha>, which Kraft did not push and this worktree does not have ...",[594,1343,1344],{},"Someone pushed commits to the item's merge request branch, and Kraft's push would have overwritten them.",[594,1346,1347,756,1349,1352],{},[541,1348,1055],{},[541,1350,1351],{},"git pull --rebase origin \u003Cbranch>"," to bring them in, then retry.",[579,1354,1355,1360,1363],{},[594,1356,1357],{},[541,1358,1359],{},"origin no longer has \u003Cbranch>, which Kraft pushed ...",[594,1361,1362],{},"The item's branch was deleted from origin, usually with its merge request merged or closed, and Kraft will not recreate it.",[594,1364,1365,1366,1369],{},"To publish the work anyway, run the two ",[541,1367,1368],{},"git update-ref -d"," commands the reason names in the item's worktree, then retry. Otherwise abandon the item.",[663,1371,40],{"id":1372},"caps-and-budgets",[573,1374,1375,1385],{},[576,1376,1377],{},[579,1378,1379,1381,1383],{},[582,1380,675],{},[582,1382,678],{},[582,1384,681],{},[589,1386,1387,1409,1435,1462],{},[579,1388,1389,1394,1397],{},[594,1390,1391],{},[541,1392,1393],{},"budget cap reached: ... on this work item",[594,1395,1396],{},"The item's own dollar cap refused the next launch.",[594,1398,1399,1400,1287,1403,1406,1407,661],{},"Raise that cap and retry in one step: ",[541,1401,1402],{},"kraft item raise-budget ID --usd N",[536,1404,1405],{},"Raise cap"," on the item. See ",[530,1408,80],{"href":81},[579,1410,1411,1419,1429],{},[594,1412,1413,756,1416],{},[541,1414,1415],{},"budget_usd reached ...",[541,1417,1418],{},"token budget reached ...",[594,1420,1421,1422,769,1425,1428],{},"A policy ",[541,1423,1424],{},"budget_usd",[541,1426,1427],{},"token_budget"," refused the next launch.",[594,1430,785,1431,661],{},[530,1432,1434],{"href":1433},"\u002Ftroubleshooting\u002Fstop-reasons-in-detail#a-policy-budget-or-token-cap-refused-the-launch","A policy budget or token cap refused the launch",[579,1436,1437,1442,1445],{},[594,1438,1439],{},[541,1440,1441],{},"budget cap reached: ... today, across every work item",[594,1443,1444],{},"The daily cap, which nothing on the item raises, refused the next launch.",[594,1446,1447,1448,544,1451,1453,1454,1457,1458,1461],{},"Raise ",[541,1449,1450],{},"budget.daily_usd",[541,1452,318],{},", or wait for local midnight, then retry. ",[541,1455,1456],{},"raise-budget"," is refused, and the item's page offers ",[536,1459,1460],{},"Retry"," with no raise.",[579,1463,1464,1469,1479],{},[594,1465,1466],{},[541,1467,1468],{},"budget_usd cannot be checked: N launch(es) in ... reported no cost, and unknown spend is never counted as free ...",[594,1470,1471,1472,1476,1477,661],{},"A launch ran on a ",[530,1473,1475],{"href":1474},"\u002Fconcepts\u002Fvocabulary#harness","harness"," that reports no cost, on a model Kraft cannot price, so it cannot show the scope is under its ",[541,1478,1424],{},[594,1480,785,1481,661],{},[530,1482,1484],{"href":1483},"\u002Ftroubleshooting\u002Fstop-reasons-in-detail#a-budget-cap-cannot-be-checked","A budget cap cannot be checked",[663,1486,1488],{"id":1487},"time-caps-and-waits","Time caps and waits",[573,1490,1491,1501],{},[576,1492,1493],{},[579,1494,1495,1497,1499],{},[582,1496,675],{},[582,1498,678],{},[582,1500,681],{},[589,1502,1503,1521,1540,1553,1568,1581],{},[579,1504,1505,1510,1513],{},[594,1506,1507],{},[541,1508,1509],{},"\u003Cscope> hit its time cap of N minutes",[594,1511,1512],{},"A time cap ran out.",[594,1514,1515,1516,1205,1519,661],{},"Raise it for this item, then retry: ",[541,1517,1518],{},"kraft item set-policy ID --policy time_cap_minutes=240",[530,1520,80],{"href":81},[579,1522,1523,1528,1531],{},[594,1524,1525],{},[541,1526,1527],{},"\u003Cscope> hit its total time cap of N minutes",[594,1529,1530],{},"A scope's wall-clock cap, which waits and gates count toward, ran out.",[594,1532,1515,1533,1536,1537,661],{},[541,1534,1535],{},"kraft item set-policy ID --policy total_time_cap_minutes=N",". A node or task needs its path in the key, such as ",[541,1538,1539],{},"merge_request_feedback.ci.await_ci.total_time_cap_minutes=N",[579,1541,1542,1547,1550],{},[594,1543,1544],{},[541,1545,1546],{},"gate \u003Cgate> waited past its timeout of N minutes",[594,1548,1549],{},"Nobody decided a gate in time.",[594,1551,1552],{},"Retry to reopen the gate, then decide it.",[579,1554,1555,1560,1563],{},[594,1556,1557],{},[541,1558,1559],{},"\u003Ctask> timed out waiting ...",[594,1561,1562],{},"An external wait (CI, a review) ran out.",[594,1564,785,1565,1567],{},[530,1566,562],{"href":561},". Retry once the outside is fixed.",[579,1569,1570,1575,1578],{},[594,1571,1572],{},[541,1573,1574],{},"rate_limit retries exhausted after N attempt(s)",[594,1576,1577],{},"The agent's provider kept refusing for a rate limit.",[594,1579,1580],{},"Wait for the limit to reset, then retry.",[579,1582,1583,1588,1591],{},[594,1584,1585,1586],{},"A CI or automated-review failure, with a suggested ",[536,1587,627],{},[594,1589,1590],{},"CI failed for its own reasons, or a cancelled run has no successor.",[594,1592,1593],{},"Retry once CI has recovered.",[663,1595,1597],{"id":1596},"the-sandbox-and-kits","The sandbox and Kits",[526,1599,1600,1601,1603],{},"These stops have their own page, ",[530,1602,215],{"href":216},". Each row below links to the entry for its text.",[573,1605,1606,1615],{},[576,1607,1608],{},[579,1609,1610,1612],{},[582,1611,675],{},[582,1613,1614],{},"See",[589,1616,1617,1630,1646,1662,1675,1689,1705],{},[579,1618,1619,1624],{},[594,1620,1621],{},[541,1622,1623],{},"... this launch is sandboxed in \u003Crepo> with no `network:` policy ...",[594,1625,1626],{},[530,1627,1629],{"href":1628},"\u002Ftroubleshooting\u002Fsandbox-and-kit-stops#a-sandbox-with-no-network-policy","A sandbox with no network policy",[579,1631,1632,1640],{},[594,1633,1634,1287,1637],{},[541,1635,1636],{},"kraft: a process in the sandbox was killed by its memory limit (\u003Csize>)",[541,1638,1639],{},"... under its \u003Csize> memory limit (the runtime did not confirm it was the limit)",[594,1641,1642],{},[530,1643,1645],{"href":1644},"\u002Ftroubleshooting\u002Fsandbox-and-kit-stops#find-your-reason","The memory-limit row",[579,1647,1648,1656],{},[594,1649,1650,1287,1653],{},[541,1651,1652],{},"the Kit \u003Cref> cannot be used: ...",[541,1654,1655],{},"the Kit \u003Cref> has not been fetched here yet ...",[594,1657,1658],{},[530,1659,1661],{"href":1660},"\u002Ftroubleshooting\u002Fsandbox-and-kit-stops#a-kit-is-refused","A Kit is refused",[579,1663,1664,1669],{},[594,1665,1666],{},[541,1667,1668],{},"work item \u003Cid> runs sandboxed, and its workspace members \u003Cpaths> are not the checkouts Kraft made ...",[594,1670,1671],{},[530,1672,1674],{"href":1673},"\u002Ftroubleshooting\u002Fsandbox-and-kit-stops#sandboxed-workspace-members","Sandboxed workspace members",[579,1676,1677,1683],{},[594,1678,1679,1682],{},[541,1680,1681],{},"workspace member \u003Cpath> of \u003Cworktree> has no checkout Kraft made ...",", and four more like it",[594,1684,1685],{},[530,1686,1688],{"href":1687},"\u002Ftroubleshooting\u002Fsandbox-and-kit-stops#a-sandboxed-launch-would-not-mount-a-member","A sandboxed launch would not mount a member",[579,1690,1691,1699],{},[594,1692,1693,1287,1696],{},[541,1694,1695],{},"... runs sandboxed, and no connected repository is known for \u003Cpaths> ...",[541,1697,1698],{},"member \u003Cpath> of \u003Cid>: ...",[594,1700,1701],{},[530,1702,1704],{"href":1703},"\u002Ftroubleshooting\u002Fsandbox-and-kit-stops#a-members-repository-cannot-be-checked-out","A member's repository cannot be checked out",[579,1706,1707,1712],{},[594,1708,1709],{},[541,1710,1711],{},"work item \u003Cid> runs sandboxed, and its worktree holds git repositories Kraft did not create: \u003Cpaths>. ...",[594,1713,1714],{},[530,1715,1717],{"href":1716},"\u002Ftroubleshooting\u002Fsandbox-and-kit-stops#a-nested-repository-kraft-did-not-create","A nested repository Kraft did not create",[663,1719,1721],{"id":1720},"restarts-and-crashes","Restarts and crashes",[573,1723,1724,1734],{},[576,1725,1726],{},[579,1727,1728,1730,1732],{},[582,1729,675],{},[582,1731,678],{},[582,1733,681],{},[589,1735,1736,1758,1784,1804,1827,1855],{},[579,1737,1738,1743,1746],{},[594,1739,1740],{},[541,1741,1742],{},"... are executed by the running Kraft daemon ...",[594,1744,1745],{},"A task that runs inside Kraft itself failed.",[594,1747,1748,1749,1752,1753,1757],{},"Update and restart Kraft with ",[541,1750,1751],{},"kraft admin update --restart",", after ",[530,1754,1756],{"href":1755},"\u002Fguides\u002Frun\u002Frestart-kraft#a-restart-ends-running-agents","pausing running items",", or skip the node.",[579,1759,1760,1765,1778],{},[594,1761,1762],{},[541,1763,1764],{},"reattach: running session, PID identity unconfirmed, no result (pid N is not alive)",[594,1766,1767,1768,756,1771,756,1774,1777],{},"Kraft was stopped or restarted (",[541,1769,1770],{},"kraft admin stop",[541,1772,1773],{},"restart",[541,1775,1776],{},"update --restart",", or the service) while the item's agent ran, and a clean stop ends every running agent.",[594,1779,1780,1781,661],{},"The board shows the item as failed. Retry. Pause running items before your next restart: see ",[530,1782,1783],{"href":1755},"A restart ends running agents",[579,1785,1786,1791,1794],{},[594,1787,1788],{},[541,1789,1790],{},"reattach crashed: \u003Cerror>",[594,1792,1793],{},"Kraft started and found the item's agent session still running, and the code that takes a running session over failed with the error shown. The agent's sandbox, if it had one, was closed.",[594,1795,1796,1797,1803],{},"Retry. If it happens again, ",[530,1798,1802],{"href":1799,"rel":1800},"https:\u002F\u002Fgithub.com\u002FitsOmidKarami\u002Fkraft\u002Fissues",[1801],"nofollow","open an issue"," with the error.",[579,1805,1806,1814,1817],{},[594,1807,1808,1287,1811],{},[541,1809,1810],{},"skip could not start a walk for the node after the skipped one",[541,1812,1813],{},"skip could not start a walk past the skipped scope",[594,1815,1816],{},"The skip is recorded, but the walk after it did not start.",[594,1818,1819,1820,1822,1823,1826],{},"Run the same ",[541,1821,1232],{}," again, with the same ",[541,1824,1825],{},"--path"," for a task or step. A retry would rerun the node you skipped.",[579,1828,1829,1839,1847],{},[594,1830,1831,1834,1835,1838],{},[541,1832,1833],{},"... but could not start a walk",", with or without ",[541,1836,1837],{},": \u003Cerror>"," after it",[594,1840,1841,1842,808,1844,661],{},"A resume, retry, escalation retry, gate decision, the rate-limit poller or the wait scheduler put the item back to running, and failed before the executor took it over. ",[541,1843,807],{},[541,1845,1846],{},"stranded",[594,1848,1849,1850,558,1852,1803],{},"Retry. After a gate decision the retry reruns the node the item stood on: decide the gate again if it comes back. If it recurs, run ",[541,1851,738],{},[530,1853,1802],{"href":1799,"rel":1854},[1801],[579,1856,1857,1870,1877],{},[594,1858,1859,756,1862,1865,1866,1869],{},[541,1860,1861],{},"executor crashed: ...",[541,1863,1864],{},"resume: ...",", or a ",[541,1867,1868],{},"reattach ..."," reason other than the ones above",[594,1871,1872,1873,1876],{},"Kraft crashed while the item ran: it was killed, or the machine went down. A restart you asked for gives the ",[541,1874,1875],{},"reattach"," row above, not this one.",[594,1878,1879,1880,558,1882,661],{},"Retry. If it happens again, run ",[541,1881,738],{},[530,1883,1802],{"href":1799,"rel":1884},[1801],[565,1886,557],{"id":1887},"escalation-turns-and-things-that-are-not-a-stop",[526,1889,1890,1891,1893,1894,544,1897,1899,1900,1903,1904,1906],{},"Some stops reach you only after Kraft has tried an ",[536,1892,1176],{}," on its\nown, up to three times (",[541,1895,1896],{},"auto_escalate_stuck_cap",[541,1898,318],{},"): a task\nthat failed after its recovery, an exhausted fix loop, and a ",[541,1901,1902],{},"stuck:"," stop.\n",[541,1905,618],{}," shows those turns. The other stops (a configuration or\nforge problem, a budget or time cap, a wait that ran out) come to you at once.",[526,1908,1909],{},"Three things look like a stop and are not one, or need a different move:",[1911,1912,1913,1923,1933],"ul",{},[1914,1915,1916,1917,769,1920,661],"li",{},"A pending gate is not a stop. It waits for your decision:\n",[541,1918,1919],{},"kraft item approve ID",[541,1921,1922],{},"kraft item reject ID --note \"...\"",[1914,1924,1925,1926,1929,1930,661],{},"If the work is heading the wrong way rather than failing, pause it and\nresume it with a steer: ",[541,1927,1928],{},"kraft item pause ID",", then\n",[541,1931,1932],{},"kraft item resume ID --steer \"...\"",[1914,1934,1935,1936,661],{},"To move past a node without running it, use ",[541,1937,1232],{},[565,1939,562],{"id":1940},"waiting-on-ci-or-a-review",[526,1942,1943,1944,661],{},"Kraft keeps checking on both waits. One that outlasts its timeout stops the item with ",[541,1945,1946],{},"\u003Ctask> timed out waiting",[663,1948,1950,1952],{"id":1949},"merge_request_feedback-waits-on-no-checks-yet",[541,1951,1127],{}," waits on \"no checks yet\"",[526,1954,1955],{},"The pull request has no CI checks, so nothing will ever pass. Do one of these:",[1911,1957,1958,1961,1973],{},[1914,1959,1960],{},"Add CI that runs on pull requests.",[1914,1962,1963,1964,1967,1968,1972],{},"Set ",[541,1965,1966],{},"ci_checks: false"," on the repo's entry in ",[530,1969,1970],{"href":301},[541,1971,300],{},", so both CI waits, before and after the merge, pass at once.",[1914,1974,1975,1976,1979],{},"File the item on the ",[541,1977,1978],{},"quick-task"," chain.",[526,1981,1982],{},"A pull request that conflicts with its base branch does not wait here, although GitHub runs no checks on it. Kraft rebases the branch onto the base at once, and a conflict the rebase cannot resolve stops the item instead of the wait running out.",[663,1984,1986,1989],{"id":1985},"external_approval-keeps-waiting",[541,1987,1988],{},"external_approval"," keeps waiting",[526,1991,1992],{},"A branch rule on the forge requires an approving review. Have someone else approve the pull request, or remove the rule. Kraft checks again on its own.",[565,1994,1996],{"id":1995},"related","Related",[1911,1998,1999,2007,2012,2017],{},[1914,2000,2001,2003,2004,2006],{},[530,2002,211],{"href":212},": a failing ",[541,2005,738],{}," row, which often explains a stop.",[1914,2008,2009,2011],{},[530,2010,80],{"href":81},": lifting a budget or time cap and retrying.",[1914,2013,2014,2016],{},[530,2015,215],{"href":216},": the no-network-policy, memory-limit, Kit, workspace-member and nested-repository stops of a sandboxed item.",[1914,2018,2019,2023],{},[530,2020,2022],{"href":2021},"\u002Fproject\u002Fstatus-and-support#getting-help","Getting help",": where to ask when no reason here fits.",{"title":2025,"searchDepth":2026,"depth":2026,"links":2027},"",2,[2028,2029,2041,2042,2048],{"id":567,"depth":2026,"text":568},{"id":648,"depth":2026,"text":552,"children":2030},[2031,2033,2034,2035,2036,2037,2038,2039,2040],{"id":665,"depth":2032,"text":666},3,{"id":822,"depth":2032,"text":823},{"id":972,"depth":2032,"text":973},{"id":1064,"depth":2032,"text":1065},{"id":1248,"depth":2032,"text":1249},{"id":1372,"depth":2032,"text":40},{"id":1487,"depth":2032,"text":1488},{"id":1596,"depth":2032,"text":1597},{"id":1720,"depth":2032,"text":1721},{"id":1887,"depth":2026,"text":557},{"id":1940,"depth":2026,"text":562,"children":2043},[2044,2046],{"id":1949,"depth":2032,"text":2045},"merge_​request_​feedback waits on \"no checks yet\"",{"id":1985,"depth":2032,"text":2047},"external_​approval keeps waiting",{"id":1995,"depth":2026,"text":1996},"Find the reason a work item stopped and needs you, the fix for each, and what to do when an item waits on CI or a review.","md",null,{},true,{"title":199,"description":2049},"tA1P8heHmO1YvKJuftvN0LUvT21L4QQj13ti3VN1X7E",[2057,2059],{"title":10,"path":193,"stem":197,"description":2058,"children":-1},"Where to look when a work item stopped, the server will not start, a doctor row fails, or an add-on is refused.",{"title":203,"path":204,"stem":205,"description":2060,"children":-1},"The stop reasons that need more than one table row, each with what it means and the numbered fix.",1791801167217]