interrupt_agent(agent_id) passes the calling agent as the ancestor authority for ctx.subagents.interrupt(); the service verifies live registry identity and recorded lineage, so a direct child or deeper descendant stops with the same generic parameter while send_message keeps its exact-direct-parent authority. Discovery: list_agents gains an optional scope. descendants walks the new SubagentService.listDescendants() — one lineage trace flattened in stable pre-order across ordinary and one-shot intermediates, each entry carrying its verified parentId and depth — and every status now comes from the live Agent registry (running/idle/complete). Refs #1535 |
||
|---|---|---|
| .. | ||
| code-mode.spec.ts | ||
| execution-mode.spec.ts | ||
| execution-signal-types.spec.ts | ||
| gen-tool-catalog.spec.ts | ||
| invariant.spec.ts | ||
| json-schema.spec.ts | ||
| properties.spec.ts | ||
| py-types.spec.ts | ||
| schema.spec.ts | ||
| scoped.spec.ts | ||
| tools.spec.ts | ||
| ts-types.spec.ts | ||