Thank you for adding the documentation and fix.
On the other two widgets checkbox_text ( template::widget::select_text) and radio_text ( template::widget::radio_text)
Does the call to widget::input pass in 'attributes' instead of tag_attributes to build the 'other' input?
==========
append output "$element(other_label): "
set element(value) $text
set element(name) $element(name)\.text
- append output [template::widget::input text element $tag_attributes]
+ append output [template::widget::input text element $attributes]
============