M10: ProcessingRunner skeleton (#27)

* 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

* M10: Add run1 and toolcalls update

Made-with: Cursor

* M10: Update Phase III roadmap, add closeout prompt

- Phase III: M11 lifecycle, M12 instrumentation, M13 txt2img, M14 API, M15 queue
- Phase IV-VII renumbered (M16-M33)
- Add M10_closeout_prompt.md for Cursor

Made-with: Cursor
This commit is contained in:
m-cahill 2026-03-11 22:46:56 -07:00 committed by GitHub
parent 11b9e0f16e
commit 880723f100
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
9 changed files with 403 additions and 28 deletions

View file

@ -844,7 +844,10 @@ def process_images(p: StableDiffusionProcessing) -> Processed:
sd_samplers.fix_p_invalid_sampler_and_scheduler(p)
with profiling.Profiler():
res = process_images_inner(p)
from modules.runtime.runner import ProcessingRunner, ProcessingRequest
runner = ProcessingRunner()
request = ProcessingRequest(p)
res = runner.run(request)
finally:
sd_models.apply_token_merging(p.sd_model, 0)