Skip to content

EditorRunners

Purpose

Owns editor update-loop runner infrastructure for long-running Snap Studio Pro operations.

This territory provides safe editor-time execution support for batch-style routines without blocking the Unity Editor.

Owns

  • Editor update-loop batch execution
  • Long-running editor routine stepping
  • Stop/cancel signalling
  • Runner progress events
  • Runner completion events
  • Per-frame workload pacing

Does NOT Own

  • Export workflow planning
  • Capture execution logic
  • Thumbnail generation logic
  • Panel UI
  • Rendering implementation
  • Feature-domain decisions

Allowed Dependencies

EditorRunners may depend on:

  • Unity Editor update APIs
  • Diagnostics
  • Unity primitives used by routines

EditorRunners should avoid depending on:

  • feature orchestration systems
  • preview systems
  • rendering implementation systems
  • panel UI systems

Notes

EditorRunners provide execution infrastructure only.

They should answer: - how is a routine stepped over editor frames? - how is cancellation handled? - how is progress reported?

They should not answer: - what workflow is being executed? - what should be exported? - how captures are produced?

Those decisions belong to feature systems.

Future Candidates

  • Keep runner logic workflow-neutral.
  • Maintain safe cleanup and event unsubscription behaviour.
  • Avoid adding feature-specific branching to runner infrastructure.