Skip to content

Infrastructure

Purpose

Owns low-level editor infrastructure services used by Snap Studio Pro workflows.

This territory provides reusable support systems for editor runners, file IO, preference keys, progress tracking, temporary state restoration, input helpers, and texture validation.

Infrastructure supports workflows. It does not own workflows.

Owns

  • Editor runner infrastructure
  • File saving and encoding helpers
  • Export path helpers
  • Shared EditorPrefs keys
  • Progress tracking utilities
  • Temporary state save/restore helpers
  • Lightweight editor input helpers
  • Texture validation helpers

Does NOT Own

  • Feature workflow orchestration
  • Preview scene lifecycle ownership
  • Rendering implementation
  • Export planning
  • Panel UI layout ownership
  • Pipeline-specific behaviour

Allowed Dependencies

Infrastructure may depend on:

  • Unity Editor APIs
  • Unity runtime primitives
  • Diagnostics where logging is required
  • Lightweight abstractions/contracts

Infrastructure should avoid depending on:

  • Preview systems
  • Feature orchestration systems
  • Panel UI systems
  • Window lifecycle systems

Notes

Infrastructure should remain reusable, focused, and workflow-neutral.

Systems here may support many workflows, but should not decide which workflows occur.

If a class starts coordinating feature behaviour, it probably belongs in Features, Preview, Window, or Panels instead.

Future Candidates

  • Keep infrastructure support-focused.
  • Avoid allowing Infrastructure to become a dumping ground.
  • Maintain clear separation between support utilities and workflow ownership.