[Bug]: `gh skyline -f` fails for accounts created before GitHub's launch
- Dominant language
- Go
- Stars
- 1.3k
- Forks
- 101
- PR merge metrics
- No merged PRs in 30d
Description
### GitHub CLI Version
2.93.0
### gh-skyline Version
0.1.9
### What Operating System are you seeing the problem on?
Windows
### What happened?
Running `gh skyline` with the `-f` (`--full-history`) flag fails when generating a skyline for an account that was created before GitHub launched publicly in 2008.
For example, trying to generate a full-history skyline for `mojombo` (GitHub co-founder Tom Preston-Werner) fails:
```powershell
PS C:\> gh skyline -fu mojombo
Error: failed to fetch contributions: [VALIDATION] year cannot be before GitHub's launch (2008)
```
The `mojombo` account was created in 2006, so its full contribution history predates GitHub's 2008 launch date.
## Expected behavior
`gh skyline -f` should handle accounts with account/history dates before GitHub's launch gracefully.
Since GitHub could not have contribution data before 2008, the command could clamp the requested history to GitHub's launch year or otherwise ignore dates before 2008 instead of failing.
For example:
```text
No GitHub contribution data exists before 2008.
```
Or simply generate the skyline using the available history starting from 2008.
## Actual behavior
The command attempts to request contribution data for a year before GitHub's launch and GitHub rejects the request:
```text
Error: failed to fetch contributions: [VALIDATION] year cannot be before GitHub's launch (2008)
```
## Reproduction
1. Run:
```powershell
gh skyline -fu mojombo
```
2. Observe the validation error.
## Additional context
This is particularly noticeable with older accounts such as `mojombo`, whose account predates GitHub itself.
Broader handling of pre-launch account dates would probably be useful for any user whose GitHub account was created before 2008.
## Easter egg suggestion
Since `mojombo` and `defunkt` are two of the earliest and most notable GitHub accounts, it could also be fun to add a small Easter egg when generating their skylines.
For example:
```text
This legend predates GitHub.
```
or:
```text
One of the GitHub legends.
```
This would obviously be optional, but it could be a fun touch for two of GitHub's earliest and most recognizable accounts.
Contributor guide
Research direction
Start at the `gh skyline -f` entry point and the contribution-fetching path; reproduce the failure with `gh skyline -fu mojombo`. Trace how the account date becomes the requested year, then verify completion by ensuring pre-2008 history is clamped or skipped and the command generates a skyline without the validation error.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- github, go
- Domain
- api, cli
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 65/100