Problem
docs/reference/index.md:3-6 renders the top-level package with:
show_submodules: false
members: false
That hides the top-level import contract even though src/haclient/__init__.py:18-43 imports public objects and src/haclient/__init__.py:45-70 defines __all__.
Users therefore do not get a clear API overview for common imports like HAClient, SyncHAClient, ConnectionConfig, DomainSpec, Entity, and the exception types.
Suggested Fix
Update the API overview to expose the public package surface. Either remove members: false or explicitly list the exported names from __all__.
If the intent is to keep the page short, add a hand-written table mapping public imports to their reference pages.
Rationale
The top-level package is the public entry point. Hiding all members makes the API overview much less useful and weakens discoverability for typed public exports.
Problem
docs/reference/index.md:3-6renders the top-level package with:That hides the top-level import contract even though
src/haclient/__init__.py:18-43imports public objects andsrc/haclient/__init__.py:45-70defines__all__.Users therefore do not get a clear API overview for common imports like
HAClient,SyncHAClient,ConnectionConfig,DomainSpec,Entity, and the exception types.Suggested Fix
Update the API overview to expose the public package surface. Either remove
members: falseor explicitly list the exported names from__all__.If the intent is to keep the page short, add a hand-written table mapping public imports to their reference pages.
Rationale
The top-level package is the public entry point. Hiding all members makes the API overview much less useful and weakens discoverability for typed public exports.