Load operation validator extension in main entry point (#72)
Enable the operation validator extension to be loaded from environment configuration and passed to MemoryEngine, allowing pre/post operation hooks for usage metering, rate limiting, and audit logging.
This commit is contained in:
parent
36e48a7166
commit
dfa7cec05b
1 changed files with 8 additions and 1 deletions
|
|
@ -31,6 +31,7 @@ from .daemon import (
|
|||
IdleTimeoutMiddleware,
|
||||
daemonize,
|
||||
)
|
||||
from .extensions import OperationValidatorExtension, load_extension
|
||||
|
||||
# Filter deprecation warnings from third-party libraries
|
||||
warnings.filterwarnings("ignore", message="websockets.legacy is deprecated")
|
||||
|
|
@ -191,8 +192,14 @@ def main():
|
|||
signal.signal(signal.SIGINT, _signal_handler)
|
||||
signal.signal(signal.SIGTERM, _signal_handler)
|
||||
|
||||
# Load operation validator extension if configured
|
||||
operation_validator = load_extension("OPERATION_VALIDATOR", OperationValidatorExtension)
|
||||
if operation_validator:
|
||||
import logging
|
||||
logging.info(f"Loaded operation validator: {operation_validator.__class__.__name__}")
|
||||
|
||||
# Create MemoryEngine (reads configuration from environment)
|
||||
_memory = MemoryEngine()
|
||||
_memory = MemoryEngine(operation_validator=operation_validator)
|
||||
|
||||
# Create FastAPI app
|
||||
app = create_app(
|
||||
|
|
|
|||
Loading…
Reference in a new issue