## About The Pull Request
Combines
```
soundadd: added a new sound thingy
sounddel: removed an old sound thingy
```
into "sound," and
```
imageadd: added some icons and images
imagedel: deleted some icons and images
```
into "image" in the changelog.
I don't think we need to have both; `sound` and `image` can represent
any kind of change to their respective medium.
---------
Co-authored-by: tattle <article.disaster@gmail.com>
Adds a new workflow that will try to automatically detect and rerun
flaky tests, and create an issue report for them.
The detection mechanism is heuristic: if exactly ONE job fails in the CI
Suite, then it is assumed to be flaky, and will be rerun. If the next
run succeeds, then it will create an issue report for that flaky test if
one does not already exist. It will do its best to create a unique but
consistent identifier, aided by PRs like #71515. You can find an example
here: https://github.com/Mothblocks/ss13-workflow-testing/issues/20.
Maintainers can also rename the issue if they wish, it will still be
able to find it.
While there is a chance for this mechanism to go wrong and create bogus
issue reports, it IS possible to easily disable actions, I did it for
the stale one just a bit ago. Most likely, this mechanism going wrong is
going to be the result of randomness leaking in tests, like random human
names, so this can be solved in the tests themselves. I find it
extremely unlikely, but in the worst case scenario where this happens
often, we can add a way for maintainers to edit the issue report and
include a regex to match for runtimes. Just an idea.
Includes a few large-ish downloaded logs from past failures that are
interesting in unique ways. These are used for tests of the title
generator.
Removes all default comments after a PR is opened (and only when it is opened).
Means that I can turn on the pr body merge option without keeping all the cruft
I wanted to move auto labeling into its own workflow, but realized that it and changelog generation were coupled. So I'm detaching that first, and then will work on auto labeling later. Includes general code for a changelog parser so that I can reuse it by that point.
GitHub actions are great for downstreams, as setting up a PHP server for the webhook is not trivial, compared to Existing and getting it for free. They are also much more straightforward to test and update than the webhook. I was able to verify this was working trivially with an empty repository.
Tested and working: Mothblocks/ss13-workflow-testing@0a2de4d