9d2355d1cd
External plugins, extensions, and downstream wrappers (notably the upstream `@mariozechner/pi-coding-agent` AgentSession routed through the legacy-pi-compat shim) call `modelRegistry.hasConfiguredAuth(model)` before launching a subagent to short-circuit when no API key is configured. Our `ModelRegistry` did not expose that method, so the direct agent-launch path threw `this._modelRegistry.hasConfiguredAuth is not a function` and exited with 0 tokens, 0 tool uses, ~100ms runtime — well before any model conversation began. The `task` tool path bypassed the preflight and worked, masking the missing API. Add a thin `hasConfiguredAuth(model)` wrapper that returns true for keyless providers and providers with stored auth, matching upstream semantics. Add a focused regression test asserting the method exists and distinguishes configured vs. unconfigured providers. Fixes #993.