This repository is a controlled experiment documenting how GitHub achievements may be triggered through ordinary repository activity.
The goal of this project is to:
- Explore how GitHub achievements work
- Document which actions appear to trigger them
- Demonstrate edge cases in contribution and reputation systems
- Keep the experiment transparent, bounded, and auditable
Confirmed profile achievements from this experiment:
- Quickdraw
- Pull Shark
Unconfirmed or pending observations:
- YOLO did not appear after CLI/API merges or one manual UI merge without review.
- Galaxy Brain requires evidence-backed accepted answers in Discussions.
- Pair Extraordinaire requires a real co-author; fake authors are out of scope.
Discussion threads are used to collect public observations and reproducible notes: https://github.com/Airshipster/github-achievements-lab/discussions
- A small activity tracker CLI in
src/tracker.py - Structured experiment notes in
docs/ - Discussion workflow notes in
docs/discussions.md - A human-readable activity log in
logs/activity-log.md - Tests for the local tracking logic in
tests/
This repository is created for educational and research purposes only.
It does NOT aim to:
- exploit GitHub
- manipulate rankings or reputation
- encourage spammy behavior
- involve external repositories, unrelated users, or multiple accounts
Instead, it highlights how certain achievements can be obtained through minimal or artificial actions, in order to:
- raise awareness
- improve system transparency
- encourage better design of contribution metrics
All actions performed here should be:
- contained within a single repository
- executed by a single user
- limited in volume
- documented in the activity log
- stopped after a fixed time window if an experiment session is running
Record an event:
python src/tracker.py record --type commit --title "docs: update methodology"Show a summary:
python src/tracker.py summaryShow a filtered summary as JSON:
python src/tracker.py summary --type commit --since 2026-05-04T00:00:00Z --json --totalList recent events:
python src/tracker.py list --reverse --limit 5Export filtered events to CSV:
python src/tracker.py export-csv --type issue --output exports/issues.csvValidate recorded events:
python src/tracker.py validateRun tests:
python -m unittest discover -s testsOngoing experiment.