Coverage for /home/runner/work/bijux-cli/bijux-cli/src/bijux_cli/contracts/__init__.py: 100%
16 statements
« prev ^ index » next coverage.py v7.10.4, created at 2025-08-19 23:36 +0000
« prev ^ index » next coverage.py v7.10.4, created at 2025-08-19 23:36 +0000
1# SPDX-License-Identifier: MIT
2# Copyright © 2025 Bijan Mousavi
4"""Defines the public API for all service and infrastructure contracts.
6This module acts as the public facade for the application's service contracts,
7which are defined using Python's `Protocol`. It aggregates all individual
8protocol definitions from the `bijux_cli.contracts` submodules into a single,
9stable namespace.
11By importing from this module, other parts of the application can depend on
12these abstract interfaces without being coupled to the concrete implementation
13details or the internal structure of the contracts package.
14"""
16from __future__ import annotations
18from bijux_cli.contracts.audit import AuditProtocol
19from bijux_cli.contracts.config import ConfigProtocol
20from bijux_cli.contracts.context import ContextProtocol
21from bijux_cli.contracts.docs import DocsProtocol
22from bijux_cli.contracts.doctor import DoctorProtocol
23from bijux_cli.contracts.emitter import EmitterProtocol
24from bijux_cli.contracts.history import HistoryProtocol
25from bijux_cli.contracts.memory import MemoryProtocol
26from bijux_cli.contracts.observability import ObservabilityProtocol
27from bijux_cli.contracts.process import ProcessPoolProtocol
28from bijux_cli.contracts.registry import RegistryProtocol
29from bijux_cli.contracts.retry import RetryPolicyProtocol
30from bijux_cli.contracts.serializer import SerializerProtocol
31from bijux_cli.contracts.telemetry import TelemetryProtocol
33__all__ = [
34 "AuditProtocol",
35 "ConfigProtocol",
36 "ContextProtocol",
37 "DocsProtocol",
38 "DoctorProtocol",
39 "EmitterProtocol",
40 "HistoryProtocol",
41 "MemoryProtocol",
42 "ObservabilityProtocol",
43 "ProcessPoolProtocol",
44 "RegistryProtocol",
45 "RetryPolicyProtocol",
46 "SerializerProtocol",
47 "TelemetryProtocol",
48]