Production architecture · voice360-prod-aks · Azure East US · Last updated June 2026
When a client needs to download their ID card, halo-task-manager-api triggers a Twilio SMS with a unique URL. The client taps the link and lands on the bic-sky.halo360.ai frontend (served by bic-agent), which renders the ID card and allows download — no login required.
Generates unique ID card link. Calls Twilio API to send SMS.
Sends SMS to client's phone number with the link.
Receives SMS, taps the unique link in message.
bic-sky.halo360.ai → Azure LB 20.124.179.20 → ingress-nginx
Angular app renders ID card. Client downloads PDF.
ID card downloaded to client device. Flow complete.
bic-sky.halo360.ai
release-sky.halo360.ai
staging-sky.halo360.ai
dev-sky.halo360.ai
appconfig.json baked into each bic-agent image points at the correct api-halo-task-* host per environment. The 0.1.27-r119 release image is correctly configured; the 0.1.27-r121 prod image ships staging URLs and requires a postStart hook or image swap to fix.
| Branch | ACR | Cluster | Namespace | Public host |
|---|---|---|---|---|
| dev | 360voice | aplcommissions-aks | 360voice-dev | 360voice-dev.techhalo.ai |
| release | 360voicerelease | aplcommissions-aks | 360voice-release | 360voice-release.techhalo.ai |
| main | 360voiceprod | aplcommissions-aks | 360voice-prod | 360voice.techhalo.ai (legacy) |
| production ✓ | 360voiceprod | voice360-prod-aks | 360voice-prod | 360voice.techhalo.ai |
| Component | RTO target | RPO target | Status |
|---|
Move from 1 broker to 3 (replicationFactor=3, min.insync=2). Or migrate to Azure Event Hubs.
Terraform/Bicep for AKS + Flux/ArgoCD for Helm. Eliminates 4-hour manual rebuild.
Automate export to Azure Blob / Key Vault. Currently manual export to OneDrive.
Spread nodepool across AZs 1/2/3. Min 2 replicas per service with anti-affinity.
Metrics + alerting + on-call rotation. Currently Sentry + AKS Container Insights only.