Keeping track of fields. What are best practises?

Perhaps this would be best a new thread; with a link to it from /to here. However my answer which involves lists of fields in macros to identify them is arguably needed in Best Practices.

@JenniferS perhaps the most practical way is to build a global macro naming each standard or system tiddlers;

The tiddlers hidden from the field editor have a visibility tiddler set to hide see advance search filter [all[shadows+tiddlers]prefix[$:/config/EditTemplateFields/Visibility/]]

\define core-fields() title tags text creator created modified modifier type draft.title draft.of revision bag

Then when trying to determine additional fields, those you added, you can do this; rule out core fieldnames

{{{ [all[current]fields[]] -[subfilter<core-fields>] }}}

alternatively you could make a global macro that lists your fields and do this; rule in your fields

{{{ [all[current]fields[]] +[subfilter<my-fields>] }}}

using the above filters in a list widget as needed.

Also with field handling have a closer look at the has operator because it allows you to test for a specific field empty or not.