After `!shutdown` there is no way to redeploy from the UI

Open
#7,724 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
52/100
Issue type
Bug
Clarity
Mostly clear
Activity status
Active
Tech stack
rust, typescript
Domain
backend, frontend

Research direction

Start in managed_agents/runtime.rs and trace how backend_agent_id and the derived status change after !shutdown. Then inspect features/agents/lib/managedAgentControlActions.ts and the remote-backend filtering in managed_agents/runtime_commands.rs. Done means a remotely managed agent can return from graceful shutdown to a working Deploy or Redeploy path without manually clearing backend_agent_id.

Written by the indexing model from the issue text.

Description

Severity: medium — a dead end.

managed_agents/runtime.rs derives the control-plane status from
backend_agent_id:

let status = if record.backend_agent_id.is_some() { "deployed" } else { "not_deployed" };

with the comment "After !shutdown the agent goes offline (presence) but stays
'deployed' (infrastructure still exists). This is intentional … A future provider
undeploy operation (v2) will handle teardown."

But the UI uses that status to pick the button
(features/agents/lib/managedAgentControlActions.ts):

if (agent.backend.type === "provider") {
  return isManagedAgentActive(agent) ? "Shutdown" : "Deploy";
}

So after a graceful shutdown the only button is Shutdown, and it does nothing.
There is no path back to Deploy. Clearing backend_agent_id by hand is the
only workaround.

Expected: either a Deploy/Redeploy action while deployed but offline, or
clear backend_agent_id when the harness exits.

Related: start_on_app_launch is filtered to local backends
(managed_agents/runtime_commands.rs), so remote agents never auto-deploy on
app launch either.


Dominant language
Rust
Stars
33.7k
Forks
4.4k
Avg merge
1d 21h
Merged PRs (30d)
239

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from block/buzz

All issues in block/buzz

Similar issues

More Rust issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.