Issue Investigation Skill
This skill covers investigation and reproduction — confirming a reported
problem is real, finding its root cause, and checking whether a fix already
exists. For labeling, prioritizing, and routing issues, see doc-triage-agent.
Step 1: Read the Issue Carefully
Extract:
- What is reported — exact symptom (404, wrong content, rendering bug, etc.)
- Where — URLs, file paths, product versions, or page locations
- Date filed — older issues are more likely already fixed
- Assignees / comments — may indicate in-progress or already-resolved work
Step 2: Reproduce the Problem
Verify the reported behavior before assuming it still exists. Issues are
frequently fixed without being closed.
Choose the right method for the issue type:
| Issue type |
How to reproduce |
| Broken link / 404 |
Fetch the URL on the live site |
| Wrong content or outdated info |
Read the live page and compare to what the issue describes |
| Rendering / layout bug |
View the live page in a browser |
| Missing page or section |
Search the repo for the expected content |
| CI link-checker failure |
Read the CI logs referenced in the issue |
If the reported problem no longer exists, the issue may be resolved. Check git
history for when and how it was fixed before closing.
Step 3: Check the Codebase
If the problem still exists, investigate locally:
Check git history before concluding the content is wrong. Changes made after
the issue was filed often mean the fix is already in place.
Step 4: Identify the Root Cause
Common patterns in this repo:
| Symptom |
Likely cause |
What to check |
| Broken link (404) |
Missing page, bad Hugo alias, or wrong URL in source |
File exists? Aliases in frontmatter? |
| Fragment not found |
Heading renamed or removed |
Search for the anchor ID |
| Wrong content |
Outdated copy, stale shared content |
Check source: frontmatter, shared files |
| Rendering bug |
Shortcode misuse, template error |
Check shortcode syntax, build the site |
| Missing documentation |
Page never created, or removed |
Search repo; check git history for deletions |
Step 5: Decide the Outcome
After investigating, one of these is true:
- Still broken — describe the root cause and propose a minimal fix.
- Already fixed — identify the commit/PR that fixed it; recommend closing.
- Not a docs problem — access control, external site issue, product bug;
recommend reassigning or closing with explanation.
- Cannot reproduce — describe what you checked; ask for clarification.
Common Pitfalls
- Do not treat an open issue as proof the problem still exists — issues go stale.
- Do not apply a fix without reproducing the problem first.
- Do not restructure content (rename directories, move files) without first
checking whether a simpler fix (alias, redirect, content edit) already handles
the case.
- Do not confuse access errors (403) with missing content (404).
1---2name: issue-investigation3description: Investigate GitHub issues before attempting fixes. Verifies reported problems are real and reproducible, checks whether fixes already exist, and gathers root cause evidence. Use before working on any bug report, broken link, or content issue.4---56# Issue Investigation Skill78This skill covers **investigation and reproduction** — confirming a reported9problem is real, finding its root cause, and checking whether a fix already10exists. For labeling, prioritizing, and routing issues, see `doc-triage-agent`.1112## Step 1: Read the Issue Carefully1314Extract:15- **What is reported** — exact symptom (404, wrong content, rendering bug, etc.)16- **Where** — URLs, file paths, product versions, or page locations17- **Date filed** — older issues are more likely already fixed18- **Assignees / comments** — may indicate in-progress or already-resolved work1920## Step 2: Reproduce the Problem2122Verify the reported behavior before assuming it still exists. Issues are23frequently fixed without being closed.2425**Choose the right method for the issue type:**2627| Issue type | How to reproduce |28|---|---|29| Broken link / 404 | Fetch the URL on the live site |30| Wrong content or outdated info | Read the live page and compare to what the issue describes |31| Rendering / layout bug | View the live page in a browser |32| Missing page or section | Search the repo for the expected content |33| CI link-checker failure | Read the CI logs referenced in the issue |3435If the reported problem no longer exists, the issue may be resolved. Check git36history for when and how it was fixed before closing.3738## Step 3: Check the Codebase3940If the problem still exists, investigate locally:4142- **Search for the relevant files** — does the expected content exist in the43 repo?44- **Check git history** — did recent commits touch this area? Was a file45 renamed, moved, or deleted?46 ```47 git log --oneline -20 -- <path>48 git log --follow --oneline -- <path>49 ```50- **Check for existing fixes** — search for PRs referencing the issue number:51 ```52 git log --oneline --all | grep <issue-number>53 ```5455Check git history **before** concluding the content is wrong. Changes made after56the issue was filed often mean the fix is already in place.5758## Step 4: Identify the Root Cause5960Common patterns in this repo:6162| Symptom | Likely cause | What to check |63|---|---|---|64| Broken link (404) | Missing page, bad Hugo alias, or wrong URL in source | File exists? Aliases in frontmatter? |65| Fragment not found | Heading renamed or removed | Search for the anchor ID |66| Wrong content | Outdated copy, stale shared content | Check `source:` frontmatter, shared files |67| Rendering bug | Shortcode misuse, template error | Check shortcode syntax, build the site |68| Missing documentation | Page never created, or removed | Search repo; check git history for deletions |6970## Step 5: Decide the Outcome7172After investigating, one of these is true:7374- **Still broken** — describe the root cause and propose a minimal fix.75- **Already fixed** — identify the commit/PR that fixed it; recommend closing.76- **Not a docs problem** — access control, external site issue, product bug;77 recommend reassigning or closing with explanation.78- **Cannot reproduce** — describe what you checked; ask for clarification.7980## Common Pitfalls8182- Do not treat an open issue as proof the problem still exists — issues go stale.83- Do not apply a fix without reproducing the problem first.84- Do not restructure content (rename directories, move files) without first85 checking whether a simpler fix (alias, redirect, content edit) already handles86 the case.87- Do not confuse access errors (403) with missing content (404).