Files
git.stella-ops.org/src/JobEngine
master f3401540d7 refactor(jobengine): delete Core + Infrastructure + Worker + Tests (~65K lines)
- All active services now use their own persistence (release-orchestrator, scheduler, packsregistry)
- Zero remaining references from any active csproj
- Clean solution files (4 projects + 48 build configs removed from StellaOps.sln)
- Update README and AGENTS.md

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-09 11:23:11 +03:00
..

JobEngine

Container(s): stellaops-scheduler-web, stellaops-scheduler-worker, stellaops-packsregistry-web, stellaops-packsregistry-worker Slot: 19 (scheduler), 34 (packsregistry) | Port: 8080 | Consumer Group: scheduler, packsregistry Resource Tier: medium (scheduler), light (packsregistry)

Purpose

The JobEngine module provides scheduled scan orchestration and pack registry management. The Scheduler manages scan schedules (CRON-based), graph jobs, policy simulation runs, vulnerability resolver jobs, and failure signatures. The PacksRegistry stores and serves versioned task pack bundles.

Note: TaskRunner (Slot 18) was removed. The task_runner_id DB columns remain as nullable legacy fields.

Note: The legacy StellaOps.JobEngine.Core, StellaOps.JobEngine.Infrastructure, StellaOps.JobEngine.Worker, and StellaOps.JobEngine.Tests libraries were removed (April 2026). Release-orchestrator now uses its own StellaOps.ReleaseOrchestrator.Persistence library. No active service depended on the old JobEngine libraries.

Module Structure

  • StellaOps.Scheduler.WebService/ -- Scheduler HTTP API service
  • StellaOps.Scheduler.Worker.Host/ -- Scheduler background worker
  • StellaOps.Scheduler.__Libraries/ -- Scheduler shared libraries (persistence, etc.)
  • StellaOps.Scheduler.__Tests/ -- Scheduler tests
  • StellaOps.PacksRegistry/ -- PacksRegistry core and infrastructure
  • StellaOps.PacksRegistry.__Libraries/ -- PacksRegistry shared libraries
  • StellaOps.PacksRegistry.__Tests/ -- PacksRegistry tests
  • StellaOps.JobEngine.WorkerSdk.Go/ -- Go worker SDK
  • StellaOps.JobEngine.WorkerSdk.Python/ -- Python worker SDK
  • plugins/ -- Job engine plugins

API Surface

  • scheduler (via Router) -- schedule CRUD, run history, graph jobs, policy runs, policy simulations, failure signatures, event webhooks, scripts endpoint
  • packsregistry (via Router) -- pack upload, download, version listing, approval workflow

Storage

PostgreSQL schema scheduler (Scheduler); PostgreSQL for PacksRegistry; Valkey queue for job dispatch; seed-fs object store for artifacts

Background Workers

  • Scheduler: SchedulerWorkerHostedService -- picks up scheduled jobs from Valkey and dispatches scan runs
  • PacksRegistry: worker process for background pack processing