fix(web): keep the subagent registry in the host plane
`dsh web` failed to boot: the aggressive plane split moved `subagents` and its spawn/fork backends into the preset's entry-local realm, but `dsh-host-apiproxy` is a host row that injects `subagents` to answer the browser's cross-session queries, so it waited forever for a service only sessions now provided. A per-session copy is wrong twice over — a provider name registers once, so the second session would have collided anyway. The registry and its backends go back to the host composition; the presets keep the delegation TOOLS, which resolve that host registry. `workflows` stays entry-local: nothing outside an agent reads it. The web real-composition test could not have caught this, because it disabled `api-gateway` — the very row whose pending injection names the break. It now boots with the api-proxy enabled and the browse directory picker substituted, so the boot audit covers the whole host-plane injection graph. Re-introducing the old split makes it fail with the three pending entries, which is how this was verified.
This commit is contained in:
@@ -263,14 +263,12 @@
|
||||
- id: tool-result-prune
|
||||
disabled: true
|
||||
|
||||
- id: subagent
|
||||
disabled: true
|
||||
|
||||
- id: subagent-spawn
|
||||
disabled: true
|
||||
|
||||
- id: subagent-fork
|
||||
disabled: true
|
||||
# The subagent registry and its backends STAY in the host plane. `subagents` is
|
||||
# a process singleton with a cross-session query surface (`listChildren`,
|
||||
# `followup`) that the host api-proxy serves to the browser, and a provider
|
||||
# registers under a globally unique name, so a per-session copy would both
|
||||
# starve that host row and collide on the second session. What a preset
|
||||
# chooses is which delegation TOOLS its agent sees, below.
|
||||
|
||||
- id: tool-subagent-control
|
||||
disabled: true
|
||||
|
||||
Reference in New Issue
Block a user