I’ll let @minimaluminium speak to that. I’m not sure the current behavior is exactly a bug, but it does seem like it gives users trouble pretty regularly.
{{#get "posts" include="authors" limit="16" include="primary_tag:write-now"}}
^^ This is incorrect. ‘Include’ is for saying what fields you want. You need:
{{#get "posts" include="authors" limit="16" filter="primary_tag:-[write-now]"}}
and...
{{#get "posts" include="authors" limit="16" filter="primary_tag:[write-now]"}}
As an FYI: Ghost returns an empty page when it encounters an error. If you are developing locally, reading your logs can give you important clues about what the problem is.