Sanitized MTG Arena game log corpus for testing manasight-parser, the log parsing engine behind Manasight.
This repository contains sanitized Player.log captures from MTG Arena. These files serve as a real-world test corpus for parser smoke testing, ensuring compatibility across game modes, patch versions, and edge cases.
All log files have personally identifiable information (account IDs, display names, tokens) removed via manasight-parser's scrub module.
- Fork the repo, sanitize your
Player.logwith manasight-parser'sscrubbinary, compress it (gzip), and place it incorpus/ - Open a PR — CI auto-sanitizes files via
check-log-sanitization.ymland validates naming conventions - See CONTRIBUTING.md for details
When a PR that adds or updates corpus/ files is merged to main, publish-corpus.yml automatically:
- Bundles all
corpus/*.log.gzfiles into a tarball - Creates a new GitHub release with an auto-incremented tag (
manasight-corpus-v1,v2, ...)
After publishing a release, the workflow triggers manasight-parser's smoke test CI via repository_dispatch. The full pipeline:
corpus PR merged → publish-corpus.yml → GitHub Release
→ repository_dispatch → parser smoke test
→ ratchet comparison
→ baseline PR (if improved)
This means new log files flow through to parser coverage updates without manual intervention.
manasight-corpus/
├── corpus/ # Sanitized .log.gz files
├── CONTRIBUTING.md # How to contribute log files
├── README.md
├── LICENSE-MIT
└── LICENSE-APACHE
We welcome log file contributions! See CONTRIBUTING.md for how to sanitize and submit your MTG Arena logs.
Licensed under either of
- Apache License, Version 2.0 (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
at your option.
This project is not affiliated with, endorsed by, or associated with Wizards of the Coast, Hasbro, or Magic: The Gathering Arena. All trademarks are the property of their respective owners.