- Type the new helper signatures (CLAUDE.md A5): `mcp_client: Any` in
document_is_searchable and `nc_mcp_client: Any` in _top_score.
- _top_score: guard the results list directly (`if not results`) instead of via
total_found, so max() can't hit an empty sequence.
- _get_with_retry: replace `raise last_exc # type: ignore` with an explicit
`assert last_exc is not None` then raise — clearer intent, no suppressor.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>