A rule for detect user's input in some conditions

Hello, everyone. I want to write a rule to describe the dialogue below: When a form is in active loop and requesting slot a, then user input a special text, then I set slot a to a value. I know entity or from text is a normal method, but in some unhappy path, I can’t use entity or intent. My rule is below

-rule:
 condition: 
   - active_loop: form xx
   - slot_was_set:
         - requested slot: slot_a
 steps:
   - slot_was_set:
       slot_a: true

I have tried this method but with no luck. Wish someone who is deep understand rule can help me.

From what I understand: you can be doing this procedure inside the validate form

yes, in custom slot mapping extra_xxx function is ok. Just I don’t think it is a gentle way.