config.go: - Environment enum (dev/staging/prod) with auto-detect - MemoryServiceConfig + LLMConfig structs - Validate(): TLS pair check, file existence, prod LLM key requirement - In-cluster default host detection via KUBERNETES_SERVICE_HOST - TaskQueue + WorkerCount from env config_test.go: 11 tests - defaults, env override, TLS mismatch, TLS file not found - prod validation (requires LLM key), env parsing - in-cluster detection, port defaults, int parsing k8s/secrets.enc.yaml: SOPS-encrypted Secret - anthropic-api-key, memory-service-jwt, temporal-postgres-password - Age-encrypted, KSOPS-compatible Build: clean, full test suite passes
- internal/temporal/client.go: robust client with retry + TLS + health check - internal/temporal/worker.go: worker creation, registration, lifecycle - internal/temporal/context.go: timeout helpers - k8s/worker-deployment.yaml: 2-10 replica HPA, health probes, security context - k8s/workflow-runner-deployment.yaml: singleton runner with probes - k8s/kustomization.yaml: updated resource list, removed missing ref Tests: 11 pass (client_test.go + worker_test.go) Build: go build ./... clean Kustomize: dry-run validated
Line 101: fmt.Println with %d directive changed to fmt.Printf. Println doesn't interpret format directives; Printf required for %d. Fixes go vet error.