503 Error: Remove conversational skill provider

When creating assistants after migrating from Full mode to agentic_assistant mode, you get a 503 error.

Symptoms
See the "error": "Provider failed to receive /subscriber_event", "code": 503
Solution
  1. Backup current state (RECOMMENDED)
    Before making changes, backup the affected tables:
    # Connect to postgres pod
    POD_NAME=$(oc get pods -l app=wo-wa-postgres-16 -o jsonpath='{.items[0].metadata.name}')
    
    DATABASE_NAME="conversation_pprd_wo-wa"
    
    # Create backups
    oc exec $POD_NAME -- pg_dump -U postgres -d $DATABASE_NAME -t integration > /tmp/integration_backup.sql
    oc exec $POD_NAME -- pg_dump -U postgres -d $DATABASE_NAME -t catalog_integration > /tmp/catalog_integration_backup.sql
    oc exec $POD_NAME -- pg_dump -U postgres -d $DATABASE_NAME -t conversational_skill_provider > /tmp/conversational_skill_provider_backup.sql
    
    
    Verify backups were created:
    ls -lh /tmp/*backup.sql
  2. Execute deletion (IN ORDER)

    Run these commands in the exact order shown to maintain referential integrity.

    1. Delete integration records
      POD_NAME=$(oc get pods -l app=wo-wa-postgres-16 -o jsonpath='{.items[0].metadata.name}')
      DATABASE_NAME="conversation_pprd_wo-wa"
      
      oc exec $POD_NAME -- psql -U postgres -d $DATABASE_NAME -c "
      DELETE FROM integration 
      WHERE name = 'Conversational Skill Provider Integration';
      "
      Expected output: DELETE X (where X is the number of rows deleted)
    2. Delete catalog integration records
      oc exec $POD_NAME -- psql -U postgres -d $DATABASE_NAME -c "
      DELETE FROM catalog_integration 
      WHERE title = 'Conversational Skill Provider';
      "
      Expected output: DELETE X
    3. Delete conversational skill provider records
      oc exec $POD_NAME -- psql -U postgres -d $DATABASE_NAME -c "
      DELETE FROM conversational_skill_provider;
      "
      Expected output: DELETE X
  3. Verify deletion
    Confirm all records are removed:
    POD_NAME=$(oc get pods -l app=wo-wa-postgres-16 -o jsonpath='{.items[0].metadata.name}')
    DATABASE_NAME="conversation_pprd_wo-wa"
    
    # Check conversational_skill_provider
    oc exec $POD_NAME -- psql -U postgres -d $DATABASE_NAME -c "
    SELECT COUNT(*) as provider_count FROM conversational_skill_provider;
    "
    Expected output: provider_count = 0
    # Check catalog_integration
    oc exec $POD_NAME -- psql -U postgres -d $DATABASE_NAME -c "
    SELECT COUNT(*) as catalog_count FROM catalog_integration WHERE title = 'Conversational Skill Provider';
    "
    Expected output: catalog_count = 0
    # Check integration
    oc exec $POD_NAME -- psql -U postgres -d $DATABASE_NAME -c "
    SELECT COUNT(*) as integration_count FROM integration WHERE name = 'Conversational Skill Provider Integration';
    "
    Expected output: integration_count = 0
  4. Test Assistant creation