refactor(jobengine): delete TaskRunner service
- Remove TaskRunner source, tests, libraries (3 directories) - Remove from compose, services-matrix, nginx, hosts, smoke tests - Remove CLI commands, UI references, Authority scopes - Remove docs, OpenAPI spec, QA state files - Leave task_runner_id DB columns as nullable legacy - PacksRegistry preserved (independent service) - Eliminates 2 containers (taskrunner-web + taskrunner-worker) Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -157,7 +157,7 @@ All responses include deterministic timestamps, job digests, and DSSE signature
|
||||
|
||||
## 8) Orchestration domain subdomains (Sprint 208)
|
||||
|
||||
Sprint 208 consolidated Scheduler, TaskRunner, and PacksRegistry source trees under `src/JobEngine/` as subdomains of the orchestration domain. Each subdomain retains its own project names, namespaces, and runtime identities. No namespace renames were performed.
|
||||
Sprint 208 consolidated Scheduler, TaskRunner, and PacksRegistry source trees under `src/JobEngine/` as subdomains of the orchestration domain. Each subdomain retains its own project names, namespaces, and runtime identities. No namespace renames were performed. **TaskRunner was subsequently removed (2026-04-08); its `task_runner_id` DB columns remain as nullable legacy fields.**
|
||||
|
||||
### 8.1) Scheduler subdomain
|
||||
|
||||
@@ -169,21 +169,9 @@ The Scheduler service re-evaluates already-cataloged images when intelligence ch
|
||||
|
||||
**Database:** `SchedulerDbContext` (schema `scheduler`, 11 entities). Owns `schedules`, `runs`, `impact_cursors`, `locks`, `audit` tables. See archived docs: `docs-archived/modules/scheduler/architecture.md`.
|
||||
|
||||
### 8.2) TaskRunner subdomain
|
||||
### 8.2) TaskRunner subdomain (REMOVED)
|
||||
|
||||
**Source location:** `src/JobEngine/StellaOps.TaskRunner/`, `src/JobEngine/StellaOps.TaskRunner.__Libraries/`
|
||||
|
||||
The TaskRunner provides the execution substrate for Orchestrator jobs. Workers poll lease endpoints, execute tasks, report outcomes, and stream logs/artifacts for pack-runs.
|
||||
|
||||
**Deployables:** `StellaOps.TaskRunner.WebService`, `StellaOps.TaskRunner.Worker`.
|
||||
|
||||
**Database and storage contract (Sprint 312):**
|
||||
- `Storage:Driver=postgres` is the production default for run state, logs, and approvals.
|
||||
- Postgres-backed stores: `PostgresPackRunStateStore`, `PostgresPackRunLogStore`, `PostgresPackRunApprovalStore` via `TaskRunnerDataSource`.
|
||||
- Artifact payload channel uses object storage path (`seed-fs` driver) configured with `TaskRunner:Storage:ObjectStore:SeedFs:RootPath`.
|
||||
- Startup fails fast when `Storage:ObjectStore:Driver` is set to `rustfs` (not implemented) or any unsupported driver value.
|
||||
- Non-development startup fails fast when `Storage:Driver=postgres` and no connection string is configured.
|
||||
- Explicit non-production overrides remain available (`filesystem`, `inmemory`) but are no longer implicit defaults.
|
||||
> TaskRunner was deleted on 2026-04-08. Source directories, Docker services, CLI commands, and docs have been removed. The `task_runner_id` columns in the database remain as nullable legacy fields. No new migrations were created.
|
||||
|
||||
### 8.3) PacksRegistry subdomain
|
||||
|
||||
@@ -221,7 +209,7 @@ Merging would require renaming one set of entities (e.g., `SchedulerJobs`, `Sche
|
||||
3. Schemas provide clean separation at zero cost.
|
||||
4. Future domain rename (Sprint 221) is a better venue for any schema consolidation.
|
||||
|
||||
**Consequences:** TaskRunner and PacksRegistry remain independent subdomains and now implement explicit storage contracts (Postgres state/metadata plus object-store payload channels) without cross-schema DB merge.
|
||||
**Consequences:** PacksRegistry remains an independent subdomain implementing explicit storage contracts (Postgres state/metadata plus object-store payload channels) without cross-schema DB merge. TaskRunner was subsequently removed.
|
||||
|
||||
---
|
||||
|
||||
|
||||
Reference in New Issue
Block a user