Predictive routing campaign status stuck on 'pending' despite valid skills mapping in eu-west-2

Configuration is broken for some reason. i have spent the last three hours debugging a predictive routing campaign that refuses to transition from ‘pending’ to ‘active’. the environment is a byoc deployment in eu-west-2, running the latest stable release of the platform.

the issue appears to be isolated to the skill-based targeting logic. i have defined a custom skill ‘premium_support_priority’ and mapped it to a specific user group. the user group contains 15 agents, all currently set to ‘available’ status in the workforce management module. however, when i trigger the campaign via the predictive routing api endpoint /api/v2/analytics/predictiverouting/campaigns, the response payload consistently returns a status of pending with no associated error codes in the standard logs.

i have cross-referenced the developer documentation for predictive routing campaigns and confirmed that the skill mapping json structure is valid. here is a sanitized snippet of the campaign configuration payload i am sending:

{
 "name": "premium_outbound_test_v2",
 "description": "testing skill-based targeting for premium tier",
 "type": "outbound",
 "targeting": {
 "skill": {
 "id": "8a7b3c2d-1e2f-3g4h-5i6j-7k8l9m0n1o2p",
 "level": 1
 }
 }
}

the skill id 8a7b3c2d-1e2f-3g4h-5i6j-7k8l9m0n1o2p is verified to exist and is active. i have also checked the service now integration logs to ensure that no webhook failures are interfering with the campaign state, but the sn rest api calls are returning 200 ok for all related ticket creation events.

i have attempted to clear the cache and restart the architect flow that triggers this campaign, but the behavior persists. has anyone encountered a similar issue where the predictive routing engine fails to recognize valid skill mappings during the campaign activation phase? i am looking for any insights on whether this could be a latency issue with the skill propagation across the eu-west-2 region or if there is a specific validation step i might be missing in the campaign setup.