New features:
- `t.co` urls resolution map as attachment (CSV file)
- PDF filenames based on twitter url and creation date
Dev "quality of life" updates:
- Basic integration tests and GitHub CI
- HTML 404s
- PDF "producer" field now contains the app's version number
- Better checkbox field name
- Documentation edits
Adds a "Check PDF" dialog allowing to compare a client-side generated SHA-512 hash of a file against archive.social's logs.
It is primitive, but SuccessLog loads all available hashes from success-log.tsv on app boot into a hashmap, which gets updated as new entries get created.
Other quality-of-life updates include some minor CSS tweaks and refactoring of AccessKeys.js to match SuccessLog.js.