consolidation of some of the modules, localization fixes, product advisories work, qa work
This commit is contained in:
46
docs/features/checked/jobengine/jobengine-worker-sdks.md
Normal file
46
docs/features/checked/jobengine/jobengine-worker-sdks.md
Normal file
@@ -0,0 +1,46 @@
|
||||
# Orchestrator Worker SDKs (Go and Python)
|
||||
|
||||
## Module
|
||||
Orchestrator
|
||||
|
||||
## Status
|
||||
VERIFIED
|
||||
|
||||
## Description
|
||||
Multi-language Worker SDKs enabling external workers to participate in orchestrator job execution via Go and Python clients, with examples and structured API packages.
|
||||
|
||||
## Implementation Details
|
||||
- **Modules**: `src/JobEngine/StellaOps.JobEngine.WorkerSdk.Go/`, `src/JobEngine/StellaOps.JobEngine.WorkerSdk.Python/`, `src/JobEngine/StellaOps.JobEngine/StellaOps.JobEngine.WebService/`
|
||||
- **Key Classes**:
|
||||
- `client.go` (`src/JobEngine/StellaOps.JobEngine.WorkerSdk.Go/pkg/workersdk/client.go`) - Go SDK client for worker communication
|
||||
- `config.go` (`src/JobEngine/StellaOps.JobEngine.WorkerSdk.Go/pkg/workersdk/config.go`) - Go SDK configuration
|
||||
- `artifact.go` (`src/JobEngine/StellaOps.JobEngine.WorkerSdk.Go/pkg/workersdk/artifact.go`) - artifact handling in Go SDK
|
||||
- `backfill.go` (`src/JobEngine/StellaOps.JobEngine.WorkerSdk.Go/pkg/workersdk/backfill.go`) - backfill support in Go SDK
|
||||
- `retry.go` (`src/JobEngine/StellaOps.JobEngine.WorkerSdk.Go/pkg/workersdk/retry.go`) - retry logic in Go SDK
|
||||
- `errors.go` (`src/JobEngine/StellaOps.JobEngine.WorkerSdk.Go/pkg/workersdk/errors.go`) - error types in Go SDK
|
||||
- `transport.go` (`src/JobEngine/StellaOps.JobEngine.WorkerSdk.Go/internal/transport/transport.go`) - HTTP transport layer for Go SDK
|
||||
- `main.go` (`src/JobEngine/StellaOps.JobEngine.WorkerSdk.Go/examples/smoke/main.go`) - smoke test example worker
|
||||
- `client.py` (`src/JobEngine/StellaOps.JobEngine.WorkerSdk.Python/stellaops_orchestrator_worker/client.py`) - Python SDK client
|
||||
- `config.py` (`src/JobEngine/StellaOps.JobEngine.WorkerSdk.Python/stellaops_orchestrator_worker/config.py`) - Python SDK configuration
|
||||
- `backfill.py` (`src/JobEngine/StellaOps.JobEngine.WorkerSdk.Python/stellaops_orchestrator_worker/backfill.py`) - Python backfill support
|
||||
- `WorkerEndpoints` (`src/JobEngine/StellaOps.JobEngine/StellaOps.JobEngine.WebService/Endpoints/WorkerEndpoints.cs`) - REST API for worker registration and job assignment
|
||||
- `WorkerContracts` (`src/JobEngine/StellaOps.JobEngine/StellaOps.JobEngine.WebService/Contracts/WorkerContracts.cs`) - API contracts for worker communication
|
||||
- `Worker` (`src/JobEngine/StellaOps.JobEngine/StellaOps.JobEngine.Worker/Worker.cs`) - .NET worker implementation
|
||||
- **Interfaces**: None (SDK clients are standalone)
|
||||
- **Source**: Feature matrix scan
|
||||
|
||||
## E2E Test Plan
|
||||
- [ ] Register a Go worker via `WorkerEndpoints` and verify it receives a job assignment
|
||||
- [ ] Execute a job with the Go worker SDK `client.go` and verify results are reported back via the API
|
||||
- [ ] Register a Python worker via `client.py` and verify it receives a job assignment
|
||||
- [ ] Verify Go SDK retry: configure `retry.go` policy and simulate a transient failure; verify the SDK retries and succeeds
|
||||
- [ ] Verify artifact handling: upload an artifact via `artifact.go` and verify it is persisted
|
||||
- [ ] Verify backfill: trigger a backfill via `backfill.py` and verify it processes historical events
|
||||
- [ ] Verify Go SDK error types: trigger different error conditions and verify `errors.go` returns appropriate error types
|
||||
- [ ] Run the Go smoke test example `main.go` and verify it completes successfully against the orchestrator API
|
||||
|
||||
## Verification
|
||||
- Verified on 2026-02-13 via `run-002`.
|
||||
- Tier 0: Source files confirmed present on disk (Go SDK, Python SDK, .NET endpoints).
|
||||
- Tier 1: `dotnet build` passed (0 errors); 1292/1292 tests passed.
|
||||
- Tier 2d: `docs/qa/feature-checks/runs/jobengine/orchestrator-worker-sdks/run-002/tier2-integration-check.json`
|
||||
Reference in New Issue
Block a user