M10: ProcessingRunner skeleton

- Add modules/runtime/runner.py with ProcessingRunner and ProcessingRequest
- Wire process_images to delegate through runner (internal only)
- Add test/quality/test_processing_runner.py contract test

Behavior-preserving. Zero blast radius. All callers unchanged.

Made-with: Cursor
This commit is contained in:
Michael Cahill 2026-03-11 21:50:25 -07:00
parent 11b9e0f16e
commit 59e46fa069
6 changed files with 192 additions and 1 deletions

View file

@ -0,0 +1,4 @@
"""Runtime execution boundary for Serena.
M10: ProcessingRunner skeleton. Thin adapter around process_images_inner.
"""

22
modules/runtime/runner.py Normal file
View file

@ -0,0 +1,22 @@
"""ProcessingRunner — unified execution entrypoint for Serena pipeline.
M10: Thin adapter around process_images_inner. No behavior changes.
"""
class ProcessingRequest:
"""Wraps StableDiffusionProcessing for runner boundary."""
def __init__(self, processing):
self.processing = processing
class ProcessingRunner:
"""
Unified execution entrypoint for Serena processing pipeline.
"""
def run(self, request):
"""Execute processing pipeline."""
from modules.processing import process_images_inner
return process_images_inner(request.processing)