-
Notifications
You must be signed in to change notification settings - Fork 7
Expand file tree
/
Copy path__init__.py
More file actions
44 lines (38 loc) · 1.39 KB
/
__init__.py
File metadata and controls
44 lines (38 loc) · 1.39 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
"""Service plugins for protocol implementations and verification tools.
Provides the service manager abstraction used by all IUT (Implementation
Under Test) and tester plugins. Each service manager controls command
generation, Docker builds, lifecycle events, and structured logging for
a single implementation.
Service Hierarchy:
```
IServiceManager ← abstract contract
└── BaseQUICServiceManager ← template method pattern
├── PythonQUICServiceManager ← venv / asyncio (aioquic)
├── RustQUICServiceManager ← Cargo builds (quiche, quinn)
└── direct subclasses ← C / Go (picoquic, lsquic, …)
```
Service Types:
- **IUT** – Protocol implementations to evaluate, organised by protocol
(quic/, http/, minip/).
- **Testers** – Validation and formal-verification tools
(currently: panther_ivy).
Interface Contract:
Every service manager implements `initialize(config)`,
`start()`, `stop()`, and `get_status()`.
"""
from panther.plugins.services.service_manager_mixin import (
validate_cmd,
validate_structure,
)
from panther.plugins.services.services_interface import (
IServiceManager,
quote_shell,
quote_yaml,
)
__all__ = [
"IServiceManager",
"quote_shell",
"quote_yaml",
"validate_cmd",
"validate_structure",
]