Just a few notes about the example $list you posted:
The all[...] operator takes one or more *keywords* (current, missing, orphans, shadows, tags, tiddlers) as a parameter, not a tiddler title.
To specify a literal tiddler title, use title[TiddlerName] or just [TiddlerName], like this:
<$list filter='[[$:/hb/Scrollable]get[text]prefix[yes]]'>
In place of the combination of [TiddlerName]get[text], you could write {TiddlerName!!text}, like this:
<$list filter='[{$:/hb/Scrollable!!text}prefix[yes]]'>
By default, the $list widget sets "currentTiddler" within the body of the <$list>...</$list>.
Thus, in your example code, the value of <<currentTiddler>> within the $list body will be "yes".
To leave the value of currentTiddler unchanged, you must specify an alternative variable name, like this:
<$list filter='[[$:/hb/Scrollable]get[text]prefix[yes]]' variable="something">
As an alternative, you could also preserve the value currentTiddler by adding "then<currentTiddler>" at the end of your test, like this:
<$list filter='[[$:/hb/Scrollable]get[text]prefix[yes]then<currentTiddler>]'>
Of course, if you don't use the result within the body of the $filter (as in your example, which explicitly specifies tiddler="$:/hb/CiteDivHeight"), then you can omit the variable="..." syntax entirely.
Even so, it's a good convention to use a variable whenever the $list is just being used as a conditional test. I like to use a name that describes the purpose of the test, like this:
<$list filter='[[$:/hb/Scrollable]get[text]prefix[yes]]' variable="if_scrollable_flag_is_set">
enjoy,
-e