Commit Graph
3 Commits
Author SHA1 Message Date
poimen 9d6fe12ef6 feat(phase-1.3): config validation, env-specific loading, SOPS secrets
CI / CI (pull_request) Successful in 4m24s
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
2026-09-08 16:32:34 -07:00
poimen dde7f7f37e feat(phase-1.2): temporal SDK client, worker mgmt, k8s deployments
CI / CI (pull_request) Successful in 4m32s
- 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
2026-09-08 16:28:53 -07:00
poimen 56a5f8d48c fix: use Printf instead of Println for formatted output
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.
2026-09-08 16:25:36 -07:00