Startup¶
Purpose¶
Owns Snap Studio Pro editor startup workflows, first-launch guidance, compatibility checks, startup cleanup, and render pipeline define detection.
This territory handles editor initialization concerns that should run when Unity loads or scripts reload.
Owns¶
- First-launch welcome flow
- Startup compatibility checks
- MoreMountains project detection
- Deferred startup prompts
- Render pipeline scripting define setup
- Startup preference flags
- Startup cleanup hooks
- Compatibility warning windows
Does NOT Own¶
- Main editor window lifecycle
- Preview scene lifecycle ownership
- Rendering implementation
- Export workflows
- Feature workflow orchestration
- Long-term session restore
Allowed Dependencies¶
Startup may depend on:
- Unity Editor startup APIs
- Unity Package Manager APIs
- EditorPrefs/SessionState
- Diagnostics/logging
- Infrastructure preference keys
- Lightweight compatibility helpers
Startup should avoid depending on:
- preview orchestration systems
- export systems
- rendering implementation systems
- panel workflow systems
Notes¶
Startup exists to make Snap Studio Pro safe and predictable when Unity loads.
It owns early editor concerns such as: - showing first-launch guidance - checking project compatibility - detecting render pipeline packages - setting pipeline scripting defines - clearing stale editor-runner state
Startup is allowed to coordinate a few broad systems because editor initialization naturally touches project state, packages, preferences, and user guidance.
That coordination should remain shallow and explicit. Startup should not become a hidden workflow owner.
Future Candidates¶
- Keep startup logic explicit and conservative.
- Avoid moving normal editor workflows into Startup.
- Keep compatibility checks focused on known project-level risks.
- Maintain clear separation between startup prompts and session restore prompts.