What would be on your checklist when trying to debug a non-reverting feature? I've lost far, far too many weeks and weekends fighting with Drupal and the Features module in the last year, and I still can't find consistently reliable approach to debugging failed feature reverts.

Now I'm sure I can't be the only person having this problem, because I've watched enough other developers on projects I work on tearing their hair out too, so I'm asking this question, in the hope of saving pain in future.

What steps should you take when troubleshooting a non-reverting feature with Drupal 6?

It's safe to assume knowledge of drush, to run diffs of features, and watchdog, and the --debug and --verbose when answering.
Do you have any modules implementing hook_strongarm_alter()?

If you're blindly overriding Drupal system variables using hook_strongarm_alter() as follows:

function mysite_strongarm_alter(&amp;$items) {
  $items['upload_extensions_default']-&gt;value .= ' qtz';
}


...some Features may incorrectly appear as Overridden.

Instead check to see whether the item is defined first:

function mysite_strongarm_alter(&amp;$items) {
  if($items['upload_extensions_default']) {
    $items['upload_extensions_default']-&gt;value .= ' qtz';
  }
}


...and the Strongarm aspect of the Feature will no longer incorrectly appear as Overridden.