Simple Twine use of Variable/Macro

I created a simple Twine with a variable and test:
You can download this an import it in Twinery if you want to see the full example

1) I did this on the first page:
(set: $magicalItem to "rock, or nothing")

2) This on the second pageYou found a $magicalItem.
3) Then depending on choices redefined it, readers end up with:
(set: $magicalItem to "feather") You found a $magicalItem.
You found a ring. (set: $magicalItem to "ring")
4) And then sent them to a test passage like this with a test of the conditional that presents different lines depending on what the value of $magicalItem is at that point:

Dangling from each branch are dozens of tiny brass keys.

(if: $magicalItem is "feather")
You feel the feather knocking against your leg in your pocket, almost as if it's trying to tell you that you can fly. There's something unreal about this. But you do need to reach those keys and so you're tempted to believe for a moment.
Do you want to Fly and attempt to fly and get a key?
Or do you want to Town into the town and explore?]

[Too bad you can't fly; they're hopelessly out of reach. You should probably just Towninto the town and explore.]