ce72b0cbc4
Harvested from #2402 with thanks to @axobase001. Keeps `allow_shell` guidance visible for gated shell tools even when missing-tool suggestions exist, removes the nonexistent task_shell_cancel matcher, and broadens regression coverage. Partially addresses #2328.