(#22250) ensure a failed resource status always has an event

Typically, a Puppet::Resource::Status.failed is set to true
when an event is added whose status is 'failure' (this is done
in Puppet::Resource::Status.add_event).  However, there is also
a case where Puppet::Transaction::ResourceHarness.evaluate
directly sets the status failed field to true.

Generate an event for this latter case, so that report parsers
can rely on an event accompanying any failed resource status.
Merge branch 'stable'

* stable:
  (packaging) Update PUPPETVERSION for 3.3.0-rc1
(maint) Limit ignore to root doc/ directory

'doc' was ignoring other 'doc' dirs elsewhere in the tree such as
acceptance/test/docs.  This should ensure we only ignore the
<repo-root>/doc directory.
(#22250) refactor previous and add spec tests
Merge pull request #1845 from kylog/issue/22250-reports-inconsistent

(#22250) ensure a failed resource status always has an event
maint: ignore Gemfile.local