Extends SchedulerState with running_overlays / refresh_running / blocked_servers_by_overlay, and updates can_start with the truth table: install and refresh_workshop_items are global mutexes; build_overlay serializes per-overlay; server jobs block on builds for any overlay their blueprint references. Adds enqueue_build_overlay coalescing helper that returns an existing queued job for the same overlay rather than inserting a duplicate. Adds run_job dispatch for build_overlay (BUILDERS[overlay.type].build) and refresh_workshop_items (re-fetches metadata, re-downloads on time_updated/filename change, enqueues coalesced rebuilds for affected overlays). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| __init__.py | ||
| host_commands.py | ||
| job_worker.py | ||
| l4d2_facade.py | ||
| overlay_builders.py | ||
| overlay_creation.py | ||
| security.py | ||
| spec_yaml.py | ||
| status.py | ||
| steam_workshop.py | ||
| workshop_paths.py | ||