[run]
source = meridian
omit =
    # Postgres adapter — only exercised with real Postgres, tests use SQLite
    meridian/pg_adapter.py
    # Client SDK — separate package, not a server concern
    meridian/sdk.py
    # Cloud-hosted auth/Stripe — requires real OAuth + Stripe in integration
    meridian/hosted.py
    # Goal sync — skipped on win32 in tests
    meridian/goal_md.py
    # stdio MCP transport — only exercised via piped stdin/stdout, not HTTP
    meridian/mcp/stdio_handler.py

[report]
# 807d8c28 — ratcheted 80 -> 82 (measured 82.38%). 3bbc13f7 — now 82.51% after
# adding real-flow integration tests (tests/test_integration_flow.py). The 90%
# target stays deferred: setting fail_under=90 now would red-line CI. Reaching it
# needs a dedicated coverage sprint on server.py / routes/tunnel.py (the big gaps)
# plus un-omitting hosted.py / pg_adapter.py above.
fail_under = 82
exclude_lines =
    pragma: no cover
    def __repr__
    if TYPE_CHECKING:
    raise NotImplementedError
