zed-industries/zed · error

Toolchain store to be local

Error message

Toolchain store to be local

What it means

Headless remote server project setup asserts the toolchain store is in local mode (as_local_store) before use. It is not, meaning the store was created for a different (remote/embedded) context than the headless server requires — an invariant violation in project assembly.

Source

Thrown at crates/remote_server/src/headless_project.rs:223

                fs.clone(),
                worktree_store.clone(),
                task_store.clone(),
                true,
                cx,
            );
            observer.shared(REMOTE_SERVER_PROJECT_ID, session.clone(), cx);
            observer
        });

        let lsp_store = cx.new(|cx| {
            let mut lsp_store = LspStore::new_local(
                buffer_store.clone(),
                worktree_store.clone(),
                prettier_store.clone(),
                toolchain_store
                    .read(cx)
                    .as_local_store()
                    .expect("Toolchain store to be local")
                    .clone(),
                environment.clone(),
                manifest_tree,
                languages.clone(),
                http_client.clone(),
                fs.clone(),
                cx,
            );
            lsp_store.shared(REMOTE_SERVER_PROJECT_ID, session.clone(), cx);
            lsp_store
        });

        AgentRegistryStore::init_global(cx, fs.clone(), http_client.clone());

        let agent_server_store = cx.new(|cx| {
            let mut agent_server_store = AgentServerStore::local(
                node_runtime.clone(),
                fs.clone(),

View on GitHub (pinned to 9d272b0363)

Solutions

  1. Create the toolchain store with the local variant on the remote server
  2. Check how toolchain_store is constructed upstream in new()
  3. Make as_local_store return a Result and handle the mismatch gracefully
Defensive patterns

Strategy: type-guard

When it happens

Trigger: Thrown at crates/remote_server/src/headless_project.rs:221 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of zed-industries/zed@9d272b0363 (2026-08-20). Data as JSON: /api/errors/8946cea0810a2f98. Report an issue: GitHub.