Trying to understand the reconciliation logic for digital channel configurations within the Terraform provider. The environment is running provider version 1.12.4. The pipeline executes nightly via GitHub Actions to enforce state parity. Recent runs show persistent drift on genesyscloud_flow resources specifically for the outbound_email and outbound_sms settings. The state file declares max_concurrent_tasks = 10, but the API response returns 12. No manual changes were made in the UI during the window. The terraform plan output indicates an update, but terraform apply completes with zero changes applied, suggesting the provider is reading a cached or stale value from the API layer. The flow ID is a1b2c3d4-e5f6-7890-abcd-ef1234567890. The specific block in HCL is standard: outbound_email { max_concurrent_tasks = 10 }. API logs show a 200 OK on the GET request for the flow, but the JSON body payload seems to ignore the max_concurrent_tasks field entirely, returning a default. This breaks the immutable infrastructure model. Is this a known bug in the genesyscloud_flow resource schema definition regarding digital channel limits? Or is there a specific API parameter required to fetch the effective runtime configuration versus the stored configuration? The state file is stored in S3 with DynamoDB locking. No concurrent runs detected. The issue persists across multiple environments (Dev, Stage, Prod). Need to know if this is a provider limitation or an API inconsistency. Past posts suggest using raw API calls for WFM, but flows are complex. Does the provider support fetching the ‘effective’ config for digital channels? If not, how do we validate these constraints in CI/CD without manual UI checks?
The problem here is the Terraform provider does not correctly handle the nested object structure for these specific digital channel configurations. It treats them as separate resources rather than a single cohesive block.
Force a recreation of the resource using lifecycle { force_new = true } to reset the state. This bypasses the reconciliation bug entirely.