Even if $wp_filter['tag'] is not added (by add_filter), it is be set if $wp_filter['all'] (if it is also set). This from the code and apply_filters code, is so that even if the tag doesn't exist (wasn't added), but ['all'] is set, it will still get the hooks from ['all'], which is expected and correct. However, if $wp_filters['all'] is not set and $wp_filters['tag'] is not set, $merge_filters['tag'] is still set to true? Why is this?

#3

By all accounts, I would assume all keys would be numbers, unless some fool decided to set the priority of 'first' expecting something to come of it? That makes for an interesting feature. The documentation states that the priority should be number, however support for strings has been added.

Has any thought been given to extend such a feature to allow for 'first' to be run first and 'last' to run at the absolute last?