Multiple intents using same entity not working as expected

Hello!

We have an infrastructure domain bot on v1.x that handles various intents that have the same entity and it works perfectly fine. The data on 1.x are is as below:

Intents:

  • VM information
  • VM reboot
  • VM backup
  • VM update

Stories: Story 1:

  • VMInfo{“vm_name”:“abcd”}
    • slot{“vm_name”:“abcd”}
    • utter_VMInfoDetails
    • utter_goodbyeNeutral
    • action_restart

Story 2:

  • VMInfo
    • utter_what_is_vm
    • inform{“vm_name”:“abcd”}
    • slot{“vm_name”:“abcd”}
    • utter_VMInfoDetails
    • utter_goodbyeNeutral
    • action_restart

Story 3:

  • VMreboot{“vm_name”:“abcd”}
    • slot{“vm_name”:“abcd”}
    • utter_VMreboot
    • utter_goodbyeNeutral
    • action_restart

Story 4:

  • VMreboot
    • utter_what_is_vm
    • inform{“vm_name”:“abcd”}
    • slot{“vm_name”:“abcd”}
    • utter_VMreboot
    • utter_goodbyeNeutral
    • action_restart

and so on for each intent. This has been working perfectly fine since 2 years. But now, when we migrated to 3.3, it works when the intent and entity are speicifed together (so, stories1 and 3 work fine) but for 2 and 4, it identifies the initial intent correctly, asks for vm name and extracts the entity correctly, but then for the next step, it randomly picks any intent which uses this entity. So, for example, if I request vm info, it will ask for vm name, and when I provide the vm name, it reboots the vm or updates it instead of providing the vm info. I tried using forms, but still facing the same issue.

P.S : On 1.x, I was using single entity, single slot for all these intents. On 3.x, I tried doing that, I tried using same entity/different slots for each intent, it identifies the entity, populates the slot, but still the story is not being followed.

I have set influence_conversation as false, as the value of vm doesnt matter.

Anyone has any ideas?